Thursday, February 1, 2018

I already did the "Disturbed " joke when I was sick last time.

I was always more of a fan of the Richard Cheese version of "Down with the Sickness" anyway.

I cut and pasted a few lines of code, changed a read function to a write one, then I fell asleep at my desk. I went to bed and now I writing this after a day long nap and a powerful headache on my Chromebook. Looking forward to my sleeping schedule getting all botched up again.  And it was going so well too...

As it's the  beginning of the month and I super don't feel like dropping code at the moment, maybe I can take some quiet time to see where I'm at.

My current project is to continue to abstract the hardware away form the code. As I do this the game is slowly transforming into something playable. Things are "just working" which is making me happy. When I run the game, I have a terminal window open that spills out all my debug information. During phase one,the graphics and sound libraries were largely dummied out in order to get the program barely functional. "TODO:" implementation alerts would cascade on my screen. Now that things are getting fleshed out, the screen just lists warnings to keep track of. The big warning I get is that the 1Ch thread is disabled. In the original code, this was an interrupt and I documented how I changed it to an Allegro thread earlier in this blog. What's cool is the game does detect if this is disabled and places a useful "STANDBY" on the game screen itself where a "Winky" is supposed to be. (You can see this is previous screenshots). The 1Ch thread is going the be the last "big thing" I'm going to implement. First, because it kind of relies on everything else working, and Second, when I botch the thread up, it tends to cause Visual Studio's debugger to hang.

The other warning I get is when the game is expecting a graphic with a transparent alpha channel. This is a new functionality I have almost implemented, however, I'm still using the old graphics so I don't have any transparent assets just yet. (My artist is working on those :))

I also have to implement the "color tint" function I was experimenting with a few posts ago. That's going to bu used to "color" the alien races. That code will show up when I work on the Enemy Builder. (After the Captain Builder and Ship Builder are complete).

After the builders are done, it will be time to attack the 1Ch thread once and for all. After that... The game should just "work". If everything goes will the game will officially be in Beta and then it will be onto Phase Three.

Phase three will be graphic polishing and code optimization. Right now, the game eats 30% of my CPU when it runs, and I have an i7 with 32 GB of ram. Keep in mind, the *emulated* version in DosBox runs at 0.2%. Much of this is because I am doing lot's of per-pixel things on "virtual screen" in RAM and not using video memory effectively... or at all in many cases. I'm also using Allegro debug DLLs that are huge and spew log files all over the place.

This is also when I'll start the marketing. That will include website, landing page, social networking, and that whole business. Actually, the earlier I can start this the better. However, I would like to have a functional product before I start making promises.

That's my post for today.

No comments:

Post a Comment