I have the following problem: I want to create a multiplayer game where each player has a turn where he has to roll a lot of dice again and again. But the other players are capable of modifying each single dice with a special action. But since this is a rare action because each player has a limited amount of modifications, I do not want to implement a simple dialog where you have to approve each roll. This would make the game rather sluggish. Any suggestions for the best way to implement a UI which allows to modify every single dice, but makes the game as fast as possible?
You could make dice animations last longer on the main player screen than on the opponent screen. This way the opponent would have a very short time period to click or hit a button in order to modify the result. If all the rolls are longer on the main player screen and shorter on the opponent screen, then the main player should not be able to know if the final result has been modified or not. (Of course this require an UI that enable very fast modification)
You could also choose to give more time to the opponent to decide himself, but this is at the price of somehow informing the main player of the modification. It could be done using some kind of time traveling animations. Let's take an example: suppose the main player is rolling its fifth dice hand. In the meantime the opponent who is reviewing the third one decide to modify it. Then the main player temporary loose the control and an animation show the dice rolls in reverse animation until the third roll, then a modification occurs and finally the fourth and fifth rolls are re-played. At that point the player can continue to roll the others dices but he knows about the modifications.
Finally another way to proceed would be by modifying the results afterward. First the main player rolls all the dices and in a second time the opponent can decide to take part of the turn and modify the results or to let the game continue. Of course, this is a quite visible method too.
There is probably plenty of others approaches, but those are the main ideas that come to my mind now.
Take a look at how Magic: Duels of the Planeswalkers does things.
Each player has turns made up of multiple phases. Each action needs confirmation. The system lets a player decide if he wants to act in any particular phase with a super easy in-game panel showing the phases and which ones the game will stop for. There is a timer to ensure nobody takes forever.
You can also allow more than one modification to be applied at a time. When a player rolls, give the other player time to select any dice he wants to modify and what mods to apply. A simple drop-down or radial menu over each die might work.