Monday, October 25, 2021

Math?

Man, is it truly Monday? It's starting to get increasingly harder to tell which day of the week it is these days.

I worked on a little bit of math to figure out how to define ellipses for use with the CIRCLE statement to show the ``shield'' for LED2-20. It was not particularly hard, but it did trigger me towards thinking about how I can pre-compute the parameterisation at hybrid-bitmap generation time so that I can just load it all into memory and use it accordingly. I also started to work on some line segment-ellipse intersection math, but it was hairy algebraically and I didn't get too far. That last part was to be used for collision detection also, and it made me think about the best way to structure my data to ensure that the collision detection process isn't too bad.

I was also thinking about numerical scaling needed for the various features of the player character and how best to represent them in the gauge form. Right now I am veering towards a gauge that is linear when short, and logarithmic beyond a certain point to handle the potentially large dynamic range (I'm thinking of an order of magnitude difference of about 6 or more from end to end).

In short, lots of thinking about implementation details of LED2-20.

Incidentally, I've also discovered DOSBox-X, a fork of DOSBox that aims to be a more complete emulator for PC hardware earlier than the Pentium II era. It claims more features than the old DOSBox, but the one feature that I found most useful was the ability to send Ctrl-Brk to the underlying program---this is the main way of telling QuickBASIC to pause execution and go back to the IDE. DOSBox cannot do that for a whole bunch of reasons, and it is unlikely that it will be fixed at this stage to do so since this key-command is more likely to show up in doing development work in DOS than in playing a game. The alternative is to use Ctrl-Scroll Lock, but funny enough, Eileen-II does not have a Scroll Lock key(!).

Apart from that singular feature though, everything else that DOSBox-X offers is not as interesting nor needed, and so I'm just going to use regular DOSBox as originally planned. Actually, there is one issue in DOSBox-X that actively discourages me from using it---when changing video modes, it has a rather unhealthy amount of delay, even on maximised emulation speed settings. I don't remember old hardware ever demonstrated that problem... except maybe for some Matrox displays from back in the day. Not sure why, not bothered enough to figure out when I have a working alternative.

I also played a few rounds of Jupiter Hell, trying to get a 100% kill on Angel of Carnage on Ultra-Violence. Man, those Medusas hit real hard. I was doing well till I faced them. To be fair, that was also the first time I faced those enemies, and at that point, I was doing heavy damage with my modded rocket launcher. It seems to me that my play-style for Jupiter Hell has been very weapon-restricted in general, favouring pistols/shotguns, or just the rocket launcher in this challenge mode. Maybe I should do a ``sight-seeing'' tour with a more conventional automatic weapon-type build instead just for fun.

That's about all I want to write about today. Till the next update then.

No comments: