Heroes of Keys & Kingdoms by NBumgardner
In a world threatened by Skeletons, Giant Rats, and Evil Castles, only you can unite the forces of good!
How to Play
Battle monsters with words to deal damage, block the enemy's attack, and heal yourself.

Click the Summon More Heroes button to summon heroes as letters into your tray at the bottom of the screen. Type a word using their letters for special effects, then press Enter to send your heroes to attack the enemy.
Play in your browser on itch.io!
Credits
Heroes of Keys & Kingdoms was created with the Godot engine in 3 days and includes original code, sound, and art.
The full team included:
- @Doctor-Zeus - lead designer, programmer
- @NBumgardner - programmer, composer
- Tom Bumgardner - artist
Attributions
Special thanks go to the creators of open source tools used while making this game.
- The Roboto and Roboto Mono fonts were created by Christian Robertson.
- The list of valid words is from the ENABLE list within public domain.
- The Godot Sound Manager plugin by Nathan Hoad helped connect sounds into the game.
Given the fonts' external sources, please do not consider them when rating our team's artistic work (the rest of which was made within the confines of the jam).
Feedback Wanted
This Ludum Dare entry features original art, music, and gameplay, and we are welcome to all kinds of feedback, especially related to how fun Heroes of Keys & Kingdoms is to play!
You can also check out the open-source code on GitHub.
Changelog
- 4/22/2024: allow viewport resizing / improve support for high-dpi displays
- https://github.com/SamBumgardner/alphabet-heroes/pull/45
- 4/23/2024: fix resizing config to help scaled fonts look not-terrible
- https://github.com/SamBumgardner/alphabet-heroes/pull/46
Ratings
| Overall | 49th | 4.242⭐ | 33🧑⚖️ |
| Fun | 63th | 4.161⭐ | 33🧑⚖️ |
| Innovation | 10th | 4.419⭐ | 33🧑⚖️ |
| Theme | 252th | 4.081⭐ | 33🧑⚖️ |
| Graphics | 414th | 3.952⭐ | 33🧑⚖️ |
| Audio | 220th | 3.8⭐ | 32🧑⚖️ |
| Humor | 359th | 3.431⭐ | 31🧑⚖️ |
| Mood | 308th | 3.871⭐ | 33🧑⚖️ |
| Given | 27🗳️ | 43🗨️ |
Well done!
Thanks for the game!
If you try typing out the letters that aren't in the bottom tray they'll pop up and contribute (in their own small way) to the cause.
The only thing I found was that initially, before I realized I could use letters that weren't given, I got a bit frustrated because I struggled finding words without many vowels given to me. Maybe a bit more communication about that? I also found that letters like Z and V were just so hard to use anywhere, maybe you could experiment with giving different letters different likelihoods of spawning. (That could be an interesting avenue to explore when thinking about difficulty settings, too)
Congrats on this thing! It was a special one
On the topic of difficult-to-use letters, a concept I had at the start during the design phase was related to it: I was thinking that heroes that go unused for several rounds will eventually "level up" (either by a certain round count, incrementing random chance, something like that). That way letters that are harder to use naturally get more valuable, and leaving a bank of characters alone for a while could be a good strategy to make them even stronger (though common letters are still likely to get used).
It didn't make it into this version of the game because I wasn't confident that we could:
1. communicate the concept clearly - I was already struggling to get any kind of tutorial done for the basics
2. display "levelled up" letters in a readable way (maybe silver / gold tiles or letters would help show it?)
3. make it easy to tell how much better upgraded heroes are. Simple rules like 2x or 3x power might be okay, but it makes mental math harder and balance trickier too.
But I think there are versions of that idea that could work - maybe letters can gain elements that will power-up the word they're used in, or enemies can apply ailments that make some letters poisonous. Lots of potential for ways to give interesting incentives that push players toward rarer letters, in addition to tweaking the randomness of the whole thing.
Great work!
The sound and music was good. I learned a melody by heart while playing.
The only problem I experienced was a screen size on itch.io. The game started in the left top part of the screen and was tiny.
And hear me out, "UWU" should be a valid word.
Thank you for your feedback, and sorry for the issue with the screen ending up too small. I think I've identified the underlying issue - the options we set for resizing didn't play nice with high-dpi displays and would make the gameplay window much smaller space allotted by itch.io
I've figured out a basic fix (I think) and done a bit of local testing. If all goes well I'll get a resizable version published later today!
@deborah-messaoudene
About the "reusing words" problem: I did have some worries that folks might get stuck on a couple of words and keep reusing them, but I didn't prevent it (in this version of the design / game) for a couple of reasons:
1. Making the player remember the words they've already used could become more annoying than fun. The simplest version of the rule (you can't use the same word you used last turn) isn't too much to keep track of, but we'd still need to find some screen space in the UI to remind the player of their last-used word. It's some extra complexity, which I thought we might not need because...
2. When you use a word, all of that word's letters are gone from the list of "heroes" at the bottom of the screen. Reusing the same word probably won't have the same effect; we get some heroes back each turn (and the number increases in the later battles) but the type of hero each letter is assigned to changes. This turn "apple" would give you 10 attack and 8 block, but next turn it might give 4 healing and 2 block. Add in the way enemies change their action each turn, and there are lots of reasons to try to find a new "best" word.
All of that said, I know it can be tricky to make my brain move on from some word that I've used before, so maybe it is a good idea to have some more-direct reason to discourage word reuse. It's more fun to keep coming up with new words, I think, so maybe a more direct restriction is the right way to help it happen.
The castle's behavior there can definitely be a little odd. If you'd like a peek behind the design curtain, I'm happy to oblige!
...Unfortunately, I ended up rambling way too long (even for me!) If you have an interest in poking around a design retrospective of the different enemies, I've got you covered: https://docs.google.com/document/d/1W1pfCjqPfKfHuDi3OzNYUxJPhdcFaTMhtoeP0ad6-o0/edit?usp=sharing
But it *is* a bit much, definitely no pressure to read it.
Anyway, thanks for enjoying the game!
I found the most scary enemy to be the dragon, whom deals unblockable damage, putting a very real timer onto the combat, where if I don’t kill it quickly, I’d end up dead. I had hoped the castle was doing something similar, where if I didn’t kill it fast enough, it would be guaranteed to kill me eventually. So it could do 10, then 25, 35, 40, 50, and keep scaling up damage to send you into a panic.
Though to be fair all of this is coming from someone who already knew all the strategies from having watched it be played on stream. So I already knew to finish off the skeleton guy before he healed and had saved up heaps of damage. I was also going all in on the ‘double the effect of the first hero’, which is a mechanic I probably wouldn’t have understood on my own, but allowed me to do some truly devastating attacks. I would’ve just loved to see more enemies to challenge me further as I really enjoyed the mechanics of it!

Quixote was a word, Pheonix wasn't though 😔
Skele king was the hardest I think because of his full heal
Good concept, kept coming back til I finished.
