Hey all! I know it’s been a little bit since the last time I provided an update. It’s just that I’m pretty sure nobody reads these things so I’ve been getting lazy. Nevertheless, I’ve decided that I shall continue to forge these historical records as journal entries (hence the title). Anyway! The new level is coming along quite nicely and surprisingly enough, I’m actually ahead of schedule. With persistence and a bit of luck, I should be finished with it by the end of the month and have a bit of time to celebrate Thanksgiving.
Team morale is good. Everyone except for Sandor (the dog) seems to appreciate the recently bad weather as a legitimate, albeit convenient, excuse to stay inside. The stormy weather has resulted in a boost in productivity and has pushed things back on schedule. As expected, there are still a few moments of panic here and there, but as of late, the beast of anxiety seems to be rearing its ugly head with less frequency.
On another note, some of you may recall that I recently posted a short video of the previous level on youtube, codenamed KL6. Although that level was 99% complete at the time I made the video, there was still one nasty little bug in the boss fight that I hadn’t figured out. It was damn near impossible to reproduce and would only happen very rarely. This made it very difficult to figure out if it was fixed or not when I made changes to the code. I had put it on the back burner, but the other night, I decided to revisit the issue and not leave my chair until I figured it out…
Many moons passed and it wasn’t till the wee hours of the night that a single line of code nestled deeply within a coroutine caught my dreary eye. The function was meant to quickly turn the boss to face the player in certain situations. The boss would theoretically rotate until the angle between its forward vector and the vector between the boss and player became less than 3 degrees. To test the function, I changed the value from 3 to a negative number. This would be an impossible value to attain because the Vector3.Angle() function only returns positive values. In other words, I was intentionally breaking the function to see if it would produce the same bug that I had been encountering in the game. When I fired it up, voila! The bug was now happening consistently which told me that I was on the money. To make a long story short, it turned out that the broken function was conflicting with another rotation method being used by the boss. I made it so that only one would be called at a time which fixed the issue. Though I was quite tired, I happily accepted the victory and triumphantly passed out at my keyboard.
Anywho, enough of all that. Here’s a couple more goodies!