Ludum Dare 36 — August 26th-29th, 2016 — Theme: Ancient Technology

Back to Browse Entries


by TheMonsterFromTheDeep - Competition Entry

TrainStack is a game where you get to experience the joy of trains that blow up a lot.

It is a puzzle game, and the goal is always to get the train to the end of the track. The engine must be placed first, and all the cars behind the engine - but in any order.

Not all cars are used in all puzzles.

Most of the puzzles are p̶r̶e̶t̶t̶y̶ ̶e̶a̶s̶y̶ actually quite difficult, according to the comments. I personally found them easy - probably because I made them, and understand the game mechanics with some level of intuition - but even I was stumped by the last one for a while (and at first it was level 8) because I forgot the solution.

Additional controls not mentioned in the game:
F11 - go fullscreen

Downloads and Links


Aug 29, 2016 @ 5:17am

Very cute little game. I got stuck on the coal car, white car and med car level. I tried every combination and the train kept blowing up. I would have kept playing if I didn't get stuck on that level.

Steven Miller says ...
Aug 29, 2016 @ 5:17am

Good puzzles and wonderful UI. The way the trains move in on the level select and the entire menu presentation in general is spectacular. The spike traps did take a bit of getting used to just to figure exactly how they worked. It would also be nice if the fuel car emptied as it moved to represent its speed (especially since it already looks a little like a battery). Overall, great presentation and good puzzles!

Aug 29, 2016 @ 5:34am

@Steven Miller I did actually think about adding a battery-like meter but I'm afraid I had more important things and ran out of time. I also did later realize that the traps are really hard to see - this is probably one of the biggest issues of the game because it basically breaks it. :/

Some of the puzzles (for example, level 10) are, in fact, pretty bad - it's possible to randomly drag all the cars on and instantly win.

@negativegeforce I guess I didn't actually think the puzzles were very difficult - that one is relatively simple (you can look in SOLUTIONS.txt if you want to see the answer) but it has to do with the fact that you don't always have to use all the cars (I guess I should have made that more obvious in the instructions...)

I guess really the main difficulty from the puzzles is that ya'll are reverse-engineering the process I went through to design the puzzles, which was basically "place saw traps until the thing doesn't explode." I will say though that the general strategy (I would assume, I don't actually know...) is looking at the different pieces of the level (e.g. traps, hills, broken tracks, etc) and trying to figure out the way to get the train to interact with all of those correctly.

It often involves thinking of what pieces could be destroyed to connect other pieces that shouldn't have been connected before and ordering everything to do so.

That is, of course, for the human-designed levels - level 14 and 15 were not designed with the same intent (although I think 15 originally was, but it later came out to be incredibly difficult) and they just involve trying to figure out an order that will move the train without blowing it up.

dvdking says ...
Aug 29, 2016 @ 5:36am

pretty cool how you managed to add so many different trains
progression feels a little overwhelming, as things unlock so fast

also I think level scrolling should have been done with mouse as other controls

Overall really well done game

smilewood says ...
Aug 29, 2016 @ 5:45am

This game looks fantastic. I had trouble understanding the train/trap interaction, as it didn’t always seem to work the way that I expected. I made it almost 6 levels before breaking down and peeking at the solutions. : ) I think that this is an awesome take on the theme, and a great puzzle. I will certainly be trying it again when I am more awake.

KevKevOnFire says ...
Aug 29, 2016 @ 5:53am

Cute, nice, and polished. Great work on the UI as well. There are definitely some clarity problem with the traps, however. My engine kept blowing up until I took 1 car off the train, an unintuitive way of getting past the trap.

eevee says ...
Aug 29, 2016 @ 6:10am

I started out thinking I understood this, and I really liked the idea... then I realized I didn't quite understand, but I could just drag the cars in any order and it would still work... then I hit the first fuel car puzzle, and I'm not sure I have any idea what's going on. The /front/ car exploded with almost every failed attempt, which never happened in any previous puzzle, so I'm totally confused about what the traps actually do. Now I'm stuck on level 7.

I still like the idea, though :) And the presentation is great (and highly appropriate), though might be improved with smaller pixels so I can see more of the track/train at once?

I might leave this title screen music playing forever.

nanimono says ...
Aug 29, 2016 @ 6:20am

good idea at the beginning, but the only solution for timing based traps is bruteforce.

Aug 29, 2016 @ 6:25am

@dvdking I started to realize that especially when hitting "next" twice to get to each level - but I didn't want to just get rid of all the silly stuff I added in so ¯\_(ツ)_/¯

@smilewood Yeah, I really wish I had made the traps more clear. One thing I thought I could do was add a red exclamation mark over the traps whenever they were active, but sadly I never got around to it. :(

@KevKeyOnFire that's actually one of the sort of "puzzle" mechanics that is kind of hidden - the train starts out slightly farther when it has more cars, which can actually change how it interacts with the track. I don't know if this is good design or not, so I'd love to hear more opinions.

@eevee Level 7 is an interesting one. The solution actually appears to not be a solution at first, because the train stops at the broken track until the fuel car runs out...

The raw resolution of the game is 120 x 90. I'm not necessarily good at higher-resolution pixel art - I think my highest-resolution Ludum Dare game is 480 x 360. I did sometimes think it would be better to show more of the track, if possible - do you have any idea of how I could do that?

Aug 29, 2016 @ 6:28am

@nanimono That's interesting to hear... the traps are actually mostly supposed to be seen as a tool for destruction rather than an overall hindrance - basically, most of the traps are actually used to destroy a special part of the train. I guess a better way to do it would be with specialized cars or layouts or something that activated the traps so it could be more easily determined by the end user - but I'm not sure. Actually, maybe the best way would be to activate traps whenever the user pushed the spacebar or something - that way they would have exact knowledge of when to activate the traps. Do you think that would be a good option?

SetTheBet says ...
Aug 29, 2016 @ 6:55am

Well done!
A well polished game with a good eye on details. The way screens move in, the tutorial, the design of text etc. I really like it.
The game still somehow have that "oh I dont get what happened" feeling to it. I think it's about how the traps works and how you protect your neighbours.
Art is perfect and sound is also true to style. One of the most complete game Ive played in here so far.

Azlen says ...
Aug 29, 2016 @ 7:10am

Got stuck on level 6 for a while, but I finally managed to solve it. I love how many different trains you implemented, makes the game feel more complete than many other LD games.

I enjoy how the game guides you at the beginning, and even encourages you to try the wrong setup just to see what happens (at the level with 2 coal cars and a hill).

Great work!

monetai says ...
Aug 29, 2016 @ 12:02pm

Very good LD game, wonderfull graphics and UI. I sometime have problems to remind what are the powers of cars but it was really cool =)

MacDocBros says ...
Aug 29, 2016 @ 6:24pm

I love this game! Graphics are great, sound is grate and it has an interesting puzzle, that I've never seen before. I could play this for days!

rjhelms says ...
Aug 29, 2016 @ 7:24pm

Well done! The art here is charming, and a good example of why I'm a big advocate of chunky pixel art for game jam entries.

Great job on putting together a decent puzzle game in 48 hours. It seems to be a really hard thing to get right, as so much of it hinges on really good level design - I've never been brave enough to try.

I got stuck in a few places - I could never quite wrap my head around exactly how to determine which car would be damaged by a given trap. Including the solutions was a nice touch, 'cause you definitely want people see as much of your game as possible.

Really solid entry, dude!


Donni11 says ...
Aug 29, 2016 @ 9:15pm

Totally awesome and so much fun! Nice Job !

steph88 says ...
Aug 30, 2016 @ 8:12am

Hi, nice game and congratulations ! Simple mechanics that still offered a decent amount of challenge.We're realizing a video with several games of the Ludum Dare #36. We made the same thing at the previous jam.

Can you add your game on ? (it's free)
So we can include also your game in the video ;)
p.s. write #LDJAM in the game's description. (you can already find several games from the jam there)

captainyods says ...
Aug 30, 2016 @ 8:25am

Great game

Amine Tcherak says ...
Aug 30, 2016 @ 11:46am

Very Nice i love your Game Good Works )=

blinry says ...
Aug 30, 2016 @ 1:40pm

Really well-done graphics! At first, we enjoyed the in-game explanations very much, which made the "help" button in the menu kind of unnecessary. But when the wagon were introduced so quickly, we lost track of how they worked. We could not get past the level with the damaged tracks, the mine, and the upward slope. We didn't understand how the mines worked. Are they timing-based?

Aug 31, 2016 @ 12:37am

@blinry the traps are saws, and if you look carefully they come up out of the ground at a specific interval. The best way to think of the puzzles with traps (which would be the reverse of how I thought when building them) is that the traps are built to destroy specific cars - so basically don't build a train to get past the traps, build a train where a car will need to be destroyed after one event (such as a weak track) and before another event (such as a hill).

xzippyzachx says ...
Sep 11, 2016 @ 7:28pm

Great Game! I really like the graphics and animations for the level select and other menu screens.

The music kinda got repetitive, but not too much!
The puzzles got too hard for me after a while, but that's just me.

I think you did a great job for the amount of time you had to make the game. Well Done!

Ryusui says ...
Sep 12, 2016 @ 3:59am

This is a really promising concept and really well-polished, especially the tutorial and the new mechanic explanations, but the puzzles themselves are a bit obtuse for my tastes. I'm glad you included a solutions guide. ^_^;

invader says ...
Sep 15, 2016 @ 8:49am

nice style. Got stock on level 6 - it is hard to determine what cart and where to place it for each particular trap.

You probably missed some sleep() in the main game cycle, since it eats 100% cpu.

Smiley says ...
Sep 15, 2016 @ 8:46pm

wow.. really nice game with a retro feeling to it :) great work on mechanics, graphics and sound

Sep 17, 2016 @ 5:55am


The only code that's running at 100% speed is the drawing code (i.e. it redraws as soon as its done drawing a frame) - do you think that could be causing the problem?

invader says ...
Sep 17, 2016 @ 4:57pm

Yes, that's probably it. It tries to draw as many frames as possible (and it probably can draw 100+). When instead you need just 50-60 for smooth animation.
There are 2 ways to do that:
- create a timer event to trigger each 15ms or so and try drawing there
- measure how much time takes each redraw (like System.currentTime... or even better System.nanoTime) and Thread.sleep for (15ms - last_draw_time) in the end before scheduling another redraw

Sep 17, 2016 @ 8:11pm

Thanks for the insight. You're the first person to observe this problem in any of my games, which have all been built on the same sort of framework thing for the past 3 events, so I'm surprised nobody else has seen this before.

In any case I'll be sure to fix it by the next event. :P

ZYXer says ...
Sep 18, 2016 @ 10:19am

Very clever puzzle game. I must honestly say that I got stuck on one level and just couldn't figure it out and then ragequit (I'm not good at puzzle games). I think you have to explain a bit more how the different cars affect the train. I didn't quite understand why sometimes I could pass broken tracks and sometimes not.

The graphics are simple, but well done. Exactly what a game like this needs. The animtions are awesome, especially those of the level menu and the one between levels. Well done!

Sound is good, but the music sounds a bit out of rhythm at times.

mar3k says ...
Sep 18, 2016 @ 1:23pm

Really nice little game! Great job!

joe40001 says ...
Sep 18, 2016 @ 10:44pm

Great game! I really liked the polish and design and idea, about my only complaint was since the traps seemed to be timing based it seemed like mostly just guessing for the last few levels (I did beat them all). If there was a way to know from the starting line if you were going to hit the traps that would make it more puzzley and less guessy, still well made game though.

Score: (because I like scores)
Overall 4/5
Innovation 4/5
Fun 4/5
Theme 3/5
Graphics 5/5
Audio 4/5
Humor 2/5
Mood 4/5

Sep 19, 2016 @ 12:12am

@ZYXer - thanks for the info! Nobody has mentioned that problem yet.

@joe40001 - thanks for the scores! I'm not sure I would consider my game that great, but I'm glad you at least liked it that much. :)

The main strategy in this as a puzzle game is to think of the traps as a tool to break a car. Most of the levels then become pretty similar - you try to set up a train that will make it past the broken track, and then will get broken in a way that will allow it up the hill.

You must sign in to comment.

Mini Submission FAQ

TEAMS: Teams entering the Jam should pick a single representative to submit your game, or create a team specific account you can share. We currently do not support Team Voting, but sharing an account and together playing and rating games is acceptable.

CAN I ENTER BOTH EVENTS?: You should pick 1 event, whichever you think it’ll do better in. If the idea is strong, and everything plays well enough, you can go Compo. If you’re a perfectionist, and would prefer people to play a more polished game, do the Jam. Many solo participants enter the Jam.

If you made 2 games, unfortunately, the website doesn’t support multiple submissions per user. To submit your 2nd game, you will have to make a 2nd account. Only do this if you made 2 games. Alternatively, if one game is better than the other, then consider just entering the better game.

CAN I KEEP WORKING UNTIL THE DEADLINE?: Yes! Immediately after the 48 or 72 hours, we do something called Submission Hour. As the name suggests, it’s an extra hour for you to package, upload, and submit your games. If there were catastrophic issues trying submitting your game, or you misunderstood how submissions work, that’s okay. It happens. We’re flexible. If you need advice, check with the folks on IRC. If you need an admin, get in touch.

CAN I KEEP WORKING ON MY GAME?: Oh definitely! You should! But for the sake of judging, keep the Compo or Jam version around. You can include a link to the Post-Compo/Post-Jam version of your game on your games page, but sure your main links are the original version.

PORTS: Ports to other platforms can be done after the deadline. That said, the sooner you finish your port, the sooner people can play your game, improving your chances of placing in the final results. For best results, provide a Web version of your game, or a Windows version with no dependencies. Also be sure to rate at least 20 games to improve your visibility (Coolness).

MY GAME CRASHES, IS UNBEATABLE, OR I MADE A TYPO: We allow you to fix crashes, win condition, or tiny bugs after the deadline. In a sense, this is like “porting” to support more players. We leave this open to interpretation, but generally speaking your game should be identical to the game you submitted. No new features, just fixing mistakes you should have caught had you been better rested.

MY GAME DOESN’T SHOW UP: If you can’t find your game, it’s usually because the URL to your downloads are missing ‘http://‘. Fix your URLs ( and you will show up. Alternatively, if you just posted it, wait a minute. The cache may not have refreshed yet.

NOT LOGGED IN?: If you get a message about not being logged in, even though you are, it’s because your web browser cached the non-logged in page. You can fix this by either refreshing your cache or clearing your cache. CTRL+F5 in many browsers. Chrome is a bit more work. Press F12 to enable Developer Mode, then you can right click on the refresh button and select “Empty Cache and Hard Reload”. This option is unavailable if you are not in Developer Mode.

[cache: storing page]