Measuring GGPOFBA Micro Stutter


#9

I’m of the firm belief that one factor in the declining playerbase on GGPO (at least for ST) is that more and more people are moving to Windows 7/8, and the horrible frameskip that is inherent in GGPOFBA feels even worse on Win7/8. On top of that, if they’re running it on a laptop it will be on top of the laptop screen’s display lag, making the whole experience a laggy and stuttering mess compared to arcade.

I’m using XP with a lagless monitor, and GGPOFBA still suffers badly from input lag compared to ShmupMAME, along with the usual frameskip/stutter. I think it would definitely help if Ponder ported the code to newer versions of FBA, but I honestly don’t think it’s going to happen, especially given how busy Ponder is these days.

//EDIT: I just tried the latest build of FBA, and it does seem like input lag is a lot better. Still not quite as good as ShmupMAME, but it seems like various fixes the devs have made worked as it feels more responsive.


#10

The source to his GGPOFBA was released, so someone could try applying the fix mentioned in that neosource thread and rebuild or integrating the GGPO functions into a newer FBA. Submit it to Ponder and see if he will integrate it into the GGPO.net download.

I don’t know if this has already been tried, it may have been and he simply said no.


#11

Anyone got a link to the source?


#12

http://ggpo.net/download/ggpofba_0.2.96.71.zip

In case hotlink doesn’t work, last link on here - http://ggpo.net/download/


#13

I don’t think Ponder released the actual source though, I remember him being reluctant to do that, possibly because people could then fork and create alternate competing versions of GGPO? In that zip file only the header files are readable, the actual code is compiled to binary inside ggponet.dll (correct me if I’m wrong).

I tried a more up-to-date FBA version (June 2013 build) and they’ve definitely fixed both the input lag and the frame stutter issues with ST. I have GGPO’s FBA and the newer FBA side by side, and switching between them, I can feel a noticeable difference in reduced input lag and the rendering being a lot smoother. There’s also an option in the menu of the newer FBA to fix the input lag when running Aero mode on Windows 7/8.

So what’s it going to take to get Ponder to update the GGPO’s FBA client? Would it be a difficult thing to reintegrate the GGPO code into the latest FBA source? I’m a software developer myself so I have some idea of the complexity involved, although it seems only Ponder himself would know exactly how much effort it would require. I just think it’s a pity that a much improved FBA exists that could solve a lot of issues people have with the ST experience on GGPO, and yet we’re stuck with an outdated, inferior client.


#14

GGPO itself is contained in the DLL and that is still closed, but the FBA license required the modified FBA source (GGPOFBA) to be released. There was a discussion with the FBA authors on that -
http://ggpo.net/forums/viewtopic.php?f=3&t=3218

Whether anyone can actually build a usable version from that source is another matter. But connection testing can be done through P2P rather than needing to connect to the GGPO.net server if it’s actually buildable. GGPO in P2P [LAN]

edit: did an online test to see how Fraps would react to a laggy game (we knew he was having internet trouble), the results:

Full view - http://i.imgur.com/iYWZl8d.jpg


#15

u can directly contact him: http://ggpo.net/about/

I personally know that if enough ppl requests him about it, he listens, I remember when I trolled the ST room with the afk spam, plenty of players sent email to him, by the next day I was unable to afk spam LOL

well, u can start making the ball roll


#16

Just throwing another screenshot into the mix:

http://i.imgur.com/5WnA3psh.png

I did the benchmark on a Win 7 pro 64 bit comp with 4gigs RAM. It looked very solid. I spectated matches on GGPO for the benchmark.


#17

reduce lag on ggpo
I’ve been using these settings to play 3rd strike
I recently switched to windows 8 and the settings still work
I remember some other users who managed to compile a version of ggpo that worked on hamachi when ggpo was down, it makes me wonder if its possible to compile it with the new updated blitters from fba


#18

a few notes:

  • We have evidence that it’s the emulator (at least, its version) ggpo’s biggest problem for FG enthusiasts. Good stuff
  • See http://neosource.1emu.net/forums/index.php?topic=2379.0 for a guide to compiling fba
  • I did a proof-of-concept p2p +2player implementation on fba (ie: trust my opinion on fba, I know internets)
  • I’m not judging anyone, but touching ggpo is definately not a priority for Ponder. Any improvement on ggpo will be based on emulator update and client/server for matchmaking and it won’t be done by him. Someone else needs to step up.
  • I’ve been talking to @Torta about updating the ggpo emulator. This is definately feasible.
  • The above need new client/server implementation, and I would like to keep the second LGPL. Anyone interested hit me up on twitter @kyoneoblood
  • why is this not in Tech Talk?

#19

Bump for the epicness of lagless w7 gaming :slight_smile:


#20

The problem is that many members of the community have offered their services to help update FBA settings and run additional servers at no cost to Ponder. Whenever we ask, he says he doesn’t really want to do it, and offers no additional explanation.

So it’s not that people aren’t willing to step up and do it, it’s that Ponder has absolutely zero intent to update it in any way, shape, or form, or is even willing to consent to let others do it for him.


#21

@eltrouble
We don’t need Ponder’s supervision to upgrade his work.
I actually started working (very slowly) on an upgrade: https://github.com/FelipeLema/nggpofba.

I’m starting by making the code compilable with nowadays tools, which will probably exclude legacy aspects for a while (mainly DX7)


#22

The DDW fix has been implemented in FBA for a couple of years now. This part is no problem but the GGPO source from here I think is outdated so you’ll probably need to get the latest version off him if you can.


#23

Not sure if this would be the right thread for this. But how do I fix GGPO on windows 8 for this? I used to have vista and besides randomly a hiccup graphically it was fine. Now its always hella pixly and awkward looking. Any one know on how to fix this? Ive tried messing with the display options a bit which is how I fixed it in vista. But im not having any luck with windows 8. Thanks


#24

Try the Enhanced or Experimental blitters and let us know what happens. I haven’t heard of anyone trying it on Win8 yet.


#25

Tried no luck =[


#26

Does Win8 come with DirectX installed? Are there any compatibility settings?

It sounds like it’s using software rendering rather than hardware acceleration.


#27

Im not sure exactly im not particularly computer savvy myself. As far as I can tell the problem is, when ever GGPO fucked up on my old vista cpu. I could right click the display settings or whatever, and for some reason the cpu would be in 32 bit mode. Then I would switch it back to 64 bit and the graphics etc would be fine. Now with windows 7 and 8 it seems it just automatically sets everything to either 32 bit or 64 bit. And ggpo no matter what I do will always run in 32 bit mode with though I have 64 bit windows 8. I cant seem to find any option to switch this now like vista. Ive tried searching online as well and havnt been able to find a answer either. Ive tried messing with all the compatibility settings that I can think of off hand too. Bummer.


#28

Not sure what the problem is, but 32-bit binaries will not run in pure 64-bit operating systems. The only they to accomplish that is to actually have multi-library system that will have both 32 and 64-bit libraries so as to be able to run both kinds of files. Windows will never run GGPO is 64-bit mode if the file itself is not 64-bit.

Now since Windows does not have a file command (unlike *nix operating systems), I decided to download the latest version, decompress and run the command on them. Here’s the result:


$ file *
META-INF:           directory 
assets:             directory 
css:                directory 
fonts:              directory 
ggpo.exe:           PE32 executable (GUI) Intel 80386, for MS Windows
ggpo.swf:           Macromedia Flash data (compressed), version 10
ggpoair.exe:        PE32 executable (GUI) Intel 80386, for MS Windows
ggpofba.exe:        PE32 executable (GUI) Intel 80386, for MS Windows
ggponet.dll:        PE32 executable (DLL) (GUI) Intel 80386, for MS Windows
kailleraclient.dll: PE32 executable (DLL) (GUI) Intel 80386, for MS Windows, UPX compressed
mfc80u.dll:         PE32 executable (DLL) (GUI) Intel 80386, for MS Windows
mimetype:           ASCII text, with no line terminators
msvcr80.dll:        PE32 executable (DLL) (GUI) Intel 80386, for MS Windows
savestates:         directory

So the files are 32-bit and cannot be run in 64-bit mode.