Wanderers Postmortem: How a 5 day jam went.


Hi! I'm gonna lay out what Wanderers is, how it got here, and where I want to go with it. For me more than anything, but for you too, if you're interested! :D

So, er, SPOILERS for the game follow! Yep.

First, a deconstruction of what happened.

Wanderers started 6 days ago at 3am after a chat about choose your own adventure books and zines. I realised I could make a narrative exploring engine using Gamemaker's tile system as a base; just draw the art into the tile map, and shuttle the player's view around on the tile map, and also use Gamemaker's collision system to trigger enemies and dialogue! Simple! :D And so at 3am suddenly I'm pumped and excited about making this thing. I remembered I'd seen the B&W Jam a few days before; sure, I'll have this week, and next week, it'll be a breeze! The following morning I discovered I had 5 days to do it; which was tight... but doable? I think? I like a dumb mission, so I got into it right away. First I had a square view test, and that worked really well. I knew from experience it's best to tighten every nut and bolt as you go, so I set my goals deliberately in a very linear way. Basically, until I had fixed up each step and tightened it till it was bulletproof (or as close as I could get), I wouldn't move on to the next one. I mean that's good programming advice in general! But no looning off on weird ideas, I had to stay focussed and keep it tight, and save content for the end. It all has to be done before I added content!

1 - Get navigation system working, check that it's cool. Test it. This was pretty easy and fun to do.

2 - Get battle system working, check that THAT'S cool. Stress test that. This was more difficult. There are a LOT of things that need to happen a certain way for it to feel "right"; a slight delay before the enemy first pops up for example it vital to make the player feel like they're in the world and not just being presented with a slideshow. I also now know why JRPGs often "fade" characters in and out; sliding them can look goofy as hell!! I nearly had sliding in, but it started having knock-on effects to the rest of the game so I left it out. I couldn't afford anything to break or I would run out of time! The battle initially took about a day and a half-ish to get things in, the attack/defend cycle, and the pacing. Stress-testing this stage was... stressful. Turned out you could just bang all the keys and just win every fight. So I flopped the logic in favour of losing, so now it's more of a 50/50. All the UI animation was done at this stage, as I knew I wouldn't have time for it later. It either goes in now or not at all! So I got it in. One thing that REALLY helped here was putting sound into the battles at this point. It helped me work out where one part starts and one part ends. Normally I leave sound to the end but I'm glad I did it here. I used SFXR for the sounds, and edited them with Audacity & Wavepad.

3 - Next I got the dialogue system working. Nothing complicated, just pop up a box and chuck some text in it, one after the other. I've done this before, so it was fairly easy to get up and running. One thing I did do though was make sure I had a custom "bubble" system so I could have different shades for you and the person in front of you. This saved my bacon later!

4 - Now it started to get tricky. I had battles, and dialogue... but I needed dialogue interrupted by battles! So I made a system that chains this all together in an easy to use way; this was what I would be writing the script with after all, so it HAD to be simple and intuitive to use. Again I've done this before, but it took a bit to get my head around it and plumb it together. Worked well though!

5 - Time for adding content right? Wait!! Er... the battles are pretty static. The defending and attacking are fun, but with the random nature of it and the repetitiveness it got old pretty fast. I had also just pulled out the "down" arrow from the navigation section; I realised that going backwards down the path felt weird because you expect to turn around, when actually you're just side-stepping around the map. Making it "move forward or sideways only" fixed this problem and feels like you're progressing. I got around this feeling too limited by having teleports secretly move the player around so I could force them where to go. So! I now have no down button in the navigation, and I pulled it out of the battles too for consistancy. But I'd been thinking about the story in vague terms, and I knew I wanted a companion to come with you. How about if they attacked too? If it charged as you defended? Could put a bit more variety into battles. So I tried it, and really enjoyed whacking a rat with an axe. And it also changed the pace, and if a battle was going on too long the axe is your "WIN" button. The axe icon took a while to get right, it was either too big or too small! I kinda got there in the end but I just left it when it worked.

6 - So the engine is done and pretty well tested. So now what? I decided to make the square view more widescreen. This took WAY longer than it should have, like, hours. Turns out I had just assumed it would never not be square and just used magic numbers everywhere. I replaced them all with proper constants, like I should have in the first place. First thing that went wrong, but it wasn't too bad considering. But suddenly I have about 2 days left.

7 - Enemies! This is the fun part. I just drew skeletons and stuff for a few hours. I don't know how long they all took. They all behaved the same at this point, same timings and everything. They were capable of differences, but I figured if I run out of time having them all act the same was fine, I'd rather have story or backgrounds.

8 - Now more backgrounds! Time is getting short, and I still have only the vaguest idea of story and very little actual content. I got a bit lost here. I was using a HUGE tilemap to do the art in, and Gamemaker struggled with editing it. Add to that my Wacom was playing up and not drawing properly. I ended up turning off Windows Ink in the drivers (I thought I already had but it had come back?? Took me hours to work this out.), tried ASEprite for art, but eventually settled on Krita. Krita rocks! Did loads of backgrounds, tried fancy hatching on them, didn't like it, took it out. More time wasted. Now I had a day to write and implement all the story, and chase up any other extra issues. ARGH

9 - Luckily I have awesome friends. Claude TC (Mushroom Forest) and Jio Butler (Happy Tree Glade) responded to my wailing at 1am to draw me a couple more cool backgrounds, giving me a bit more breathing room in the story. Thank yoouuu!!!

10 - So now I'm writing, I have beer as is traditional, and I'm also fixing the engine to do what I want as I go. Your barbarian friend appears after a short while? Code it in! Thankfully the chaining system I designed earlier handled random stuff like that pretty well, but the hardest thing to do at this point was writing dialogue halfway coherent while not screwing up the code as I bend it to my will. A tough line to walk but it actually worked. I wrote 75% of the story, and went to bed.

11 - I'm up! 6 hours left! I finish writing the story, and realise I haven't set it up at all; Amada is a character from another comic I drew a few years back, and I'd intended to draw her entrance, or have the player play through it; but my art time was now officially zero. Luckily I'd coded the dialogue system to have custom bubbles, so I set up a "narrator" bubble and I was set! This took care of the ending too, and the Pub scene. BOOM! The rest of the hours was spent testing, customising enemy timings and balancing them out, playing the game through, over and over, trying desperately not to screw anything up. I did, a few times. Dialogue was erased and lost and hastily rewritten, artwork accidentally stamped over stuff. I was also fixing other issues I hadn't seen before, hangovers from changing the view size were still chasing me around. Finally, right at the end, I updated the artwork in the background tileset and WHAM, the tilemap went dark. It still runs ok, but I can't see what I'm editing anymore. And due to being frazzled I had just saved it before I took a version and I didn't have time to go back further. It's still like that now! I just left it and had to change the scripts by remembering which one was which. Not ideal! This also explains why you run through a solid wall if you take a certain route; I can't see where the tile is to fix it! So yeah, that was it. I send a build to my friends (as I had been throughout to make sure it all worked) and bugfixed, and uploaded, and bugfixed, and uploaded. Bugs always pop up when you upload, it's like rain to worms. The last thing I did was to make the end boss harder, have the Pub restore your health to 15 if you're under it, and have the Barbarian charge his attack up before the boss' final stage to make it at least a little fair. (Yeah I did that all at once, living dangerously! I try to do one thing at a time & test, but I needed them fast!) Then I ran out of time and the jam was over. Freedom!
12 - oh, wait, I need a screenshot and all my screenshots have bugs in them. AAGHH

So yeah. Remaining bugs that I know about:

- The WALL that isn't supposed to be there

- Sometimes an axe icon will just hang around.

- The barbarian avatar flashes when you move. The code is identical to Amada's avatar. I'm missing something, I have no idea what though.

- YOU CAN'T DIE. That's why you have so much health! If you find yourself in the negative healths, then... I dunno, pretend to be dead? I didnt work out what to do about this, but it's not that important I think. I wanted a vague sense of jeopardy and an inconsequential health number kinda does that.

What remains to be done?

- A proper ENDING. I really struggled with the one that's in there, it needs a pic of them down the pub or something, a proper reward for playing through to the end. I promised myself that every game I made would have a proper ending so I definitely still need to do that. I'm not a fan of "You Win! Congrats now play again" endings, I like cool THINGS. Need to end on a cool thing.

- A decent intro! I suck at writing prose, and I'd rather show it than tell it. Aaaaart!

- Music! Music would be great. Not sure how yet, Nanostudio would be the sensible choice, Korg Volcas are what I want to use, but may be slightly too hi-fi for this. I need a really lo-fi pianoroll thing, maybe PxTone? YES.

- A pass over the dialogue & story. What's in there at the moment is basically a feverish first draft. I leaned rather hard on the shift key, and there's a lot that's underbaked, and some (the ending!!) that's over-sprinkled.

- More enemies!! More enemy art, I want a skeleton wearing a mushroom hat, at least.

- Better enemy behaviour! More varied battles. I did my best but I was pretty frazzled at the end and was banging numbers in hoping they did what I wanted. Battles are fun, but entirely random, so they could be funner if I controlled what happened more. The last boss for example is either a cakewalk or impossible depending on where the numbers land. Some enemies have big x3 attacks that you might not ever see. Stuff like that.

- There's no phantogast logo/anim at the start! WHAT

- Particle effects etc! I want more GOOREE. Of the B&W variety. Really mash up them rats.

- Player death! Assuming I work out how to do it. I might leave it.

But yeah! I'm happy with how this turned out. It's a story with an end, even if it's not a great end, so that's a win! And I really enjoyed waiting for the brill art my friends did to come in, so I'd love to do a collab jam sometime. Jams are cool, I've learned.

So yeah, I'm gonna take a break for a bit, then come back to it and see if I can make a PLUS version. A post-jam version!

But first I'm going to play everyone elses games this week and rate 'em. Can't wait. :D After some sleep of course!

Thanks for reading!

Get Wanderers

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.