A downloadable game for Windows and Linux

"Rogue Robs Trains" is simple roguelike made in 7 days for 7DRL2019 game jam.

Game is made with use of RAWIG roguelike template (https://github.com/VedVid/RAWIG), and uses BearLibTerminal (display-focused library made by Cfyz) and Deferral-Square font (made by Brian Bruggeman).

In "Rogue Robs Trains" player is bandit that boarded train transport of gold. You must kill everyone and stop train.

The core of the game is ranged combat mechanics. Two important factors are distance from target (rifles are most efficient on long (>20 tiles) range, revolvers on medium (>10 and <= 20 tiles) range.
Additionally, player has to remember that some weapons needs to be cocked before every shot, and sometimes reloading takes much more time than expected...

Install instructions

Windows - download, unpack and run.

Linux - for 7drl version you may need to, additionally, move BearLibTerminal.so to your libs directory; for post-campo releases, use run.sh to start game.


Rogue Robs Trains - 0.0.3b_post-campo - windows 32-bit 1 MB
Rogue Robs Trains - 0.0.3b_post-campo - windows 64-bit 6 MB
Rogue Robs Trains - 0.0.3b_post-campo - linux 64-bit 1 MB
Rogue Robs Trains - 0.0.3b_post-campo - linux 32-bit 1 MB
Rogue Robs Trains - 7drl_0.0.1 - windows 32-bit 4 MB
Rogue Robs Trains - 7drl_0.0.1 - windows 64-bit 6 MB
Rogue Robs Trains - 7drl_0.0.1 - linux 32-bit 1 MB
Rogue Robs Trains - 7drl_0.0.1 - linux 64-bit 1 MB

Development log


Log in with itch.io to leave a comment.


I have just seen a video of this nice game on the channel of ToneHack.


This is such an awesome project! It reminds me of DoomRL with the quick gameplay. It's fun to explore the weapons and try to adjust tactics. Well done, I'm excited to look at your other work!

Thanks! :) Comparison with DoomRL is huge praise!

> I'm excited to look at your other work!

It's my best game so far. But I'm going to use RRT's mechanics in a bit larger project - I hope it goes well :)

(1 edit) (+1)

My score 418, very nice.

Great job on completing the 7DRL! This is very nicely done. The shooting mechanics are cool, almost everything seemed to work as intended for me. I experienced two minor bugs (the animation didn't work for me, and the game window did not want to close, but instead multiplied my score when I tried to quit). Aside from that, though, very good.

I'm wondering if you were tempted to make the subsequent cars of the train procedurally generated? Would be cool to have the "special" cars (like the last car or the locomotive) read from JSON files, as you did, but then randomly generate some cars in-between, to make the experience a bit longer. Though I'm not sure if you could manage to finish both pre-made and randomly generated locations before the deadline.

I loved the gun variety, but I have to say there is very little motivation to switch guns, since the initial ones you have are good enough for the job. It would be cool to have an actual progression, and force the player to switch guns as they go (I guess this is something you could easily improve post-campo).

Once again congrats!

Hello! I'm gland you liked it, and thank you very much for feedback :)  

Because of time pressure, I forgot to include info about some keybindings in readme or in-game - I will fix it in post-campo release. To quit game during run, you need to use <SHIFT>+Q. To save a game - <SHIFT> + S. To close high scores screen, player needs to press <SPACE> or <ENTER> or <ESC>.

At first, I'd like to obtain more info about bugs. What version were you playing? What is your OS? How did you try to close window? Are you sure that you turned animations on? It's off by default as it doesn't fit architecture *that* well.

Generation of levels is kind of long story... Carriages are not always the same - I'm using template to determine their shape, and details are randomly chosen from prefabs. I think it would work well for some sort of semi-open-world game (I thought about "clean village from bandits" trope as well), but because carriages are rather small and symmetric, it didn't work out. All implemented (semi)procedurally generated elements serves fluff and flavor mostly. I thought about using "real" procedural generation, but I didn't have enough time. But it's on my todo list :)

More guns, and bigger differencies between guns, are also todo :) but not very high in priority. My initial goal wasn't about progress. I just wanted provide variety to gameplay - as enemies follows the same set of rules as player, bandit with Winchester rifle is more dangerous than one with Springfield. I don't know if I'm going to implement real progression, thought - due theme, this game has very limited scope. Yet, I like Old West enough to try implement somethign bigger in future...

First, I have to tweak RAWIG template. It worked well as 7drl architecture, but it was first time when I used it for real development, and I learnt what its flaws are. Performance of AI algorithm must be improved...

Once again, thanks for feedback and playing :)

Ah, I it seems that I did not turn the animations on then - I didn't realise that they weren't enabled by default :)

Concerning the problem with closing the game, I tried to close the window when I reached the ending screen, simply by clicking the X button in the upper right corner of the application window. Instead of closing the window, clicking the X button multiplied my score for some reason. I was playing the Windows 64-bit version on Windows 8.1. I think it would be cool to debug this, since stopping the user from closing a windowed application by clicking X may obviously be seen as bad design ^^' Even though I think this is a minor bug overall :)

Regarding variety and progression, I think from a game design standpoint these two tend to go hand in hand. What I mean is that you may give your player a huge variation in content, but if there is no progression, they will have little motivation to explore it. Even in games with very small scope I think progression is important, since it gives a feeling of direction to the gameplay - if you don't have a progression in difficulty, the gameplay is basically the player character moving from one end of the map to the other.

That is not to say that there is NO progression in RogueRobsTrains, because there is - I did feel that the challenge was increasing a bit with every subsequent car. It's only that it wasn't enough for me to try and switch my weapons around :)

(1 edit)

I can't reproduce multiplying score bug, nor see the reason in code. Which screen was affected? With flavour victory/lose text, or with high scores list?

I added quitting game by "X" button, but it's going to be some kind of panic button (close immediately, save game) for now - until I'll implement submenu for handling this case.

Actually, there is no progression - except starting and final levels, the order of carriages is random.

And introducing progression through weapons is not likely. Don't get me wrong, I see the point. But it can't be done easily due to basic game mechanics. Enemies have only 1 HP, so I can't just buff weapon damage. There are other properties (accuracy, effective range), but I can tinker with them only a little - five shots off target in a row would be opposite of fun ;) ...on the other hand, maybe I could add new mechanics, like sawn-off shotgun with cone area-of-fire... 

The bug appeared on the screen with victory text :)

> Actually, there is no progression - except starting and final levels, the order of carriages is random.

Ha, I was pretty sure the number of enemies was increasing with each carriage as I went (I was finishing the levels with lower and lower health). Is the number of enemies in each carriage randomised as well? If so, I just had an interesting playthrough then.


>The bug appeared on the screen with victory text

Ah, I see it now! OK, it will be fixed in next release. Thanks for help!

>Is the number of enemies in each carriage randomised as well?

Yes, partially. Number of enemies is random within a range specified for each car. So, there are easier and harder levels, but some variety is provided ;)