This isn't a bad movie. Which is a weird thing to say, because I want it to be bad. I want to hate it. But it's not a bad movie. There's great scenery, decent costumes, reasonable acting and special effects, and the plot is taken from what is pretty much the de facto Japanese national epic. Which might be where the problems begin.
The story of the 47 Ronin is simple, powerful, and has been adapted many times in many media - indeed, Stan Sakai (creator of Usagi Yojimbo) - did a bad-ass comic book adaptation of it not too long ago. It's also absolutely not a nice story; it's a story about appearances and deception, unjust laws carried out by a ruthless government, and ultimately bloody revenge and acceptance of death. It's the kind of story where one of the characters will disown his wife and go live with a prostitute and get the shit kicked out of him just to convince the bad guys he's out of the game.
It's also, as I mentioned, explicitly about 47 masterless samurai. So where does that bring Keanu Reeves, who is clearly not Japanese? Well...they basically took a knife to the story and gut-fucked a hole in it then tried to shove Keanu into the movie as a tengu-trained halfbreed with magical badass swordery.
The thing is, this is not bad. Okay, yes, you've got this weird fantasy Japan thing going on and Keanu is a halfbreed woodsman type who had been raised by magic bird-monks in the forest; that kind of works. It's not perfect by any means, in fact large parts of it are just bizarre, but setting the 47 Ronin in fantasy Japan with witches and six-eyed demon-elk things could have been awesome. Keanu actually does some fun fighty-sequences in this movie and the idea of a halfbreed dude tagging along with the 47 Ronin isn't bad in and of itself - hell, there was that random bandit guy that joined up in 13 Assassins just because he thought killing the bad guy sounded fun, and that worked. Toshiro Mifune joined up with the Seven Samurai and he wasn't a samurai and that fucking worked too. So there was nothing inherently bad about the idea of 47 Ronin + Keanu in magical Japan, basically doing the story of 47 Ronin with some additional magical fights and stuff. That would have been a fun and maybe cool adaptation.
Unfortunately, that's not what we got here. For one thing, the people making the film seem to assume that the audience has left their brain at home and feels the need to explain every fucking thing in great and laborious detail, in particular an annoying-as-fuck opening sequence explaining how this is ancient Japan and there's this young supposed-to-be-Keanu kid blah blah blah shut the fuck up narrator, just start the god-damned movie already.
Anyway, the real opening to the movie is there's this hunt where a bunch of samurai are out hunting this six-eyed demon-elk thing. It's arguably the best part of the movie, because it's the absolute closest they get to allowing Keanu to act. I know people argue that Keanu is really part Treant on his mother's side, but he's a good actor when they give a chance (The Matrix still holds up surprisingly well), but in this movie he's not really given a chance to do more than stab things and mumble a few words or stand there saying nothing while other people treat him like shit. Which is supposed to sort of be his thing as a halfbreed in hideously racist ancient Japan, but gets really annoying when this whole movie is billed as a Keanu vehicle but he's really sort of shoe-horned into a plot where at best he should be a strong supporting character.
Which brings me to something else: the Japanese actors in this movie are really good. I mean, we don't get a lot of recognizable talent aside from Cary-Hiroyuki Tagawa as the Shogun, but nobody's bad at it and to Hollywood's credit most of them (aside from the "Portuguese") are ethnically Japanese. The problem though is that, again, there's not a whole fucking lot for most of them to do. The story of the 47 Ronin is a bit hard to squeeze into to something less than a 3 hour movie to begin with, and then if you start throwing in Keanu's character's backstory, sidequests, the wicked witch, and shit like that, the time for speaking roles really goes down.
And, it's worth saying, at some point fairly early on in the movie I think they kinda lost the fucking thread of the plot. I mean, they pick it up in the end - it's really fucking hard to screw up the end of 47 Ronin although they tried really fucking hard - but the set-up should have been a snap too. Lord gets dishonored, commits seppuku, retainers go masterless and seek revenge. It's pretty simple and elegant from a bare-bones perspective.
Except...well, they abandon the original reason for seppuku, mostly so that Keanu's character can have a love interest with a princess, but also so they could showcase the witch more. And, I have to say, Rinko Kikuchi is one of the few people in this movie that seems to be having fun, even if most of her dialogue is terrible and 75% of her appearance in this movie was CGI. But...and this again ties into the whole aggressive mediocrity thing...the film doesn't really go for any sort of proper cinematic samurai battle and that's the whole fucking reason people are going to see the film.
And, I guess it's fair to say this: visually, the film represents a lot of good work by a lot of talented people, but it is bland. It's generic Hollywood FX CGI fantasy scenery and woodwork, just with the Ancient Japan template applied. The workmanship is good, but the visual palette is stale and the symbolism transparent and weak, and that carries through to just about every other aspect of the film. The bad guy in the original 47 Ronin is a fucking corrupt douchenozzle, but he still has a job and a purpose in life. He's not fucking people over just for lulz, he fucked someone over because they didn't bribe him, and after the guy he fucked over died he is scared as shit that the retainers are going to murder him. His whole thing for the rest of the story is basically "try to stay alive." The bad guy in 47 Ronin is made into a generic bad-guy-for-the-sake-of-being-bad with vague notions of ultimate conquest and maybe banging the witch chick. Don't get me wrong, the actor plays him to a T, but this is a villain for an episode of Xena.
I think I'm mostly out of rant-juice at this point. I could argue more about the plot - the stupidest part of the plot is undoubtedly this bizarre counter-ambush that comes out of almost nowhere - but really, it's a lot like everything else in the movie. It's too generic, a lot of the best details of the 47 Ronin were left out and the stuff they crammed in to make Keanu's character relevant isn't up to snuff, and then when they get back to the 47 Ronin storyline again Keanu is a fucking afterthought. It feels lazy, it looks lazy...it's just an aggressively mediocre film.