Alien vs Predator Port


What about the missing gles functions you stubbed? Don't they have any influence on gameplay or other things?
 
Also, you know that you used the description for the 2011 game, not the one of the original one, the pnd contains?
 
While I'm normally an unashamed pirate, I think I'll buy this one.  Can't go far wrong for $5.

It's not on GOG. Here's a link to buy it on DotEmu:  http://www.dotemu.com/en/download-game/366/aliens-versus-predator-classic-2000

It's also available on Steam, and cheaper.  I guess the files from Steam version would work too.  Any DRM would be in the x86 executables...

If "classic 2000" don't work with the port, I'll obtain the "gold" edition by other means with a clear conscience ;)

Please don't take this post the wrong way, as advocating piracy.  Although, I do advocate selective piracy.

Just download TPB AFK, and see what you think for yourself!  (a legal torrent)  disclaimer: I didn't watch that documentary yet.
Hahaha. At least you found it.

I just went to EB games and purchased it for $4.

Got home. Wrong game! I got the 2010 version! Damn same name crap!!
 
Can you give the source of the port?  I'd like to include it in my "Pandora Source Repo" at http://pandoria.org/src/ , and also can have a look and learn from it! A git repo based on the upstream source would be ideal.

I linked to it earlier https://github.com/Scraft/avpmp you should be able to see my changes since I forked it. There is probably lots to learn from the AVP source code, but probably lots to ignore from my changes. It's my first attempt at something of this nature so don't expect anything fancy!

It's "Aliens vs Predator", right?  you can fix that in the topic if you use "full editor" on any post.

Maybe it is too early in the morning right now but I can't see the option at the moment. I believe it is Aliens though as I've put in the PND.

Does the Original AVP(Not Gold Version)  work with this? I crash after creating a profile.


I renamed everything lowercase and moved to the appropriate folder.
Will the Demo files work? Need to dig around the garage for my old AVP if I still have it.


Not sure if old mods work - But: http://www.planetavp.com/avp/files/http://www.planetavp.com/avp/files/

I have only tried AvP Gold, although the README (found here https://github.com/Scraft/avpmp/blob/master/README) says:

 If the version you want to use is not the Gold Edition, download http://www.icculus.org/avp/english.txt.gz, extract it, and rename it language.txt (Regular Ed.) or aenglish.txt (Alien Demo).

If you try that and it still doesn't work, perhaps you can post any output from the PND to see if it says anything useful. Right now no crash dump is generated so there isn't an easy way to debug.

DREDD said:
Wow, good work Steven!


I have two suggestions:


- include a command to do the lowercase conversion, e.g.:


[ -e lc ] || find avpdata | tac | perl -ne 'chomp; ($lc = $_) =~ s{[^/]*$}{lc $&}e; rename $_, $lc;' && > lc

Yes, I'd like to include something like this. The build system I use doesn't currently have an option to launch a shell script into of the application executable, but perhaps from the application I can call out and run your shell script. Have you actually tested it? If the current working directory is set to the root of the appdata folder for the game and the script is run should that do the trick?

DREDD said:
- I reckon just call it "avp" in the appdata; not "com.pawprintgames.avp" - or it sounds like you wrote the game! I'd be ok with a "pawprintport" splash screen, though anyhow, this doesn't matter. But you should make it com.pawprintgames.and.JUDGE.DREDD.avp if you use my rename code, hehe j/k

This wasn't me seeking fame and fortune, the build system I use just sets this up based on what I've done for other projects (i.e. KAMI RETRO). I don't wish to have any splash screens about the port, my efforts are completely trivial, especially compared to the work done upstream for avpmp (DirectX -> OpenGL) and the work done by the original game team!
 
What about the missing gles functions you stubbed? Don't they have any influence on gameplay or other things?
 I hope everything is okay. Half the functions were for the loading/progress bar (so that probably renders wrong, but I don't care so much) the other half were pushing/popping server/client attributes. But I manage the states a bit different to avoid the need for this. If you notice issues please let me know, perhaps I can fix them. All my changes are also on GitHub so others can help out if they have better solutions. Be aware that you need to include additional files gles.c and gles.h if building on Pandora, they contain the GLES/SDL wrapping code I use. I couldn't get Pickle's EGL_Port to work despite spending quite a while trying, so ended up using code from apkenv.

Also, you know that you used the description for the 2011 game, not the one of the original one, the pnd contains?
 Ack, sorry. I completely ran out of time last night and just copied and pasted the first thing I found on Wikipedia just so I could get something uploaded to show people. I will fix this in the next version.

While I'm normally an unashamed pirate, I think I'll buy this one.  Can't go far wrong for $5.

It's not on GOG. Here's a link to buy it on DotEmu:  http://www.dotemu.com/en/download-game/366/aliens-versus-predator-classic-2000

It's also available on Steam, and cheaper.  I guess the files from Steam version would work too.  Any DRM would be in the x86 executables...

If "classic 2000" don't work with the port, I'll obtain the "gold" edition by other means with a clear conscience ;)

Please don't take this post the wrong way, as advocating piracy.  Although, I do advocate selective piracy.

Just download TPB AFK, and see what you think for yourself!  (a legal torrent)  disclaimer: I didn't watch that documentary yet.
 Hahaha. At least you found it.

I just went to EB games and purchased it for $4.

Got home. Wrong game! I got the 2010 version! Damn same name crap!!
Oh, I hope that wasn't because of my bad app description, if it was then sorry!
 
Updated build, THIS BUILD HAS NO AFFECT ON ACTUAL GAME VS THE FIRST VERSION, just fixes to the description and adds screenshots. I've also added credits for anyone on this thread who has helped.

http://repo.openpandora.org/?page=detail&app=com.pawprintgames.avp

Hopefully it'll clear up which version of the game this is and make the instructions to play more visible.
 
Updated build, THIS BUILD HAS NO AFFECT ON ACTUAL GAME VS THE FIRST VERSION, just fixes to the description and adds screenshots. I've also added credits for anyone on this thread who has helped.

http://repo.openpandora.org/?page=detail&app=com.pawprintgames.avp

Hopefully it'll clear up which version of the game this is and make the instructions to play more visible.
Please record a video of the gameplay. I loved that game.

edit: also.. Are you aware of the more recent work done on this fork? https://www.assembla.com/code/avp_mod/git/nodes (or is it different?)

Code:
Everything needs to be in lowercase; run this from root of the game content.
You will need write access to files and directories for this to work

find . -depth -execdir perl -e "rename('{}',lc('{}'))" \;
 
Last edited by a moderator:
You did not need to include me in the description. I didn't do anything except for assumptions ;)
 
Are you aware of the more recent work done on this fork? https://www.assembla.com/code/avp_mod/git/nodes (or is it different?)
I did see this version, but the read me sounded like it wasn't so mature, lots of things not supported. But if it turns out to be a better version it is plausible it would also be portable.

Please record a video of the gameplay. I loved that game.
I thought I'd wait to see if anyone steps up and does this, as my initial attempt didn't go very successful (holding mobile and trying to control the game) but if no one makes one I'll see what I can do.

Everything needs to be in lowercase; run this from root of the game content.

You will need write access to files and directories for this to work

find . -depth -execdir perl -e "rename('{}',lc('{}'))" \;
Does perl come installed on the Pandora by default? I don't know how this command line compares to the one DREDD supplied. Maybe I should at least update the instructions on the repo at some point to include some way of renaming.

You did not need to include me in the description. I didn't do anything except for assumptions ;)
I just credited everyone who gave any sort of help/information on the thread, ordered by the order they replied to the thread. Wanted to make sure it was clear it was very much not a Paw Print Games game, or anything to do with Paw Print Games, just some companies game, some guys port, some communities help and a small amount of sloppy code from me! :)
 
Something has to work ;)

rename 'y/A-Z/a-z/' *

find . -depth -print -execdir rename -f 'y/A-Z/a-z/' '{}' \;

find . -depth -exec rename 's/(.*)\/([^\/]*)/$1\/\L$2/' {} \;
 
While I'm normally an unashamed pirate, I think I'll buy this one.  Can't go far wrong for $5.

It's not on GOG. Here's a link to buy it on DotEmu:  http://www.dotemu.com/en/download-game/366/aliens-versus-predator-classic-2000

It's also available on Steam, and cheaper.  I guess the files from Steam version would work too.  Any DRM would be in the x86 executables...

If "classic 2000" don't work with the port, I'll obtain the "gold" edition by other means with a clear conscience ;)

Please don't take this post the wrong way, as advocating piracy.  Although, I do advocate selective piracy.

Just download TPB AFK, and see what you think for yourself!  (a legal torrent)  disclaimer: I didn't watch that documentary yet.
I wonder what the hell classic 2000 version is, the original came out in 1999.. Gold came out in 2000.. there was a patch that came out later.. maybe this is a patched up version of the original.
 
Just bought it and will try shortly.

Edit: It works with those datafiles :)
 
Last edited by a moderator:
Just bought it and will try shortly.

Edit: It works with those datafiles :)
The steam files?

Steven: Looking over your EGL parts, maybe the difference was the egl display. I may change mine to mirror that behavior.

Also you may get some performance increases by changing the depth to 16 from 24. I havnt seen a case for the need of 24.


EGL_DEPTH_SIZE, 24,

Edit:

Also did you intend to leave this call to pglPopAttrib?

In

Code:
BltImage:

#if !defined(_PANDORA)

pglPopClientAttrib();

#endif

pglPopAttrib();;
 
Last edited by a moderator:
I made a little blurry video with all details on low, gamma at max (It does change the gamma, but not enough imho) and a CC Pandora overclocked to 1GHz.

See me fail here:

http://youtu.be/xByT_vmssug

It is playable, but for quick movement and precise aiming it is still too laggy in my opinion.

I had no movies or music btw...

Just bought it and will try shortly.

Edit: It works with those datafiles :)
The steam files?
No, those: http://www.dotemu.com/en/download-game/366/aliens-versus-predator-classic-2000
 
find . -depth -execdir perl -e "rename('{}',lc('{}'))" \;
Does perl come installed on the Pandora by default?


I don't know how this command line compares to the one DREDD supplied.
- they both work


- his version is sort of simpler

- my version is faster, does not run a new perl for each file (takes 0.5 sec vs 13 sec in ramdisk, on test data with ~500 files)

  - I don't know how many data files there are, so maybe this doesn't matter

- my version runs only once, using the file 'fc' as a marker that it already ran

here is a slightly improved / simpler one:


if [ -e SomeFileWeExpectInTheData ]; then
[ ! -e lc ] && find . -depth | perl -ne 'use File::Basename; chomp; rename $_, dirname($_)."/".lc basename($_);' && > lc
fi

This is a potentially dangerous script, you would not want to run it in the wrong directory, and especially not as root!

and yes, Pandora comes with perl
 
Last edited by a moderator:
Steven: Looking over your EGL parts, maybe the difference was the egl display. I may change mine to mirror that behavior.

It will be pretty straight forwards to switch it to try using your EGL code at some point should we wish to confirm the issue once you have made the modification. I certainly like the idea of reusing your project rather than having this duplicate code.

Also you may get some performance increases by changing the depth to 16 from 24. I havnt seen a case for the need of 24.


EGL_DEPTH_SIZE, 24,

Thank you, I have just made the code change. I can make a new build from this at some point, fingers crossed it makes some positive impact on performance.

Also did you intend to leave this call to pglPopAttrib?

In


BltImage:

#if !defined(_PANDORA)

pglPopClientAttrib();

#endif

pglPopAttrib();;
That is intentional, there is a pglPushAttrib call that matches it just above. I would have left the pglPushClientAttrib/pglPopClientAttrib calls in to (they are all just stubbed anyway), but the push call passes GL_UNPACK_ROW_LENGTH which isn't supported on GLES, so wouldn't compile. The features that are supported by GLES are hopefully manually restored during that function so hopefully it doesn't have any adverse affects outside of the function and the 'only' file that uses that function is progress_bar.cpp.
 
For those who have managed to run the game, have you noticed lag when audio is playing? It seems to lag far more than I would have expected to me. I haven't investigated this at all yet, but I wondered if it is playing samples at different sample rates to what the device is initialised to, and is therefore having to do a lot of software decoding on the fly or something. In titles I have worked on, I typically have a streaming music track and up to 31 sound effects playing simultaneously without any major performance degradation  so I was surprised that AvP was slowing so badly with one or two sounds.

I haven't done any performance investigate on straight linux platforms before, I'm guessing I need to enable some compiler flags, then use GPROF? Are there any 'better' tools available, and when I say 'better' what I really mean is tools that a Windows developer would be more familiar with (Parallel Studio, PiX, Catalyst, etc.)? Initially getting a break down (top level) of where the frame is going would be helpful, but ultimately I am going to need to be able to break the frame up in a tree like manner to narrow down with better detail. I am suspecting the draw side to be the main bottleneck, I'm sure it felt faster when I first got it running (and that was an unoptimized debug build however it was running at a lower resolution).
 
Back
Top