Up until now, using 001 Game Creator has been a rather straightforward and enjoyable game engine to use. Outside of watching less than an hour's worth of videos and a couple of trips to their wiki I’ve managed to get rather far. Let’s see how that holds up when I need to fix bugs fine-tune things.
I knew this process was either going to be rather frustrating with occasional breaks needed or I was going to power through the bulk of it in an evening or three. Dealing with bugs in a few different game engines and platforms now I’ve learned you are rather alone trying to waddle through whatever is stopping you from reaching the end state you desire.
For those that have been testing along you more than likely realized after the first map things got quite hard. The first few monsters in South Lake can one-shot you. While you could get around them to some patches of easier monsters unless you lucked out with some item drops you were more than likely stuck.
Some clever player realized an easy workout. That was simply grinding out levels in the first zone, afking for a while for respawns, and clearing again. Every so often you get increased stats that make the forward maps easier to clear.
While you will need to be at a higher level the further along you advance in the game to not get one shot. The South lake map and many others were not intended to be that hard. As such, I came up with a quick and dirty method to playtest in a way and started rebalancing monsters.
For the first map of the Hills, I did a little rework. I mostly found some unintended bugs with the way global variables were working. I also made some changes to chest timers since they were more set up for testing than what I would want for the actual game release.
One thing I did discover which is an issue in every map is I never set doors to have an auto-close timer. This means going in or out of a dungeon is a one-time event. Since any time you die in the dungeon the game loads up the last save. That was something I did not realize was an issue till I wanted to go back and re-farm a dungeon I had already cleared.
Thankfully stuff like this is changing one variable and clicking a button. I’ll just need to make sure I go through and don’t miss any door that needs to be auto-closed. So the trigger when opened event of spawning the player in a new area can occur again.
What has been rather handy to use is the detached debugger menu that pops up when you are running the game in test mode. It allows me to see things like global variables which the player cannot see. I can also turn on a wide range of cheats from no damage to full stats.
What I suspect will be one of the bigger cheats I’ll be adjusting is game speed. I’m doing a lot of repetitive things over and over again to test and fix. So that option will be quite a time saver.
I’ve managed to rebalance the monsters in the first two maps and all their dungeons so far without much of an issue. Things were going a little too easy that I just knew was only going to last for so long. I ended up being right.
In an attempt to test some NPCs that have killed bounty quests I thought there must have been a massive mistake. None of the NPCs would talk with my character which made me wonder what could I have broken. Thankfully my suspicion was confirmed that it was a random bug and restarting the game test would resolve it. It was also a bug I could not repeat after a few attempts.
Their dose appears to be an issue with global variables not increasing in most instants in a way I was expecting them to. Since I’m mostly focusing on rebalancing for now I’ve added this to a list to get around to later.
I suspect I know what is going on. However, if I’m wrong stopping to try and deal with that could lead to me getting sidetracked for hours or days trying to resolve it and fix all NPCs affected by the issue. I have other priorities at the moment to deal with.
What I could not skip over however was the next bug I ran into. For most of my tests, I did not realize it but I’ve been using the weapons that came with the template for the kind of game I’m making. I’ve made some changes to them for my own needs.
By the third map, this ended up happening. There is nothing wrong I swear. That looks like a feature to me.
Ok, so I can’t damage anything as the game displays dealing 0 damage to myself. It then seems to not progress any further in an attempt to attack dealing any damage to enemies.
I looked over some settings in the items menu to see if I could have the weapon better scale to the player. No such luck so I played around with a few images that are being used by the engine for attacking. I scaled them down and reported them back into the game. Things were still not working as they should be.
I also checked what variables in the item window were being used between what was working and not working. While I did have a couple of things misconfigured which resolved issues I did not know I even had yet. It was not what I was trying to fix at the moment.
At this point, I decided to do a quick search. No help on the forms, google, or wiki. For the majority of issues, I’ve ever had when making a game I expected as much. You are on your own and if you can’t solve it well the project is dead or that bug is now a feature.
My next thought process was to check through the scrips of a working weapon and mine. I had assumed since I tagged this object as an item and even further a weapon with a damage value that not much more was going to be needed from me. As suspected there were no extra scripts set up between what is on a working weapon and what is on one of mine.
Since I’m dealing with an animation that I don’t see the player doing. My next step was perhaps I needed to set up a sprite animation for the weapon. I did not recall ever seeing any for a couple of example weapons that were with the starting assets for the project template I was using. After some digging around I confirmed there was nothing on that front.
I ended up resizing the weapon icon a few times and even making some changes. I knew the game was somehow determining where and when to deal damage based on the weapon. What I could not find was a clear collision mesh I could visually set up. I further assumed the engine was doing that in an automated way.
I was still going down the route that I thought I was not setting up the image of the weapon right. I thought a way to self-prove or disprove this was replacing all the images on the weapon I’ve been troubleshooting with one that worked. After doing that and testing the issue was still occurring.
I knew I was missing something and I started to feel I was going to have to fix this the long way. I could duplicate the working item and change it for each weapon. That would also require swapping out the new versions in all the loot tables for 20 monsters and quests as well.
I decided to take a short break before coming back and digging in deep if I needed to resolve this issue for the night so I could continue rebalancing monsters and items another day when I had more time. One should never forget the importance of a short break.
I get back and I check through all the item values and tabs yet again. There are quite a lot of things a melee weapon and the kind of damage it dealing did not need enabling. I however finally discovered my issue and it is not as bad as I thought it was.
This whole time I was either expecting to find a visual display of the weapons collision area for dealing damage or that the game auto did this for you with no way to change it. Turns out I was wrong about that on both counts.
Turns out you don’t get to see the collision area in a visual way which is what was tripping me up. It’s a field of values you have to set, manually test for that item, adjust, and try again till you get it as needed. The original values I had populated it with were not good enough.
As a result for all weapons in the game, it’s going to need to be a multiple-step fix. I need to go in and adjust the icon size so you don’t get a 20-foot weapon. I’ll also need to adjust the item in the image so they fit better in the player’s hand with the way framing works. Finally, I then need to set up the proper slash area.
The downside is I’ll need to make a couple of tries to get things correct for each step. Since I won’t see the effect of my change till I test and I’ll more than likely need to make some further minor adjustments. The good news is I don’t need to recreate every single weapon and replace them in all the loot tables and quest rewards.
I decided since I got the weapon I wanted working I might as well finish rebalancing monsters in the third map and its dungeon. I then would work on the remaining items and move on to the next map-making changes as needed.
Final Thoughts
While it would have been nice to catch the main issues I’ve run into tonight early on into the project. So a bunch of rework will not have to be done. With how quickly I’ve been progressing along in this project there was bound to be some oversights and a price to pay. At least I did not put much effort into what needs to be fixed so I’m just putting in the time I should have in the first place for the most part.
Other Content
- 001 Game Creator | Part 6: All Coming Together
- 001 Game Creator | Part 5: Working on Items, Compile, And HTML5 Test
- 001 Game Creator | Play Testing And Quest Scripting
Information
Screenshots were taken and content was written by @Enjar. Screenshots are from 001 Game Creator.
The rewards earned on this comment will go directly to the person sharing the post on Twitter as long as they are registered with @poshtoken. Sign up at https://hiveposh.com.
Fantastic to see these tutorial about gaming development step by step and bug fixes
Good Luck Guys