There were several discussion about cards which takes actions depending on the last time they were played or the amount of how often the were played.
I would suggest a small systematic feature, which would solve the problems:
A card counter flag.
What i mean? A system which would make it possible to add an integer value (a natural number) to a card (Not single card, but cards of the same type overall).
This would probably need 2 additional array-lists for every game which would link every card and the player to its special integer value.
When the page of a game is loaded then, the system could check the lists if a card on hand of a player has an integer, and would add this integer at the upper left corner of this card.
I would see this system this was:
Player 1 Player 2
List[1] List[1]
. .
. .
. .
List[#cards in Marcomage] List[#cards in Marcomage]
i could imagine something in the script code like $mydata -> Counterlist
The array index would be the matching card (like 227 stands for earth elemental (See "Last order)
)
With this, you can either save how often this card or another one was played through the whole game either by you, your opponent or overall. On the other hand, you can save the round in which this card was played the last time.
With this array-List, the following happens:
1. Player can now properly see the effects their cards will have
-Just because you show the number as a flag above the card
2. the history module is not needed for this operatiosn anymore
-Not the purpose of this module, but since you can just read the list, you don't need to go through the whole replays.
3. Some Continuing effects are possible!
-Yes, you understood me right. Since cards can affect the counter of other cards, you can make concepts like "Increase the counter of concept x by 1)", and concept x would have the effect: "Attack: 4 + #counter". Also, you can save, like in the "lumbering behemoth" concept, the amount of damage you dealt last round. Many new possibilies could be granted.
I don't know how much space this system would need (since it creates 2 big integer arrays per game!), so i just suggest it, i didn't wanted the idea to be lost without a small discussion.