Boss Battle

I went back to the GDD this morning and tweaked little bits of information that have “evolved” during the development of Hanami. I took a look at the list of events that I wrote right at the beginning of this project, to try to work out how to conclude the game. So far, motivations for playing the game have been about progression, so I finally needed to realise a result of the player’s hard efforts!

The best way I could think to conclude the game was to have a Boss Battle, which was something I wasn’t originally planning but feel that the player would be let down if the game ended without one final challenge. So, the final door that is opened will lead to a “battle” with the Zashiki Warashi spirit, resulting in the spirit transforming back into her Kokeshi doll form. This essentially solves the “Hanami crisis”, and the player will be able to roam the world obstacle free in order to collect the remaining blossoms. There shouldn’t be many left (about 10 or so?), but only be collecting EVERY SINGLE LAST BLOSSOM will the game truly end.

The terms “Boss” and “Battle” are strong words, but it’s the best way to describe this glorified final obstacle! I haven’t introduced any new techniques to the battle, the Zashiki Warashi spirit can be de defeated in the same way as the Deceitful Blossom, by jumping on the enemy’s head. The main difference is that this enemy has a 5 health points and a projectile attack! The battle is really based on the sort of sub-boss battles you’d fight in old Super Mario games, where jumping three times on a Koopa’s head will let you pass to the next stage. I’ll record a video to show what I mean if I get the time!

EDIT: Here you are, Boss fight footage recorded exclusively recorded for this Blog:

For this stage, I’ve created three new game assets. The first is the Za-chan object, which controls everything that the enemy does. She works with three alarms, one which instigates “attack 1”, another which instigates “attack 2” and a final alarm which determines how long she is static for when hit. She has her own health counter, which is shown by my second new asset which aligns with original HUD:

The third new asset I have (half) created is an object called obj_attack. At the moment, this object is represented by my Gunkan Sushi sprite, as I haven’t actually drawn anything to go here yet… So, when the enemy shoots her attack towards at player, she is currently shooting sushi. This has been fun to test, and I will almost be sad to see it changed! This has been the easiest to program, as it’s only job is to move steadily towards the player. If the player is hit, then the projectile is destroyed, to avoid being hit twice by the same attack.

This is by far the most complex AI controlled NPC character I’ve created so far. The character moves in relation to two objects, the player and a “block” object, which keeps the enemy within a certain space. Za-chan moves slightly slower than the player, so it is possible to catch up and jump on her head! If the player is quite far from the enemy, the enemy will move towards the player. If the player is very close to the enemy, the enemy will move away in evasion. As well as this, there is a certain distance from the player that Za-chan will simply stand still and spam the player with attacks, however this will only happen if the player is also standing completely still. This system works well enough to keep the enemy moving about, but I noticed that it was possible to defeat her too easily by trapping her in a corner. So, I’ve added a final line of code that states that the enemy must move towards the player if she gets too close to the “block” object, even if this means a collision with the player. Colliding with the enemy actually causes player damage, so this in itself acts as a sort of attack mechanism.

Za-chan’s two “attacks” are thrown when each of the first two alarms go off, and this code simply resets each one so the enemy constantly attacks at an even rate. Attack 1 throws one sushi, and attack two which is less regular throws 2 sushi!

I’ve used almost exactly the same code as the Deceitful Blossom to program what happens when Za-chan is jumped on. I’ve simply changed the squashed flower sprite to a new sprite, and ensured that during this time she can neither deal or receive damage, and she cannot move! I thought it would be appropriate to make a new sprite animation where she sits down and rubs her poorly head after having an full grown woman jump on top of it…

Once she has been defeated, I’ve also created a new “transformation” animation which turns her from spirit form to Kokeshi form. To do this, I created a cloud which passes over her to reveal the doll underneath. I’ve made this in the same style as my previous “auspicious clouds”, and drew out the animation first to make sure the swirls moved bout fluidly:

And here is the final result:

At the moment, I’ve set the battle out in the most final stage I have made, even though this is currently far from finished. The aim for the rest of this week is to finish the inside of the building and build a proper “Boss Stage” level for the battle to be held in. I’ve recorded a video of the battle so far, although I think I still need to make some tweaks to the rapidity and speed of attacks. I’ll probably have to get back onto SunVox too to create some epic Boss Battle music!

Xin Nian Kuai Le

Unless I’m horribly wrong and the internet has lied to me again, I may have just wished you a happy new year in Mandarin. Today’s fortune cookie told me I would make a name for myself, which is a fairly decent omen for the upcoming year of the Dragon. As a bonus, I’m up to date on my development timeline (which I will probably post soon so you know I’m not lying!) This week: Gather! (as in collecting my concept images and research, I think) and Experiment!


I’ve spent most of today researching my little wrong-doer Zashiki-warashi to make sure its an appropriate choice for an antagonist. Its characteristics differ depending on the source, but there are a few constant characteristics which seem consistent in all accounts:

Zashiki-warashi takes the form of a child, boy or girl, between the ages of 3 and 12.
It prefers to live in large, old Japanese houses, and its presence is recognised from its little acts of mischief.
While it inhabits a home, the residing family receive great fortune.
Occasionally, a family member (normally a small child) will be able to see the Zashiki-warashi, but according to at least one account, only when it is about to leave.
Once the Zashiki-warashi has left, the family fall to ruin.

The Zashiki-warashi will not necessarily be placed in shrines, but I found this cute little Garden Statue which represents one! It’s though that you can attract a Zashiki-warashi by recognising its presence, so keeping one of these statues may help bring you luck. Due to the variations on the image of this spirit being, there are few visual sources on the internet, although the Hello Kitty at the top of the post is another representation!

For my Zashiki-warashi character, I’ve chosen a girl-ghost as a good adversary for my girl-hero. That way there’s no breach of male-female etiquette when it comes to conflict and in a way, they can relate to each other. Also, by coincidence the majority of the characters currently in working progress have turned out to be male, so this helps balance things out a little! I’ve tried to portray her as a good-natured being with a childish sense of mischief.

I’ve made sure to block out the eyes, as I’ve noticed in Jizou statues there’s never any eye detail. I attempted to convert my design into statue form in the top right hand corner, based on the photo of the statue I found. I somehow managed to make my drawing look more like a Kokeshi Doll than a statue, so I went with this for my colour version. The majority of Kokeshi dolls seem to have much less smiley disposition, so I used the opportunity to create something a little more sinister!
The article in the link suggests that originally the kokeshi dolls represented a “wish for a healthy child”, so my final design may well be a little wooden figure rather than a stone statue. But one with less wonky eyes and fewer graphite smudges: