Ludum Dare 33 — August 21st-24th, 2015 — Theme: You are the Monster

Back to Browse Entries

stacktrace

by TheMorfeus - Compo Entry

You work for a shady government organization, that specializes in software and encryption.

One day, the superiors had brought you this machine and only one task: fix it. No questions asked.
But at what cost?

The game will require you to analyze inputs, and guess what kind of actions you have to perform on them, to give the expected outputs.
As you fix the machine, messages from unlocked memory banks pop up, containing a bit more info than some would like to know about what’s it used for…

Will you keep coding?

=====IMPORTANT=====
DO NOT download the game if you do not like or do not know how to code.
This game requires you to write code in an assembly-like language.

===LESS IMPORTANT===
Read the assignment before you start playing!
Also, the emulator can run infinite times until it gets the correct answers, so you can play around with the language and code, and practice at any time you want.

===HOW TO RUN===
1)Make sure you have Java 8 installed
2)Extract the zip file
3)Double click Stacktrace.jar file.


BEFORE YOU RATE THE THEME: Play the whole game. The story is really unclear until the last level is beaten.

ALSO: The game might, and probably will be buggy! If it ends right after a cutscene, doesnt work or something, LET ME KNOW!

Downloads and Links


Ratings

Coolness57%
#60Innovation3.83
#128Overall3.68
#211Mood3.38
#313Fun3.24
#425Graphics3.17
#502Audio2.64
#738Theme2.89

Comments

TheMorfeus says ...
Aug 24, 2015 @ 1:14am

Wondering if anyone will get to the end without cheating...
I believe in you, Ludum Dare people!

PokeyOne says ...
Aug 24, 2015 @ 5:14am

I think the zip is broken

thedillo says ...
Aug 24, 2015 @ 6:07am

Damn that's challenging! Test 3 and difficulty goes uphill! Great game!

emmflo says ...
Aug 24, 2015 @ 6:44am

Hum... I don't understand third output of test 3 :/

memilian says ...
Aug 24, 2015 @ 7:25am

I don't either, even if I output the expected 10 value, the test result is NOK... Is this a bug ?

TheMorfeus says ...
Aug 24, 2015 @ 8:40am

ARGH, damn it, it was a bug. And a rather embarrassing one - the output for test 3.3 was incorrect both in docs AND the code differently. Redownload the game, replace data.dat to keep the passwords, enter the one for test 3 and try it again :D

I was really sleepy, sorry ;)

Aug 24, 2015 @ 8:42pm

very nice

AndyGates says ...
Aug 24, 2015 @ 9:08pm

Unfortunately I can't seem to get it to run. When I run the .jar nothing happens. I also tried running from command line, and it prints out that its loading the assets file, then some numbers, then nothing.

I have the java runtime installed and fully updated. Any ideas? The game looks really interesting!

Zammalad says ...
Aug 24, 2015 @ 9:13pm

Sadface, I was really looking forward to playing this as it looks great and sounds right up my street. Sadly running the .jar did nothing.

dalbinblue says ...
Aug 24, 2015 @ 9:20pm

I was unfortunately not able to get this to run either. No error message when I ran it, but there was some information printed to the screen if it helps:

[Assets] Loading assets from C:\Users\dalbi\Downloads\stacktrace_ld33\assets.pak
...
[Assets] Done loading.
1.0 2.0 2.0
2.0 2.0 4.0
2.0 1.0 4.0
4.0 2.0 6.0
0.0 1.0 2.0

Note that no other UI window attempted to open, just that as a message and no further.

mde says ...
Aug 24, 2015 @ 9:22pm

For me the game doesn't open and even when running from terminal doesn't give a error message(stacktrace xD). Would love to play it. I'm running it on Windows if that helps.

Itay2805 says ...
Aug 24, 2015 @ 9:23pm

Same thing as AndyGates got, I am using java 1.8 and windows 8.1 if this helps

HACKhalo2 says ...
Aug 24, 2015 @ 9:24pm

Yea, it looks like the game is broken now :(

mde says ...
Aug 24, 2015 @ 9:24pm

Whoops, there were 2 guys faster than me to report that bug...

SudoDave says ...
Aug 24, 2015 @ 9:29pm

nothing pops up when I run it, sorry :\

totallybueno says ...
Aug 24, 2015 @ 9:36pm

Not working for me on Win 8.1

Cosine says ...
Aug 24, 2015 @ 9:39pm

I ran "Stacktrace.jar" and nothing happened... I was really sad too because this sounded awesome!

TheMorfeus says ...
Aug 24, 2015 @ 9:40pm

NOTE TO SELF: DON'T FIX BUGS WHILE HALF ASLEEP
Forgot to remove debug part, which shuts the program down at the start. Fixed version up now.
Gosh, i hate such stupid mistakes.

evandaley says ...
Aug 24, 2015 @ 9:49pm

Cool idea. Doesn't really fit with the theme but still a good game. Nice job

TheMorfeus says ...
Aug 24, 2015 @ 10:00pm

@evandaley - it does, but it is revealed at the end of the game.

Komradus says ...
Aug 24, 2015 @ 10:05pm

Really cool, I enjoy code and that was a nice surprise of a game. I didn't get to the end yet but I'll keep trying.

3CGames says ...
Aug 24, 2015 @ 10:38pm

I spent half an hour on this and it was fun! I didn't finish it as requested, gotta play some other games too hehe. I might come back to it though.

undef says ...
Aug 24, 2015 @ 11:56pm

My favorite so far, even though it's damn difficult once you get to Test 4. Been stuck for a while now...

Connors says ...
Aug 24, 2015 @ 11:57pm

Couldn't un-zip the zip file. But I am on a Mac. :/

Itay2805 says ...
Aug 25, 2015 @ 1:19am

This is one of the best games i played in this LD, It is very fun! Keep on making games like this :)

TheMorfeus says ...
Aug 25, 2015 @ 8:48am

@connors shoots, dont know why that would happen. I zipped it with WinRAR

mde says ...
Aug 25, 2015 @ 1:18pm

Game crashes when completing test 5:
[Assets.getTexture] Texture not found! 1.png
java.lang.NullPointerException
at com.mgzdev.spc.Assets.getTexture(Assets.java:125)
at com.mgzdev.spc.Assets.getTexture(Assets.java:117)
at com.mgzdev.spc.screens.StoryScreen.<init>(StoryScreen.java:90)
at com.mgzdev.spc.screens.GameScreen.render(GameScreen.java:204)
at com.badlogic.gdx.Game.render(Game.java:46)
at com.mgzdev.spc.SPC.render(SPC.java:72)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:214)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)
Exception in thread "LWJGL Application" java.lang.NullPointerException
at com.badlogic.gdx.graphics.g2d.SpriteBatch.flush(SpriteBatch.java:955)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.switchTexture(SpriteBatch.java:1047)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.draw(SpriteBatch.java:512)
at com.mgzdev.spc.screens.StoryScreen.render(StoryScreen.java:119)
at com.badlogic.gdx.Game.render(Game.java:46)
at com.mgzdev.spc.SPC.render(SPC.java:72)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:214)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)

TheMorfeus says ...
Aug 25, 2015 @ 1:33pm

@mde, damn it, the amount of bugs i made... should be up & correct now. Make sure to copy data.dat over to the new version, to keep the passwords.

TheMorfeus says ...
Aug 25, 2015 @ 1:47pm

and the dl server's down. Sorry for that, but nothing i can do.

TheMorfeus says ...
Aug 25, 2015 @ 7:43pm

Dropbox ftw!

mde says ...
Aug 25, 2015 @ 8:07pm

Very cool game! Although I had a hard time solving some of the puzzles and I had to cheat to see the end(didn't want to spend too much time per game), I think that you had a great idea.

TheMorfeus says ...
Aug 25, 2015 @ 8:41pm

@mde is there any private way of contact through which you could tell me how did you cheat? Or did you just compile it yourself? :D

Aug 25, 2015 @ 9:41pm

em... what?

MortalWombat says ...
Aug 25, 2015 @ 9:50pm

Pretty cool game!

Some things are _very_ annoying though:
- Having to constantly use the mouse to click run and then click back into the editor
- Not being able to move the caret. I don't know what drove this decision
- The weird operator order: B A OP. I can understand wanting to make it unique but this makes it even less accessible and does not add anything to the game in my opinion

Overall I really liked it though, I'd actually love to know more about the story but it is a little too cumbersome for me right now. The PDFs rock! I really like the idea of having "real" documents that explain stuff about the game. Reminds me of oldschool game manuals with lots of cool stuff in them.

Also, I find it pretty ironic how a game about assembly programming is written in Java. That's not a negative of course, just a remark. ;-)

TheMorfeus says ...
Aug 25, 2015 @ 10:27pm

@MortalWombat thanks for the feedback!
I do not really remember why i thought that having to click on it is a good idea. Probably sleepiness. The caret is a different thing though - i had to write the whole editor from scratch. And rendering the caret at the correct position was painful enough. That + not enough time in the compo

And the operator order, is called the Reverse Polish Notation. And i just love it, because it makes writing the interpreter/compiler sooo much easier. The language is stack-based as well, so it allows for some fun tricks (which of none are used in the game, sadly)

MortalWombat says ...
Aug 25, 2015 @ 11:20pm

So I really like RPN for my calculators (I've been using an old HP 48G all my life, all the time). Also, I programmed my own little virtual machine a while back which uses a stack and thus RPN (it also has the weirdest "syntax"... take a look: https://github.com/mathkr/pound).

I actually just looked into your manual again to see what it says about pushing operands, and lo and behold it says it black on white.

But maybe you could make it a little more clear by pointing out that A B MUL really isn't one instruction like you would expect coming from x86 asm but rather three instructions:

push A
push B
mul

Also showing the top of the stack (maybe the top 4 or 8 items) could maybe give a better feel?

TheMorfeus says ...
Aug 26, 2015 @ 7:23am

We'll see. Maybe in post mortem.

mde says ...
Aug 26, 2015 @ 3:58pm

Didn't recompile, I just read data.d properly... xD

TheMorfeus says ...
Aug 26, 2015 @ 10:26pm

I pushed a small bugfix up - Test 4 was broken. Sorry for the inconvenience.

dalbinblue says ...
Aug 26, 2015 @ 11:52pm

@TheMorfeus, I just tried running your game again after seeing it was fixed, and think I hit a much worse issue. I clicked new game and it went immediately to what I think i the ending (The first screen it shows is "Another databank, i must check what is says."). Can you take a look at your current release again?

pnkthrepwood says ...
Aug 27, 2015 @ 12:23am

Man this gaem shits my pants and I didn't even tried yet downloading lol

Mach60KAS says ...
Aug 27, 2015 @ 12:26am

@TheMorfeus Confirming @dalbinblue's findings, New Game plays the ending instantly. Looking forward to playing.

Aug 27, 2015 @ 12:43am

hrm... I'd love to play this game, but I find myself being stumped before I can even access the code editor. I've read through all the .PDFs, but none of them seem to explain what is expected of me on the opening screens of the game. I press enter each time as indicated, but the nuke just detonates and I go back to the title screen.
You've been pretty active in the comments, maybe you could give me a little nudge to get started with this game?

Bandersnatch says ...
Aug 27, 2015 @ 1:56am

I think the ending plays instantly =(

benmcnelly says ...
Aug 27, 2015 @ 2:14am

Gosh dang it! I really want to play this, I am on the latest version of Java, do I need the JDK too?

TheMorfeus says ...
Aug 27, 2015 @ 11:07am

ogjkjsgnw;kfjd'f
I knew i'd make this error finally, i am fucking stupid.
Reuploaded. Should work fine now. Gosh, why dont i test things

TheMorfeus says ...
Aug 27, 2015 @ 11:08am

@NickMakesGames the game jumped to the ending, due to me constantly bugging up the game.

Aug 27, 2015 @ 11:58am

Game won't run for me, despite having the latest version of java installed.

TheMorfeus says ...
Aug 27, 2015 @ 12:07pm

@AnaglyphCoding can you run it through command line, and tell me what errors do you get?

AndyGates says ...
Aug 27, 2015 @ 10:23pm

With the latest version I'm pretty sure there's a bug with the integer wrap-around. If I subtract 1 from 0 I end up with 65534, but I'm pretty sure that should be 65535 right? This is breaking test 3. http://puu.sh/jQUCU/57b7ba5abb.png

TheMorfeus says ...
Aug 28, 2015 @ 9:49am

@AndyGates It should be, but i failed there as well. It was late x)
Also, the test 3 is not broken, it is working perfectly. The output is calculated for that incorrect subtracting. (65533 = -2)
Will fix that though.

TheMorfeus says ...
Aug 28, 2015 @ 10:14am

Nobody's going to believe this, but here we go:
When i created this game, i knew it was inspired by something i had already seen some time ago. A game called TIS-100
TIS-100 sat in my mind quietly after i watched a review somewhere online, long time ago. And i forgot about it. During LD i had remembered that there was a game about coding in assembly, so i thought why not have a go at it?
Well, turns out the games are pretty much identical (mechanic-wise that is. They both need the player to read documentation first, both machines spew out random data etc), and that was NOT intentional. Human subconsciousness can be a bitch sometimes. And this time it was. I just remembered that the game was about coding in assembly.
Still, have fun, just like i did creating stacktrace. Hope you won't kill me for that.
Check out the 'original' here: http://www.zachtronics.com/tis-100/

Oh and also bugs should be fixed, have fun.

tmpxyz says ...
Aug 28, 2015 @ 10:40am

Nice work :)

guoboism says ...
Aug 29, 2015 @ 2:09am

Great game out there! Great to see a program game in the jam!

Here are additional info if you get lost:
1 READ the pdf files with the game!
2 The goal of challenge for each level is all in the attachment_2
3 This program will simply output everything input
0 HWR
1 HWR
Hope it can get you started

Biruts says ...
Sep 1, 2015 @ 7:56pm

Very nice project guys, i really love it, please check our game too and if you liked it give us a vote. Look for Road to hell and enjoy.

TheMorfeus says ...
Sep 2, 2015 @ 4:04pm

@Biruts thanks, but it was a solo project, not a team one ;D

UrbanHelsing says ...
Sep 2, 2015 @ 5:03pm

This types of games are very interesting, but if the first task that the player encounters is considered too hard/confusing he will not continue. My tip is to start with something easy so that the player get some concept, then continue with harder challanges

TheMorfeus says ...
Sep 3, 2015 @ 8:28pm

@UrbanHelsing the first task is as easy as it gets. The only easier thing would be to output everything that is inputted.

Druid says ...
Sep 3, 2015 @ 10:43pm

Game looks cool! But... I will not rate this one because i am too dumb for this game :) Sorry. Also, game (probably) worked fine on win 10 ! (just for info)

TheMorfeus says ...
Sep 4, 2015 @ 5:22pm

@Druid would be weird if it didn't, i made it on win10! :D

dalbinblue says ...
Sep 4, 2015 @ 7:01pm

Well, I finally got a few hours to sit down with this game. I love it, but I think I've been defeated at this point. I solved half the assignments, (at least on paper), but I got stuck on figuring out test 4.

My only suggestion is that it's difficult to edit a program once written. If you make a mistake, you need to delete back to the mistake. I understand writing a text editor is very hard, so I won't begrudge the difficulty in program editing.

TheMorfeus says ...
Sep 4, 2015 @ 8:13pm

@dalbinblue I had realized i had made a mistake, in not selecting a monospaced font for the editor. IF i ever get around to making a post-mortem version of that, i probably will fix that. But right now i can only suggest writing code on paper, and then logically working out what's going to happen, then rewriting it into the editor. That's how i'd done it when testing at least :D

LukeZaz says ...
Sep 11, 2015 @ 5:13am

Could do with a easier difficulty curve, and perhaps some tutorial levels in the game. Other than that I liked it - love programming games.

TheMorfeus says ...
Sep 15, 2015 @ 8:33pm

Thanks for the ratings everyone!

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. Historically, more games are entered in the Compo, but with more people and more time, Jam games have the potential to be better (that doesn’t mean they are). Many solo participants do 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 (http://mysite.com/mygame.zip) 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]