Showing posts with label Bounty Hunter II. Show all posts
Showing posts with label Bounty Hunter II. Show all posts

Wednesday, 21 November 2018

Announcing the release of "Bounty Hunter II" + Trailer

Hello there!
This is it, the release of  "Bounty Hunter II" a game that has been in development for over a year now, It's quite surprising how I'm finally releasing something that I have grown quite attached to and that is constantly in my head. I am grateful of the lessons and trials I have been through and learned whilst embarking on this project, even if it doesn't compete with the greatest games out there.

The most satisfying part of this is the fact that I can just finally put it aside after long hours of worrying about it, the intense work and just reflect on what I have done.
I have made a trailer showcasing the equivalent length of the December 2017 alpha, this was deliberately done to make sure to not spoil too much of the game and let players investigate for themselves.

I don't feel as exited releasing this game as I would like due to the fact that I've got other commitments like studying and working on another project which I may reveal at some point in the future. With that said, I should probably take it easier for the rest of this year so I can spend more time exploring new things, but obviously studying comes foremost so I'll put more efforts on those.

If you want to download the game for yourself then head over here: https://pixel-brownie-software.itch.io/bounty-hunter2

That's all from me!

Thursday, 15 November 2018

Bounty Hunter II Update: The end is near

Hello there!
This is going to be the final post before release I will make of Bounty Hunter II. Developing this game was quite a journey, although the funny thing is that I don't really feel like I spent a year and a half making this game. The process felt quite fast, but that may be because time seems to speed up quicker as I get older (does anyone get that feeling?).
Let's reflect and talk!

Those finishing touches
This is something I had to do a lot in October (and this month) which was mostly fixing bugs with AI which made them do silly things like run into a wall, mix up certain attack patterns or attacks go inconsistently with their animations. It's one of those not-so-sexy aspects of game development but the results really do pay-off. Other times they were little animations like bullets getting destroyed, shooting muzzle etc, which give the game that extra juice. One thing I regret is the fact that I remember these things last minute which puts a good amount of pressure on me as I think 'Oh great, more animations...'. I'm not usually the best when it comes to remembering the little details, hopefully I'll get better at this stuff over time.

A second 'Evermoral'?
I'm not talking about creating a sequel to the book I published almost 2 years ago, I'm more of talking about the paralells of the two projects throughout their respective developments. When I was writing Evermoral, it changed a lot as I was writing it which would inevitably result in a lot of unused content that remained as just mere ideas.
Bounty Hunter II was quite similar, a good amount of the things in that December 2017 Alpha did not make it into the final thing i.e. the Kazzi character. Whilst the story did retain the same basic elements that I originally intended, the final story was simpler than what I would have liked. In the original story the main character's friend would have helped him throughout his quest and you could even play as him, the two would even meet this 'Mad Venom' character who appeared in the end of the Alpha who would help them in their adventure, however this was scrapped as it was too much work trying to justify why each character would leave and join the player. What I created seemed like a better idea for the player to be by themselves rather than have a bunch of other characters in their way (especially since Bounty Hunter II is a very linear adventure).

The ending was also changed several times although it does retain the same tone. You may have worked out that story-wise, working on Bounty Hunter II was not as engaging as Evermoral; I couldn't create as much of a world where characters could interact with each other. In the latter, I could easily convey the character's personalities by just writing stuff and re-iterate parts I didn't think was good enough. With the former however, if I wanted to create a compelling story, I would first of all need to make a bunch of tools to not make this process completely tedious (which is an absolute pain in the arse) and go through a bunch of steps to save the level it is in and test in-game to see if it works or go in the way I would like. Bounty Hunter II's story was not as deep or philosophical as Evermoral (although even then some parts of Evermoral's story was flawed), but I have realized that making a game is different from writing a book upon writing this post. You can't just go and say "I've got a game idea! Let's make it a reality!" because you need to consider things like "Okay, does this fit in a game? Does this compliment the gameplay in any way, or just filler?". This process is something that 2016 me would have not even expected.

Although I have been a bit negative, let's go to a more positive side of the coin. Despite the fact I couldn't create much of a deep story in Bounty Hunter II, I gained a very valuable insight on how to create a event system that you can easily mess with and make stories with. I liked the process of creating something that I can use to edit cut-scenes rather than hard-coding the events. The optimization part was the coolest part of it as it makes me think "Oh yeah, I could do that instead of what I had previously done!", it has also gave me valuable lessons on how to create an even better tool in the future. I suppose sacrificing the story for this experience isn't too bad, it makes my analytical and creative thinking go hand in hand.

Conclusion
Bounty Hunter II is by far the most ambitious game I have made, as well as the longest I have gone in terms of having a game with a story and dialogue. With that being said, I don't know how to feel about finishing it, do I feel accomplished or not?
Maybe it is one of those things that I might appreciate later on or maybe I need more of a life.
All work and no play makes jack a dull boy, no?

But I need to balance my studies at sixth form as well, and maintain decent grades. Although I honestly don't care about A-Levels (I might write a blog about education at some point), something in my mind is pushing me - as well as that I don't want to disappoint the head of sixth form or my parents.
I will be sure to keep you people updated though, in the meantime expect Bounty Hunter II to be released around 21st of November.
That's all from me!

Sunday, 23 September 2018

Bounty Hunter II Update: Art completion and cutting out.

Bounty Hunter II Update: Art completion and cutting out.

Hello there, I've got another update for you, a lot has happened since the last time I've updated about this project.

Art
Over July and August I have been working hard on the character designs, and I'm glad to say that for the most part they are finished. The enemies no longer have placeholders on them, they now look fully unique and more alive. However I did encounter a problem with the animation system. Unity has a built-in animation system which operates like a state-machine, which was a problem since I've had to create constant parameters every time I want to create a new animation controller (per character) and the animations didn't work the way I liked i.e. character takes 2 seconds to switch to the shooting animation.

I created my own animation system which switches to a set of animations (up, down and side) via a number. This worked out much better as the transitions were far faster.

In terms of the tiles for the levels I spent later August and this month completing them, and I have just completed them as well as replacing all the levels' placeholder tiles, I'll give you an example of what the process was like below:

Before polish
A boring-looking green area
After polish
A lush jungle
I'm not going to show all the areas because that's spoilers, but this is what I did for all the areas. On top of that, I had to not only give it crispy looking graphics, but I also had to redesign certain areas. If you see on the top image it had tons of small rooms where enemies would be fought. One tester even told me that I should make the areas that the player fights enemies bigger, the image below reflects my response to this feedback. Instead of making the player constantly enter clustered areas where they barely have space to dodge attacks, I've merged several small areas to make one large area (you can see above) to make use of the game's mechanics.
Some areas still might be needing a bit more polish, but overall they're pretty much done.

However, with that being said, I've faced a few regrets with this way of designing levels and making animations. I did all the animations and tiles in the last few months of development, last time I did mention about how I wanted to do animations after I design levels. Now I think this isn't the best idea. Ideally I should have done animations after I programmed the character's actions into the game, to save time later on. It didn't matter if they weren't polished, what matters is that they are at least something and polishing them can become less stressful as a result. Perhaps for future games I should consider doing art at an earlier point to make production as consistent as possible, but try to not have them get in the way of debugging the game.

Cutting out features:
I have done quite a bit of cutting out lately, I've cut a number of areas in the game because I didn't really like the design and it felt like pure padding to the game, trying to polish them gave me more work to do and I think that my time and elbow grease would be better spent on creating the areas with good potential. I also cut out one boss, despite almost everything being done (including the artwork). Not to sound lazy, but I decided to cut him out because I didn't want to face the extra work of balancing him and implementing animations into him. Plus one of the testers said it was quite hard. Maybe I'll look back to this and regret what I've done... but you know, that's part of any creative process - not all ideas end up in the final product.

In the last post I mentioned about an ally character, now he's removed from the game. This is because of, again extra work (animations) and developing the AI was quite a pain. Now despite what I've just said, these were not the main reasons that I removed him; it was that he didn't fit with the game and felt like an obstacle in the main character's path.

Maybe if I ever make "Bounty Hunter III", I might go a bit further and implement an ally, if they fit in with the game. That could be a possibility. I'm working on another game that may help me tackle much of the issues I've faced when implementing an AI character (more detail on that at the end of this blog).

A few Extras:
Today I've added an after-image effect when the characters dash, I added this in because the player/enemies dashing without it wouldn't be as effective. I actually found other uses for it too, for example it can indicate when an enemy is dashing towards you.
Here's the dash in action:
Looks cool doesn't it?

The other day I've also added in a fade-in effect when the player exits out of a map and goes into another. I wanted to make it so that the fade-in happens then the game loads the level and it fades out once it's loaded, but I've been having a few problems with it so I should sort that out.

Conclusion:
The game is near completion which is both exciting and scary... scary because I feel like a simple error might completely blow the game up.  so I'll need to go into crunch mode and rid any bugs along the way (hopefully get it in beta by late October). I strive to get this game out in late November (hopefully slightly before Evermoral's 2 year anniversary).

In other news I've also got another game in the works that I'll release about a month from now which I've mentioned in my last post. That game is quite close to completion so hopefully little should come in the way of that game releasing.
Well, maybe... except school, this year's pretty crucial so I need to get my act together and update my revision summary to do all that dirty memorizing work for me! Study hacks for the win!
Hope you guys have a good morning, afternoon or night.

That's all from me!

Friday, 18 May 2018

Bounty Hunter II Update: Single focus + Refractoring

Hello there!
It's been over a year since this game has been in development (around 5th May 2017), boy does time pass quick!
Here's an update on how things have been going on my end with Bounty Hunter II.

Refactoring NPC/Enemy code:

Upon adding an ally, I went into a problem
How this started was that I was trying to add in a character that accompanies you for a little bit. Obviously I'd need to add in AI; naturally, I went to the enemy codebase to copy the code. However I realized that this was pretty rediculous. Why do I need to painstakingly copy and paste code just to make an Ally character?

It was then I decided instead of an enemy codebase, why don't I do a NPC codebase?
This allows for me to create NPCs which can be BOTH enemies or allies. After a bit of thinking, I came up with the idea of  a faction system - a system which dictates what characters attack whom. Without having to rewrite another type of NPC, I can just assign the ally character to the same faction as the player and they'll be freinds. Easy! I can even make the NPC an enemy if I wanted to.

There is also another benefit to this system - I can also make the enemies have their own goals beyond just trying to defeat the player. To those of you who have played games like Half life (or Half life 2) you may notice that zombies and marines/combine soliders are both enemies to the player. However the zombies also attack the soliders and vice versa. This gives the game's world that extra depth to make the enemies not all monotonous. It's like you are living in a world rather than a video game.

Minecraft also does this to a certain extent with some hostile creatures attacking some passive creatures, but not as well as Half life.
Although I don't plan to do too much with this system, it does give me some insight if I want to make a more complicated/mainatianable NPC codebase. Perhaps this could lead me into making Skyrim (I jest).

Maps:

It's one thing to make enemies, it's another to make maps. Before earlier this month I designed levels like this:
Design map -> Add collisions -> Code nessacary enemies (if needed) -> add enemies into the game -> Add events -> Finish map -> move on.

After then, I realized that this method would take much longer and the perfectionist way simply isn't the best for the development time of this project. I'd probably struggle on designing one level and be stuck on it. Therefore, in the crunch of a week, I decided to finish all the maps the game will need (11th of May to be more specific) but have them void of any cutscenes or enemies. After this I then focused on adding in the remaining enemies (which incidentally took more or less time to implement). I also added in most of the bosses the game will need other than the final boss (the first form is complete).

After I add the remaining boss into the game I will then focus on actually adding them in to the levels and create the events the levels need like story-based and boundary-enabling. I like this way a lot more than the former because it can give me much more time to playtest the levels and seek feedback from others months before I expect it to release.
It can also give me time to work on other projects (which I'll get to in the conclusion) since I don't have to focus on implementing but rather polishing what's already there.

"Trap" objects

I wanted to find a way to make the game more varied than just run n' gun. Because to those of you who have played the public alpha (which incidentally, the itch.io version I decided to take down because I wanted to hide it until release), the gameplay consisted of going across the level fighting enemies to make boundaries disappear in order to advance. Thanks to these objects which I call "Traps" you can do slightly more than that.

By traps I mean objects that the player collides with that damages them in some way. For instance one type of trap is a trap that is much like a ditch (well, it's essentially that actually), which damages the player and teleport them to the position before they fell into the trap. The way to avoid this is to dash across the trap, much like the player is "leaping" to another platform. There are some which do the same, except they don't teleport the player.

I try to use these to give the player a break from combat and get them into good ol' platforming, because hey, why not?
Plus it gives the dash an extra use apart from a useful way to dodge endless waves of leap attacks and bullets.

Conclusion

This is all I'd like to say for now about this game, anything else would be a spoiler. Despite the game's development going pretty well (knocks on wood), I still do get a little bit nervous about whether it may be completed or not despite this game being over a year in development.

I've had experience with more ambitious projects like these, where I'd have some big idea for the game for example a game version of my old book series "Ratchet and Sinro", and dream up how the game will look like.
However, in month (or two if I were lucky) or less I'd procrastinate and completely forget about the project, leaving it in an indefinite hiatus.

With retrospect, it's a miracle that I've been working on this game for this long and I've never had that procrastinate-ish feeling; sure I've had doubts about it's success but I think that's a good thing.
It shows that I've still got lots to learn before I can become something rare and valuable to the world.
The difference between this project, I realized, was my more realistic expectations - I didn't have some pre-existing and specific thought about making this game.

I just thought it would be cool to make a sequel and did admittedly come up with a few ideas (like dashing, because dashing is cool), but they were mainly developed further through experimentation, slowly moulding into a different form of what I originally envisioned. As a result, some ideas that quickly came into my mind were dropped as soon as they came, as I worked on the game.
It turns out I enjoy the reality of the features I added in, more than the ones I came up with in my head.

Anyway, enough deep talk. Changing the topic slightly,
I've got some other neat stuff outside of Bounty Hunter II to show in the future, I'm not going to say what they are but I'll give you a hint:

  • One of them is a riskier project than Bounty Hunter II.
  • The other uses a new custom language I've made called "Pixel Brownie Text Markup Language" (UPDATE: The latter has been cancelled due to lack of direction)

Both are major projects like Bounty Hunter II.

For now I don't have any minor/side game projects in development.
Although I would love to make some right now, I'm in a very awkward situation, trying to balance school and Game development (it's not easy!).

With all that said,
That's all from me!

Thursday, 14 December 2017

Bounty Hunter II Public Alpha



The alpha of the game is out and available in the hands of fellow gamers!
Keep in mind this is not final and is subject to change.
Let me know what you think of the game!

Sunday, 5 November 2017

BH2 Updates

Hello there!

It's been a while since I've updated anything BH2 related!
Apologies for that, but there is good news to be had from this: Progress!
A lot actually.

Let's get to the bitty gritty shall we?

POUCH


"Wait" you say, "What has 'pouch' got to do with a game where you run and shoot things?". A lot actually, cutscenes in particular.
POUCH (Prownie's Outstandingly Ultimate Cutscene Handler) looks a bit like this.

As you can see it is not the most tidiest of systems at the moment but it's still easier than hard-coding every single line of dialogue and movement etc. This brings me on to what the heck this POUCH thing is.

It is a custom-made cutscene making tool that I have built myself.

It originally started as something that just sprouted dialogue, but thanks to my increased skill and confidence in programming, I decided to make it do more than just read dialogue.

It also moves characters, spawns objects, fades the screen in and probably most cinematic things you can imagine.


Combat + AI

There have been plenty of changes to those, especially AI.

A few months ago, I sent an early prototype of the game to a play-tester I met on Discord.

He commented on how there was no need to dash in the game, a game-play mechanic which I thought would have added lots of depth to the game. He also mentioned that players would always go for the more easier and boring route to completing the game by kiting the enemies.

I decided to play thorugh the game without ever dashing, and funnily enough.
I was able to beat it.
Easily.

You could be a complete newbie at video games and be able to beat that clear, one shot and boom!
Done! You can now throw away the game into a nearby rubbish bin and forget the fact you ever played it.
(Please don't do that to the final game. I crafted it with my heart and soul! Criticism is welcome though).

He was right, I could just walk back whenever I saw the enemies or heck even stand in one spot and just spam the shooting button until they die.

Because in that prototype the enemies just walk towards you and if close enough they stop to attack.
They don't shoot or lunge or do anything that would need you to dash out of harms way.
They're lacking... quite a lot of what makes good AI.

So one day I decided to create a room exclusively for combat purposes and alter the enemy AI. I first of all decided to give the enemies a lunge attack. And I tried to playtest the game without using the dash.

Within the first few 30 or so seconds I died from the enemies' attacks.

A small light shone in my heart as I first saw an ounce of challenge burst through this very figment of my combined efforts.
Now the dash was becoming something useful.
Not too long after I found out that you could actually use the enemies dash to your advantage.
Let me explain.

When the enemy uses their dash attack, you can actually dash simultaneously right through them, then emerge behind them with a mill-second to spare to blast their brains out with your trusty Peacemaker.

Yeahhhhh...

Actually, I've got a name for this: The trade blow.
Because you essentially trade positions with the enemy and shoot them right away.

It might sound simple or trivial on paper but in practice it is not as easy as you think.

Timing is an essential ingredient to getting this tech right ; if you don't dash as soon as the enemies do, the enemy will be the first one to lunge at you with all their might and power.
And you are going to have a bad time.

I also applied this to the boss of the area (yes, this game has planned multiple bosses, not just one like the first game). He is harder than your average enemy but he is quite a good way to mess around with the combat system, since I don't want to reveal much about him (since I want you to explore it for yourself) I won't talk about him very much.

The last thing I want to mention about the combat is a more minor one. You can cancel dashes by pressing the shoot button. This can be quite useful if you want to keep your fire range close to the enemy rather than dashing to the other side.

I'm still skeptical about this feature since I haven't found too much use for it.
But then again, I think I'll need to play-test the game a lot to see where this feature works the best.
And make any necessary changes to make this feature more useful or ditch it entirely.
Only time will tell.

Animations


I have spent a lot of last month working on the animations, and for a large part, they are complete. They are a huge step-up from the RPGMaker2003 styled 3 frame animations that the 1st game had. The animations feature detailed and clear walk-cycles within each character.

Since my game "Pipe Dreamer" I have come up with a new way of animating sprites, I basically separate the body parts into segments and animate them. Then I put them together to make an animated sprite.

In my opinion this works far better than drawing every frame from scratch because, let's face it:
There will always be that off-chance that you may say "Oh dear! Where's the position of the torso at this point of the animation?" once realizing that you have made a wonky animation.
It has definitely helped me not only make more efficient animations, it helps me make them faster.
Isn't life easier when you break it down?

Level Editor


To make development easier, I've decided to make a level editor for myself.
It loads level layouts from a list and displays it all.
This is quite revolutionary for me since in the first game, all the areas were in one scene.
Part of what it does is generate enemies and collisions based on an arrangements of specifically coloured pixels.

But there is a downside to this, if I want to edit a collision box on an enemy or implement an animator on to them, I would need to click the Generate tiles button to generate them again, I might need to find a workaround but I won't focus on that now.

The feature is sound so far though, nothing game-breaking. Ideally I would prefer to make an editor where you can place enemies, collisions, cut-scenes and all that stuff on the go and save it all to a specific file, but I don't think I have developed enough skill to do that.

Perhaps I may create a better editor if I ever create Bounty Hunter III.


Summing up


Progress with Bounty Hunter II has been going pretty well as of lately. I have been spending a lot more time and effort on this game than I did with the first game so hopefully it should be better than the first...
I hope.

I'm planning to get a playable prototype by December so that's something to look forward to.
It's going to be pretty short, and I mean short. But that isn't always a bad thing, since I prefer shorter games as the replay value is higher.

That's all from me!