Fighting game network code requirements?

zurich

Kendoka
Veteran
Been thinking about the comments on how a deep fighting game like Virtua Fighter couldn't be done online due to the latency issues.

Well, I'm not a programmer, but I thought about the characteristics a bit versus a traditional 8-16+ player game (say, FPS or racing).

-A fighter would be 1 on 1, and would thus allow a larger packet stream per player (say, 10-15k) versus an FPS which tries to keep each box under 5k or so.
-Generally speaking, barring bad routing, typical p2p broadband anywhere in North America is ~100ms ping time. Could there be more aggressive pushlatency to drive this down to ~30ms?
-Many FPSs rely on hitscan characteristics for gameplay (counterstrike, ghost recon, some unreal weapons), whereas a fighter is based upon effective collision detection. Is this a problem?
-Would this larger theoretical 10-15k/sec network code be useful for driving down effective latencies and creating more advanced prediction?

Anyhow, this is a genre I'd like to see go online. Perhaps some of the coder-types here like DemoCoder, ERP, Faf, or Archie could drop some insight into the issue.
 
Well, Capcom vs SNK 2 is an online Xbox title when it's released later this year. However, it probably isn't as demanding as a 3D fighter as far as data goes ;)
 
Thie internet is just a bad system for games.
It's designed for high bandwidth at the cost of latency.

You can play a fighting game over a direct 2400 baud modem connection with minimal latency, by restricting the data sent to include only joystick data and a clock pulse. FWIW Genesis/SNES Street fighter were both playable (I lost many a game) over x-band with a decent phone connection.

You just can't do the same thing over an internet connection, the lack of guaranteed delivery or for that matter in order delivery at reasonable latencies prevents the approach.

You end up sending a lot more game state data over an internet connection and relying on client side prediction to smooth out the action.
I'd think it's probably possible to build a fighter that will work over the internet, given a good connection. The actual experience may be a little different than playing in the same room, it's hard to say how it would work out without implementing it. And even harder to say how the client side prediction would change the feel of the game if at all.

So I guess the answer is I don't know... probably...
 
bandwidth isn't really an issue here so much as latency is, imo.. FPSs can be a lot more forgiving when it comes to aggressive netcode, push latencies, prediction, etc.. as you're very rarely in a situation where a split second will decide/change your next course of action.. but I would think in fighting games where combinations, counters and blocks all are chosen and executed in a very small time frame, it'd be very difficult to build a both accurate and efficient netcode.. ~100ms p2p in NA is also being extremely kind, imo..
 
Interesting...

I only brought up the bandwidth point, because as ERP said, you'd probably end up sending more game state data, which eats into the size of the network code.

I'd really like to see it work. I can only imagine how successful (if done properly) a game like VF4 would be with its quazi-customizable kumite mode. Add player rankings, etc. on top of that...
 
This isn't the case for XBL and Broadband in NA. Many large DSL/Cable providers are sitting only 1 network hop from Microsoft's servers, so many people will be able to get good predictable latency out of broadband. And if you can get a good fighting game going over a modem with a 200ms ping time, you'll more than enough latency leeway on XBL to smooth out hiccups. This is one advantage of MS paying big bucks to build out a world wide network is that they can locate the servers at most large network peers like Akamai and Yahoo do and avoid routing latencies.


Now, if CapVsSNK is peer to peer and not server hosted, not only will you have to deal with the problems of your opponent's connection, but whoever hosts the game will have bigger advantage.


All I can tell you is that I have played both Epic's One Must Fall and MAME emulated games like Samarai Shodown and X-Men vs Street Fighter over my connection with no problem.


The biggest latency problem IMHO: Sharing your broadband connection on a NAT with other bandwidth hogs in the house. There's nothing like killing your counter-strike game when someone in your house is pirating MP3s or P0rn.
 
The biggest latency problem IMHO: Sharing your broadband connection on a NAT with other bandwidth hogs in the house.
Tell me about it. It pisses me off when I'm the one doing the only important thing like playing a game (or downloading something big) and my sister's hogging up the bandwidth on her computer... or my dad or mom are on as well.
 
QoS

The biggest latency problem IMHO: Sharing your broadband connection on a NAT with other bandwidth hogs in the house.

I don't suppose anyone has looked into the QoS features in linux as a way to deal with this issue. I switched from a dedicated router to a linux box a couple of months ago with an eye to look into this (amongst other things), but haven't found the time yet.
 
Re: QoS

dee said:
The biggest latency problem IMHO: Sharing your broadband connection on a NAT with other bandwidth hogs in the house.

I don't suppose anyone has looked into the QoS features in linux as a way to deal with this issue. I switched from a dedicated router to a linux box a couple of months ago with an eye to look into this (amongst other things), but haven't found the time yet.

Doesn't XP have this as well?
 
I'm sure good netcode can greatly compensate for latency in a fighting game. Unlike a FPS, where the majority of weapons are hitscan, any move in a fighting game takes a short while to pull off. If it takes your character 600 ms to kick someone, and your latency is 100 ms, good prediction should take care of it with no problem. Slower paced fighting games such as OMF (one of the few playable Internet fighting games) are surprisingly tolerant of lag. It's probably not as bad as a Firearms or Day of Defeat, with all hitscan, highly lethal weapons and fast movement speed...

On the other hand, I really wonder how a crazy-fast-paced fighting game such as Capcom vs SNK can work online... I mean, OMF worked with lag because it was relatively slow paced.
 
Back
Top