and you can pretty much tell capcom doesn’t really care about the net code because if they did, they would leave enough CPU overhead to make sure the game can run well online which they didn’t. Net code to capcom always seems like something thrown in @ the last second because its never fucking good and it hasn’t been for a decade now. They basically jammed it full of explosions and eye candy to sucker casual players into buying the game and in turn, it creates it so where no one can have decent online experience because all that eye candy demands cpu.
and if overhead is the only problem why not a low res model, bare bones background stage option for online play? this will allow the CPU more overhead to use but possibly not enough to implement a better net code. I had did this for counter strike and I went from 40 fps to a steady 55, it actually made a HUGE difference. If they can implement a shadow mode that no one buys, why not actually implement something that will allow a better online experience? it can even be an option so the fanboys that like bright colors and flashing lights can still play online with that shit net code.
That’s kind of the barrier between PC games and console games again. For a PC you have to have settings like that because systems vary so much. That’s not the case for consoles of course, one of the advantages is that you know exactly how much of everything you’re getting and you can program based on that.
This really ties back in to the ‘design games from the ground up to use your netcode’ discussion though. It’s pretty much a gimme that console developers aren’t going to add in all those features (or just do a second entire version) just so that games have better netcode.
It’s a catch-22, though, because as you noted, the games have to look as flashy and new and possible and not like they’re 5 years old in order to guarantee those sales. There are some solutions it seems to me though, you can get skilled people doing your assets to do more with less (ala’ the Vampire artists using animation techniques vs the SkG guy brute-forcing), or you can do engine design to mitigate the impact of input delay (the BB method, or designing a game where tight combo timing isn’t necessary).
I am not going to blame companies for wanting their games to sell better.
Because it won’t necessary make the online play better. Mortal Kombat was developed with online in mind from day 1 and the that game’s netcode is unplayable unless you can find players in the same city.
First of all, actually on modern consoles HD 2D fighting games can be almost as resource heavy as 3D games. That’s because console hardware is optimised for 3D rendering. The very large number of high-res frames in HD 2D fighting games cause problems for modern consoles (mostly due to low RAM). So developers probably need to do clever things to make it work, like frame streaming or on the fly decompression or something, which takes up more processing resources.
Anyways, until we get latency free quantum internet or something, lag will always be a problem for traditional fighting games, even if you hide it via GGPO.
I think game devs fundamentally need a paradigm shift in their thinking. But I dont know if they consider “online players” to be profitable enough to be worth the effort and money.
Rather than the lazy and simplistic online structures we have now, FG netcodes would work much better if they were community/region aware.
Game should actively try to find players in your local region that have good pings to you. Whilst scanning the server for matches, the game should build up information on players that have good pings to you, and present that information to you.
There should be area/region specific rooms and channels, that will help focus nearby players towards their local communities. These channels are not enforced, anyone can join any channel, but they just make it easier to find others. You should be able to join/watch multiple channels at the same time.
There should also be player-created rooms/channels, so you can make the “SRK Channel” or the “Dustloop Channel”, “The NEC Tournament channel” or the “London area channel” etc.
The game should have auto-tournaments or auto-online-get-togethers that occur regularly, and are targeted towards particular regions and timezones. They should be well advertised via ingame banners / calendars. The point of this is, that even if there is only a small online scene in your area, by having events that encourage you all to be online at the same time, the game can maximise the amount of competition you will get. As opposed to everyone just being unaware of each other and getting bad random matches.
Friendlist functionality for consoles is pretty poor. The game should implement its own game-specific friendlist, that is multi-dimensional / has tags / searcheable. ie. you have seperate categories for things like “players that are near me”, “real life friend players”, “players that are not so near to me but I still like to play them”, “SRK members” etc.
Also, the main downfall of current matching techniques is that, when searching, you can only ever find players who are also searching at the exact same time. If the game could tell you, “hey, theres a guy online who has a great ping to you, but he’s in a game at the moment. Do you want to join a queue to play him, and wait in training mode for a while or spectate his game?” and to that guy it says, “hey, theres someone with a good ping waiting for the next match, so stay online!”, then the odds of finding good matches will be much higher. I think most people would be glad to wait a minute or two if they knew there was a certain good quality match coming up. Current matching systems are just too random and unintelligent.
Also, by combining regionality, spectating, and queues, you can build an arcade like atmosphere where you can watch and play with regulars from your area, line up to challenge local top players, etc.
In the same theme of “arcade atmosphere”, the whole issue of online needs to be solved once and for all. That’s the beauty of GGPO on the PC - one system works fine for all games. There’s nothing sadder than all the new FGs coming out with terrible netcode that’s worse than BBCT, because everyone has to reinvent the wheel.
So, ideally all of my suggestions would be implemented, but in a general FG netcode library/service that is available to all FG developers. So they dont have to spend time and effort on their own poor netcode, they can just buy the best and integrate it into their game. And then all of these community features would apply across many fighting games, which is good because many of us play more than one.
(I made a thread about this a while back, where I proposed that GGPO/Supercade should go “legit” and start properly licensing old games and develop themselves into a proper service, like Steam but more FG-oriented. And then they have a business case and fanbase to start attracting new FGs to join the service.)
So yeah, latency is unavoidable even with GGPO. The way forward for fighting games is to have features in the game that encourage people to discover other players close to them. Not only will this result in better pings and better matches, it will also encourage people to get together and play offline, building communities and friendships.
I really like some of the above ideas, but AFAIK a lot of them would be really hard to get off the ground under XBLA/PSN. XBLA’s online system is allegedly pretty inflexible when it comes to matchmaking, and/or online feature functionality that isn’t part of the console browser/friendlist stuff itself. And the company itself discourages/disallows attempting to subvert their online platform’s features regardless if they’re better or worse, IIRC.
Nearly everything you listed could definitely be done on the PC platform, though.
As far as a netcode standard goes… Wishful thinking, but it would be nice. The only way I see that (kind of) happening is if a company showed up with a netcode solution that was clearly superior to most company in-house and outsourcing attempts. Like GSS except, you know… good.
Well, I dont know about xbox, but PSN is a bit more liberal about what you can do I think. (after all, there are PS3-PC cross compatible multiplayer titles).
I think Sony gives you their SDK and requires conforming to some standards, but other than that you’re free to do whatever.
As for netcode standard, like I said, one path to paradise might be for Supercade/GGPO to go legit and start making deals to legally offer/sell emulated games via their service etc. For initial funding they could use kickstarter or something. Or maybe Skullgirls could get a PC release and become the first “official” GGPO-store game.