It is currently Thu Oct 19, 2017 3:57 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 18 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Wed Nov 23, 2005 11:34 am 
Offline

Joined: Wed Nov 23, 2005 11:30 am
Posts: 13
Hello All,

I run an online Tecmo league and there is one problem that is difficult to detect.

TURBO.

I was wondering if there were any rom programmers out there who could design a rom who detected how fast the buttons were being pressed. The rom should just have player 1 and player 2 and the speed and total presses they press the A button.

I am trying to run a solid league, but cheaters are bringing it down.

Thanks all.

_________________
Image


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 1:27 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19099
Location: NE Indiana, USA (NTSC)
When do you need this program by?


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 1:29 pm 
Offline

Joined: Wed Nov 23, 2005 11:30 am
Posts: 13
It is not a major priority, but the sooner the better.

We found a cheater by loading a nesticle movie from one rom to a different rom. It desynched and started doing weird things (which was expected). We were just waiting for it to show rapid a button taps (which it did eventually). So we had to fire a guy from a league.

Thanks for the quick response.

_________________
Image


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 1:37 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19099
Location: NE Indiana, USA (NTSC)
sois wrote:
It is not a major priority, but the sooner the better.

We found a cheater by loading a nesticle movie from one rom to a different rom.

"nesticle movie"? Which emulator is your league using? I want to know if I have to make my ROM compatible with obsolete emulators or if I can just target emulators with decent support for NES hardware.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 1:49 pm 
Offline
User avatar

Joined: Thu Oct 21, 2004 4:02 pm
Posts: 210
Location: San Diego
It sounds like mofifying tecmo bowl to detect turbo might be difficult. Maybe it would be easier to standardize your league onto one specific emulator, and modify that emulator to detect turbo. You'd probably need to have the emulators detect modifications to themselves as well, as is common with many networked games.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 1:52 pm 
Offline

Joined: Wed Nov 23, 2005 11:30 am
Posts: 13
We use netsicle cause it supports movies, save states and online play.

All we would need is a rom that just shows the button presses per second. It doesn't need to have anything to do with the tecmo rom.

What my plan is to do is this:

random steroid "turbo" testing.

Take a movie, play it with this new rom and it will just show the button presses. I think nesticle movies are just recorded button presses.

_________________
Image


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 2:33 pm 
Offline
User avatar

Joined: Mon Jun 06, 2005 12:47 pm
Posts: 67
And an initial save state, which would probably make your tester blow up.

If all you are doing is testing the movies for rapid button presses, writing a native program that parses the movie file should be a lot easier than programming a NES game that polls the inputs. Plus, it will be able to scan faster than real-time.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 2:38 pm 
Offline

Joined: Wed Nov 23, 2005 11:30 am
Posts: 13
I thought about writing a php script to look at the movie file and see if someone is turboing, but I don't know what snippet of code to look for.

_________________
Image


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 3:34 pm 
Offline
User avatar

Joined: Mon Sep 27, 2004 8:33 am
Posts: 3715
Location: Central Texas, USA
I worked at reverse-engineering the Nesticle movie format fairly recently and it was simply (as I remember) a save state followed by joypad data. The joypad data seemed to only be added for every frame that the joypads were strobed, so it wouldn't get added during pauses where the game wasn't polling them. A tool could easily be written that scans the joypad data and reports the minimum number of polls between presses of each button, but it wouldn't be able to determine the time interval due to the conditional recording mentioned above; to get the time interval the movie would have to be played back.

Can't you discourage cheating through other means, i.e. make it less fun than it's worth? Adding this kind of screening of movies (especially if it's random and unannounced) might make cheating more fun since it adds to the challenge.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 3:36 pm 
Offline

Joined: Wed Nov 23, 2005 11:30 am
Posts: 13
blargg wrote:
Can't you discourage cheating through other means, i.e. make it less fun than it's worth? Adding this kind of screening of movies (especially if it's random and unannounced) might make cheating more fun since it adds to the challenge.


Any ideas on how to do that? It doesn't have to be random testing. It can be every game if i can write a script to detect turbo.

_________________
Image


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 4:45 pm 
Offline

Joined: Wed Nov 23, 2005 11:30 am
Posts: 13
blargg wrote:
The joypad data seemed to only be added for every frame that the joypads were strobed, so it wouldn't get added during pauses where the game wasn't polling them. A tool could easily be written that scans the joypad data and reports the minimum number of polls between presses of each button, but it wouldn't be able to determine the time interval due to the conditional recording mentioned above; to get the time interval the movie would have to be played back.


This is precicely why I wanted a rom that just shows the button presses. Cause you have to watch the movied to detect the cheating.

The reason I know this works is because we played a movie meant for a specific rom on a different rom. It desynched and you could see the super turboing in action on the screen.

What I would do is record the game in nesticle and play it back on this cheating test rom.

I would have to watch the movies but that is no problem.

_________________
Image


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 5:39 pm 
Offline
User avatar

Joined: Mon Sep 27, 2004 8:33 am
Posts: 3715
Location: Central Texas, USA
Quote:
What I would do is record the game in nesticle and play it back on this cheating test rom.


If you think this will work, you could try it on one of the already-available NES test ROMs that display the current joypad buttons pressed. I guess they might need a slight modification to skip past the menus.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 6:17 pm 
Offline
User avatar

Joined: Thu Oct 21, 2004 4:02 pm
Posts: 210
Location: San Diego
sois wrote:
We use netsicle cause it supports movies, save states and online play.

Not to get too far off topic, but this should be a wakeup call for all of us here developing emulators. The best tool available for this league is Nesticle, which is a real shame. I think it's concensus around here that Nesticle is not preferred, but we haven't produced an alternative that is sufficient for these users. How hard would it be to add the missing things to FCEU?


Top
 Profile  
 
 Post subject:
PostPosted: Wed Nov 23, 2005 8:07 pm 
Offline
User avatar

Joined: Sun Sep 19, 2004 10:59 pm
Posts: 1389
FCE Ultra supports movies, save states, and online play (though it requires an additional 'server' program). What else do you need?

_________________
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Nov 24, 2005 11:47 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19099
Location: NE Indiana, USA (NTSC)
Nesticle also supports PCs that are considered slow today but which were affordable during the late 1990s bull market, when unemployment was low. A lot of people haven't been able to afford a new PC since. FCE Ultra, on the other hand, has the (nice-sounding but CPU-hogging) Festalon audio engine.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 18 posts ]  Go to page 1, 2  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: Google Adsense [Bot] and 9 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group