Make command history output human readable. player indices can used to get names, and each different command can have it's own format. Additionally, card indices can be used to get which card was played. For example "0 action put 1 samurai" -> "Jim put an Okugata into his samurai's house"
One special case is for the "action play" command, which, based on the card being played, should allow for entirely different outputs. example "0 action play 2 2" could be "Jim dishonored Jeff" but "1 action play 3 4 samurai 0 daimyo" could be "Jess used a Ninja Spy to steal the Noh Theater from Jake (and put it into her daimyo's house)"
Finally, rolls must be considered. I think it's best to have 3 lines, the action (as above), the result of the roll, and the result of the action.
For example it should first say "Jim played a Ninja Assassin on Jeff's daimyo! He needs more than a 4 to avoid the House Guard" or "Jim declared war on Jeff", then something like "Jim rolled a 5", and finally something about the result. Here are the possibilities for assassins and battles, respectively
The assassination was sucessful
The assassination failed
A House Guard sacrificed himself to foil the assassination
Jim's forces emerged victorious!
Jeff's forces emerged victorious!
Jim claims victory and the title of Shogun
depends on #2