Getting Started


It's been a while since I posted an update! I have had a couple of parallel threads going with the dev log for this game, attempting to go back and start at the beginning while also giving updates on playtests. I want to switch to a more general dev log format going forward, so this will be the last "retrospective" one.

For some some background on how the game idea initially came to be, see Inspiration - Part 1 and Inspiration - Part 2.

---

I can place the year I made my first game with Game Maker, and first game ever, by my choice of music. I made a Pong-like game, with a little twist. The ball simply bounced in a square with one open end (the end you're defending with your paddle). The ball would speed up every time it bounced, and the paddle could never stop moving (it either moved up or down at all times). The latter "mechanic" was actually just me not knowing how to make the paddle stop moving. 

I made a game over screen using a default blue-sky-with-clouds background, and a local leaderboard. I threw in the song "Pulse" by The Mad Capsule Markets, a Japanese rock band. The song had just been featured in Tony Hawk's Pro Skater 3, and was just an mp3 I had on my computer that I liked. So I can place this game in maybe late 2001, more likely early 2002. I knew putting pirated music in a game wasn't something I could just do, so I never uploaded this game anywhere. As far as I know, it's completely lost to time.

I didn't return to Game Maker until 2009, after I had graduated from a game design program at The Art Institute of Vancouver in 2008 and had been working as a QA tester for about a year. In the meantime, I had chosen to make Flash my platform of choice for small game projects, only a handful of which were finished and none of which were good. I remember this time period well, if only for how hectic it was. I was working 60-70 hour weeks as a QA tester on FIFA, trying to work on a Game Maker game, trying to recruit people I worked with to help (and getting some soft agreements that lead to nothing), also in the back of my mind thinking I kind of wanted to make music, also thinking I should make something in Unreal for my portfolio, also wanting to play video games as much as I could (and to make sure I've played all the newest games of companies I might apply to!), also wanting to go on dates... and ultimately just being stretched incredibly thin and accomplishing very little. I was 21 years old. To add to all this, my family and I had just moved to a new house that seemed unsustainable for a variety of reasons, and by early 2010 I had moved out to an apartment with a roommate. 

I had an idea for a very short platformer/shooter type game about a boy and his dog stumbling into a hidden facility. I didn't really know what I was doing. I found the project recently and I had figured out jumping through platforms, room transitions and had a simple enemy that walked back and forth on a platform. My character could crouch and I had stubbed in visual indicators of your state. There is no chance this "state" was coded as a state machine, and actually the game was entirely "coded" using the drag-and-drop system from GM.

Six months later I recall trying to make a Dragon Age: Origins mission with its toolkit. Six months after that I was meeting with friends about making a game together, but it never got past writing detailed documents about the story and some casual game ideas. A year after that I was working on a game in Torque2D. A year after that I brought that same game concept to Unity and started over. I was finishing nothing, but learning a lot. My programming skills evolved from "I can copy some code and modify it" to "I can write stuff from scratch but it's probably kind of bad". I eventually took classes at a local college to improve, and ended up refactoring my Unity project. I never finished  it. After two years of just trying to get it stood up and working, I realized it just wasn't that fun. 

By this point I had been in QA for about 6 years, and was extremely fortunate to find myself as one of just a handful of testers in the early phases of development on Gears of War 4. I had the ability to get my hands on the engine, talk to designers on the team, and started to think maybe one day I could transition to a level design role. That day came much sooner than I thought, and even without any solid portfolio work to show between my AIV graduation and my interview, I had lots of game dev experience to talk about. Problems I had solved in my Unity project were great for my technical interview. Programming classes and hundreds of hours of trial and error meant I had a more-than-sufficient foundation of code ability to work in Unreal Engine 4's blueprint system. I became a Junior Level Designer in the summer of 2015.

Without going into my full career history from that point forward, I can state that I gained a lot of experience with UE4. I gained even more experience with level design, and game design more broadly, as a skill. The "skill" here not being the ability to sit down and create an amazing game in a vacuum, but making something bad and being able to realize why it's bad and iterating until it's better. It seems obvious now, but it was a bit of a revelation to me that experienced senior designers were still getting their work ripped apart in reviews. The best ones took it on the chin and made the right changes to address the feedback, often leading to glowing praise in the following review.

Working as a level designer was a dream come true, something that still feels surreal and "I can't believe I actually got there" to this day. But my itch to be creative outside of work did not go away. I started another Unity project. The previous one had been a platformer, and I got so hung up on things like physics and momentum that I barely got much else done. So I decided to make a top-down narrative game with no physics at all.

There was some merit to this idea. It was set in a hotel across multiple eras, and involved helping spirits get to the afterlife by doing quests for them and piecing together the history of the hotel and how so many people died. I think I did have a lot of cool ideas with this, and perhaps it would be worth revisiting one day.

I hit a major snag, though. After Gears of War 4, and in between stints on Gears 5 (I did two contracts on that project, one at the beginning and one at the end), I worked on Luigi's Mansion 3. Next Level Games was (understandably) incredibly cautious about what their staff did outside of work, for fear of damaging their relationship with Nintendo. I didn't even need to ask. It was obvious that "game set in a hotel filled with ghosts" was too much like the game set in a hotel filled with ghosts we were working on, even if mine didn't have any ghost busting or Nintendo characters.

At this point I was missing Unreal a little bit, and decided that for any other side projects I did I would use Unreal. I was less interested in finishing games and more interested in making little demos or trying out some level design ideas. I had some fun in this time period, but ultimately still wanted to make and release a standalone game at some point. When I left NLG and returned to the more indifferent eyes of Microsoft, I also happened to be getting into fighting games. I decided to pair my Unreal skills with my newfound knowledge of frame data and attack priorities, and make a "simple" fighting game. One character (mirror match!), no AI, simple move set. I can make my own animations in Blender, and...

One of the game prototypes I worked on for fun in Unreal.

Ah, I'm not having fun making animations! I don't like the process of importing assets into Unreal! I'm coding everything in blueprint and it's a tangled house of cards! I actually got some aspects of this working okay, but ultimately it just wasn't fun to work on. I became a parent, and my free time became even more precious. 

I feel comfortable in Unreal and Unity as a developer on a team, but if I'm working by myself I want something more nimble. When I felt inspired to make my "Fantasy Zone Metroidvania", I decided to give Game Maker another try. I knew it had been used for a number of prominent indie games over the years, and I looked back on the time I had spent with it fondly. I decided to write code in it this time, and found myself getting things up and running fairly quickly.

Here is what I got working in the first year of sporadic, extremely casual solo development:

  • A ship on-screen with the exact type of movement I was hoping to achieve. It also ricochets off walls.
  • Some basic enemies working.
  • Evolved the art style gradually, eventually landing on chunky pixel art with some scaling/perspective stuff to add depth.
  • Created a camera system and room transition system that suit the needs of the game.
  • Figured out a basic version of the giant blast/wall of death that follows you.
  • Created a store with upgrades purchased with currency dropped by enemies.
  • Created a couple of upgrades, including a very math-heavy one that I ended up scrapping because it wasn't fun.
  • Learned how to create UI and created a health bar and energy meter.
  • Some basic early level design.
  • A lot of ideation and design notes.
  • Began integrating audio (made by my old roommate from the apartment I moved to at the start of 2010!).
  • Got basic save/load working.

Coming to the end of the second year now, some more accomplishments:

  • More enemies!
  • More art style evolution!
  • Lots of tilesets. My ability to create these has vastly improved compared to where I started.
  • Created a listener system that works on enemy deaths and trigger overlaps.
  • Created "hidden" walls.
  • Created an XP/level up system that works in conjunction with the store.
  • Created and iterated heavily on a special object that drops lots of XP.
  • More level design! And iteration/reworking of older designs.
  • Brought the game to several local indie dev meetups for feedback.
  • Created several more abilities/upgrades.
  • More audio integration!
  • Got the giant blast looking much closer to my initial idea.
  • Reworked the giant blast several times to make it more performant.
  • Lots of story documentation, with some of the script written and foundation laid for integrating dialogue into the game.
  • Some working menus.
  • Created, iterated on and reworked some environmental hazards.
  • Created and then scrapped (for now) a rewind feature.
  • Fixed bugs!
  • More stuff I'm probably forgetting!

And all of this while having fun doing it! I know some people love to very quickly release new games, or scale back scope to get something out in a pretty reasonable timeframe, but I'm enjoying this too much. I only get a few hours a week on it, and despite it being work it's actually a perfect hobby/leisure activity for me. I still work in game dev, and I still enjoy it, but it's extremely freeing to end my work day and then work on something where I am making all the creative decisions and learning a ton as I go.

Leave a comment

Log in with itch.io to leave a comment.