Thursday, August 03, 2006

Dell Problems & ProSonic Progress

Dell is coming to my dad's shop (again) soon to replace the fan and the processor in the dyno computer. They don't know that that's what needs to be done, but they thought they'd try. It's amazing that the people who come to fix your Dell are not technitions, but simple parts replacers.

The deal is everytime the computer processes lots of information over a period of time, the fan slowly gets faster and louder. Windows will sometimes display the blue-screen-of-death saying it is shutting down to prevent damage. It doesn't do this if the computer is sitting there doing basically nothing. It's obvious that something is getting way too hot. I'm thinking this might be the reason the hard drive went bad before. I have also noticed that the USB ports in the front sometimes stop reading pen drives out of the blue, and I see no reason for that to be a software problem or anything to do with the drive. I'd say whatever is cooking inside, it's cooking many other components inside the computer case as well.

By the way, I've been updating my LIMP utility (the one that imports levels from the original games into ProSonic's format). I haven't made any major changes to the ProSonic engine yet because getting additional level data that I didn't bother with before is essential to getting loop-de-loops working. LIMP now gives each block 4 different sets of solidity data, 2 slope values, and data to allow designers to modify the plane that each 8x8 chunk of a block is drawn on. Before, my engine simply allowed designers to make the entire block either on a high plane, or a low plane. To keep compatibility with the original games, I am supporting this new method. ProSonic still uses 16x16 blocks with each sprite being 16x16, but the engine will be allowed to split it into 8x8 chunks to simulate the use of 8x8 sprites as done in the original Sonic games.

What LIMP doesn't do (correctly) yet is import what I call "side swapper" objects. These were first introduced in Sonic the Hedgehog 2 and allowed multiple sets of solidity data to be swapped. These too are essential to making loop-de-loops work. I haven't programmed these objects into the ProSonic engine yet, but that will be the very next task once I get LIMP fixed and modify the engine to read the new data formats created by LIMP. Right now, I'm trying to debug LIMP to get rid of a silly infinite-loop bug. Because of that, object data isn't being ported properly.


witeoutking said...

By "side-swapper" and that description, are you talking about things such as the helix tubes at the start of Chemical Plant Zone?

You seem to be making immense progress in this, it's amazing to see how this whole thing is coming together!

Damian said...

Yes, that's exactly what I'm refering to... the tubes you refer to, the loop-de-loops, and anywhere that the player can be on two different platforms at the same point. I don't know what people in the Sonic hacking scene call them since I'm not really in touch with what goes on there anymore, but side swappers is what I'm calling them.

It is coming along quite well. Sometimes I feel like "gosh, this is going to take forever to get working", but then I remind myself to think more positive about it and motivate myself more. I think the amount of progress I've been making these past few days is a direct result of that.

If I get these things done that I've been discussing over the past week, I might take interest in SAGE. I wanted to release a SAGE demo of my engine last year, but I wasn't happy with some things about it, so I decided to wait for next year. Next year is here, so maybe...