"Chess-related roguelike" is a an very crowded genre for unclear reasons and it's difficult to stick out.
So far I've played Shotgun Queen and Pawnbarian. There's also Ouroboros King, Demoncrawl, The Rookery, Passant, Chess Survivors, Gambonanza, Mind over Monarchy, and many more.
There was even a Humble Bundle for mostly Chess-inspired indie roguelikes.
I think it's pretty obvious, tbh. Traditional roguelikes are turn-based, take place on a square grid, are good vehicles for exploring focused mechanical ideas, and can be fun without much in the way of story or graphic design. All of those features mesh well with the rules of chess, which itself is probably the most widely played game in the world.
There must be something in the water! I’ve been working on a (very different) chess-like roguelike, and just released the demo. Check it out if you’re a fan of weird chess puzzles, bad chess puns, and Hnefatafl!
Looks great! Gamedev is so cool, being able to create enjoyable, playable worlds and characters must be so satisfying. If you can tell me how to build something like this I will be so grateful.
I've made games in Löve and with straight Python and it's always a lot of fun...though challenging at times.
Where I tend to struggle is with the overall game structure. Without being an actual professional programmer (nevermind a game programmer), I'm always wrestling with how to design the code structure in a way that is logical and professional. Leveraging common game design patterns isn't at all straight forward for a person like me.
Or if you're impatient like me you click "Your first 2D game" or "Your first 3D game" in the left bar (whichever you prefer) and go through that -- and skipping back to the intro/step by step when you don't understand something.
By the end of that you'll have made your first game.
From there you just do something extra to it. Mix it up. Start a new project with a different (small) idea. Build small projects until small becomes medium becomes large.
That's up to GoG; I've submitted every game I've released to them and it's like talking into the void, never a response. They're a delight as a customer, but kind of half-assed as a platform (at least if you're a self-published indie).
This is highly parasitic: someone does a Show HN about their hobby project, and then you come and snap on to it like a leech with your to-be-paid-for completely unrelated game demo.
I find this kind of behaviour disgusting. Why don't you do a Show HN on your own?
"Chess-related roguelike" is a an very crowded genre for unclear reasons and it's difficult to stick out.
So far I've played Shotgun Queen and Pawnbarian. There's also Ouroboros King, Demoncrawl, The Rookery, Passant, Chess Survivors, Gambonanza, Mind over Monarchy, and many more.
I've not played as many (games in said genre) as you, jjmarr. And so, if you don't mind indulging me... I've an idea for a game that perhaps you'd be able to tell me if it's something you've already seen in play.
The mechanic is fairly simple for this board game (not computer/video):
A standard chessboard and chess pieces are used, with a custom deck of cards for each player. Before moving any pieces, a card is revealed that effects enhancements/restrictions/story/etc. The selling point would be banking on the creativity of the deck, of course.
If there is anybody that could run with this idea (if in fact original, which I doubt) before I do, I'd love to hear about it! ♟
Great game. I love playing chess so this is quite a unique way to play it.
One piece of feedback: dragging a piece on mobile seems inaccurate at times. I’m used to chess apps where it works great. Here it seems the dragged piece doesn’t always end up where I’ve left my finger. I’ve lost a few rounds like this.
I had a lot of fun playing the game. I also made a local solver to see how far you can theoretically get, and it's definitely infinite if you play perfectly. Working on the local sim / solver was almost as fun as playing the game :)
I started by pulling the game source locally and doing some initial testing with a few solvers. I ended up having Claude make a 1-for-1 perfect sim of the original game using rust with some optimizations. The original engine was able to check around 180 moves/s and the rust port was hitting 2,150 moves/s.
After that, I tested a few solvers. Single Player Monte Carlo Tree Search seemed promising, but didn't do as well as I expected. A simple beam search does appear to go infinitely pretty easily.
Before clicking on the link I thought this was going to be about Gambonanza, a game I've seen some people play on Youtube (on videos that I think were sponsored by the developer of the game, but I don't actually know). Haven't played Gambonanza but from what I can tell you are trying to capture all the rival pieces, you get a coin for each piece you capture, and when you succeed you can spend those coins to buy new pieces or give your pieces new powers (like a shield that protects a piece from the first time it would have been captured). So although it starts out with rules quite like chess (except not totally, e.g. you can have multiple kings and you don't lose until all your pieces are captured, so you can let your king be captured and win with your remaining rook), it can eventually evolve into something quite weird (a king that can also move like a knight, or a rook with protection from being captured, or a "golden" square on the board that if you capture an enemy on that square, you earn 2 or 3 coins instead of just 1).
Actually, Gambonanza kind of reminds me of Balatro in that way: start out with rules resembling the standard game, end up with some very weird combinations. Not really my cup of tea, but might be of interest to others.
UI drag/drop is a little clunky at times, but I love the overall vibe. Doesn’t really feel like a daily game, though. Feels more like it is being shoehorned into that model rather than just being a solo Game Game (like Tetris).
What I mean is as a player, I'll likely not notice the difference in a Friday puzzle vs a Thursday puzzle. And I can replay to my hearts content anyway. So why not simply randomize the board on each replay? Which I'd do anyway.
The main reason for adding a daily puzzle (or really the seeded RNG) is that part of the game loop is retrying the same seed to find the best lines for that map. Since all pieces are deterministic, we've found it fun to retry the same map to see if a different line works better. It also adds a competitive/multiplayer element to the game, rather than it just being for single player use.
I think both "play styles" make sense, we've just found it more fun to share with friends this way!
What's the threshold at which you remove scores from the leaderboard? There were several valid >100 scores earlier today (some mentioned in other comments here)
Dang, that's really fun! I think its solid all-around and no notes on the core game loop.
If you want to make it more accessible to folks like myself who stink at chess, I'd recommend adding some sort of power-ups so that you can take multiple pieces, jump over obstacles, or freeze enemies in place. And with that you probably have a great little game to sell on Steam :)
This is awesome! I'd appreciate being able to bring up a primer on the rules - perhaps a reiteration of what it says at the start plus a list of pieces and their moves, and maybe a brief description of what strategy the pieces apply when they move.
I think it makes a pretty good assumption on understanding core chess rules, but yea that would be nice. The thing that did trip me up at first was not realizing the red and blue bishops were the same piece, I was wondering if I was missing something.
The AI can cheat, because it can move a blocking piece out of the way to then attack you in the same turn. Or maybe it's just something to keep in mind, but it caught me off guard.
Oh, I see that now. That makes it so much more interesting as a puzzle. I'll have to try again with that in mind. Got up near 20 but couldn't get past that. Played for like 45 minutes. Super fun!
This is a great puzzle game. I think it actually teaches the concept of "piece coordination" in chess very well.
One suggestion is to have all enemy pieces move simultaneously. I expected that the losing condition is that I am threatened and there are no unthreatened squares to move (checkmate).
However, since the opponents move one-at-a-time, I found that even if I moved to a safe square, sometimes I could be both threatened and captured in the same move! Which is somewhat different from normal chess, since now you have to consider the possible orders in which the opponents move. So even moving to unthreatened squares could be a game over.
You can click your own piece and see the move order to see if it's a possibility you'll be moving into a discovered attack. You can sort of predict that pieces will move if they can go from a non-threatening state to a threatening state.
One tiny UI nitpick: I found the squares' hitboxes to be unintuitively small, requiring more-than-expected precision to get Chazz to land in the square I wanted. (I was initially confused about whether I was making an illegal move.) You might want to either increase the size of the squares, or make the "this square is the target" indicator more obvious.
That was me. The engine is deterministic so I wrote a beam solver for it. My score should've been 208 (pretty sure it could play forever; I capped the solver at a max time limit) but I messed up one of my moves (I was manually moving the pieces instead of submitting the final move list with curl).
Assuming OP means they used beam search on the sub trees of possible moves, which yields some local minimum / maximum in the objective space. Especially useful here because of the sheer multitude of possible moves, and also RNG.
Beam search can be googled for useful results, beam solver can not.
Looks like enemy movements are deterministic, wonder how feasible it is to script this. Was able to increase my score by 4 points trying alternate lines near the end
Very cool idea! More of an arcade game though than a roguelike, but very enjoyable. One nit i have: it seems like the seed is fixed? where units spawn every turn.
There is some polish with Claude over the past few weeks, but we wrote the engine over 10 years ago actually. Each piece moves using a modified version of A* to simply find the shortest path to Prince Chazz (the piece controlled by the player).
You probably don’t need A*, do you actually want the AI to move optimally? That would infer the game ends sooner. You could probably just use greedy heuristics
Your passkey login doesn't even work. I think the nature of Claude usage here goes a bit beyond "some polish".
(For reference, signing back in with a passkey seems to be impossible even after successfully creating an account with one. Every time you sign in it attempts to save a new passkey right after asking for the old one)
Admittedly some of the auxiliary features were made with Claude's help, but I'd argue that's not what makes this interesting. The game (core loop, sprites, etc) were all made by hand.
The passkey feedback is good though, I see a few more people have had issues with it. I'll have a look at fixing it!
I think I found a mini bug. Say I do a score of 10. Then I change board. Then I die with score < 10. I still have 10 for that board. It makes it easy to cheat the leaderboard :) Fun game!
Interesting, reminds me of Really Bad Chess where the pieces change whether you win or lose. If you're really bad the game might give you all queens or rooks.
The site has a hidden webauthn trigger[1], an anti-pattern that automatically logs user in via passkey if it exists. A better approach, IMO, would be requiring user to click "log in".
Click on the queen. It will show the order the pieces move. If one piece blocks another from killing you, and the first piece moves earlier, then the second will be able to move after and kill you.
Amazing how any time there’s a leaderboard there’s somebody using it to market their thing. I won’t name the one I see currently to avoid rewarding the behavior further (though I now have a negative view of them), but folks seriously: can we just do something fun for once and not see everything as an opportunity to be leveraged?