On Thin Ice
A downloadable game for macOS
My 2025 7DRL. Navigate a procedurally-generated frozen wilderness while being hunted. The ice is both a hazard and your weapon.
For additional tech details or to report issues, please visit the GitHub repo.
Gameplay
Your goal: Travel seven screens from the start. Run when you can. Fight when you must. Enemies prefer solid ice over land and cracked ice over solid—use this to your advantage. You can travel over land, but not make any special moves. Don't get trapped.
Right-click anytime to see available moves.
The ice takes damage predictably: solid -> cracked -> broken. You can travel over cracked ice, but you cannot take a move that would drop you into the frozen depths.
Your Moves:
🧊 Move: One hex in any direction.
🧊 Attack: Bump into an enemy to push and stun them for one turn. Push enemies into the water for a satisfying kill.
🧊 Jump: Leap exactly two hexes away. Breaks the ice underneath.
🧊 Slide: Glide exactly three hexes in a straight line, but only on smooth ice. Slam into enemies at the end to knock them back.
🧊 Stomp: If you’re on solid ice, break everything around you.
Notes/Postmortem
I've wanted to participate in the 7DRL for years and suddenly found myself between jobs with no excuse not to do so. This is my first game since I was a kid learning to program BASIC on my Commodore 64.
I work mostly with Python, so I wanted to use it for the game. After playing with libtcod
for a bit I ended up using Pygame
for the game loop. Pygame
is good for handling the render loop and sprites, but I had to write all the pathfinding, animation handlers, and Enemy AI myself. I spent probably 40% of my entire time writing and debugging the ice-cracking animations (all the cracking and breaking is procedural, not pre-rendered), and I'm still not thrilled with them.
The terrain generation is a mix of Perlin noise and then some procedural river and lake generation to make the individual screens seem more distinct. Playing with this was the most fun part of the project and next time I'll think I'll budget more time for this and less for animation.
I wanted to make sure I had a fairly solid "slice" by the end of the jam, but that meant a lot of stuff got cut. Biggest regrets in order:
- Sound would have added a lot, I think.
- I sketched out two additional enemy types, but ran out of time. One would have broken the ice when it moved, and one would have travelled under the ice and popped up through broken hexes.
- All the land is the same. It might have been interesting to have impassable mountains or forests that break line of sight or beaches you can throw rocks from.
Credits
I recently went on a trekking trip in Nepal. Gameplay is inspired by the cold and stark landscapes I found there, and the many hours I spent playing the brilliant Hoplite during my downtime.
- I came across Dice Goblin's Dwarf-Fortress-inspired hex tiles late into the week and loved the aesthetic. If I'd found it earlier this might have been the whole game.
- I found the heart icons online and saw they were free to use, but neglected to save the URL. Thank you, whoever made them!
- The font is Alagard.
- The other asssets are either AI- or procedurally-generated.
Published | 13 hours ago |
Status | Released |
Platforms | macOS |
Author | haikufactory |
Genre | Strategy, Survival |
Tags | Seven Day Roguelike Challenge, Roguelike, Turn-based |
Leave a comment
Log in with itch.io to leave a comment.