Tuesday, December 24, 2013

Holiday Post thing

Whoa, it seems like forever since my last post. Since the Bit Bazaar ended, I've been focusing my attention on many things, some regarding Gonna Catcha and some not. But there's no time to explain them all here, so I'll pick the most important one.

As I mentioned in my last post, Gonna Catcha was played in an arcade-style environment at the Bit Bazaar on December 7. Players weren't be able to read the manual to figure out how to play the game, as it wasn't available to them. So in an attempt to minimize confusion, I added the instructions screen below, which was shown just before the first round started.



Crash course in spirit catching.

It explained the basic rules and goal of the game, i.e. what you can and can't touch, what you should and shouldn't shoot and how to progress.

I didn't arrive at the Bit Bazaar when it started, so I might have missed some of the early birds playtesting the game. The first people I saw playing didn't seem to have too much trouble figuring out what to do, but as the day went by and more people played, it became apparent that the instruction screen wasn't doing its job very well. My guess that it was too brief and too detailed at the same time, and that confused people about the rules of the game. It presented all of the shooting and touching rules for each NPC type all at once, but due to the lack of space, the descriptions of each rules were too laconic. By the end of the day, I was back to my old ways, explaining the game myself and skipping the instructions screen, and things went by a lot smoother.

In retrospect, the instructions screen was more of a band-aid solution than a real fix to the problem. Since it was a bust, I figured that I need to go to Plan B, which is to use demonstration cutscenes to explicitly show how the game is played. As such, on my to-do-list I've promoted "Demonstration cutscenes" from "Optional" to "Necessary". I also grouped it together with "Attract mode" because the two have one thing in common: the ability for the game to play itself. But before I get into that,



INSTRUCTIONS SCREEN, YOOOOOUUUUU'RE FIRED!!
Or kicked upstairs, whatever.


Ahem. So anyway, I've started working on the new instructions delivery method: new tutorial cutscenes that will replace the old instructions screen. Here is a screenshot of what it looks like so far:


Don't fear him.


Essentially, it's just a half-size level that plays itself to teach new players how to play the game. And speaking of playing itself, I've also started on making the autoplay system too. I think I've got the playback system working pretty well, the recording system on the other hand, which is only here to help me record gameplay to be played back by the autoplay system and may not be part of the final product, has a few bugs to work out. For starters, it generated a 500+ MB output file when it was only supposed to be a few kilobytes in size.

I feel bloated... ugh.

The recording code is working much better now. I'll go into more detail about in a later post, because this one really needs to get out there. I don't know when, because it's the holiday season, with the whoop-de-do and hickory-dock. And don't forget to hang up your sock, 'cause just exactly at 12 o'clock, he'll be coming down the chimney, down.

P.S. Now that I think about it, Donum and Pohena bears some similarities to Sinterklaas and Krampus of Alpine folklore.  Krampus punishes naughty children while Sinterklaas rewards good children. Pohena and Donum does the same with spirits, according to the supplementary material.

Friday, December 6, 2013

Gonna Catcha v.0.8 Post-Mortem (Oh no, somebody catch its spirit!)

Gonna Catcha is gonna be shown in the Arcade at the Bit Bazaar Winter Market on December 7 (the day after this post was originally published). Being an arcade-style game played in an arcade-style environment; Gonna Catcha will be put to the ultimate test in its own element. I've been working hard to get it polished up for public playing. Here's a list of changes and improvements I made between v.0.7.4 and v.0.8.2:

High Score Tables and Name Entry


Your name registrated

This is no doubt the biggest change to the game since the latest update.  Instead of only keep track of one high score value, Gonna Catcha now keeps track of twenty high score values: the top ten for single-player and the top ten for co-op.  Not only that, it also keeps track of the highest round reached for that playthrough and, of course, the player's initials, so that your valiant efforts will be remembered forever for future generations to admire, until someone bumps you off the list. Hmm, better stock up on quarters and snacks.

AAA - the undisputed champion

Instructions Screen


Crash course in spirit catching

As I mentioned earlier, Gonna Catcha will played in an arcade-style environment at the Bit Bazaar. As such, players won't be able to read the manual to figure out how to play the game. Heck, they won't even get the luxury of instructions printed on a cabinet. Sure, I'll be there to help people out if needed, but frankly, after explaining the rules to the many new players to the game in previous playtesting sessions, I'm getting tired of it.

To minimize confusion and delay, I added the above instructions screen, which is shown just before the first round starts. This explains the basic rules and goal of the game: what you can touch, what you can shoot and what the heck is going on. The game's "hidden" rules can be learned through experience. Hey, at least I'm not charging anyone multiple payments of 25¢ to learn the game by trial-and-error.


Thursday, November 28, 2013

High five! I mean, ten!

Last week, I updated Gonna Catcha to v.0.7.4. It was pretty much a knee-jerk response to some issues I encountered when playtesting it last night at Bento Miso. It added an option to toggle a fullscreen mode, to hide your desktop and other windows behind black while you're playing, and a few bugs fixes. Unfortunately, being a knee-jerk response, I didn't test it properly and there are a couple of bugs with the fullscreen mode, though the bugs don't interfere with normal game operation.

In addition to fixing these bugs, the next version, v.0.8.0, will replace the single high score of the current version with a high score table (or two). Here is a screenshot of what it looks like so far:


In addition to keeping track of the top ten scores, it will keep track of the other standard high score information: player initials and the highest round reached. I am considering a second, separate high score table for co-op mode, which will also keep track of which character the player used.

Well, that's all I can do to make this sound bigger and more important than it really is. I'll be doing another meatspace test this Friday. I should really try to finish this before then.


In other news, when I woke up today, I was greeted by this on /r/gamemaker:


As someone work mainly works with vectors for higher-resolution artwork (i.e. not low-res retro sprites), I am pleased by this turn of events.

Sunday, November 17, 2013

My time at the ROM and Gamercamp 2013 - Part 2 [Updated 11/19/2013]

UPDATE 11/19/2013 - For some bizarre reason, I linked "Samegame" in the description of Pyramid Party to the Wikipedia article "Banshee" instead of "Samegame". That has been fixed. Also, I totally left out one Gamercamp Official selection: A Fishing Game with Actual Water. You can now read about it at the bottom of this post.

---

Last time, I talked about my experiences playtesting Rise & Fall at both the Royal Ontario Museum and Gamercamp. In this post, I'll talk about some of the other games that were featured at the two events. Sorry for the lack of pictures; all the ones I took didn't do these games justice.

First off, I'll describe some of the other ROM Game Jam games. Unfortunately, I forgot to make note of the teams' names that made the following games.


Pyramid Party


Sort of like a cross between Wario's Woods and Samegame. (Note: you'll be seeing me use these fusion-of-two-games comparisons a lot in this post.) One or two players each take control of a pharaoh who run and jump around a SameGame-like playfield to give commands to their workers to run, jump and move blocks around. When four or more blocks of the same color are joined together in any way, they become fixed brown blocks that fall and acculmulate at the bottom of the playfield, while the blocks below them bubble their way to the top of the stack(s). The goal of the game is for the player(s) must build as much of a specific structure (shown before the start of each level) on the playfield out of brown blocks before time runs out. Each level has it's own specific structure and quota that must be met.

This game is quite addicting and also difficult if you don't have some sort of strategy planned out.


Relic Ravage


A multiplayer competitive platformer for up to four players that's divided into two stages. In the first stage, players play as warriors who must fight and defeat each other to score points. When a player is killed, they drop an artifact where they died. After a time limit, the first stage ends and the game builds a pyramid on top of all the dropped artifacts. In the second round, the players play as archaeologists/treasure hunters who must dig into the pyramid to collect artifacts and other treasures and bring them back to a pack mule for points, the artifacts dropped in the first round being worth the most. After a second time limit, whoever has the most points is the winner.

What really made this game special is the enthusiasm of the dev team behind this game when there were playing it with the patrons of Gamercamp.


A Funny Thing Happened on the Way to the Afterlife


A trivia game that's pretty much exactly what it say on the tin. You play a recently-deceased character who has to navigate the underworld while answering trivia questions from Anubis and Set, the latter being fond of trick questions. When you answer a question correctly, the weight of your character's heart decreases, and conversely, an incorrect answer make your heart heavier. At the end of the game, you meet Osiris and he weighs your heart against a feather (as per the myth). You win the game if your heart is lighter than the feather, otherwise, you get a bad ending.



Next up, here are some of the games from the Gamercamp official selection that really caught my attention. I have also provided links to the games' and developers' websites.


Friday, November 15, 2013

More public spectacles


Gonna Catcha has been updated to v.0.7.3. This update added a new maze to the game, allowing me to bump up the round cap to 12. This also had the side effect of unlocking an enemy type that wasn't in the previous versions (because it didn't appear until Round 9). NPCs now also gradually speed up after each bonus round after you've played through each maze once. Oh, and there are some miscellaneous tweaks and fixed here and there, yadda yadda yadda.

I will be showing off Gonna Catcha in meatspace at Bento Miso on two occasions:


Since I enjoyed looking at and playing all the games that were showcased at the last Bit Bazaar in May, I thought why not participate this time? The Bit Bazaar offered two options: submitting a game as part of the Arcade or getting a table, which requires you to sell something physical as well (e.g., merchandise, Steam keys or preorders printed on something). Since this is my first time showcasing at the Bit Bazaar and I have no ideas for what to sell, I decided to play it safe and go for the Arcade submission. Perhaps I'll get a table next time. I'll get you next time , Gadget... next time.

Sunday, November 10, 2013

My time at the ROM and Gamercamp 2013 - Part 1

In these past few weeks my team and I have been showing off our ROM Game Jam game, Rise & Fall, to public audiences at the Royal Ontario Museum and Gamercamp 2013. I wanted to write about my full experience at both of these sessions in this post, but it got really long. Therefore, I decided to break it up into multiple parts to be posted over the next week or so. In this first part, I'll talk about my experiences with the playtesting of Rise & Fall

If you been to this blog before, then you know the deal with Rise & Fall. If not, click here and read. I'll wait for you to finish.


Done? OK. The game was first playtested as part of the Ancient Arcade at the ROM for International Archaeology Day (October 19). Our game was displayed on a large monitor and played with two controllers.




As you can see from the picture directly above, I only had one Xbox 360 controller, so I had to use an old Logitech controller as the second one. Unfortunately, it was so old that the game didn't detect it automatically; I had to use Joy2Key to make it work. Another unfortunate thing was I didn't bring my male-to-male 3.5mm audio cable to connect my laptop's headphone jack to the display's PC Audio In jack (to be fair, I didn't even know the display had one of those), so I had to turn my laptop towards the players (from behind the display) and crank up the volume to maximum. Even then, the tiny speakers on the laptop couldn't overpower the ambient noise of the crowds at the museum. The only fortunate thing that happened that day was the discovery of a VGA input port on the display. My laptop, being 5 years old, doesn't have HDMI output (which would have also fixed the audio problem), only VGA.



The game generally received positive feedback from those who played it (especially from the kids) and some even suggested improvements that could be made. There was one kid in his group of friends that managed to quickly figure out the optimal strategy (read: exploit) of the game and remained undefeated. Later during the day, another gentleman found the same strategy exploit and won a lot of games. One player noted that the game favoured the player who was further ahead, since that player's artifacts would provide ample cover and making it very difficult for the other player to hit them.

Taking those into consideration, we moved and changed the properties of some of the artifacts to balance the game before we showed the game at Gamercamp. We also added a fifth artifact on each side that don't serve as platforms or cover, but as an indicator that one side has won. This changed the objective from:

"Defeat your opponent to restore all your artifacts then defeat your opponent once more."

To:

"Defeat your opponent to restore all your artifacts."

which to me is much less confusing (and less explaining on my part).

Saturday, November 2, 2013

Greetings from Gamercamp!

It seems like a long time since I last wrote a post. Since I've released the beta demo of Gonna Catcha, I have been less compelled to write about it since it's much easier to learn about the game by playing it than sitting here reading about it. Also, I was going to post about the International Archaeology Day playtest session with Rise & Fall, but the post ended up being not very interesting on it own, so I'm going to combine it with the Gamercamp playtest session post I'll write about after Gamercamp, which is happening right now. Yay.

In the meantime, I suppose I can talk a bit about what was added to Gonna Catcha since it's release. Aside from several major bug fixes that somehow slipped through my keen eye, the biggest update to the game is the inclusion of several new options in the game's Service Mode (fancy arcade talk for "Options Menu").

Well, there's your problem.

I feel like I'm being very thorough with the amount of customization you can do with the game, and I haven't even put in the sound test or let the player customize gameplay settings yet.

During the development of the co-op mode, I had difficulty deciding how to bind the controls to what keys on the keyboard without the two player bumping their hands into each other. Also, what might be the ideal key bindings for co-op might not be for single-player mode and everyone has their own preferences on what the best key bindings are. In the end, I decided to let the player(s) figure out what controls work best for them and put in a key configuration menu.


UNLIMITED POWER!

This is the first time I've made a key binding system for a game and it turned out to be less trouble and error-prone than I imagined. GameMaker: Studio has built-in functions for rebinding keys, but I ended up creating my own solution.


With great power comes great responsibility.

I have received some feedback from people who played the demo. Aside from pointing out the bugs, most have praised the retro arcade art style and audio of the game, saying that it's quite accurate and devoted. One thing that came up was some people had trouble getting the game started because they couldn't find the "Insert Coin" key. So to help new players, I added "key reminders" on the title screen to help them get started.


I don't understand your crazy
moon controls!

I also made the list of default key bindings clearer in the manual (if people actually read that thing). for those acquainted with the controls, there is an option in Service Mode that allows you to turn the reminders off for a more authentic arcade experience.


Oh man. *tap* *tap* Which button is it?
*tap* *tap* *tap* *tap*

What would make it even more authentic is an entire arcade cabinet, but let's not get ahead of ourselves.

Wednesday, October 23, 2013

Gonna Catcha Beta Demo Released!


The wait is over.  I've released the Gonna Catcha Beta demo.  Download it from here.

In other news, I'll have the write-up for my experiences with Rise & Fall at the Ancient Arcade up soon.

Wednesday, October 16, 2013

You're going to make a public spectacle of yourself.

After some thought and playtesting of the co-op mode, I decided to move the beta release of Gonna Catcha ahead of schedule.  I feel the game is stable and complete enough to be playtested by a wider audience. The things I planned to do before I wanted to release the beta has now been moved to the "Beta → Release Candidate" list. What does that mean? Nothing really. Development will continue as it was before, it's just that there won't be a high score table or attract mode in the beta right away. Technicalities, blah blah blah. However, before I do release the beta, I do need to do a little bit of tidying and housekeeping to get the game ready (i.e. write documentation and make the interface a bit more user-friendly). Stay tuned to this blog for more information and a special TV offer! (Wait, no.)

Not to leave you empty-handed, here's a screenshot of the title screen:

Wait, do you even know how to write that on paper?

Gasp! It has a proper title in it now! After many changes and revisions, I've settled on "導魂使隊" as the Chinese-character title for Gonna Catcha. "導魂使隊" translates to, or at least what I want it to translate to, "team of spirit-guiding emissaries" or "team of psychopomp emissaries".


In related and coincidental news, Rise & Fall will also be making its public debut at the "ROM Game Jam: Ancient Arcade" event at the Royal Ontario Museum in Toronto on October 19, as part of International Archaeology Day. My team and I will be there from 1PM-3PM. So if you happen to be going to the ROM that day, feel free to drop by. This will be the first of a handful of planned appearances by Rise & Fall at a public event. Stay tuned to the blog for more information and we'll double your order absolutely free! Just pay shipping and handling. (Nah.)

Sunday, October 6, 2013

Two-player action!



This week, I switched gears and went back to mainly working on Gonna Catcha, in particular the co-op mode. Things have been more difficult than I imagined. You'd think that with a game that screams "CO-OP GAMEPLAY!!! (Oh, and you can play solo too.)" I would have designed and coded the co-op part first or at least made the single-player mode in a way that would be easily expanded to co-op gameplay.

Well apparently I didn't.

For the sake of simplicity, I designed and coded many of the features in the game around the single-player mode. It turned out that the code was so intimate with the single-player mode that it made coding the co-op mode difficult. To give you an idea of what I had to do, I pretty much had to tear out the code for various features from the game, smack the co-op version of that code onto them, then shove them back into the game. The results seem to be working so far, aside from a few hiccups:


But now the code design isn't as pretty. Oh well, so much for my idealism.  It probably won't matter in the end; I don't think Gonna Catcha is resource-intensive enough for a few pieces of unoptimized code to have any impact on the performance of the game. When the co-op mode is working properly (for the most part), I'll upload a video it, but for now, I give you the above. 

In other news, there was some footage of a "whoopsie doodles" in the development of Rise & Fall that I forgot to upload last week. I think this is a rather common graphical glitch, but I find it amusing nonetheless:

Thursday, September 26, 2013

Where Is That Thing You Were Working On Several Weeks Ago Now?

Okay, I've held off publishing this post for two days now, time to stop writing and actually do it.

(But there just this tiny little thing I want to ad-)

Nope. We've live. Wait, who are "we"? I'm talking to myself again. Anyway...

On this episode of Where Is That Thing You Were Working On Several Weeks Ago Now?, or W.I.T.T.Y.W.W.O.S.W.A.N.? ("Witty Woss Wan"?), we have a gander at Rise & Fall. You know, the thing I worked on as part of the team Robots Mashing Keyboards for the ROM Game Jam. (Oooh, that thing.)


Quite a few things have been added or changed since the ROM Game Jam prototype. The biggest change is the inclusion of jump-through platforms (i.e. platforms that can be passed from below but not above). The original prototype only had completely solid platforms, but to have a greater number and density of platforms in the level, my team decided that we need to have jump-through platforms as well. Seeing how something like this should be Game Programming 101, I should have learned how to do a long time ago, but never did until now. Still, I had to learn it from the source code of this demo by Bill23. Even then, it took me two attempts to get it working right. Other changes are relatively minor, such as adding mercy invincibility, or bug fixes. We will also be changing up some the graphics and adding more levels before the playtest session at the ROM on October 19.

During the development of Rise & Fall, I had encountered the weirdest glitch I've ever seen in all my time using GameMaker, even weirder than the ones I've seen while working on Gonna Catcha. Furthermore, I don't think it was (entirely) my fault:


It looked as though GameMaker didn't rebuild the asset cache after I deleted some objects from the project, so the game ended up drawing the wrong sprites and even creating the wrong objects (i.e. the projectiles seemed to have been replaced with experimental wall section object I had been working on). Clearing the asset cache and rebuilding the game once more fixed everything.

Speaking of Gonna Catcha, nothing visually interesting has happened with it since the last update, so no video or screenshots for you. However, I did completely overhaul how the game handles round progression, now incorporating the NPC speed multiplier I talked about last time. Alright, that another task down for Gonna Catcha, what left? I really should make a list of these things.

Thursday, September 19, 2013

They've gone to plaid!

Today is the Mid-Autumn Festival and also various other full moon-related holidays in other parts of the world.  I thought it would be appropriate to post something about Gonna Catcha today because:

Mid-Autumn Festival --> harvest festival --> harvesting of souls --> psychopomps --> Pohena and Donum
Full moon --> werewolves --> wolves --> Pohena and Donum
Q.E.D.

Actually, I lied; this has nothing to do with any holiday, it's just a coincidence. Anyways...

A week ago I posted a video of gameplay from the playable alpha of Gonna Catcha, and since then I've gotten some useful feedback and suggestions. One of them was the to increase the speed of the spirits and pretas as the game progresses. I thought this was a good idea, so I did just that: put in some code that allows the game to scale the enemy movement speeds:


16x speed is the maximum the game can handle; any higher will cause the spirits and pretas to break free from their imprisonment of the maze and shoot off into oblivion. However, anything higher than 2x just becomes too difficult and frustrating to play (even 2x was pushing it for me).
With this, I now have two ways of increasing the difficulty of the game:
  1. Increasing the speed of NPCs, and 
  2. Increasing the number of NPCs required to be captured and avoided in a round.
With the former, I think I won't have to rely on the latter as much to scale the difficulty as the game progresses, I can ramp up the latter much quicker and make the early rounds less boring.

P.S.  On a serious note, today is also a sad day with the passing away of former Nintendo president Hiroshi Yamauchi: http://www.bbc.co.uk/news/technology-24160150
As someone who started gaming on the Famicom and Game Boy and now the owner of a Wii U and 3DS, this news hit me hard. May he rest in peace.

Great, now I feel awkward for publishing this post today.

Thursday, September 12, 2013

Alpha demo gameplay video thingy

The part of my brain that comes up with clever titles is out of office today.

After some thought, I've decided to make the Gonna Catcha playable demo a closed alpha for testing purposes, as I think it's still too early for me to throw the game up on the internet for open testing.  As a consolation prize, here is a video of the playable demo in action:




So what else do I need to do to move this game from alpha to beta?  Well let's see...
  • More rounds. Which maze the round takes place in and the number of spirits, rocks, preta and bonus items (in bonus rounds only) in it are manual determined by me for each round, rather than determined by some algorithm. Even though the game will have 256 rounds, I'm only going to create round data up until a certain point, then either start repeating the last few rounds or randomly generate round data to fill in the rest.
  • Co-op mode.  It might have modified round data compared to single-player mode to balance the game.
  • Attract mode. How else will you know how to play the game?
  • High score table
  • Controller support
  • Bug fixes and code optimization.  Even when I thought I've squashed most of the major bugs in the game, a new challenger appears:




And here are the features that would be nice to have, but not entirely necessary:
  • CRT shader. The game is setup up to use it, but it's no longer a required feature to me anymore.
  • Demonstration cutscenes. Whether or not I need these will depend on how much info I can cram into the attract mode.
  • Bezel art. Artwork to put on my virtual arcade cabinet.

Well, looks like I've got my work cut out for me. ...Wait, haven't I already said that before?

Monday, September 9, 2013

New and improved blog design!*

I took a small break from game development to redesign this blog. It might not win any awards, but at least it's better than the largely default theme I was using for this blog until now.

Also, I have a new mascot/logo for Quadolor Games. If you haven't noticed it, it's the rabbit thing in the top left. I've nicknamed it "Quadbunny". I actually like how it turned out, as graphic design isn't one of my strong points; I just know enough Adobe Illustrator to get by. I'm also surprised that I didn't just stick with the very first design that came to mind like I usually fear I would do (Quadbunny went through at least eight revisions before reaching this final design).

Quadbunny's red-yellow-green-blue colour scheme is a throwback to an older unused logo when Quadolor Games was still Quadricolour Games. And the reason Quadbunny is a bunny is because, well, I like bunnies, especially ones with Dutch markings:


My second choice would have been a Hotot rabbit, a.k.a. eyeliner bunny:


* Actual impressions may vary. See newspaper for details. Limit one per customer. No refunds.

Monday, September 2, 2013

A revelation

Alright it's a new day, let's fire up GameMaker: Studio and playtest Gonna Catcha to see what needs more work for a playable demo version.

...

...

...

Hmm, everything seems to be in order, no major bugs that I can see. Let's play it again just to make sure.

...

...

Nope, nothing. Hmm, any unimplemented features I need to implement?

New mazes? No, I already have two, which is good enough for the demo.
Extra life system? Nope, I already did that. Extra life at every 20 000 points.
Combining the double and long shot items in one "Power" item? Did that too.

Well, how about bugs? I know there were a lot of them that I needed to get fixed.

Losing lives in a bonus round? No, I changed that. Now you just skip to the next level if you die in a bonus round, no lives or powerups lost.
Aha! The powerups weren't being carried in between rounds, let me just- wait, no, that's been fixed too.

You know what, I'm just going to read over my changelog...

... Uh huh... Bonus rounds no longer increment round counter ... ... Donum can now pass through stunned evil spirits and preta... ... fixed a bug where the shelter/jail would show that there are spirits inside when it was empty... There has to be something that's not done. Maybe a tiny graphical glitch, or- or a character not behaving as the should, or-

... .... ...

Wait a minute, ... I think I might have actually done enough for a playable demo...

OH NOEZ! What am I supposed to do now?! It's pandemonium! Now is the perfect time to panic!

Source unknown.  OH NOEZ!

One hysterical episode later...

OK, so I guess I should be showing off my playable demo now. Give me a little time and come back a bit later while I sort this out.

Thursday, August 29, 2013

Home stretch to the playable demo!

The last gameplay video I showed of Gonna Catcha was kind of boring since it only showed the game at it's easiest (since I only wrote the round data for the first few rounds). Yesterday, I uploaded a new video showing the latest version of the game played at a moderate level of difficulty, moderate-hard for the bonus rounds: 


Some changes since the last video:
  • All the pretas ("ghosts") are now in action, each with their own unique behaviours:


The Hungry Ghost will seek out and consume any items it finds.  If not, then it will just wander around the maze aimlessly.


The Vagrant Ghost prioritizes shelter over hunger.  It slowly drags itself towards the shelter or jail.  Once it gets there, it will enter the shelter/jail and scare away/release two spirits (who go back into reserve), disappear for a while, then respawn to repeat the process.  The player can shoot the Vagrant Ghost to temporarily chase it away from the shelter/jail.


This guy, the Vile Ghost, is new.  Like the Hungry Ghost, it will seek out items and consume them. However, unlike its gluttonous cousin, it will chase after the player if it can't find any items.  They are mainly found in Pohena rounds as an implacable danger much like evil spirits are to Donum.  The good spirits' slowing effect on Pohena makes it easier for the Vile Ghost to catch up with her, so better stay away from all of them.

  • Re-evaluated the point system.
  • Implemented a "three strikes" system in regards to shooting good spirits.  If the player (as either character) shoots a good spirit, they will be penalized:  -500 points for the first offence, -1000 for the second and one life for the third.  The strikes reset whenever the player loses a life.

The only thing the game needs before I release it as a demo are additional mazes and data dictating what spirits and preta spawn for each round. The end is in sight!


In other, related news, I made a few updates to the Gonna Catcha and related info pages...

...and here's a black wolf staring into your soul...

"You should be drawing more."

... and a white wolf who somehow managed to clone himself accidentally:

Wednesday, August 14, 2013

No game left behind.

I was playing my 3DS and decided to start up Petit Computer again. For those not familiar with it, Petit Computer is a BASIC programming environment for DSiWare that is geared towards making games on your DSi or 3DS.  As I was going through the saved programs, I came across the only game I made on it, Debugging.  It is also the first game that was branded under "Quadolor Games". I figured that I would create a page on this blog for it; you can find it here.

Sunday, August 11, 2013

ROM Game Jam Day 3 Report - "Rise & Fall"

The ROM Game Jam is over and my team, Robots Mashing Keyboards, actually managed to create a fully-functioning game prototype by the deadline.  The fruits of our labour is Rise & Fall, a 2-player dueling action game based on two ancient cultures (which was the topic of the jam).


In Rise & Fall, one player takes the role of  Roman soldier while the other takes the role of an Egyptian soldier...


...who fight by launching projectiles at each other.  They each have four broken artifacts on their side of the arena.


If either player gets hit three times, they "die" and the opposing player gets a point. Each point half-fixes one of the player's artifacts.  In the picture below, the pottery on the Roman (left) side is half-fixed.


When an artifact is fully repaired, it can interact with foreground objects, i.e. players are impeded by and can stand on it and it can block projectiles.


When an artifact is fully repaired for the first time, it's name pops up on screen so you'll know what it's called and you can recognize it when you see it at the Royal Ontario Museum (that was their idea, by the way).


To win, a player must attain nine points: eight points for a full set of repaired artifacts...


...and the ninth point from the "coup de grâce".


To the victor, goes his/her soldier running across the screen.


Here is a breakdown of who did what for Rise & Fall:

Idea guys (Game concept):  All of us
Pencil-, paper- & pixel-related tasks (Concept art, pixel art):  Shmuggly, Goombaguy
Computer keyboard masher (Programmer):  M.S.T.O.P.
Electronic keyboard masher (Music and sound effects):  M.S.T.O.P.
With us in spirit:  Saffy

We received lots of positive feedback from other jammers and, to my delight, the archaeologists that were helping us with the historical details of the ancient cultures we were making games about.  They all got really into it.  Also, due to all the hubbub in the room and the crappiness of my laptop speakers, the game's music wasn't heard very well. Here it is for you listening pleasure:



So what's next for the game?  Well, the Royal Ontario Museum said they would like to demo all the games made at the game jam to museum patrons in October, giving us two months to work on and polish our games further.  Given the positive feedback we received, we are interested in pursuing this further. During the playtesting, we found a few bugs and gameplay balance issues that need to be ironed out, so it looks like we already have an idea on how to move forward with the project.  :)

ROM Game Jam Day 2 - So Very Tired

Oh man, today was a tiring day, I didn't even have the extra energy to use Twitter to document my team's process. Not to mention the confusion and delay when I was taking the subway to the ROM.  Oh well.

I was going to create another demo video of what we have so far, but then some new sprites arrived in my email and I just had to put them into the game and test them out.  It's late and I don't feel like re-recording and editing the video right now, so here's a screenshot:

Roman guy vs. Egyptian guy

It's too bad I'm not able to show you a video; the sprite animations and foreground objects are coming along nicely.  As you can see, we have a Roman guy and Egyptian guy dueling each other.  The Roman throws spears pilums (the archaeological experts at the ROM said the latter was more historically accurate) while the Egyptian shoots arrows. They fight each other to restore their own ancient culture's artifacts for some unexplained reason and in some unexplained manner.  This has baffled and intrigued archaeologists for many minutes.  Tomorrow, we'll finish off the rest of foreground objects, the backgrounds and whatever is left over (well, we have to since it's the final day).

Saturday, August 10, 2013

ROM Game Jam Day 1 - The internet wouldn't allow it.

Normally, I wouldn't update my blog in the wee hours of the night, but the lack of a good internet connection at the ROM Game Jam has forced me to.

So now I share with you some screenshots of the work that has been done today by me and the rest of Team "Robots Mashing Keyboards" at the jam:

First, a screenshot of an very early version of the game:

FUS ARROW DAH?

I won't go into details right now, but let's just say our game will be a 2-player competitive platformer.

Next is a screenshot of a later build of the game, featuring graphics for one of the two characters in the game: some Roman guy, done by team member Shmuggly.

Minimalist architecture

And finally, the highlight of the day came near the end of the day: the inclusion of the Roman guy's running animation, also done by Shmuggly, into the game.  The initial results were hilarious:


The video doesn't do the run cycle justice; it looks much better (and funnier) at 60 frames per second.  The background music was composed by me, hastily over the course of only a few days and still needs a bit of work.  Still, I'm actually impressed with how it turned out.  When was the last time I even did anything in 3/4 time with the harmonic minor scale?


And now I'm tired, and have to get up early tomorrow to continue jamming.  Good night everybody.

Friday, August 9, 2013

Announcement about the ROM Game Jam

The ROM Game Jam official starts at 4 PM today.  I'll try to update you on my progress either here or on Twitter, if the internet will allow it.

Tuesday, August 6, 2013

Congratulations! Your game has evolved into Alpha!

Up until today, Gonna Catcha was nothing more than a collection of protoypes, loosely connected together and couldn't work together as a whole game without changes to the hard code. 

Well that ends today. 

I've taken care of all the little things and filled up the holes to make Gonna Catcha a playable alpha (yes, I know I've called the previous versions of the game "alpha builds"; in hindsight I think that was jumping the gun a bit). It still has some game-breaking bugs, but at least the game progression is there now:


And just in time for Ghost Month, the 7th month of the lunar calendar, which starts tomorrow I believe. According to the various superstitions surrounding Ghost Month, I shouldn't be working on Gonna Catcha at all for the next 30 or so days, unless I want to be pestered by evil spirits.  Well, if anything goes wrong in the coming month, such as me losing all my work or my computer catching on fire, then I'll have a convenient scapegoat:

lolololol

On the 15th day of Ghost Month is the Ghost Festival. During the festival, the Heibai Wuchang 黑白無常, the Black and White Guards of Impermanance, supposedly appear and give people free money.  Depending on your cultural background, you may know them by different names:
  • Fan Wujiu and Xie Bi'an, 范無救  謝必安
  • Qiye and Baye, 七爺 八爺
  • Da Boye and Er Boye, 大伯爺  二伯爺
  • Pohena Das and Donum Dono 魄伊娜・達斯  當納睦・當儺
OK, I made that last one up. :P

There's more to Ghost Month and the Ghost Festival than that, but I'll save it for another day. Also, the ROM Game Jam is next weekend; I need to brush up on my HTML5 GameMaker skills.

P.S.  I updated Gonna Catcha's info page with a new screenshot and the video above.

Wednesday, July 31, 2013

140 character limit exceeded

This post was too big for Twitter, so I'm posting it here.

The first step towards creating a CRT display shader is complete.  Gonna Catcha can (optionally) draw the game window with barrel distortion:

Babby's first shader

I know there are already CRT display shaders out there on the internet, but I do want to learn how to do it myself.

In other news, it hasn't been a week yet and already amusing bugs have been making a comeback.


The video also revealed the new time bonus tally at the end of each round.

Monday, July 29, 2013

You have encountered Abstract Art.

Has it been two weeks already?  Tracking the Steam Summer Sale and playing around with shaders in GameMaker: Studio can really make you lose track of time.

Sometimes I tweet stuff on Twitter if the aforementioned stuff isn't substantial enough to be turned in a full blog post.  If you haven't done so already, you can keep track of those tweets on the sidebar on the right side of this blog or follow me on Twitter.

If you have been following on Twitter, then you'll probably already know that I signed-up for and got into the ROM Game Jam, the first ever game jam to be hosted by the Royal Ontario Museum (ROM) in Toronto on August 9-11.  I am part of the same team that was making That Which Binds Us.  I say "was" because we're focusing our efforts on the ROM Game Jam now, so That Which Binds Us has been put on hiatus for now.

Another tweet I made was about shaders.  Wait, I already mentioned that above. Anyway, I downloaded some shader scripts from this forum post on the Game Maker Community forums and, just for fun and curiosity, applied them to Gonna Catcha's drawing code. Although it wasn't its main purpose, but the graphics code modifications I had previously done also allows me to apply a shader to the entire screen, but I wanted to do that anyway.  Two birds with one stone I guess.  

Here are the results of my shader experiment:


Once you've regained your composure from watching the trippy and completely unnecessary graphical effects, you may notice something new in the video.  The game randomly places rocks in the maze that act as destructible walls. (Rocks?! I thought they were just blobs!) This is to slow the player down and allow the spirits to better disperse throughout the maze.  However, the rock impede the spirits as well, making the whole thing kind of pointless.  Of course, they're spirits; so my plan B would just have them, you know, pass through the rocks unimpeded. Preta can stay impeded by rocks, being corporal beings like the players.

One other big change I made to the game that might not be obvious in the video is the player movement code/rules.  Previously, the players had free movement; now their movement is restricted to the grid much like the spirits and preta are.  I did this to make turning around corners easier for the players. My previous solution had the players snap to a corridor if they were "close enough" to turn into one; it looked a bit weird and was a bit finicky.

Re-writing and messing around with the movement code did produce some amusing bugs in the process, something that hasn't happened in a while.


(Wow, this post was longer than I thought. And I was worried that I wouldn't have anything to write about! Harumph!)

Sunday, July 14, 2013

Well isn't this a motley crew of small updates.

In the past two weeks I've been mainly doing a little work here, some more over there and a tiny bit all the way over there.  The updates are a bit difficult to stitch together into a coherent theme for a post, so I'm just going to list and itemize everything.

Item #1

Implemented the Hungry Ghost enemy into Gonna Catcha:




It's current behaviour has it wander aimlessly in the maze like the Wandering and Straying Spirits.  However, if there is an item in the maze, it will move towards, consume it and then resume wandering and feeling remorse.  Also, you might kick yourself for not grabbing the item first. The Hungry Ghosts are harmful to touch at all times; they can be stunned or knocked out for a short period of time, but they cannot be captured, so they remain a permanent fixture in some rounds.

Item #2

Modified some of the rules for Pohena rounds:  if Pohena comes into contact with a good spirit, her movement speed will be reduced until she is no longer touching one.  They will slow her down enough for evil spirits or preta to catch up with and kill her.  Hopefully (or disappointingly for Pohena) this will make good spirits more of an obstacle as evil spirits are for Donum.

Item #3

New music for Gonna Catcha: Bonus Round!


Item #4

Rewrote some of the graphical and garbage-collecting backend code. The new graphics code fixes some minor graphical glitches that occur when upscaling the game window.

Item #5

Updated various parts of the blog:
  • The rules section on the Gonna Catcha info page has been updated with the info in Item #2.
  • The descriptions of the non-player characters from this post are now on their own page, with the addition of the two new spirit types and slightly updated artwork for the spirits.
  • Rearranged some stuff on the sidebar on the right.


THE END

Friday, June 28, 2013

Here comes a new challenger, and another one.



In my previous post, I talked about a test play of Gonna Catcha; when I played as Donum, chasing down fleeing Bashful Spirits (left) while evading pursuing Vengeful Spirits (right) provided a decent challenge, but when I played as Pohena, things became far too easy. What can I do to try and fix this?  Why not just swap their behaviours?




Today, I introduce to you two new spirit types:  Bothersome Spirits (left), who follow Pohena around and get in her way (increasing the chances of friendly fire), and Anxious Spirits (right), who, fearing what punishments await them if they're caught, flee from Pohena.

Also, the addition of these two spirits also rounds out the rogues gallery pretty well:


I added the two new spirits to the latest build of Gonna Catcha, along with some changes to the spirits' movement code to make them spread out more and less likely to move together in groups.  This is the result:



Pohena rounds now feel a bit more challenging, but they still lack a certain something.  I think the good spirits need to be even more detrimental to Pohena's goal than just taking points away in order to make her levels more interesting.

Friday, June 21, 2013

This thing doesn't have Free Play yet. Got any quarters?

Alright, it's the moment you've all been waiting for. ...Okay, some of you. ...Okay, mostly me.

Here's a video update of Gonna Catcha, showing the game in it's current glory:


After playtesting the game for a bit, I've come to realize that the Pohena rounds are too easy.


Chasing around the fleeing Bashful Spirits (above left) while avoiding Vengeful Spirits (above right) provides a good challenge in Donum rounds, however the behaviours of the same two spirits make Pohena rounds a breeze. Bashful Spirits generally stay out of your way, reducing chances of friendly fire, while Vengeful Spirits home in on Pohena like lambs to the slaughter.  I haven't put in the Hungry and Vagrant Ghosts in the game yet, but I don't imagine them making Pohena rounds that much more difficult (they are designed more to be nuisances than threats).  In light of this, I made have to add additional types of spirits, one for good and one for evil, to balance out the gameplay.

Find out on the next exciting episode of Dragonba-  err, I mean Quadolor Dev Blog.