Generic Robot Adventure!
A downloadable game for Windows
You are a generic robot who would like to escape from a generic warehouse full of generic, blandly textured obstacles - and also you can poke other generic robots (that we will assume are generically evil for the time being) with your generic robot sword (which you have for some reason).
Generic Robot Adventure! was made over the course of a week for the OLC CodeJam 2020 in GameMaker Studio 2.3. Levels are randomly generated with a recursive backtracking maze generator and are processed into vertex buffers (crudely) because in a fit of naivety, I thought that would be easier than making a few more tiles. Well, at least the levels can be rotated easily this way.
Generic Robot Adventure! should support any X-Input gamepad and most DirectInput gamepads.
Controls:
- Movement - WASD or Gamepad d-pad/left stick
- Attack - Shift or Gamepad face button 3
- Rotate Map - Q and E or Gamepad shoulder buttons
- Restart Game - CTRL + R
- Return to Title - Escape
- Toggle "Debug Mode" - CTRL + D
While in "Debug Mode":
- Zoom map - Z and X
- Spawn Boss - CTRL + E
- Spawn Enemy - CTRL + R
- Spawn Treasure - CTRL + T
- Also, player robot will run while in "Debug Mode"
Source code available here.
Credit - All code and programmer artwork for Generic Robot Adventure! was made by Mushroomstick.
#olcCodeJam2020
Status | Prototype |
Platforms | Windows |
Author | Mushroomstick |
Genre | Action |
Tags | gamemaker-studio, gml, olccodejam2020 |
Download
Install instructions
For Windows, just download, unzip, and run exe. Should be pretty light weight.
For Linux/Mac, WINE at your own risk - Sorry, I don't have anything handy to test that with right now.
Comments
Log in with itch.io to leave a comment.
I really like the map and the textures, the camera as well as the sounds and the music (it's just a shame that there aren't any in play). The title is not complete and leaves the screen. In debug mode, CTRL + E gives a rotation which is a bit annoying. A noclip mode would be pretty cool ^^. Another to either give life or at least make invincible (god). Then one to change "floor". The sound does not play when the enemy / boss and from the front or back but only from the side. The boss crosses the wall lightly. And it would be good if they could attack anyway.
Afterwards, I find it a little bit unfortunate that the levels do not have batteries to restore life. More dynamic things should have existed in order to break the linearity. Like walls with secret passages, switches, decorative objects, etc ... And the key of the repetitive press of shift gives me a problem of remanence.
I was worried that would happen with the title - I didn't have a chance to test it under multiple screen resolutions (it should display properly at 2560x1440). I just ran a quick test at 1080p and the actual game seems to display correctly (looks like the issue is with the GUI layer and the 3d camera appears to be tolerant to varying screen resolutions - I guess that's what I get for using magic numbers on that). You figured out the issue with the hit sound! Looking at the source code, I only call the audio clip on the horizontal collision and forgot to add it to the vertical collision. Enemy AI is super basic - they just kind of point at the player and go (the clipping issue with the boss and walls is because I forgot scale the hitbox up with sprite, so bosses have the exact same hitbox as the regular enemies). If I come back to this, I'd like to add some real pathfinding and a real attack state (right now the player actually takes damage in the player collision code and that's why the enemies don't damage the player if you stand still).
The enemies actually have a 10% chance to drop batteries on death - if you run enough trials, you can see that every once and a while health will get restored. The batteries were one of the last things I coded before submitting and I think the graphic for them is getting drawn somewhere out in space for some reason. The shift key thing is that at one point I played around with a time slowing mechanic and when I abandoned it I must've missed commenting it out in a few places.
There were a few things that I had planned to add before I ran out of time. I wanted there to be doors that didn't open until all the enemies were cleared from a room, I wanted bombs (and like treasure rooms you could bomb into), I wanted the walls/floors to have multiple textures that would be picked randomly (like the bricks could have multiple levels of distress or something - just something to break up all the same-ness), and the big mechanic that I wanted to add would've been a shop/inventory system where you would've been able to upgrade body parts of your robot (like stronger arms/different weapons, faster legs/wheels, maybe limited use items like stealth/smart bombs) - I never got far enough into that to decide if there was going to be like a currency or if it was going to be an experience/skill point kind of thing (maybe a little of both?).
Thanks for the comment! You helped me track down at least one bug that I hadn't figured out yet!