Forum > Games

Post Apocalyptic Petra, a small 3D platform game for MS-DOS (with sources)

<< < (3/4) > >>

Bad Sector:
I see.  Weird. I'll check it at some point later when i make a Linux version, it should be something trivial.

Bad Sector:
So i added proper Linux support (fixed SDL backend, added audio and mouse input, etc).

The issue with the wall textures was that i was lowercasing the filename during resource loading to avoid duplicates in the resource cache but the directory contained an upper 'Walls'. I fixed this by lowercasing the stored name only instead of also trying to load the file with the lowercase name.

Note that you do need to have SDL 1.2 installed for the game to work (the library should come with pretty much every distribution out there - under Debian derivatives it should be the libsdl1.2debian package).


Thanks, that's much better. The 3D, textures and sound works well.

Mouse input doesn't seem to work (though I am on VirtualBox, that might affect things).

The window is set to the size of the screen, though it is under the taskbar, so the bottom of the screen is hidden. So the first time I could not see the Quit option when pressing Escape. So I reset the machine to exit the game... Maybe add some shortcuts like Alt-X or Ctrl-Q?

I have no idea what to do after the first door is opened. I found a button that doesn't work and a room with electrical floor where Petra dies.

Bad Sector:
Under VirtualBox you need to disable mouse integration because it messes up with relative coordinate reporting. It is just how VirtualBox works.

You can adjust the window size and internal rendering (for the software rendering version) using the -w<width> -h<height> and -x<width> -y<height> parameters respectively. Check the linux.txt file in the linux archive. By default it uses 960x720 which is ok for windowed mode but for fullscreen might not be that ok. I'll probably change the default to 640x480.

You can toggle the mouse grab to close or move the window with the Pause key (also mentioned in the linux.txt file).

About the button, notice what Petra says: "I need to find a cover" - so explore the rooms to find a cover :-). Check hidden corners, etc.

Bad Sector:
Made a port of the game to GCW Zero, an old-ish (from 2013) open source MIPS-based gaming handheld running OpenDingux, a Linux distribution for open source MIPS-based gaming handhelds :-P (yes, it turns out there are a few of them, mainly made by Chinese companies and advertised as "retro gaming emulators" though GCW Zero was made in USA).

Here is a photo:

Porting the game wasn't that easy, mainly because the handheld is running in a busybox+uClibc-based environment. Well, uClibc is what made things harder, not busybox. I ended up creating a 32bit Slackware VM (the official SDK binaries were only released for i386 Linux), downloading i386 Free Pascal 3.2.0 and building a MIPS cross-compiler and then smashing everything together under /usr :-P.

It still wasn't completely enough because even though GCW Zero has SDL in it, Free Pascal's SDL bindings bring in X11 even though that wasn't used, so i had to modify sdl.pas to remove any reference to X11 and pthreads - which in turn tried to bring in the C library, which caused some linking issues due to missing symbols. I guess i could try to fix that but, eh, it was easier to just get rid of the dependencies :-P.

Also it took me way too long to figure out i need to explicitly set the dynamic loader to /lib/ (or whatever) instead of the default (/lib/ doesn't exist in GCW Zero).

But anyway, now it is ported and it should work on GCW Zero and any compatible handheld. I do not have any myself though, but from what i've heard most OpenDingux handhelds should be compatible.


[0] Message Index

[#] Next page

[*] Previous page

Go to full version