...but first the problem.
My biggest concern was the idea the gameplay was too repetitive. Prior to release I tried to correct this by making the princess force the player to change their move set. Every so often she would force the player to take an item that would change what attacks and abilities the player has (the knight's "feeling tokens"). This is obviously just kind of annoying. I knew it was when I added it, but I figured it matched the theming I was going for. Unfortunately though, I realize now this didn't do much for gameplay; the player's moves and abilities were already not particularly deep, so forcing the player to change moves didn't change their strategy. In any given turn the best choice is to just select as many attacks as possible. Even if you die, the princess will resurrect the knight so he can fight one more round™️ and that resurrection process also changes your moves in a way that usually just gives you more attacks. Thematically sensible, but boring gameplay wise.
To solve this, I created a simulator that would run fights in the game so I wouldn't need to play-test 100,000 times. This confirmed the whole "select as many attacks as possible" thing. The simulator would train a bot to make gameplay decisions that would get it as far as possible. Over time the furthest reaching bots would end up with totally red feeling tokens, the angry attack emotions. Not only was the game not fun, it also made robots angry.
All tokens, gear, and enemies are different now...
The simulator ended up contributing to a number of revisions to how much damage things did, the power of enemies, what equipment costed and granted the player, etc. With just those changes basically every move, gear, and enemy is now totally different.
Obviously this wasn't enough though... Even if I could convince robots to occasionally opt to take calmer blue-colored feelings the player's decisions per turn were still pretty low. I needed a way to make it so you don't just take the same set of tokens (that is, preform the same moves) every turn.
I turned off the bot and came up with solutions the old fashioned way. Many things ended up changing, but below are a few key points that improved the game's gameplay...
Vote Targeting on Red Tokens
The game always had a weird system where you decided who to attack based on what each token voted for. When tokens are dealt to the board, they would get a random target vote. After you selected your tokens, it would tally up these votes and attack the unfortunate winner of said vote.
Under this system, tied votes would target everything listed in the tie and it was really easy to find ties and just sweep the enemy team. Yet, I couldn't bring myself to make it so ties wouldn't do this. Dividing up the damage on ties was... lame. Making it so ties would chose a random winner... was also lame. Obliterating 3 bad guys at once was just too fun, so I had to find a new angle by playing around with it...
This brought me to possibly the most surprising improvement to gameplay... Make it so red-colored tokens always vote for the same target. For example, "Angry" now always targets the first enemy while "Wrath" now always targets the enemy with the highest HP. With this change users need to be more conscious about what they try to play and who they target. Basically, any given handful will almost certainly be weighted to one clear winner, but it still is possible to attack a large number of enemies at once; it just tastes sweeter now whenever you get so lucky.
Non-red tokens? Unless its a special case, they still get a random vote. You might even find yourself piggy-backing off of their votes to target a unit you red tokens don't naturally target. That's chemistry.
Curses
Another rather decisive change was... spreading out the player's tokens on the field. Or at least that's how it started.
I really didn't like how the layout of tokens randomly thrown on the game board looked. Because it was random they would bunch up in different locations, not be evenly spaced, etc. Instead of just being truly random, I changed the locations of tokens to be more evenly spaced by utilizing Mitchell’s best-candidate algorithm. This was purely for aesthetic reasons.
After admiring how good the distributions of tokens were looking, I realized could amend what I had such that the negative "curse" tokens added to your board by enemies could be placed deliberately to screw over the player. Okay. Simple concept, but just by making sure those go in the middle of everything when they are in play players would have to decided between tokens in different subsections of the board or if they should take a curse to combine multiple subsections. It might not be immediately obvious to players this is happening (curse don't ALWAYS go in the absolute most inconvenient spot for you), but it is there.
Of course, this only really mattered if enemies were actually cursing the player, so I adjusted some things to ensure enemies that curse the player would appear often. One new enemy in particular will curse the player before you even get a turn. Speaking of new enemies...
Enemies Reworked! Rhythm and Other Things...
I added a whopping 7 new enemies! This brings the total of basic enemies to 12 unique types. Most of these add additional concepts to the game that effect what you can do in a given turn. The kobold pointer will remove one of your tokens each turn and the kobold terrier is a glass cannon you have to kill quickly. Does that sound nasty? Well, that's only the start of it. I made 5 more of these fleabags, not to mention a boss at the end. Good luck!
Other existing enemies, like the kobold collie, also got a few special changes. The collie specifically now increases the attack power of other enemies as long as he is alive. Given all of this combined with the targeting changes mentioned above, players need to consider carefully who they want to target each turn.
I also made it so enemies like the kobold sighthound and the new kobold bully would alternate between dealing high damage and doing something else. It's a little more advanced than this though...
Oh also, rounds don't have set enemy teams anymore.
With the new version, enemy team compositions are randomly generated, but still composed sensibly. I made it the random composition consider how much damage the player would face each turn given things like the rhythm mentioned above and also chemistry between enemy unit types. So basically, the generator takes all that stuff into consideration and puts out something that should be engaging but fair; keeps the game fresh.
Focused
Blue tokens (the ones that give you block) were bad, partially because they were unreliable. Letting them vote for things your reds might not always cover helped, but it wasn't enough. The solution? Making a new token that lets you carry block over to the next turn. "Focused" lets your character keep all leftover block after the enemies finish attacking until next turn. Now players can decide to build up block on different board states intending to use it on a different turn.
This new token appears in the knight's move set at the start of the game; I found this makes the early rounds more engaging. Additionally some of the equipment that was under-purchased by my simulator's bot now also can give you "Focused" just it in case you happen to misplace it.
I actually tied out a few other token concepts, but they didn't make the cut. What a shame.
Oh Hey
I for one am surprised anyone is reading this. Really blogs are more of for the blogger if we're honest, but since you gotten this far... Thanks for reading! There are more changes than just what I touched on above but these were the high points that I think made my game fun! Why don't you try it out for me?