For this week’s Thousander Club update:
Game Hours: 216 / 1000
Game Ideas: 445 / 1000
Target: 861
I spent this past week researching autotools in order that I might use them in my projects. Basically, if I can use autotools in my game projects, I will have less of a problem when porting to various Unix-like systems, including different Gnu/Linux distros. In fact, if I do use autotools, I can use CheckInstall to create various distro packages, such as RPM or .deb files. Of course, there is still the problem of porting to Windows, but it seems that my code is quite portable, and there are various installers available for that platform anyway. As for the Mac, I imagine that a third party will be involved, such as Red Marble Games which provides a porting and marketing service.
This week is the 45th of the year; the year is almost over. I hope that I can make a better effort for these last few weeks.
12 replies on “Thousander Club Update: November 6th”
Whatever happened to pong? I want to play it. Seems like you were very close to done with it like 3 weeks or a month ago? Its ok if its not commercial release quality with particle effects, a world map, a store, reconfigurable controls, a pretty but not sexually alluring mascot girl, windows and mac os x builds, etc. I’d just like to see how far along you are.
B-) Well, I’m research autotools for the Pong clone. That way, I already know what to do for the next project.
Also, you can check it out at https://www.gbgames.com/downloads/sdlpong/
Let me know if it runs smoothly in Windows. I haven’t tested it on any other machines but my Debian system.
Can’t get the code to run. I’m missing some Pong800x600.dat file…
The dat file is missing because it is generated. Check out the resources directory. The Makefile in the base directory makes kyra and the game code, then creates the resources. Kyra needs to be made first because it has the encoder used to create the resource.
Ugh, that’s almost too much work to get running :). I built Kyra, but I’m not familiar enough with the engine to know about the encoding step. Remember I’m building this with VS.NET project files, not make, so it was easy to miss.
True, but I haven’t really ported it to Windows, and so it isn’t VS friendly.
The Kyra engine has an encoder to take your xml (usually generated by the sprite editor it provides) and related images and convert them into .dat files. If I release the game, it will definitely come with .dat. Since this is the source, I make it easy to change the sprites and update the .dat file. Just, you know, not for you. B-)
Now that I know what to do it shouldn’t be too bad. I’ll check out the make file later tonight and see if I can get that step running in VS.
In terms of source changes there were some minor things required to get it building. uint (all lower case) isn’t a type in win32. I added a typedef defining it as unsigned int, but you might want to consider replacing it with a SDL or Kyra defined equivalent, or just use “unsigned int.” SDL also didn’t like main without commandline arguments for some reason.
I can make VS.NET 2003 and VS.NET 2005 project files for this, but I don’t have VC6 installed so I can’t go that far back.
Wow, thanks! I’ll try to fix the uint issue, perhaps by creating a typedef or using the full unsigned int.
I got it to run. On my 1337 machine your delta time code breaks horribly :\. In your update loop you have a line that does this:
uint smallerDelta = delta / 5;
Given the line before it:
if (delta > 12)
{
delta = 8;
}
That seems kind of odd, but it breaks if delta
Well, I’m in suspense. Breaks if delta what?
Hmmm… looks like my comment was cut short :). It should have said it breaks if delta is less than 5, and the code would be ok if you used floats instead of unsigned int.
Ah that makes sense. I should check if it is less than 5 and adjust accordingly. Also, the 12 and 8 are magic numbers, which is bad. I found that whenever it exceeded a certain amount, I would have strange jumps or other jerkiness, so I capped the delta. Even so, the numbers are definitely weird and were probably due to quick experimentation rather than any kind of analysis. My bad. B-)