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

Back to Browse Entries

All work and no play

by wijnen - Compo Entry

Monsters have to live by strange rules. Spend a week living the life of a monster that must produce offspring... while the offspring will eat them if they get the chance.

My main goal during this LD was to finish a project, so I was not very ambitious in what I was going for. The library I use for presentation, m.grl, uses webgl and supports 3-D games. I was hoping to use that feature, but ran out of time and didn't get the artwork done. I particularly like the story of the game, which won't be entirely clear until you finish it. So I encourage you to do that. :-D

Controls during story: space for next line, escape to skip the rest of the story.

Controls during the game: Move around with cursor keys. Lay eggs with space. Controls are queued and handled at a fixed pace. This means you can prepare to run around the corner, but you can also "prepare" to run into a wall for a minute, leaving you effectively paralyzed. So don't do that.

A big part of the project was to get my multiplayer web based python module working. Using it for a single player game is a bit strange, but it works.

The game runs as a web server. Unfortunately I didn't have a good place to host it in that way, so your best options is to download it and run it locally. To do that, unpack it somewhere and run "python3 monster". The game will be available on http://localhost:8890/. Also see below for requirements.

I have set up an instance on my personal machine. There are two downsides to using it: it has a really slow internet connection, so it takes about 10 minutes to start the game, and if someone is already on there, you get to view their game without the ability to control it. If there isn't anyone on there, you'll enter it in the state they left it in, so you may want to die to restart it.

You need to have Python3 and GLib (including Python bindings) installed to run this game. If you don't have the GLib bindings, it will crash saying that websockets.RPChttpd doesn't exist.

I only tested this in Firefox. From the comments I understand that it doesn't work on Chrome.

If you want to understand the graphics style and can't (bother to) finish the game, read the story at the start of "monster".

Downloads and Links




snooze82 says ...
Aug 24, 2015 @ 6:43pm

"You were eaten by your kid" \o/

MattV says ...
Aug 25, 2015 @ 4:07am

I keep opening it in a new tab and getting eaten before I click back and realize it opened! :P

wilthord says ...
Aug 27, 2015 @ 1:05am

It doesn't load the web game :(

chanko08 says ...
Aug 27, 2015 @ 1:38am

Kind of a bummer, keyboard controls don't seem to work on my machine (Ubuntu Chrome ver43). Also, if anyone is wondering if you host it yourself, it should be hosting on http://localhost:8890

sprawl says ...
Aug 27, 2015 @ 1:39am

Web version doesn't work and I'm not too sure how to open the game with the .zip you gave in the windows link.

I'll hold my rating and come back later.

Pilly says ...
Aug 27, 2015 @ 3:15am

Ahh, keyboard controls not working for me either (tried Chrome and Firefox on a Mac). I'll check back later.

Sadale says ...
Aug 27, 2015 @ 3:48am

Good concept. A few notes:
* Better launching instruction needed. The game is available in http://localhost:8890 if you're using downloaded version. Took me a while to figure that out
* The delay of control is high
* Doesn't work on Google Chrome

hdong says ...
Aug 27, 2015 @ 3:49am


Skyfish says ...
Aug 27, 2015 @ 2:52pm

It doesn't work for me.

dydx says ...
Aug 28, 2015 @ 3:06am

I'm not too familiar with Python but I'm trying to get this to work. Any idea how to fix this issue:

Traceback (most recent call last):
File "./", line 329, in <module>
webgame.Game(main, cmd = {'quit': webgame.quit})
File "/Users/chris/Downloads/monster/", line 369, in Game
server = websockets.RPChttpd(config['port'], Connection, tls = config['tls'], httpdirs = fhs.read_data('html', opened = False, multiple = True, dir = True))
AttributeError: 'module' object has no attribute 'RPChttpd'

I'm on mac and I'm using Python 3.4.3.

AngryRebel says ...
Aug 28, 2015 @ 5:35am

Controls don't work for me.

nassi says ...
Aug 28, 2015 @ 12:57pm

Finally got around to playing this (I did promise to play the games of those who rated my game after all ;)). Gave up trying to run this on Windows, but luckily I already had all the needed dependancies on my Arch netbook. Pretty weird architecture especially considering that it's (at the moment) a single player game.

Wasn't a huge fan of the game. Controls didn't really feel good and the difficulty seemed very RNG based. Made it to Saturday on my third run, but gave up after that. The aesthetic was also pretty basic. Too bad I didn't get to experience the whole story. But hey, you achieved your goal, good job!

valid4life says ...
Aug 29, 2015 @ 7:24pm

Try to make launching it a little more user friendly next time :)

UrbanHelsing says ...
Sep 2, 2015 @ 6:04pm

It does not load for me

dwemthy says ...
Sep 2, 2015 @ 7:58pm

Took a very long time to load. Love the egg laying sound effects; sounds painful. Also the dying sound is great.

frnknstn says ...
Sep 14, 2015 @ 9:51am

Fun game, nice idea, but I am not sure I understood the story.

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 ( 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]