SF Rush Owners: Networking & Internet Play

Kyle Mallory

New member

Donor 2011
Joined
Nov 3, 2011
Messages
13
Reaction score
0
Location
Salt Lake City, Utah
First time poster. Woot! Small-time collector for about 15 years now with only a couple of machines. Yeah! I recently bought a SF Rush: ER on ebay. Cool! Okay, with that out of the way...

Cleaning up and fixing the new machine, my 6yo self-proclaimed "Genius" son immediately recognised the Ethernet cord on the back, and asked "When we gonna hook it up to the WiFi?" Not one to let my son down, and as a software engineer with lots of experience in networking, I decided to jump in with both feet.

Originally, my plan was to write a program that would record games, and then play them back, so I could race myself. Much like a ghost, but one you could crash into. Problem was, I only had access to my own machine to use in reverse-engineering of a process that involves more than one machine...

Which led to my second, and probably better, plan... To write a program that would let Rush owners connect and race each other over the Internet. This is much easier to do than number 1, and once finished, would actually make number 1 easier to accomplish. Problem is, I still need another machine to develop and test with.. The difference being, I don't actually have to own a second machine. I could team up with other Rush owners, and let them test with me...

Soo.... here I am. I'm putting this out here to the group to see if anyone, specifically with one or more functional, and operating Rush consoles would be interested in helping me test (and preferably actually develop) such a piece of software.

For any dubious of my intent, or ability.. I've already got some code that works in some very limited capacities, and I've started dialog with a couple of the original developers of the game, who have been open and encouraging to the idea as well.


I welcome comments, criticisms, questions, and of course, volunteers.
 
Couldn't you skip reinventing the wheel and try a VPN setup such as Hamachi? I seem to remember somebody discussing this/testing this before. I'm not sure how well it would handle the higher latency.

With all that said - I have 2 Rush the Rock's so I would gladly help you try anything out when you get to that point if this is what you are testing with.
 
I have a single RTR but would love to play over the net... if that is ever a possibility... I'm in.
 
Couldn't you skip reinventing the wheel and try a VPN setup such as Hamachi? I seem to remember somebody discussing this/testing this before. I'm not sure how well it would handle the higher latency.

Yeah, Hamachi would work, and might be a solution to the bigger picture. As I said, my original intent was not to allow Internet play, but rather to let my computer participate in a game... originally as a ghost, but possible as more advanced AI in the future. As an "more advanced" example-- by recording network games, saving them, and then allowing them to be replayed, might allow you to share recordings with others, and race against multiple ghosts at the same time. Ie, not just racing against yourself, but racing "offline" against 4 of your buddy's best times. There are bigger issue with this approach, handling things like collisions, etc. but it is (seemingly) in the realm of possibilities.

That said, a custom-made network proxy is potentially low-hanging fruit in my grand-scheme of things. And, building something specific could allow for simple benefits like a player/race manager or a database (and website) to actually track and rate players race times, etc.

I think looking into Hamachi would be a clear first-step though... It may highlight problems, short-comings, etc. Or it might just let me focus directly on the bigger picture...
 
I think all the machines participating in a game have to be the same... So, I don't think R:ER, and R:TR can play against each other, but.. If anyone can provide sources for upgrade PROMs and drive images for a reasonable rate, I'm not opposed to upgrade my machine.
 
Waits for ToplessZ to arrive with chips :)

- The biggest thing I have to wonder about is keeping car colors straight since you cannot have the same car color or the machines simply won't communicate properly. The second, and possibly the biggest question on my mind is how will latency play into this and will the increased latency cause problems?

Great idea though and I seriously recommend upgrading to the Rock edition - costs about $80 - 100 and gives you 4 more tracks, 4 more cars, has the original 3 tracks yet and also lets you race all 7 of the track mirrored. It's a no-brainer between the two choices.
 
Last edited:
$80.. Done. $100 is pushing the limit (considering I paid $400 for the entire game, including shipping). I wasn't sure if it let you race all the original tracks/cars too.. That was one of my concerns, and help justify the cost.

On the subject of Hamachi, reading the Wikipedia page, it looks like it only forwards UDP packets (and IPX only on Windows).

Rush uses a proprietary Ethernet II protocol. It would be trivial to wrap the ETH2 packets in UDP, and fire those out over the internet, point-to-point. Ironically, it may require Himachi anyway to ease VPN/NAT negotiation, but that would certainly screw up the latency.

Talking with one of the developers, he'd mentioned that they were originally discussing remote tournaments over 28.8k modems, but there wasn't enough bandwidth for all 8 consoles. I suspect that latency won't be as big a factor, given broadband speeds. Bandwidth is a no-brainer. But of course, it's something only testing will answer...
 
I can't find it easily but there was a guy who posted way back when (January or so?) about this. He used a VPN and it worked perfectly. I personally never got a chance to play with him as I didn't have internet anywhere near my SF:Rush machine. I should be set for internet now, and once I get a HOT in my pesky NeoTEC monitor I should be back in business and possibly assist you with this.
 
pretty sure DogP made this possible a few years back but had problems getting people together to log on and play at the same time. Other than this I believe it was tested and worked fine. There might be a way to improve or expand on his idea though. Maybe setting up a web site and possibly always keeping you game linked to the net in a way that would allow others to see who was playing at any given time. Then maybe a way to alert those playing that someone else wants to join in and play. If you could add a feature to talk directly to people they way I think xbox can I think that might be cool too so you could talk trash to friends while you play.
 
I linked my Rush the Rocks over the internet w/ OpenVPN a few years ago ( http://forums.arcade-museum.com/showthread.php?t=33562 ). I tested it, and it worked... but nobody else ever ended up getting together and playing. :( I've only got Hydro Thunder and Rush 2049 SE now, so I can't play Rush anymore.

Basically, they just talk using broadcast packets, so you need a way to get them broadcast on the network of the other machine(s)... IMO, a VPN was the simplest way to get everything on the same broadcast domain. BTW, you can record the stream w/ Wireshark, then play it back with something like PlayCap, if you're wanting to play around with the data with only one machine.

DogP
 
DogP,

There is a whole mess of packets that the Rush creates, broadcast, multicast, and unicast. But it all starts with the broadcast. I'm glad to hear that it's been known to work over VPN software, that means the latency and bandwidth isn't an issue. However, I think using VPN software for this, is like using a CNC laser cutter to slice Wonder bread. It get's the job done, but has way too much overhead... We don't need encryption, and I don't think we really want virtual interfaces configured, etc.

p1899m,

I agree that some kind of connection management would be great, so that you could easily find and connect to other player. The problem is that this would all have to be done on the computer first. Which is fine, if you've got a PC next to your machine.. Unfortunately, there isn't anything in the game itself (that I've ever seen) to manage more than 8 machines on a single network. I think the software could try and do some intelligent handling of clients, though.

Ie, if you have 24 machines connected, once the first game starts, that "network" is isolated from the others, and the next game can start from the remaining clients. When a race ends, those machines end up back in the "public" network. You wouldn't be able to pick who you race with, or keep strangers from racing you.. but racing a real person might become a little easier to coordinate.

I still have a lot of work to do in figuring out the packets. But, if anyone's got an ER, and wants to setup an OpenVPN with me, that would give me a jump in being able to analyze the network traffic. And I'm sure my kid would love knowing that he's racing someone on the other end...
 
I have a couple Rush the Rock machines that I've been contemplating getting on VPN. I'm kind of blocked right now by having crappy 3G internet out in the boonies. As soon as I get something better, I'd be up for giving it a try.
 
For any who care... Here is my blog where I'm detailing more info:

http://irishjesus.wordpress.com/201...sco-rush-extreme-racing-and-the-emakerhuxley/
Not to derail this thread, but your other topic is interesting to me at the moment... I'm looking to pick up a RepRap in the very near future... probably a Prusa or maybe a regular Mendel. How do you like the Huxley? Did you get all the parts yourself, or buy a complete kit?

I got a close look at a MakerBot thing-o-matic a couple months ago... but I've decided that a RepRap is probably better suited for me, and cheaper.

DogP
 
Back
Top Bottom