OK, I've found that if I put this notebook up high in a corner of the house I can steal my neighbor's internet and not drive to McDonald's
QUOTE(Illuminerdi @ Sep 3 2008, 05:04 PM)
Awesome! Abuse is one of my favorite games of all time, so it's nice to see it on the GP2X. - This one is long overdue and I'm a little bit surprised it's taken this long to get on the GP2X since an open source SDL port has been available for a while. Thanks much, can't wait to give this a try when I get home to my GP2x!
Are you going to do a Pandora port when it comes out?
Sure, I'll probably also get a Wiz too so you'll see it on both Pandora or Wiz. Might not get either of those until the second batches come out, though. I was surpised, too, by how hard it was. More on that below.
QUOTE(chris_r @ Sep 3 2008, 05:48 PM)
QUOTE(Senor Quack @ Sep 3 2008, 08:28 PM)
I have spent a lot of time on this port, hundreds of hours
Wow that's some serious commitment! I think I'll download it just because you spent so long on it. I've never heard of this game before though. How do the controls work on the F-100? It looks like on the youtube video that you need a mouse to aim.
With the F100, you run left and right using the triggers, you use the Y button to jump, X to move down. The stick controls the shooting, so you can shoot in 16 directions basically. If you have a DPAD-modded F100 you're limited to 8 directions. It is a compromise, since you actually have 24 directions possible with the mouse/stylus. You can still play the game just fine, though. I fine-tuned the angles a bit to make aiming up and down ramps easier (you do a lot of that, believe me). If you want to know what all the controls are, the port will auto-detect what unit you are running and show the controls list on the main menu screen when you start it up.
As for why it took so long: The input system for Abuse is maze-like. So, I had to find a way to get mouse cursor simulation working for the GUI parts (for the F100) and also find ways to get full control over the player once they are in the game and do away with the mouse cursor completely in those parts. No matter how many times I tried, something always wasn't right. Well, I spent all my spare time for a month or two redoing it over and over and I finally got it right
I also had to fix a structure padding problem that only surfaces on ARM architectures involving the palettes. I also had to apply all the Debian patches (they are great about keeping old games up-to-date) and somehow I forgot a few and only much later did I realize this. I also found the game ran out of memory after only 20 minutes. I had to change the size of the Lisp heaps and convert them to use a real garbage-collected heap. I also converted the sound engine to use SDL_Mixer so I could have music. I had to change quite a bit of code to get the proper songs playing. I had a heck of a time just getting anything to appear on the screen in 8-bit palettized mode (for some reason this was real finicky with HW SDL). After I got all the input code working, and moved to heavy compiler optimizations, I found that the angles for 1/4 of a full circle when shooting with the mouse were completely wrong, so shots were being fired at strange angles. Only if I used -O0 would things work. So, I had to replace the atan2 lisp function with a wrapper that calls atan2f and it was fixed
I am probably forgetting so many other little things, but that's some juicy details..
QUOTE(Alex. @ Sep 3 2008, 06:12 PM)
I never played Abuse before either, but it seems like a cool game. Thanks for taking the amazing amount of time to do such a solid port, it's a lot of fun to play even with F-100 controls
The graphics are a bit too dark, but tweaking Gmenu2x's gamma setting should take care of this.
All your ports are of incredible quality, speaking of which it's about time I got into some more Star Control
Thanks! BTW the game has a gamma adjustment on the main menu (it seems to set the colors too dark if you choose what it tells you, try playing with it to achieve the best results. It is supposed to be a dark game but if you play in a lit room it is best to turn it up.
Also: before anyone spots it, you will probably find the torso of the player disappears using the lift on the first training level. It's a known bug that is caused by disabling the buggy Lisp caching and is just not worth hunting down, as it only occurs once in the game.
Edited by Senor Quack, 03 September 2008 - 10:40 PM.