|
Post by tripletopper on May 8, 2013 4:43:41 GMT
I'm hoping that Sega8bit.com is not controlled by Sega. I sent a most innocently enough to the Sega.com forums section. I'm advertising that I'm looking for funding for an invention, an invention to turn old video games like the Master System, Genesis, Saturn, Dreamcast, 2600, 5200, 7800, Jaguar, Intellivision, and Neo Geo into head-to-head online games without rewriting the code for the games individually. This means every 2 (or more) player game from Combat to M.A.D. an be playable head-to-head. The secret is to beat 16 ms ping time and run live joystick streams. I even said Sega had the math right saying 56k was enough for Dreamcast games. But as you saw in Chu Chu Rocket, ping time was too slow. Luckily I know of a connection that an do 16 ms or less. The only flaw is that there is a maximum distance players have to be without relying on a special net version.
Some SMS games games might not be worth networking if each game had to be programmed individually. Others have rights issues. if you own an original SMS cartridge, you a play it on a netSMS. if you don't and it's not in rights limbo, if the copyright holder wishes, they can release it as a download. If they say no, or the game is in rights limbo, give Ebay a try, or give this rhyme a try:
I'm gonna grab some rings. Only got $20 in my pocket. I-I-I'm huntin' Looking for Death Adder This is 'kin' awesome.
In other words, look at a Thrift Store.
The point is Sega.com Forums gave me a lifetime ban. I didn't swear. I didn't insult anyone. I just dared question the retro reprogram establishment. And even Sega-16.com caught whiff from Sega's poor moderator and banned me to.
Luckily there are enough people at Sega corporate office who said they'd endorse it if I can show it working with unaltered Genesis, (or Master System,Saturn or Dreamcast) games without altering them with new code. Though some said they'll only believe when they see. I'm not a religion peddler, I don't expect blind faith. I was just trying to reach the average Sega fan, seeing if there is enough support for my invention. PM me if you want to help.
|
|
|
Post by 8bitcheese on May 8, 2013 14:09:32 GMT
Ouch... really sorry for the injustice done to you. These moderators sound almost as bad as the ones from the GameFAQs message boards. I doubt you'll be banned for proposing an idea here, though, so be welcome.
This idea you're having sounds really interesting, making retro consoles capable of netplaying. Too bad I'm absolutely no good at programming or anything that would be necessary for such an undertaking, but you do have my moral support.
|
|
|
Post by Maxim on May 8, 2013 14:13:10 GMT
Well, you sound pretty crazy.
On a technical level, it's hard to do with stock hardware and you'll suffer sync issues. With a bit more control over the hardware you can do it by synchronising machine state periodically to cancel any drift, but that'll cause noticeable pauses in gameplay unless you emulate on a much faster host CPU. In which case you are doing emulation with netplay, which has been around for years.
Also, new hardware for retro consoles will sell in very small numbers, not enough to be worth any kind of commercial release from the point of view of a company like Sega.
Anyway, good luck with that.
|
|
|
Post by Bock on May 8, 2013 22:28:05 GMT
If you have perfectly synched clock on both side you can arrange to apply inputs at the same time, effectively adding some lag on local inputs so that local and remote inputs are synched. It would works as long as your worse case prediction is never reach that would work. The hardware would sit between the console and the controller.
The full internet version is pretty optimistic, it'll be enough of a hard project to get done with a fast LAN, so it'll be worth working on intermediary stees:
Step 1 / make a cable to spread the signal from 1 controller to two consoles and test how the software react. The console may need to proper sync in which case you'd have to hook somewhere on the hardware.
Step 2/ 2 separate controllers on two consoles, sync via custom hardware connected via a reliable fast connection. That would be a cool thing already.
Step 3/ devise a version that works with less reliable connection. If you can freeze the CPU/GPU and resume at will (I don't know enough about HW to tell if that's possible) you can sync back by pausing when a prediction is missed.
It may be technically doable with the right time/skills. Even step 1 would be a pretty cool proof of concept if that could be made to work. Though I wouldn't put much hope on someone who starts his post with "I'm hoping that Sega8bit.com is not controlled by Sega".
|
|
|
Post by tripletopper on May 9, 2013 2:23:37 GMT
That is correct, you need a modern SYSTEM that plays old games and has hardware to a) make sure the sync is synced, b) deal with a few lost bits because the network technology has been known to brownout more than a traditional network by pausing for a 60th of a second on both ends. So you need to buy a new net player. But it will work with every ROM without alteration, even ones in rights limbo. You can either use your real Master System carts, or buy downloads. And so the companies don't have to resell their ROMs and make money, there'd be a 30 second ad when you play one game title (not necessarily a game playing.) against one set of opponents. When you change titles or opponents, you get a new ad.
The point is you can't jerryrig an old system to do this. You need a modern machine that can a) do the networking, and b) play SMS or whatever system 100% accurately.
Besides it's probably cheaper to produce a 100% accurate machine NOW than it did then. Emulation is even cheaper, but has problems with at time not being 100% accurate.
The idea is to play ANY game online, not just the ones programmed for a network to use a high bandwidth to make up for poor ping time. But if you can beat 16 ms ping time, then you can play a game online.
|
|
|
Post by tripletopper on May 9, 2013 2:27:55 GMT
The reason why I said "I hope Sega8bit isn't controlled by Sega" is becuase Sega-16.com, also a website idependent of Sega dedided to ban me, even before I tried to post on there. Sorry for being paranoid, but Sega-16.com banned me too by association. That's something you should know about Sega-16.com as well as Sega.com
|
|
|
Post by tripletopper on May 9, 2013 21:18:50 GMT
As for emulators with net play, over 99% of them have specific game coded to work online. So it's only worth making games online which would have enough demand (like GoldenEye 64 or modern Xbox live games.) The 1 percent that have any game work online has a skating effect, where you can act but to react, you will be late. A 100 ms ping connection will always be 3 frames behind in a 30 fps game. The only to compensate for poor ping time is high bandwidth. My idea works with live joystick streams. The secret is to beat 16 ms ping time. The speed of light is 300,000 km/s which is 300 km/ms. Though data travels close to that speed, it's an indirect path. Sprint says their data has a 1.1-1.5 ms ping time for a 300 km trip. Sprint says this happens with Direct Connect, and not a standard internet connection. If Sprint is telling the truth, modifying Direct Connect for Direct Data should work. Most of the ping time comes from the shared nature of the internet. Sprint people can only contact Sprint people on Direct Connect. Switching from the Sprint to another network slows down the network. My ping time for a 150 km trip is 50 ms.
|
|
|
Post by Maxim on May 10, 2013 1:01:34 GMT
Maybe try using netplay in Kega and see how it goes for you.
|
|
|
Post by Centrale on May 10, 2013 1:50:31 GMT
I have some experience using Kega for netplay, and it works perfectly with Genesis/MD games. But for SMS, it almost immediately loses sync and both players end up in their own instance of the game.
|
|
|
Post by brian on May 10, 2013 2:33:05 GMT
I'm still having trouble wrapping my head around why emulators can't maintain a sync or ping or whatever, good enough, over high speed internet connections; considering people used to play Doom, on 486s, with 9600 baud modems, fine and well...
I mean, it seems that what happens is that when they fall out of sync, say P1 in Super NES Doom, killed an imp, but P2 might not "know" that it died because they fell out of sync, so in P2's game world it's still around to be killed, and P1 will wonder what I'm shooting at. Am I right? I understand how lag can cause this and how it could lead to many game ending dead ends when two player's game worlds fall TOO far out of sync. But why do they fall out of sync if multiplayer gaming has been around since connections were in the 1-3KB/s range and games like Doom 1&2, Warcraft 1&2, etc, were being played on them?
|
|
|
Post by Maxim on May 10, 2013 11:20:01 GMT
There is a fundamental limit on ping times (the speed of light) which you can't overcome; real life makes them even slower. Modern internet connections have better ping times, but they can't be made faster than the limit; transatlantic pings can't get much better than 60ms.
So for "real" multiplayer games, they accept that their knowledge of what everyone else is doing has to be laggy; so they do prediction of what other players are going to do, and when they get the information, they correct things (and maybe feed it back into the prediction engine). You can see this when playing when other players jump about the place a bit. If things get too bad, the engine kicks out the problematic players. The data that needs to be synced is small - where is the player, what are they doing, a few dozen bytes really. (You need more data to detect cheaters, though.)
For emulation, the emulator can't know the high-level game engine; only the controller inputs and the state of the machine. This is a lot more data, maybe dozens of KB, but modern internet connections' bandwidth makes that fairly reasonable. Technically, it ought to work better for SMS than Mega Drive as the amount of data is smaller.
|
|
|
Post by Bock on May 10, 2013 14:13:34 GMT
It is a mix or
- Games were designed very closely considering those constraints - Games mostly played over null modem or lan (I recall Duke Nukem 3d was super laggy when I played it over modem). - I suspect that phone connections were more reliable (as in stable) as internet today
For example the "Yes sir" acknoledgement of units in Warcraft was added very specifically to create a long delay between the action request and the action starting, to give more time for all machines to receive the request in time.
The pace of Doom is slower than of today's games, and there was lag/resync at the time which we were less critical about at the time (or probably even unable to tell sometimes).
The game industry as a whole has unfortunately strayed away to design around firm constraints and it create lesser experience than older games sometimes.
|
|
|
Post by ian on May 10, 2013 15:56:56 GMT
You could install a flux capacitor into the Master System and then use some plutonium to create a nuclear reaction and generate the 1.21 jiggawatts of ping needed ;D You guys are too knowledgeable for me, I wish I knew half the stuff you do.
I can share some experience I've had playing SMS games through netplay on KEGA though. It didn't work very well at all. Pretty much every game I tried went out of sync. Only Double Dragon stayed in sync. I assume it works by running an individual game on each user's machine and then just transferring the inputs, so any random gameplay elements would instantly send the game out of sync.
|
|
|
Post by Maxim on May 10, 2013 18:25:54 GMT
It also lags the inputs to reduce the chance of desyncing. You also need to keep your ping times consistent, for example by turning off those pron torrents and your internet-connected coffee pot, and not using wifi probably helps too. Finally, you need to experiment with the config, if you do it without reading the readme you will probably not get far.
|
|
|
Post by ShadowAngel on May 10, 2013 21:50:46 GMT
I can share some experience I've had playing SMS games through netplay on KEGA though. It didn't work very well at all. My experience is that this comes from bad Rom files. Recently, because my graphic card died, i had to rely on my mainboard graphic card, so me and friend decided to play some Mega Drive. We both have pretty good connections and had no problems on Golden Axe 2, Streets of Rage 2, NHL 94, Championship Bowling and Sonic 2. All the Roms were Tosec files. We then tried out NHL 97 and Two Crude Dudes, which i just downloaded from some website, faulty rom and both gave me problems. Years ago i played some Master System games with a friend over Kega (yes, even Pro Wrestling ) and never had a problem. From all the Emulators i've used for online gaming, Kega is the one that never made any problem - except with crappy Roms. ZSNES (the version that has Netplay) works most of the time, while Kaillera regularly goes out of sync.
|
|