Helsing’s hunt update

Boy, progress  is sometimes hard to measure.

The sticky notes with ‘user stories'(just small units of work really) are not moving as fast as I hoped (and sometimes they get pulled down by my cat). There also new notes appearing whenever I realise I need more then what I anticipated, but that’s to be expected.

There are good reasons for the lack of obvious progress. Before this week my game was still largely based on what I made for the Ludum Dare. It had a pretty good structure if you only have one level. If you want more levels and texts between levels you need something that is more flexible, some sort of game states. I think I have  a much better structure now to accommodate an easy flow of the program. I have lots more constants, variables and there are now also more macro’s so the code becomes more readable.

For instance: the transition from the Help-screen to an introscreen that will exit to level 1 is now two lines:
1. “showscreen LVL1IntroScreen,continueWithLevel1”
2. “SetState StateInfo”

screenshottext 13-2-2014

Each level now starts with a screen with text to explain what you are supposed to do.
The border is made automatically, which took some time to get right!

I hope to see this progress reflected in  a higher speed of realising the other stories.

Another way to measure progress is how big the program is:
It’s now about 80 blocks on loading (approx. 20k). It’s uncompressed but after loading all kinds of stuff is moved around, so after playing a game the program will have left its impression on about half of all the 64k of memory. This can be optimised a lot, so no need to worry yet.memory map

I think I have done an overhaul between 30 and 50% of the code (not including data). So there’s a lot of progress.

And lastly progress can be measured best in a more enjoyable game experience.
Sadly that  is not the case. I break the game several times a day. It can sometimes take several hours to get it working again (and I use the word ‘working’ in a very broad sense).
I think my main goal for this and coming week will be to have a game with three levels that can be played till their (happy or tragic) conclusion. Polishing of text and graphics and creation of music will have to come after that. But it means that hopefully within two weeks playtesting can begin.
I know it’s not best practice to have something playable so late in the process, but I think I had to do the refactoring to be able to make changes without drowning in bugs.

I’ll end this lengthy post (TL;DNR) with a screenshot of level 2.
If you think it looks a lot like the screenshot several weeks ago, you’re right. But I can assure you: a lot has changed and been improved (no really!).

screenshotlvl213-2-2014

The yellow sprite is for debug purposes and is the position of the invisible vampire. You can see the shadow on the wall, cast by the candle (which at the moment has a flame that’s not attached to the candlestick)

Oh: the bar you see on the side is an indication of how much screentime my program uses: it changes to grey, when my interrupt starts (where now everything happens) and changes back to red after that. The maximum now lies at 20-25%. That sounds like a lot but there are not many forseeable processor-intensive tasks to add.
If I have to, I can probably get it down to 15% by using double buffering for the scroll.

Posted in: Games

Leave a Reply

Your email address will not be published. Required fields are marked *