Zotty
Member
Reading about the Pandora emulating Amiga games got me all fired up. At the same time I was looking for a way of developing close to the hardware again. So this got me thinking. What game did I play hours, days, weeks on end? Right, The Settlers! So I started looking at the possibility of it running on the Pandora and ran into the Settlers 2.5 RTTR project. Downloaded the code and took a look around. Also downloaded the binary to see if it was playable. To my delight it worked and had a great weekend playing with friends
Anyhow, long story short... there's been talk of a port in the past (e.g. on the German Pandora forum), but nothing concrete. So time to tackle this and dump some ideas in your collective lap. I really think this will run, but it will need some modifications. It would be nice to commit Pandora support in the main Settlers 2.5 tree, but the current code is geared towards desktop systems, so I'm not sure this is an option. Also the code currently contains inefficiencies that will be ironed out (don't forget the original project is a WIP).
The Pandora is no desktop system, so here are some things that may need attention:
- the rendering system needs to be replaced by Pandora specific OpenGL ES code. Sounds like fun to do, but since I have no experience with OpenGL yet, I find this the most difficult part to conceive (ordered a book though to get up to speed). Right now it's way 'too heavy' as it runs at 19fps on my C2duo laptop with X3100 GPU. Biggest headache.
- the resource library (libsiedler2) could be replaced. It's overly complex and contains 'bugs' such as reading map data multiple times.
- things like dynamic casts could be replaced since these take a lot a CPU cycles. This could trigger larger code changes than intended.
- the ogg vorbis music could be replaced by mods to free up more CPU cycles.
- resource usage must be brought down. The latest binary uses around 200MB of memory. IMHO way too much looking at the specs my Amiga 500 had (Settler 1).
The game logic could and should remain in tact, saving a lot of work. This has the additional benefit of replacing it later on with new code from the original Settler 2.5 code witch is still being worked on (think of computer player AI). Besides they did an amazing job so far, so why invent it again.
At the moment I'm just browsing through the code, taking a look at how various things are done. At the same time I'm stripping stuff out in an attempt to get some bare terrain rendering done. My main goal here is to see if it will run without any additional stuff and at what speed. Will it leaf room to continue or pull the plug. You get the picture.
Apologies for the long story, but I just dumped all that came to mind here in hopes of getting some feedback. Any thoughts would be appreciated. Would love to get this of the ground.
Anyhow, long story short... there's been talk of a port in the past (e.g. on the German Pandora forum), but nothing concrete. So time to tackle this and dump some ideas in your collective lap. I really think this will run, but it will need some modifications. It would be nice to commit Pandora support in the main Settlers 2.5 tree, but the current code is geared towards desktop systems, so I'm not sure this is an option. Also the code currently contains inefficiencies that will be ironed out (don't forget the original project is a WIP).
The Pandora is no desktop system, so here are some things that may need attention:
- the rendering system needs to be replaced by Pandora specific OpenGL ES code. Sounds like fun to do, but since I have no experience with OpenGL yet, I find this the most difficult part to conceive (ordered a book though to get up to speed). Right now it's way 'too heavy' as it runs at 19fps on my C2duo laptop with X3100 GPU. Biggest headache.
- the resource library (libsiedler2) could be replaced. It's overly complex and contains 'bugs' such as reading map data multiple times.
- things like dynamic casts could be replaced since these take a lot a CPU cycles. This could trigger larger code changes than intended.
- the ogg vorbis music could be replaced by mods to free up more CPU cycles.
- resource usage must be brought down. The latest binary uses around 200MB of memory. IMHO way too much looking at the specs my Amiga 500 had (Settler 1).
The game logic could and should remain in tact, saving a lot of work. This has the additional benefit of replacing it later on with new code from the original Settler 2.5 code witch is still being worked on (think of computer player AI). Besides they did an amazing job so far, so why invent it again.
At the moment I'm just browsing through the code, taking a look at how various things are done. At the same time I'm stripping stuff out in an attempt to get some bare terrain rendering done. My main goal here is to see if it will run without any additional stuff and at what speed. Will it leaf room to continue or pull the plug. You get the picture.
Apologies for the long story, but I just dumped all that came to mind here in hopes of getting some feedback. Any thoughts would be appreciated. Would love to get this of the ground.