Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Hacking Outrun 2006  (Read 359130 times)

0 Members and 1 Guest are viewing this topic.

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Hacking Outrun 2006
« on: March 06, 2013, 06:27:56 pm »
This is one of those side projects that I want to play around with when I'm bored with my main projects. 
The goal is to hack at least rudimentary force feedback support into the pc version of outrun 2006. 
If possible I'd also like to transplant the high res graphics of the lindberg arcade version into the pc version.

Right now I'm trying to narrow down the memory addresses so it isn't such a snipe hunt.  Would any of you guys have this trainer?

http://forum.cheatengine.org/viewtopic.php?p=5031924&sid=d70f829c5263000e04ba765aa946076f 

Upon clicking the link it takes me to some shady download site that wants me to install a download manager.  That's not happening.  But if it's available elsewhere it would speed things up dramatically. 


gbeef

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 325
  • Last login:October 22, 2018, 03:32:26 pm
    • arcadepix.com
Re: Hacking Outrun 2006
« Reply #1 on: March 06, 2013, 07:17:28 pm »
FFB is already supported on the PC version.


My cabs
4 Player Arcade
X-men Arcade Remixed
My Pin Cab Attack of the PINZ cab
My Racing Cabinet Cab [URL=http://forum.arcadecontrols.com/index.php?topic=

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #2 on: March 06, 2013, 07:23:38 pm »
No it's not. 

It's supported on the xbox version, and the 360 version, but not of the pc version. 

gbeef

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 325
  • Last login:October 22, 2018, 03:32:26 pm
    • arcadepix.com
Re: Hacking Outrun 2006
« Reply #3 on: March 06, 2013, 07:26:12 pm »
Ohhh outrun....for some reason i thought crazy taxi... My bad


My cabs
4 Player Arcade
X-men Arcade Remixed
My Pin Cab Attack of the PINZ cab
My Racing Cabinet Cab [URL=http://forum.arcadecontrols.com/index.php?topic=

Well Fed Games

  • Trade Count: (+6)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1884
  • Last login:March 06, 2022, 07:30:46 pm
  • Delicious!
Re: Hacking Outrun 2006
« Reply #4 on: March 07, 2013, 12:40:32 am »
As someone frustrated by the PC port I will be watching this intently...
Completed projects: Pac bartop (Plug & Play), 30th Anniversary Pac cab (MAME), Point Blank (PS1), Centipede (arcade hardware- light restore), VS. Super Mario Bros (arcade hardware- light restore) Tetris Cocktail (SNES), Arcade Classics upright (60-in-1, then MAME), Multi-Raiden (arcade hardware). Pac Man vs.(Gamecube),

Working on: Pinball Re-theme, Homebrew arcade arena shooter

vandale

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 408
  • Last login:October 10, 2023, 04:01:16 am
  • Id 10 and t error
Re: Hacking Outrun 2006
« Reply #5 on: March 07, 2013, 04:41:07 am »
This is one of those side projects that I want to play around with when I'm bored with my main projects. 
The goal is to hack at least rudimentary force feedback support into the pc version of outrun 2006. 
If possible I'd also like to transplant the high res graphics of the lindberg arcade version into the pc version.

Right now I'm trying to narrow down the memory addresses so it isn't such a snipe hunt.  Would any of you guys have this trainer?

http://forum.cheatengine.org/viewtopic.php?p=5031924&sid=d70f829c5263000e04ba765aa946076f 

Upon clicking the link it takes me to some shady download site that wants me to install a download manager.  That's not happening.  But if it's available elsewhere it would speed things up dramatically.

Suggest you virus scan this as I havent used it
http://www.2shared.com/file/cwLV8xT-/OR2006C2C_FY_P.html

Thanks

isamu

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 807
  • Last login:March 18, 2024, 02:38:32 am
  • I'm a llama!
Re: Hacking Outrun 2006
« Reply #6 on: March 07, 2013, 09:20:31 am »
As someone frustrated by the PC port I will be watching this intently...

As will I.  Howard is aware that there are many people that would come back to this version if it had ffb.

However, tread carefully Howard, as this is one of the buggiest PC ports of any racing game I've played. So much to the point that me quitting had more to do with the frequency it crashing and the horrific controller input support, than the lack of ffb support.

The main culprit, and one that I personally feels needs your attention, is the severely limped and buggy controller config user interface. The game has a terrible tendency to think you're pressing left all the time and the player is forced to identify what's causing this "phantom key press" nearly every time you start the game. Probably has something to do with users such as myself having multiple USB game devices connected to our PCs, which brings me to my other point....

Anyone in this situation(having multiple usb controllers plugged in) is pretty much screwed if they want to play OutRun 2006. The game only allows you map *one* controller at a time to the driving functions, despite it seemingly acknowledging there is more than one plugged in. You can map steering axis to left and right with your wheel, but if you use a separate set of USB pedals(which many PC racers do) they will be useless on the track. Once you move the slider over to "controller 2" it will let you map gas and brake axis to your pedals, but now your wheel becomes null and void. Ditto with your USB stick shifter assigned to "controller 3".

This issue is FAR more crippling, annoying and inconvenient than the lack of force feedback. The announcement of no FFB was something that caused me to slip into a deep depression back when the game first came out and I remember being absolutely heart broken when SOL mentioned it on the Gamefaqs forums. But...I simply could not prepare for what I was in store for, with all the glitches and the horrible controller input support this port has. These problems just crippled any enthusiasm I had for playing OR2006 on PC. Did I manage to eventually play it? Yes, but only by temporarily borrowing my buddy's xbox 360 controller.

Howard....the promise of getting FFB into this game from the work you and Ramjet are doing is something only the heavens could bestow upon us....but if you guys can possibly find a way to modify it so that it can see multiple USB controllers as *ONE* USB device and allow us to map them accordingly, then that will mean I can finally play the game properly with my ECCI 7000 wheel, and there will simply be no words to describe the amount of gratitude I'll have for you. It will be the most incredible racing game related gift I've ever received. Other than FFB support in Namco System 22 RR games via MAME of course :D :D :D

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #7 on: March 07, 2013, 04:03:53 pm »
This is much less of a problem than you might think.  Outrun typically defaults to the first controller on you rig.  That's fine... instead of trying to wrangle all of your usb devices into working it's much simplier to put a fake joystick as the primary joystick on your system (vjoy ppjoy ect) and then use a app or scripting to take your individual controls and map them onto this singular, fake controller. 

Just for the record, I'm not promising ANYTHING.  This might be a dead end.  I managed to find the gear shift position last night... does that count?

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #8 on: March 07, 2013, 04:05:27 pm »
This is one of those side projects that I want to play around with when I'm bored with my main projects. 
The goal is to hack at least rudimentary force feedback support into the pc version of outrun 2006. 
If possible I'd also like to transplant the high res graphics of the lindberg arcade version into the pc version.

Right now I'm trying to narrow down the memory addresses so it isn't such a snipe hunt.  Would any of you guys have this trainer?

http://forum.cheatengine.org/viewtopic.php?p=5031924&sid=d70f829c5263000e04ba765aa946076f 

Upon clicking the link it takes me to some shady download site that wants me to install a download manager.  That's not happening.  But if it's available elsewhere it would speed things up dramatically.

Suggest you virus scan this as I havent used it
http://www.2shared.com/file/cwLV8xT-/OR2006C2C_FY_P.html

Thanks

Ehh my virus scanner doesn't like it apparently.  That's not unusual for trainers, but considering how sketchy the download site was to begin with, I dunno.  However, I can read the file in a hex editor and probably pull the values out that way, so thanks. 

isamu

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 807
  • Last login:March 18, 2024, 02:38:32 am
  • I'm a llama!
Re: Hacking Outrun 2006
« Reply #9 on: March 08, 2013, 10:26:47 am »
it's much simplier to put a fake joystick as the primary joystick on your system (vjoy ppjoy ect) and then use a app or scripting to take your individual controls and map them onto this singular, fake controller.

Just FYI, I've tried doing this long ago when I first got the game. Problem is, vjoy, ppjoy, etc don't allow you to move them to "Device ID #1" in Windows like you assumed. They(at least on my machine) always get pushed down to device 4 or whatever the last device is on the list. Making them "invisible" to OR2006. If you have more than 3 joysticks, whether real or virtual, OutRun will only acknowledge the first three and will ignore the rest. Hence the issue.

Besides, I don't like using those virtual joystick programs all that much, as they tend to screw around with my controller functions in some other games.

Quote
I managed to find the gear shift position last night... does that count?

A little  ;D

Hey man it's a start. Don't worry not gonna throw a tantrum if ya get nowhere, but I appreciate you and Ramjet at least giving it a try.  :cheers:

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #10 on: March 08, 2013, 02:23:22 pm »
Even given all that new info it still isn't that bad. 

All of your misc controls (horn, view, shifter, ect) are completely digital.  In outrun the keyboard controls work at the same time as the joystick controls.  So use your profiler or whatever came with your shifter to map it to the keyboard defaults, use the wheel as the primary joystick, and that just leaves the pedals.  Or it's possible to do it the other way around, with the pedals as primary, and then you just have to deal with the singular wheel axis. 

It's not nearly as bad as you say it is, you are just using a very unusual setup.  Using a sim quality setup for a cruddy arcade racer has to be out of the norm imho. 

sairuk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 26
  • Last login:August 25, 2019, 02:24:17 am
    • mameau
Re: Hacking Outrun 2006
« Reply #11 on: March 08, 2013, 04:20:50 pm »
The trainer you were after is also available on ********** as well. Not sure if links to that particular site are allowed, so google be thy friend.

The site hosts:
- OutRun 2006 v1.0 +6 TRAINER
- OutRun 2006 v1.0 UNLOCKER

Not going to speak to the quality of either, good luck with this project though.

EDIT: sorry, even giving the name of the site is a violation of forum rules. - BadMouth
« Last Edit: March 08, 2013, 04:50:23 pm by BadMouth »
mameau - My random bits | Wah!Ki - A Wah!Cade wiki | Mah!Cade - Experimental Wah!cade Branch | ListGen | Lazarus

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #12 on: March 09, 2013, 09:19:43 pm »
Well the trainer was a dead end... all the hacks were hard-coded and they weren't really relevant to what we need anyway.

I did manage to make some actual progress though. 

I found:

The shift position (might be useful later for hacking in sega shifter support)
The Speed (in arbitrary units, not kph/mph)
A value that "pops" whenever you shift gears.. it isn't related to accel, but would be useful for motion sims. 

I also found a value I'm calling "terrain smoothness."  It actually seems to do with the multiplier applied to decelerate the car when you run off road.  When on the road the value is a steady 27... when you drift one wheel off it stutters between 23 and 25,  when you go completely off road it drops all the way to zero.  Strangely enough hitting objects doesn't seem to effect it, but if you wreck and leave the road it does go all the way down to zero. 

So yeah if nothing else, that's enough for simple rumble-based FF right there.   

For those of you with a copy of the Cheat Engine, I'm including a file. 

Before you ask, you can run outrun in windowed mode by adding "DX/WINDOWED = 1" to your outrun2006.ini


Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #13 on: March 09, 2013, 11:59:26 pm »
Just found all the analog axis as well, so yes I can remap them if need be. 

isamu

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 807
  • Last login:March 18, 2024, 02:38:32 am
  • I'm a llama!
Re: Hacking Outrun 2006
« Reply #14 on: March 10, 2013, 09:37:00 am »
Nice. Keep up the good work man.

deathrow

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 52
  • Last login:June 07, 2013, 08:58:41 am
  • I want to build my own arcade controls!
Re: Hacking Outrun 2006
« Reply #15 on: March 10, 2013, 11:26:09 am »
wow, I take my hat off to you.

Please keep us updated with any new developments.

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #16 on: March 10, 2013, 05:55:37 pm »
Ok so I was playing around with this again this evening and noticed that when I selected a different car, the "terrain smoothness" values are different.  I did all my testing with the yellow car, because that's the first one that pops up, but actually the value is different for each car.  Since each car has different handling settings that means I found the actual physics data, and not some other similar value!

So I started looking in that memory region.  It looks like all physics data for the car is in this 100 byte region!  I haven't went through it yet, there's a LOT of useful data, but I've already found the most important one.  I'm calling it "X-Force" and it seems to be the turning force of the car.  When the car is stopped, this value doesn't change.  When you are going slow it reads a very high number.. in the range of around -62 to 62  depending upon how you have the wheel turned.  As you speed up, this value decreases, leveling out in the range of -10 to 10.  So yeah, just like in a real car, the wheel is hard to turn when you are stopped and as you speed up, steering becomes lighter. 

So strictly speaking, all the FF data you need for a wheel is in that value.  I'm not done finding stuff though.  In this region there are a bunch of other physics values we can use.  I noticed some values that light up when you wreck or run into something.... some values that cycle when you run over a cobblestone bridge, ect....  There's a ton of little values in here. 

That's the good news... the bad news is I've never crafted complex FF effects before so I'm not sure how to take all of this and make good effects.  I might just have to expose all the values to mamehooker and let somebody else do the math and such via scripting. 

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #17 on: March 10, 2013, 06:48:51 pm »
I better quit for the day, I actually don't have time for this right now.  But it's fun!

I found a value that changes depending upon which View you are using.  This could be used to simulate the VR lights on a sega racing cab.  With the brake info I could hook up a brake light as well, just like the original outrun.   

I found more values as well.  One is again related to road friction.... this one seems a bit more sensitive as it's effected if I drive over a wet road, ect.  I also found a decel force value.  When you hit something, it makes the car jolt backwards (obviously) so this value can be used to detect large impacts, like running into a wall or hitting another car. 

I still haven't found the minimum sensitivity one though as when you hit beach balls or road cones it doesn't effect it.  Honestly it might not exist..... I haven't seen any effect on the car when you run over that stuff and I can only implement the physics of the game. 

deathrow

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 52
  • Last login:June 07, 2013, 08:58:41 am
  • I want to build my own arcade controls!
Re: Hacking Outrun 2006
« Reply #18 on: March 10, 2013, 07:17:55 pm »
great going  :applaud:

Well Fed Games

  • Trade Count: (+6)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1884
  • Last login:March 06, 2022, 07:30:46 pm
  • Delicious!
Re: Hacking Outrun 2006
« Reply #19 on: March 10, 2013, 08:47:36 pm »
Very cool, glad you are enjoying it. Certainly neat to hear what is happening "under the hood" (pun!) in the game. Between this and Cannonball, it is only a matter of time till we live in a world of double-Outrun cabs!
Completed projects: Pac bartop (Plug & Play), 30th Anniversary Pac cab (MAME), Point Blank (PS1), Centipede (arcade hardware- light restore), VS. Super Mario Bros (arcade hardware- light restore) Tetris Cocktail (SNES), Arcade Classics upright (60-in-1, then MAME), Multi-Raiden (arcade hardware). Pac Man vs.(Gamecube),

Working on: Pinball Re-theme, Homebrew arcade arena shooter

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #20 on: March 11, 2013, 02:53:41 am »
Can't sleep (I blame daylight savings).  Anyway I was poking around in the game with a hex editor trying to figure out how the song is changed (wanted to make an in-game radio) and I found some interesting stuff.  First off the programmers must have been bored..... the entire periodic table of elements in listed in the string table. 

Secondly... talk about a universal port... the strings and textures for both the xbox version and psp version are inside the game.  Makes you kind of wonder why the pc version didn't get ff if it was produced at the same time as the xbox version. 

isamu

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 807
  • Last login:March 18, 2024, 02:38:32 am
  • I'm a llama!
Re: Hacking Outrun 2006
« Reply #21 on: March 11, 2013, 07:12:03 am »
Makes you kind of wonder why the pc version didn't get ff if it was produced at the same time as the xbox version.

Because Sumo probably got lazy and figured PC players wouldn't care about such things as FFB. Sumo tried to put the blame on Sega, saying it was their decision to avoid putting ffb in the game, but I find that hard to believe, since the AM2 in-house port of OR2SP for the Japanese PS2 supports ffb, while the US version doesn't. Guess we'll never know the full story.

Well Fed Games

  • Trade Count: (+6)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1884
  • Last login:March 06, 2022, 07:30:46 pm
  • Delicious!
Re: Hacking Outrun 2006
« Reply #22 on: March 11, 2013, 08:22:56 am »
and I found some interesting stuff.  First off the programmers must have been bored..... the entire periodic table of elements in listed in the string table. 

Secondly... talk about a universal port... the strings and textures for both the xbox version and psp version are inside the game. 

Ha, that is funny. When you are done sifting through it you may want to submit what you find to http://tcrf.net/The_Cutting_Room_Floor, a wiki full of that kind of stuff.
Completed projects: Pac bartop (Plug & Play), 30th Anniversary Pac cab (MAME), Point Blank (PS1), Centipede (arcade hardware- light restore), VS. Super Mario Bros (arcade hardware- light restore) Tetris Cocktail (SNES), Arcade Classics upright (60-in-1, then MAME), Multi-Raiden (arcade hardware). Pac Man vs.(Gamecube),

Working on: Pinball Re-theme, Homebrew arcade arena shooter

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #23 on: March 11, 2013, 03:30:52 pm »
Makes you kind of wonder why the pc version didn't get ff if it was produced at the same time as the xbox version.

Because Sumo probably got lazy and figured PC players wouldn't care about such things as FFB. Sumo tried to put the blame on Sega, saying it was their decision to avoid putting ffb in the game, but I find that hard to believe, since the AM2 in-house port of OR2SP for the Japanese PS2 supports ffb, while the US version doesn't. Guess we'll never know the full story.


Parts of the game do seem shoddily produced I'll give you that.  I mean the motion folder that's on the xbox disc, which contains all the xbox FF effects is still included with the game, it's just empty.

Btw, this should be obvious, but just in case anyone doesn't know.... the entire soundtrack is stored in ogg format in the sound folder.  Each song has a preview clip for song  selection, and that actual song.  You can remove both and the song doesn't play or replace it with your favorite songs in ogg format.  I'm trying to find whatever flag is tripped when a song is selected... then the song could be changed in-game instead of just once at the start of the race. 

I was going to change the titles on the radio as well, but apparently those are textures and not strings.  If anybody knows what kind of compression format sumo is using we could probably change the sprites of the game as well.  Just for the record it is NOT szip, I tried that.  ;)

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #24 on: March 11, 2013, 09:02:16 pm »
I've been a little under the weather, so I haven't got to work on any of my projects this evening, but I thought I might share what I've found out thus far. 

Firstly the idea about hacking the shifter was successful.  If I NOP the up/down shifter functions I can manually set the shift position from 1 to 5.  That should be great for pc shifters.  Now Sega shifters only have 4 gears, but I might have a solution to that as well.  I could merge gears 4 and 5 into a single gear.  When you play outrun in manual trans mode there is a "rev" light that lights up when you need to shift.  I could map hardcoded buttons to gears 1-4 but auto-shift up to gear 5 when you are in gear 4 and the rev light comes on.

I've also managed to NOP the gas as well and manually control it.  It should be easy to block ALL control from the game and use my own direct input methods.  The only one I worry about is the brake.  The game seems to automatically put on the brakes at the end of the race.  If I block it's control the car might keep going, which could end in unintended (and probably hilarious) results.   

I think I've gleemed about as much FF data from the engine as I can figure out.  Here is what I found:

X-Force:  The amount of steering force on the wheel as well as direction, the most important value for a real wheel.  Surprisingly (or to no surprise if you know sega) these values look almost identical to the values that controlled the tilt on the classic outrun cabinet.   

Accel Force:  aka the speed.  Can be used as a multiplier for the x-force or in a fancy sim cockpit be used to adjust the y tilt.  Also can be used to know when to turn OFF effects, like when you are in the menus.   
Decel Force:  aka the anti-speed.  Can be used as a divisor for the x-force, a easy way to detect impacts for both wheel ff and gamepad rumblers, or in a sim cockpit to again adjust the y tilt.

Wheel Traction:  aka are you on the road.  Decreases as you go off road... again, great from gamepad rumblers and subtle wheel feedback.
Wheel Friction:  aka are you off the road.  Increases as you run through stuff, essentially the opposite of wheel traction.  It could be used the same way and it's more sensitive (like it can tell when you are driving on wet roads ect.)

It should be noted that due to the way the tracks are lain out in the game, if you grind into an obstacle (like a guard rail) it effects these two values as you are off road and your accel/decel is effected so it can be used to detect those sort of effects as well. 

Gear Shift Force:  Anytime you shift gears, this quickly decreases down to 0 and then back up to 255.  The game probably uses this to momentarily "pop" the rpm and speed of the car.  For the truly hardcore sim cockpits it could be used for FF on the gear shift.   


So I think I've got 90% of the data needed for real FF.........that's enough to fake it. 
I had originally planned to simply use the newly released troubleshooter 2 to hook up outputs for the game, but considering how much game-specific math would need to be done, I might have to make a custom app.  All of this data would need to be transformed to something mamehooker can use.  Technically it can do it via it's extensive scripting system, but it would be a nightmare to write scripts for. 


But right now I've got other apps that need finished.  Stay tuned from more announcements on this project, but until then this is what I intend to add into 2006.

Fully configurable controls:  Pedals, wheels and shifters can be used from any joystick and/or separate joysticks.  Buttons can be on multiple joysticks as well. 
True Shifter Hack:  Choose between Up/Down Shifter, 5 Button Shifter or 4 Button Shifter
Cruise Control:  It'd just be cool.  ;)
Outrun Radio:  In game songs would be muted.  You can setup your own playlist outside of the game and control it in-game via radio buttons.  Actual radio stations (via internet radio) will probably be supported. 
VR(view) Buttons:  Outputs would be broadcast to control three view lamps.  In addition, the current view would be monitored so three separate buttons could be mapped to each view. 

Fully configurable force feedback:  Each of the forces mentioned above would have an output broadcast.  In addition different forces could be merged and optimized for wheel use, gamepad use and ect....

Restored Internet Multiplayer?  I know where the server address strings are I the game.  I also know there are various VPN apps that still support outrun 2006.  If these vpn servers can be reached via URL, it might be possible to have the game auto-connect to these vpns instead of having to use a third party interface, which isn't exactly cab-friendly.

Hi def sprites?  This could only happen if I figure out the texture format, so it's unlikely. 

Fursphere

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1206
  • Last login:Yesterday at 09:04:15 pm
Re: Hacking Outrun 2006
« Reply #25 on: March 11, 2013, 11:08:32 pm »
All I can say is that is a very impressive amount of work in a short period of time.   :notworthy:

deathrow

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 52
  • Last login:June 07, 2013, 08:58:41 am
  • I want to build my own arcade controls!
Re: Hacking Outrun 2006
« Reply #26 on: March 12, 2013, 06:19:32 am »
All I can say is that is a very impressive amount of work in a short period of time.   :notworthy:

Second that! Incredible stuff  :notworthy:

Nuexzz

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 279
  • Last login:October 01, 2023, 01:26:58 am
Re: Hacking Outrun 2006
« Reply #27 on: March 12, 2013, 06:51:21 am »
excellent research  :cheers:, I'm in for a multiplayer game I used to use Tunngle with friends.

isamu

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 807
  • Last login:March 18, 2024, 02:38:32 am
  • I'm a llama!
Re: Hacking Outrun 2006
« Reply #28 on: March 12, 2013, 09:23:22 am »
I've been a little under the weather, so I haven't got to work on any of my projects this evening, but I thought I might share what I've found out thus far. 

Firstly the idea about hacking the shifter was successful.  If I NOP the up/down shifter functions I can manually set the shift position from 1 to 5.  That should be great for pc shifters.  Now Sega shifters only have 4 gears, but I might have a solution to that as well.  I could merge gears 4 and 5 into a single gear.  When you play outrun in manual trans mode there is a "rev" light that lights up when you need to shift.  I could map hardcoded buttons to gears 1-4 but auto-shift up to gear 5 when you are in gear 4 and the rev light comes on.

I've also managed to NOP the gas as well and manually control it.  It should be easy to block ALL control from the game and use my own direct input methods.  The only one I worry about is the brake.  The game seems to automatically put on the brakes at the end of the race.  If I block it's control the car might keep going, which could end in unintended (and probably hilarious) results.   

I think I've gleemed about as much FF data from the engine as I can figure out.  Here is what I found:

X-Force:  The amount of steering force on the wheel as well as direction, the most important value for a real wheel.  Surprisingly (or to no surprise if you know sega) these values look almost identical to the values that controlled the tilt on the classic outrun cabinet.   

Accel Force:  aka the speed.  Can be used as a multiplier for the x-force or in a fancy sim cockpit be used to adjust the y tilt.  Also can be used to know when to turn OFF effects, like when you are in the menus.   
Decel Force:  aka the anti-speed.  Can be used as a divisor for the x-force, a easy way to detect impacts for both wheel ff and gamepad rumblers, or in a sim cockpit to again adjust the y tilt.

Wheel Traction:  aka are you on the road.  Decreases as you go off road... again, great from gamepad rumblers and subtle wheel feedback.
Wheel Friction:  aka are you off the road.  Increases as you run through stuff, essentially the opposite of wheel traction.  It could be used the same way and it's more sensitive (like it can tell when you are driving on wet roads ect.)

It should be noted that due to the way the tracks are lain out in the game, if you grind into an obstacle (like a guard rail) it effects these two values as you are off road and your accel/decel is effected so it can be used to detect those sort of effects as well. 

Gear Shift Force:  Anytime you shift gears, this quickly decreases down to 0 and then back up to 255.  The game probably uses this to momentarily "pop" the rpm and speed of the car.  For the truly hardcore sim cockpits it could be used for FF on the gear shift.   


So I think I've got 90% of the data needed for real FF.........that's enough to fake it. 
I had originally planned to simply use the newly released troubleshooter 2 to hook up outputs for the game, but considering how much game-specific math would need to be done, I might have to make a custom app.  All of this data would need to be transformed to something mamehooker can use.  Technically it can do it via it's extensive scripting system, but it would be a nightmare to write scripts for. 


But right now I've got other apps that need finished.  Stay tuned from more announcements on this project, but until then this is what I intend to add into 2006.

Fully configurable controls:  Pedals, wheels and shifters can be used from any joystick and/or separate joysticks.  Buttons can be on multiple joysticks as well. 
True Shifter Hack:  Choose between Up/Down Shifter, 5 Button Shifter or 4 Button Shifter
Cruise Control:  It'd just be cool.  ;)
Outrun Radio:  In game songs would be muted.  You can setup your own playlist outside of the game and control it in-game via radio buttons.  Actual radio stations (via internet radio) will probably be supported. 
VR(view) Buttons:  Outputs would be broadcast to control three view lamps.  In addition, the current view would be monitored so three separate buttons could be mapped to each view. 

Fully configurable force feedback:  Each of the forces mentioned above would have an output broadcast.  In addition different forces could be merged and optimized for wheel use, gamepad use and ect....

Restored Internet Multiplayer?  I know where the server address strings are I the game.  I also know there are various VPN apps that still support outrun 2006.  If these vpn servers can be reached via URL, it might be possible to have the game auto-connect to these vpns instead of having to use a third party interface, which isn't exactly cab-friendly.

Hi def sprites?  This could only happen if I figure out the texture format, so it's unlikely.

*faints*

dude if you successfully pull these things off you will be a GOD amongst men!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :dizzy: :dizzy: :dizzy: :dizzy: :dizzy: :dizzy: :dizzy: :dizzy:

This will be the most incredible ---smurfing--- accomplishment I have EVER SEEN IN MY LIFE HERE ON EARTH!!!!!!!!!!!!!!!!!!  :notworthy: :notworthy: :notworthy: :notworthy: :notworthy: :notworthy:

I will post this to neogaf and tell all my friends about it!!!!!!!!

KEEP US POSTED BRO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

isamu

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 807
  • Last login:March 18, 2024, 02:38:32 am
  • I'm a llama!
Re: Hacking Outrun 2006
« Reply #29 on: March 12, 2013, 09:38:08 am »
Oh and something I forgot to mention Howard.... a long time ago when the game first came out, I experimented with the idea of manipulating the track layouts in the game. Believe it or not you can actually re-arrange the default course order in the game by copying and pasting over the appropriate track files from each track folder.

When I tried it I actually pulled it off but not without the game crashing/glitching out. It would be random but sometimes if sorted the order differently so you'd go for example Sunny Beach>Jungle>Waterfalls>Forest, it would work, and then other times when you reach the end of the course as soon as the next one is supposed to appear you'd either drive into "nothingness" or be blocked by an invisible wall with nothing beyond you.

It was weird and very glitchy but the fact that it worked sometimes is I think good reason to believe it's something worth exploring. I think it is possible to re-arange the track order successfully without glitches, with some proper modding/hacking. Check out the track files and folders and see for yourself.

isamu

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 807
  • Last login:March 18, 2024, 02:38:32 am
  • I'm a llama!
Re: Hacking Outrun 2006
« Reply #30 on: March 12, 2013, 09:43:31 am »
Shoo....with all these magnificent things you're doing Howard, I think the possibilities are ENDLESS!  :cheers:  At this rate who know what else is possible! JoGcon driver support in PCSX2 so we can have true and proper FFB in Ridge Racer V? FFB support in Rave via MAME? USB emulation in PCSX2 that will open the doors for Logitech FFB wheel support so we can get proper FFB support in the Gran Tursimo games? The sky's the limit!!!!!!!!!!!!!!!!!!!!!!!!!  :dizzy: :dizzy: :dizzy: :dizzy: :dizzy:

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #31 on: March 12, 2013, 05:18:31 pm »
In regards to the game assests I just need somebody to figure out the compression, then it would be quite easy to edit most things in the game. 

This game was first released for the classic xbox right?

Well if you go into the "sprites" folder, you'll find files like this:

spr_effect_xst.sz

.sz is obviously a compressor file extension, the reason I know this is because every file, be it the tracks, or the textures ect has the file extension .sz.  Sumo did this with sfiv as well, only they used the emz extension/compression.  So take that away and the name of the file inside is "spr_effect.xst"  What's an xst file?  It stands for "xbox surface texture" in other words the texture format used on the original xbox.  There are plenty of tools out there that edit xst files. 

The sound effect files, they are probably already editable because they aren't compressed.  There was a media player for the xbox that could play sound files from various games... one of the supported formats were the outrun 2006 "pak" files.  If you look in your "sounds" folder now, everything is either in ogg or pak format. 

Nuexzz

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 279
  • Last login:October 01, 2023, 01:26:58 am
Re: Hacking Outrun 2006
« Reply #32 on: March 12, 2013, 08:10:11 pm »
In regards to the game assests I just need somebody to figure out the compression, then it would be quite easy to edit most things in the game. 

This game was first released for the classic xbox right?

Well if you go into the "sprites" folder, you'll find files like this:

spr_effect_xst.sz

.sz is obviously a compressor file extension, the reason I know this is because every file, be it the tracks, or the textures ect has the file extension .sz.  Sumo did this with sfiv as well, only they used the emz extension/compression.  So take that away and the name of the file inside is "spr_effect.xst"  What's an xst file?  It stands for "xbox surface texture" in other words the texture format used on the original xbox.  There are plenty of tools out there that edit xst files. 

The sound effect files, they are probably already editable because they aren't compressed.  There was a media player for the xbox that could play sound files from various games... one of the supported formats were the outrun 2006 "pak" files.  If you look in your "sounds" folder now, everything is either in ogg or pak format.

changing the correct files then you can reach the bonus??

 

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #33 on: March 12, 2013, 08:12:16 pm »
possibly... I'm not sure to be honest. 

isamu

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 807
  • Last login:March 18, 2024, 02:38:32 am
  • I'm a llama!
Re: Hacking Outrun 2006
« Reply #34 on: March 12, 2013, 09:31:29 pm »
Interesting post Howard. Didn't know the had all those assets from the original xbox 1 version. Somehow I seriously doubt the bonus Daytona 2  tracks from OR2 xbox are in this game. It was explicitly removed deliberately by Sumo for the sequel, due to some sort of memory issue if I remember reading correctly. I could be wrong though who knows.

Hell I'd settle for a normal course editor that changes the routes...that would be bananas!
« Last Edit: March 12, 2013, 10:24:40 pm by isamu »

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #35 on: March 16, 2013, 07:37:39 pm »
I don't have a lot of time for this stuff right now, but I was playing around with rad tools to see what we can do about the 4:3 title screen. 

The game uses a standard bik file for the title screen which is a good thing... with rad tools we can convert nearly anything, even a series of images, into a bik movie. 

I took a jpg of the title screen for online arcade just as proof of concept and it seems to work pretty well. 

The question of course is what to replace it with.  I had assumed I could find the hd attract sequence to online arcade somewhere on the net, swap out the title sequence bit and be done with it, but the title sequence doesn't seem to be out there.  Anybody know where I can find it?  Regardless for the little looping flag title screen it should be possible to replicate it in hd.  Not sure about all the cheesy cg racing sequences afterwards. 

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #36 on: March 16, 2013, 08:47:40 pm »
Forgot to mention something. 

I extracted the xbox 360 version of the game for reference and while some parts of the game have been altered, the sprites folder has the same files in it.  If these have been upscaled then I should be able to just drop them in and boom.. hd sprites. Currently replacing the sprites crashes the game, but I think they are getting corrupted with the extraction process as they just look weird in the hex editor compared to the other ones. 

The problem is the tool I used seems to be busted... or at least I'm guessing it is as some of the files on the 360 version are actually smaller. 

I'm currently using wxPirs.exe to do the extraction.  If any 360 hackerz out there want to chime in I'd sure appreciate it. 

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #37 on: March 16, 2013, 11:30:25 pm »
Well this is an interesting development. 

Had some more time tonight so I thought I'd try it again.  While I haven't had any luck with the sprites, the assets in the "common" folder DO seem to work on the pc version.  This includes the shaders that add the lens flair among other things.  So the engines assests do seem to work together.  I think I'll have to add them in one at a time to see which ones work and which ones don't. 

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #38 on: March 17, 2013, 04:12:46 am »
Ok Envalgelion is off so I finished up a bit with my experiments. 

Interesting stuff.  The models on the 360 version are in another format, so they don't transfer over.  Ditto with the sound.  We really don't want the 360 sounds anyway as the major different is they've been compressed a lot to make the xbla title smaller. 

Shaders and similar effects files transferred over just fine.  They add a subtle yet noticeable improvement to the graphics.  The game now has a sun, lens flares, improved water and weather effects and most notably the traffic has shaders applied so it doesn't look so out of place with the highly detailed player cars. 

Scripts, stages and other misc files transferred as well.  I'm not sure what difference they make really, but my install is now running the 360 versions.  What surprised me is how much they cut out of the 360 version.  It's really bare bones compared to 2006. 

I'm still having trouble with sprite replacement, which is what I was really after.  I need to determine if the reason the game crashes is because of the files themselves or because it is expecting certain dimensions ect...  I can do that by shuffling around some of the pc version's sprites. 

The sprani folder is interesting.  Apparently it controls sprite placement and animation.  When I installed the 360 versions all the sprites were in the wrong place, coming on at the wrong time ect... Makes me think if the graphics format was ever figured out we could completely re-do the hud. 

Also in the scripts folder are various "load stage x" scripts.  Alongside that is a omnious "test stage" script.  Perhaps a stage select script?  Perhaps a prototype level?  I'm off to find out!

Anyway, this version of the game is much more similar to the classic xbox interations of the game than the 360/ps3 ports, so it may be possible to swap out the bonus stage on outrun 2 afterall. 

Howard_Casto

  • Idiot Police
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 19399
  • Last login:March 16, 2024, 05:59:16 pm
  • Your Post's Soul is MINE!!! .......Again??
    • The Dragon King
Re: Hacking Outrun 2006
« Reply #39 on: March 17, 2013, 05:09:44 am »
Wow these scripts are pretty interesting. 

I misunderstood and thought they were named "request" because they were used for loading the stages (aka requesting them) but I guess I should have thought more literally.  They are actually the request lists for the tracks.  You know, all the pointless crap your gf asks you to do?  The "test" script I found can replace the script for any stage and all the requests will be turned off.  You'll get an E rank (sorry no cheaters) but you will be able to run the stage without the game crashing.  As for the other scripts in general they can be swapped out, offering different challenges for different tracks, but the donor script needs to have the same number of challenges as the original or the game will lock up. 

My guess would be that the positions on the track where a request event happens is hardcoded, but which event happens isn't.  Also the PSP and PS2 request scripts are included for some reason.  You can swap the outrun 2 and outrun 2sp scripts with either of these and they will play just fine. 

Anyway this explains why the game would sometimes crash if you swapped the stages around... the scripts need to be swapped with them. 

I'm going to try to track down a version of outrun 2 and pull the bonus stages off of it.  You never know.