Ludum Dare 30 — August 22nd-25th, 2014 — Theme: Connected Worlds

[ Real World Gatherings | Ludum Deals | Warmup Weekend (Games) | MiniLD #53 | Wallpaper (1) (2) (3) | Mailing List ]

Back to Browse Entries

Torn Between Worlds

by CaptainCabbage - 48 Hour Compo Entry

In this game you are trying to escape your prison by grabbing sources of power to unlock the doors. You must travel between two parallel worlds to reach these power sources and to avoid certain death by fireballs (trust me, that is what they are).

The game was written entirely in C++ using OpenGL, GLEW, GLFW3, and PortAudio. No sound, music, or graphics creation tools of any sort were used. Everything was done entirely in code, hence the retro feel.

Arrow keys control movement.
Space key switched between worlds, and returns you to the world after death.
Escape key exits the game.

There is only one level. Sorry.

Downloads and Links




Donutttt says ...
Aug 26, 2014 @ 5:17pm

Nice idea, really fun. Especially liked the music. Great job!

jimmymcmillan says ...
Aug 29, 2014 @ 7:52am

Unfortunately it crashes on launch for me on windows.

miwuc says ...
Aug 29, 2014 @ 8:33am

I really like the concept, but the problem is that when you're in the blue world, you have no way of timing your jump back to the red world to avoid certain death by fireball. If you could see the two worlds side by side maybe that would have helped. Otherwise great idea and fits in the theme perfectly, nicely done.
(and I'm on mac so I went out of my way to install half a dozen lib and compile this from source, because your screenshot was intriguing!)

Aug 31, 2014 @ 6:13am

Donutttt, thank you for the comment. The music was done in minutes while the Code to generate the waveforms took nearly 30% of my dev time. I will be attaching the CC0 Public Domain License to the Code should you want to use the sound engine. Jimmy, wish I knew what version you are using. Will contact you later. Miwuc, the world changes were meant to freeze time in the other world. So you would have to plan your switches in order to not trap yourself against certain death. I am definitely considering your approach as I am remaking this for Android and iOS and would rather it be fun for all, my just to meet my vision. I will rate your games shortly and send you these messages privately. Thank you.

JNyknn says ...
Aug 31, 2014 @ 6:45am

Nice puzzles, but those fireballs in the first level reappears too frequently. Or maybe it's just my lack of skills...

Nooner Bear says ...
Aug 31, 2014 @ 6:59am

Good work on this one!

Aug 31, 2014 @ 7:23am

I couldn't really get past the first level because I couldn't tell if the cannons were shooting or not, there was no feedback about if the cannons cycled while you were in the other world or not, or anything like that, it was fairly frustrating

jprogman says ...
Aug 31, 2014 @ 9:01am

Nice idea. I do wish the controlling more loose because I get myself caught by the walls even by a few pixels. So precision is what kept on killing me, and I did died a lot. Nice start on your game through!

4xisblack says ...
Aug 31, 2014 @ 9:05am

The completely procedural graphics and sound make for a pretty authentic 'retro' feel. I was able to work out the timing between worlds with some simple experimentation, and from there the solutions became clear. Well done!

Aug 31, 2014 @ 3:13pm

JNyknn, I spent a bit of time tweaking the fireball cycles. The goal was to have different rates of fire for each launcher but I just simply didn't have the time to rework it. I settled on the current setting to maintain difficulty. I am reworking the mechanics for the Android port, but working in strictly C++, it is taking a while.

Nooner Bear, thank you!

Oogaboogacaveman, I apologize for the difficulty. I would have liked to have a better set of instructions in-game, but just didn't have the time to finish the models for the entire alphabet. The cannons do not cycle while in the other world. I am considering showing both worlds on screen at once (in a non-distracting manner) as another player suggested. If I had time for more levels, I could have eased the player into the difficulty in a much more entertaining way. Thank you for your feedback!

Jprogman, as far as I can tell, the movement is the only glitch in the game. Not the best thing to ave glitches, I'll admit. This ability to even win wasn't implemented until the last 15 minutes of the compo, so I never had the chance to fix the collision system (where the movement problems come from).

4xisblack, you have explained my ultimate reason for entering the compo. I really wanted to go back to the roots of gaming and create completely from scratch. The audio was a huge pain from buffer underruns from the game Not generating sound fast enough for the output (dynamically at 44100 times per second) to mixing issues where sounds didn't blend well for the ears. Glad you made it through, though.

Thank you everyone for your input! As soon as I can get my laptop running again, I will play test your entries!

Aug 31, 2014 @ 4:03pm

Difficult, but fun.

Pierrec says ...
Aug 31, 2014 @ 8:56pm

Nice gameplay but I can't get past the first level...

Aug 31, 2014 @ 10:08pm

Pierrec, there is only one level. I had run out of time in the compo.

Retr0spectrum says ...
Sep 1, 2014 @ 7:39pm

I tried to run on Lubuntu 14.04 and got this error: ./TornBetweenWorlds: error while loading shared libraries: cannot open shared object file: No such file or directory

IsaacL.Balogh says ...
Sep 1, 2014 @ 7:40pm

Interesting idea but it seemed like when I went into the blue world the firing things didn't reset timers or keep firing so they just waited and if I had went there to try and escape then went back I'd lose immediately.

Retr0spectrum says ...
Sep 1, 2014 @ 7:45pm

After installing libportaudio2 and libglew1.10 , I got this error on Lubuntu 14.04 (32-bit):
Segmentation fault (core dumped)

Sep 1, 2014 @ 7:47pm

Retr0spectrum, I meant to compile with the static library so that wouldn't happen. My apologies. Try running 'sudo apt-get install libglew' or use libglew-dev if that doesn't work.

Isaac, I was pondering having both fireballs that continue to process in one world while they would freeze while away in the other.

Sep 1, 2014 @ 7:48pm

Retr0, I will have to look into th s further. Thank you!

Fazz says ...
Sep 2, 2014 @ 12:13am

Shame there's only one level, this could be a nice little puzzle game.

kidando says ...
Sep 3, 2014 @ 1:17pm

Great concept. Kinda hard for me. The music takes me way back. Your game has my respect.

lotusgame says ...
Sep 5, 2014 @ 7:11am

I am impressed about coding graphics.
But the game difficulty ask too much. You should make the time flow don't stop in red wolrd when you go into the blue one.

Sep 14, 2014 @ 3:56pm

Thank you everyone for your kind words and critiques. The Android version is coming along nicely. Given more time and your thoughts has really helped me to make this concept into something rather imaginative and entertaining.

Sep 14, 2014 @ 4:51pm

Brilliant, very challenging, but totally accomplishable! Love the music too, shame there was only one level, I could have kept playing it for ages!

You must sign in to comment.

IMPORTANT NOTE: If you want to place in the final results, you NEED votes. The easiest way to get votes is by rating other games. Judging lasts for 3 weeks following the end of Ludum Dare. For best effect, rate 20 games as soon as possible. Rating more games is encouraged.


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.

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.

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 about 20 games to improve your visibility.

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.

MY GAME CRASHES, IS UNBEATABLE, OR I MADE A TYPO: We allow you to fix crash or win condition bugs after the deadline (in a sense, like “porting” to support more players). We also allow “typo” bugs. I.e. A true that should have been a false, a word that should have been a different word, very tiny changes that you would have caught if you had more sleep. We leave this open to interpretation, but generally speaking your game should be identical to the game you submitted. No new features, just things you messed up last minute. Typos.

[cache: storing page]