News Archive Q1 '99
March 29, 1999 - Um, yeah

Once again I didn't do anything on the game. I haven't been much in a programming mood. Maybe it's the incredibly beautiful weather we had this weekend. Maybe it's my obsession with Wipeout 64. Who knows?

One good thing is I finished Silent Hill, except I got the bad ending. So it looks like I have to play through it again to see the good (or good+) ending. That's not too bad though since it took me less than 5 hours to finish it the first time. Should be even quicker the second time - especially once I get that chainsaw heh heh.

Syphon Filter is just annoying. I'm at the second mission and can't figure out what the hell I'm supposed to do. I found the box of C4 (by pure accident I might add), but I'll be darned if I know what to do with it. Guess it's time to download a walkthrough. Grrrrr.

As mentioned above, I'm still trying to get golds in all challeneges in Wipeout 64. I unlocked the Super Combo Challenge and proceeded to get golds in 5 out of the 6 races. However, I can't get that last one! It's Super Combo Challenge 5. I got a silver, but I'll be darned if I can get the gold. You have to destroy 8 competitors and also come in first place. The only weapon you get is the crappy "super" weapon that makes that gold barrier thingy. I have managed to destroy 8 competitors and even come in first, but never both in the same race. Guess I'm just waiting to get lucky one of these times.

March 23, 1999 - New planets

Not much to report. About the only thing I've done recently is render some new planet animations. Some turned out very cool while others are terrible.

That reminds me. While I was using Sprite Assembler to construct the planet animations and found a couple bugs in it. I guess not too many people are using it so it's not that big a deal. Still, I'll post an updated version when I get a chance.

I played rather than programmed quite a lot this weekend. I finally got some quality time with Silent Hill. This game is creepy to say the least. I really hope there's a good story to go along with all this atmosphere. I also got Syphon Filter and played through the first level. Very cool game. Other than that, I'm still plugging away at Wipeout 64 trying to complete the challenges. I got golds in all the Weapons Challenges and am now trying to do the same in the Race Challenges. No One Can Stop Mr. Domino provides the occasional tangent every now and then.

March 17, 1999 (take 2) - The memory pills finally kick in

Now I remember what I did last weekend. Back on March 15th I wrote that I didn't do anything major. Actually I did a big optimization on gravity computation.

Destroying an enemy generates a powerup which then floats around the level until you pick it up. The powerup could be money or an extra ship system. While its floating, the powerup is influenced by planetary gravity just like you are. I originally just used the same gravity-computation function for both the player and the powerups. However, this proved too slow because when you have 4 or more powerups on the playfield the framerate takes a serious beating.

I changed it so the powerups get their gravity calculations from a look-up table rather than being computed dynamically. The look-up table breaks the playfield down into 64x64 pixel squares. It pre-computes the gravity in each square so it can just be looked up when needed.

This works great most of the time, but when you get close to a large gravity source the approximation starts to show its inaccuracy. So I added another section to the look-up table which lists the 6 objects closest to each square. It takes the pre-computed gravity (which does not include these 6 objects) and then adds in the gravity for each of the 6 closest objects.

This works perfectly 99% of the time. It saves a ton of CPU cycles too since I only need to do one table lookup and then at most 6 gravity calculations (if a square has no objects close by it may not even have to do any). This is in contrast to computing the gravity from every object in the level every frame. As a result of this change, I haven't seen the game slow down yet.

March 17, 1999 - It lives!

Yay! I fixed 3D Studio so it works again! I haven't actually tried to run it in over a year. In that time I upgraded my computer to a PII. When I tried running 3DS it would just crash with a blank screen. It didn't even get to the dongle check (which I tested by removing it).

I went to the newsgroups and there was a message dated 5/31/98 from Ed Federmeyer about how to get it working in Win 95. I tried that and it did fix a separate problem, but it still just locked up. Then I thought "duh, maybe there's a patch". Sure enough, I went to the Kinetix website and found a patch for 3D Studio R4 which makes it work on "fast machines". That did the trick!

So I'm happy to report that the planet graphics will be going through a facelift soon. They look rather one-colorish right now and I always wanted to fix that. Now I can! Yay!

March 15, 1999 - Screenshots

It's been a while since I posted some screenshots, so here's a few:

do16 do17 do18 do19 do20 do21 do22

You can also find them on the screenshots page.

As for progress, this weekend was great. Unfortunately I can't recall anything major that got done. I did lots (and I mean lots) of little clean-up things. Just odds and ends here and there. Things that needed to get done, but nothing earth shaking.

March 9, 1999 - The root counter & optimization

I did a bit of experimenting last night. After encountering a problem I was looking through my code trying to find a bug. As it turns out it wasn't a bug in my code, but in my TIM. However, upon looking at my code I began wondering how much I could optimize it. One thing led to another and I ended up spending most of the night playing with optimizations. Bear with me, it'll be a long one. Read all about it here. Then let me know what you think.

March 8, 1999 - Woo woo!

New sounds abound in Decaying Orbit! I tell you it makes all the difference in the world to get actual sounds in there. It's like playing a new game!

My lovely finacee loaned her voice as the ship's computer. I had to reduce the sample rate so the speech doesn't take up a lot of room. Thus the samples have that muddled "what did it say?" feel to them.

I also modified every other sound in some way. I did this for two reasons really. First off, nearly all of them were swiped from Total Annihilation. I wanted to avoid getting sued :). However, I also wanted to make it feel more like an real game. Rehashing sound effects just wouldn't cut it. And to tell the truth I actually like some of them even more now.

You know, combined with the new sound effects, if I pop in a Prodigy CD for some background tunes it almost sounds like a real game!

March 2, 1999 - Collision detection optimizations

I had noticed that my collision detection wasn't doing a very good job so I did some investigating. Turned out it to be a very stupid mistake. I commented out one line and things started working like a charm again. I don't know what I was thinking. I also improved the collision detection in general so it should be extremely accurate. I'll see how much this slows things down (it now does 3 multiplies instead of 2), but hopefully it shouldn't be too bad.

I got a few games this weekend. At the top of the list is Silent Hill. Then there's Devil Dice and No One Can Stop Mr. Domino - both were cheap so I figured why not. I also snagged a memory upgrade for Nintento 64. I don't need it quite yet since I don't have any games that require it, but I'll need it eventually and don't want to go hunting for it when I do.

February 26, 1999 - Da boss II

All of the boss stages are in. I just have a couple more things to tweak (including real graphics). This thing is going to kick some major ass once it's done. I'll polish it up hopefully this weekend.

The next addition (and the last major one I might add) will be some new sound effects. Some, like the lasers and explosions, will stay the same, but many will change. All the humorous ones will be gone (like the "Computer, on!" at the beginning and the "Yeah alright!" when you finish a level). I'd like to completely rework the sound code, but that'll have to wait until after this demo gets released. That also depends on whether I decide to keep working on this or move on to a new game.

February 22, 1999 - Da boss

Started work on the boss in the final level. Most of the graphics are still very temporary at this point. The boss will have several stages to it and I'm just now working on the first one. I'm not going to give away what it looks like or does since I want it to be a surprise.

As always, I also did some miscellaneous tweaks.

Just a minor update to the Staff section to reflect my new found age.

February 18, 1999 - Playin' games

I updated the Staff section to remove the games I've finished from my "Played Lots Recently" list. I completed Zelda a couple weeks ago. Then Spyro soon after (although I didn't get 100% let alone 120%). And just last night I finished Halflife. With all these big name titles out of the way I'll have more time to code. Of course I'll probably need to get Syphon Filter. And I bought Roll Away recently (for 20 bucks!). Plus there's the Halflife demo - with all new levels. Mario Party's fun too, but it's hard to get 4 people together to play.

I will definitely get some programming done this weekend if not today and tomorrow.

February 16, 1999 - No progress

I spent the long weekend at Yosemite with some friends. We ate a lot of food played a lot of games. It was a nice relaxing break from everything. As far as the game goes, I've just started play-balancing the levels.

February 9, 1999 - In-game stereo system

I polished up the CD player last night. It's not perfect, but that's more due to the deficiencies in the Yaroze libraries (or at least that's what I keep telling myself).

February 8, 1999 - Weekend report

I spent a lot of time at Magic tournaments this weekend. It was the Urza's Legacy prerelease tournament. Here's the spiffy commemorative card they gave us. It's a foil card and is nice and shiny. As a result scanning it makes it look rather funky. I swear they're just out to milk people with these foil cards...

The card is Beast of Burden. This artifact creature costs 6 mana and has power & toughness equal to the total number of creatures in play. Insane huh?

Aaaanyway. I drew a few more system pics for Decaying Orbit. I think I only have one more to create for the demo. I also spiffed up the in-game CD player. You can now tell it how many tracks are on your CD so it doesn't try to play non-existant tracks (unfortunately there's no way to detect this automatically). You can also optionally set it to "random" play. Finally, if the music you want to use is a game CD (Wipeout XL and Total Annihilation being among my favorites) you can have it optionally skip the first track to avoid trying to play the data section.

February 4, 1999 - Levels

All levels are now in with the exception of the final boss. I still need to do play balancing and determine how much time to give the player in each one.

So here are the things I have on my list to finish before releasing the demo:

  • Replace some sounds and add some new ones
  • Add final boss
  • Play balancing
  • Create necessary system graphics
  • Miscellaneous little fixes/perks
February 1, 1999 - Odds & Ends

I can't think of anything major that I did this weekend. I did a lot of coding Saturday, but by Sunday was so burnt out that I just played games most of the day. I picked up Wipeout 64 for $30 from Target and am duly impressed with it. I'll have to try playing it 4-player sometime, but the single player is very faithful to the PSX version. Even the non-redbook techno works well. Also finished a few more levels in Silicon Valley. I'm almost half-way through the game. Just one or two more snow levels to go. I also played Half- life in earnest. I played until I got stuck which was, conveniently when Simpsons came on.

As for Decaying Orbit, I drew a few more system pics and tried to get a proper graphic for powerups. Can't think of much else...

January 28, 1999 - It is a period of civil war...

Support for scrolling text is now in. It will be used at the very beginning and end of the game as well as between each of the five galaxies. The text (interspersed with some pics) will convey the story as the player progresses through the single-player mode. It doesn't do that nice scroll-at-a-slant thing like in Star Wars, but oh well.

I take solace in the fact that I didn't have that quote memorized and had to look it up on the web. I'm not a total nerd after all. At least that's what I keep telling myself :).

January 26, 1999 - A big ol' WHEW!

After reading through the Yaroze newsgroups I saw how some people were having random lockups, GPU timeouts, etc. The response they always got was to try increasing the packet space. I did that and to my utter delightment the problems were fixed.

It's strange, though. My packet size used to be set at (512*24). Since 24 is the size needed for a single sprite I thought I had room for 512 sprites. Since I never display that many I didn't think I'd have a problem. Guess I was wrong. I upped it to (1024*24) and it worked. Now I have less RAM to work with, but at least it works.

Another bonus. Nathan (see below) has ammended his competition so that people can enter works already in progress. Yay! The deadline is April 24th. Can I have Decaying Orbit finished by then? I'll certainly try!

January 25, 1999 - Bugs bugs and more bugs

$%@#$!! I'm tearing my hair out on my current problem. I've encountered a bug that causes the game to lock up and for the life of me can't figure out why. Yaroze members, please check the newsgroups and give me some help if you can. I'm kinda stuck until I figure this out.

On the other hand, before I hit the wall I did make some progress. Mostly just cleanup stuff and miscellaneous tweaks. There's only two really major things left to add before releasing the demo. One is an opening sequence explaining the, admittedly weak, story. The other is the boss at the end of the last level. I have the boss designed so it's just a matter of implementing it.

Nathan Miller is kindly sponsoring a competition amongst the SCEA Yaroze people. I would like to enter, but the requirements are that any submissions be original games started after January 24th. Heh, well I guess Decaying Orbit wouldn't qualify then :) I would still like to enter, but I don't know if I can just drop Decaying Orbit to start on a new game. SIGH

January 21, 1999 - Music to my ears

Boy it was absurdly easy to add CD music to the game. Call two functions to initialize the CD and set the volume. Set up an array holding the order of tracks to play. Then a call to CdPlay() and you've got music! Granted it's not as cool as having some original MIDI tunes, but I'm not a composer. Also, using CD music has the benefit of keeping all 500k of sound RAM free for sound effects.

January 18, 1999 - Beacons

Yay! Another weekend well spent programming. I'm focusing my efforts on cleaning up all the little things so I can release a demo sometime soon. I hesitate to give a date since I know I won't hit it.

First off, the level bonuses are in and working properly. Since one of the bonuses is for activating all the beacons, I had to add support for them. So now there are beacons :) I mentioned them before, but if you're not familiar with them, beacons are like little lights strewn about the level. They're initially OFF, and when you fly by one it turns ON. If you can activate all the level's beacons you get a bonus. The level editor supports them as well.

The player can spend a lot of time in each level trying to achieve the bonuses. This obviously makes it harder to get the time bonus. In order to alleviate this, you get a couple seconds added to the clock whenever you activate a beacon or destroy a target. That way I can hopefully make getting the time bonus more of a challenge even if you're not going for the other bonuses. Did that make sense? No? Okay, let me try again. When designing them, I need to decide how fast the player has to get through each level in order to get the time bonus. The problem is that different players will clear the level at different speeds depending on whether or not they take the time to activate all the beacons and destroy all the enemies. If they only do the minimum, they could blow through it quickly; however, if there are lots of beacons/targets the ambitious player would spend a lot of time flying around activating/destroying them. So if I set the time bonus "threshold" according to the latter case, it would be absurdly easy for those that just do the minimum. With me so far? Okay, so by adding back a couple seconds for every beacon activated and enemy destroyed, I'm giving the ambitious players a break. This lets me lower the time limit and has the nice side-effect of making it more difficult for the "do-nothing" player. Got it that time? No? Oh well...

Also, I cleaned up the levels themselves. I was experiencing some slowdown in a few so I reduced the number/size of some objects.

January 12, 1999 - Seeing stars

Whooboy! I did the most programming this weekend that I've done in a long time. I added a star field background to the title screen. It kinda spruces things up.

Also, I did more work on the message system. There are now 8 message types (up from 5 as described in Jan 7). After you finish a level, they pop up to tell you how you did. It tells you how long it took you, how many beacons you activated (even though I haven't added support for beacons yet), how many enemies you destroyed, and whether you got the navigation bonus (for not colliding with any planets). Plus, if you get all four bonuses it gives you a fifth message congratulating you. You get credits for each bonus you achieve, with a big bonus if you get them all.

January 7, 1999 - Message routines

I'm nearly done with message routines. These allow me to display any text message using the font I've chosen. The text can be manipulated in just about any way imaginable (each letter is a sprite so you can play some cool looking tricks on it). So far I have 5 message "types". Naturally I'll be adding more as the need dictates, but the core code is pretty much complete and clean.

January 4, 1999 - Slow progress

Despite the two long weekends I didn't get much done. About the only thing I did was polish up the message-display routines. These are used for the opening title sequence and will also be used in between levels to tell you what bonuses you achieved.


Top

This web page and others at this site are 1999 Scott Cartier