Showing posts with label gameplay. Show all posts
Showing posts with label gameplay. Show all posts

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.


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?

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:

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.  :)

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.

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.

Monday, May 13, 2013

Adventures in Downtown Toronto, full of games and excitement


Woo! New colour scheme!

This past weekend, my formerly-TOJam team, "Robots Mashing Keyboards", and I met to discuss our formerly-TOJam project, That Which Binds Us.  We officially have started the project and are now writing down everything we need to do to make this game come into fruition.  Here is the premise of our game:

"Oh no! I forgot to feed my dog and the store is closing in just five minutes!"

In this game, the player must walk their very hungry and impatient dog to the pet store to get some food before it starves.  The task is not a simple one as many distractions stand between you and the store.

Once we get more details hammered out, I'll make a proper info page on the project just like I did with Gonna Catcha.


In other news, I also went to the Toronto Comics Arts Festival (TCAF) on Saturday with my friends, the other members of "Robots Mashing Keyboards".  The event was hosted in multiple locations far apart from one another, so we decided to go to the one nearest to us, Bento Miso.  It was hosting the Bit Bazaar on that day, where a whole bunch of indie game devs were showcasing their works with playable demos and selling special copies of their games and other merchandise.

Sunday, April 28, 2013

Time really flies you're eagerly awaiting something.

I haven't been working on Gonna Catcha as much this past week, mostly because I was distracted by the Toronto Game Jam that is happening next weekend: coming up with ideas and eagerly awaiting the confirmation email.  Today, I received note that my team was still on the waiting list of participants (they received ~100 more registrations than spots available).  Here's hoping that additional spots will become available in the coming week.

I've been working on some ideas for the theme music for the TOJam project, this is what I have so far:



Now back to our regularly scheduled programming...

The last thing I was working on for Gonna Catcha was the pathfinding for the Vengeful (left) and Bashful (right) spirits.


As described in this post, Vengeful spirits move toward the position of the player while Bashful spirits move away from the player.  For the former, GameMaker has built-in functions for grid-based pathfinding.  "This will make my job a whole lot easier", or so I thought. *DUN DUN DUUUUN*

It turned out that the grid-based pathfinding system makes some assumptions on how you've setup you sprites, objects and levels (the wording in the documentation does hint to this).  To get the best results, you'll need to design your game to accommodate the pathfinding system.  Unfortunately, Gonna Catcha is not one of those games.  It bows down to no one.

Sunday, April 21, 2013

We have some Items on the agenda that we must discuss. [Updated: 9/3/2013]

UPDATE 9/3/2013 - The content of this post has been promoted to a full-fledged page here.

As promised in the previous post, I will be talking about the items and power-ups that will be in Gonna Catcha.

Double Shot




Allows the player to have two shots on-screen at a time.

Long Shot




Extends the range of the player's shots.

Sunday, April 14, 2013

That's it, you're going on my Enemies List! [Updated 7/13/2013]

UPDATE 7/13/2013 - The content of this post has been promoted to a full-fledged page here.

Original post:

It's Pohena's birthday today!  To celebrate, I've made a list of the enemies and whatnot that will be in Gonna Catcha along with some descriptions.



I have settled on six different NPC types for the game, which I decided to sketch up in GraphicsGale (vectors coming soon).  There is a small chance that I will add a few more in the future, but for now, six spirits seems sufficient.

Six spirits seems sufficient.
Six spirits seems sufficient.
Six spirits seems sufficient.
That's makes a good tongue twister.

Sunday, March 24, 2013

Gonna Catcha - Gameplay Test & Explanation

OK, class.  We have a special treat today.  I won't be standing up here lecturing you for 6 minutes about the basic game rules of Gonna Catcha.  Instead, we'll be watching a video. Can someone get the lights?

*goes to sit at desk, opens a magazine*



Remember, there will be a quiz on the video next Wednesday!