The basic upgrade system and the breaking of the learned skills into tiny pieces makes for more options and the element of chance is fun. However, there is a lot of frustration because you keep getting the same cards over and over again.
I suggest that the algorithm for dealing/reshuffling be changed to skip cards which have just been dealt. The card(s) dealt would still be random, but not all with the same weight.
Specifically:
- on reshuffle, don't deal any of the same cards just rejected
- don't deal multiple of the same card at once
- weight cards by how (least) recently they were last dealt
I realize that the last one would require keeping track of a lot more information, so if that's too much even the first two suggestions would be a big improvement.