So, why do my games work the way they do?

The answer to this (and many other problems) is “Beer“!

Yes, the very thing that makes the games into what they are, is the very thing that makes them better (read:tolerable) during play. Over the last couple of weeks I’ve been programming slowly, but surely, on X-Quest 2, and I am (as usual) doing it past midnight, listening to loud music and drinking beers – long past my bedtime. The most important bits I’m programming right now is the visuals and the AI. Gameplay and tuning comes last. I’ve just put in the AI for a couple of the enemies and the moment it worked I couldn’t help but sit and laugh at it. “Why don’t I just make the movement ramdom?” I thought – “I looks like they’re moving ramdomly“. Actually it’s a bit more complicated than that, but with all the factors that are calculated, it does look a bit random….but there is an idea behind it (although randomnes is also a factor to avoid making it too predictable.)

For those of you that are keeping score I can tell you that this remake of X-Quest 2 will contain the same  amount of powerups and enemies than the original game – 15 enemies and 9 different powerups and it’s looking good so far – no pictures though..that hasn’t changed much.

Completely unrelated to remakes I’d like to mention some other distractions that”ll affect my time (and wallet) this year. Two, possibly 3 vacations are planned for 2008.

  • One week in New York. I’ve always (well, since 1979) wanted to experience Pat Benatar live and I’ve come to the realization that she’ll never come to Europe so I’ll have to go to the States. Luckily she’s touring every year, so hopefully I’ll take a trip to NY in April this year to finally hear her.
  • I’ve been talking with my best friend about to going to Transylvanina (Hungary) to visit Dracula’s (alleged) Castle. Sort of a pilgrimage – we both love horror and monsters.
  • The most ambitious trip will be at the end of the year – november or december, and be for 4 to 6 weeks. I’ve decided to go backpacking through Laos and Cambodia . I’d rather not go alone, but that’s probably the way it’s going to happen.

…ohh, and I’ll probably buy an Xbox360 in a week or so – Burnout Revenge just came out and I need my yearly racing fix.
😀

Sleep well…

D’oh! – of course I’m not sleeping…it’s not like I can post this my sleep, right?
(but it must feel like I’m asleep with my current lack of updates)

Anyway, I just wanted to let you know what’s going on. I’m still working on Project Future…sorta – I’m still waiting for my friend to deliver the last pieces of graphics for it. The crazy thing is that I could’ve made them myself 10 times over, but I’m still waiting for him to do it. What a sucker I am.
😀
The good thing is, that it means I’ve got more time for other things, so I’ve started on two more projects. That means I’m currently working on no less than 4 games.

One of them is a platformer. It’ll have big graphics, it’ll be bright and it’ll be made for kids. It won’t be a remake though – just some random platformgame elements strung together to make something that’ll hopefully be fun to play. It’ll borrow ideas from other games though…I just don’t know which ones yet.
🙂
The other game I’ve started working on is a remake of an old DOS game called X-Quest 2. I’m hoping to make this one very visually exciting, so there will be a lot of particles, explosions and colors flying in your general direction. It’s a bit different from my other games as this is a shoot em’up that are 100% controlled using the mouse. Currently I’m re-using some of the graphics from the DOS version, but when I’m closer being done I’ll see if I can get someone else to make some nicer graphics for me.

Here’s an early picture (click to enlarge);

Smooth sailing!

Well, mission complete…mostly.

Amazing what a bit of optimization can do. No more framerate drops for Rip Off.
The framerate is limited to 60fps, but unthrottled, the earlier version would usually run at up to 200fps if the screen wasn’t too busy.
But the screen did get busy sometimes, which caused the framerate drop I’ve been working to eliminate.Well, now it’ll run at up to 1000fps and most of the time at about 500fps even if the screen is busy.
There are more bits that can be optimised, but I think this’ll do for now. 😀
I’ve noticed a few bugs though (small ones), so I’ll need to take a look at that before releasing the game, but this extra week of optimization was more than worth it.
🙂

Here’s a screenshot of how it looks right now.

Fun fun fun…a small update

Good news…and bad too – as always 🙂

The good news is that I got some feedback on Rip Off from Oddbob and it was good – the only thing he mentioned as bad was a slight framerate dip for no apparant reason occasionally- which also happens to me. I don’t think it’s so bad in singleplayer mode – on my pc anyway…but it’s there and it’s annoying.

If my PC can play Bioshock it should, sure as hell, also be able to play Rip Off
(ok, I don’t get the best framerate in Bioshock either, but still…) 😉

I also had a friend over on monday night and we played the two-player mode for two solid hours and it was really fun – just like 25 years ago in the arcades…only we didn’t have to spend a lot of money on it. So it was great fun, and seemed bugfree, but unfortunately the slowdown Oddbob mentioned is worse in two-player mode because there’s more things on the screen.

So the bad news is that I can’t release the game this week, as I’d planned, but have to put on my thinkingcap instead and try to find out what part of the program causes the slowdown. Is it the 1000+ cos/sin calculations each second or is there particular function somewhere that is the cause of it?…that’s what I need to find out before I release the game.So it’ll be a little while longer before it’s completely done.

UPDATE:
I felt like experimenting last night, but since I had no athletic 25 year old blonde girl handy I decided to poke and prod Rip Off instead.  I’m now pretty sure I know what’s causing the slowdown and I even have a crazy idea how to fix it, but it’s going to be a quite extensive rewrite – but it should eliminate the problem completely (if I can make it work that is).