Showing posts with label port. Show all posts
Showing posts with label port. Show all posts

Sunday, August 31, 2008

Day 232: Re-re-port

It's been a while since I blogged but unlike last time that happened, I've actually been busy in the meantime. Here's what I've been up to:

  • Ported everything to new-style events. This was fairly easy and straightforward

  • The player can now give their pilot a name. Eventually this will be rolled into savegames, so you can have more than one pilot per module

  • I fixed a Rubygame bug where if your application was minimized and lost focus at the same time, it'd crash.

  • A freaking ton of map work! I have to say that creating maps is a lot easier with an editor. Coming up with ideas for a ton of sectors, however, remains difficult. I made the mistake of giving my initial generic filler sector a description, and so now have to go out of my way to explain how boring the other dozen filler sectors are.


The map descriptions I've written already depict a lot of lore pre-game. There was a time where humanity didn't know hyperspace lanes could go to empty sectors, for instance. After that, the Sandwall spurred the invention of shielding. There was an alien invasion scare at some point. All these are completely divorced from the plot, just things I've come up with as I made the map.

I was asking myself the question: Should I write this down somewhere so I remember it? Then it occurred to me: I just did!

Sunday, August 17, 2008

Day 218: Re-port

Today's major task was to port Kuiper from the old 3.0 codebase to the currently developed Rubygame 2.4. This seems to have gone off without any problems, with the exception that I'd made a number of changes to the 3.0 codebase (mouse wheel support, etc) that hadn't been backported yet.

Well, I'm not a Rubygame developer for no reason, so I went and backported them myself. As alluded to earlier, I'm starting to use Git, and it turns out that you don't even have to be an official developer to make changes to Rubygame if you're going the Git route. Instead, you fork the github Rubygame project, make changes to that, and send a 'pull request' back. If you didn't understand any of what I just said, feel better knowing that I didn't really either. I'll have to wait and see if I did it right :)

So on that list, three of the four things I mentioned I wanted to do have mostly been done. I just need to make a little more balance for the tutorial, and then I'm doing a preview release!

The following are the notes I made to myself on the porting process, so later when I need to re-port the game to Rubygame 3.0, I remember what I had to change. You can safely ignore these:


  • Had to change the screen portion of engine to use 'or's instead of an array

  • Put support in 2.4 for key repeats

  • Put support in 2.4 for mouse wheel

  • Fixed bug in ftor new_from_to

  • text.rb keyTyped used symbols, changed to Rubygame::K_*

  • Options.rb, change symbols there to Rubygame::K_*

  • Clock.wait uses milliseconds, Clock.tick returns milliseconds

  • mouseUp in state used symbols, replace with Rubygame::*

  • Change emergency hooks from syms to Rubygame::K_*

  • Change unit tests to use constants instead of syms

  • Map::update used syms for arrow-key movement