Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Janizdreg

Compet-n Resurrected

Recommended Posts

Archy said:

It would require a lot of effort to prevent (probably) no-existent cheaters, and those who cheat will always cheat.

C'mon, don't be gullible. We know there has been cheaters, and there will be.

Archy said:

build becomes just strait out unhidden

One can build a built run, which looks like humanly done, it's not that hard.

Archy said:

and SR50 drivers are virtually impossible to hide, as some type of pattern will show. Even if the SR50 driver has a RNG, over many demos, it will still become noticeable because software can never be truly random, and the drivers range of variance will become known.

Wtf? I'm sure you couldn't detect driver like that. Humans have patterns too.

Archy said:

The only cheat that is virtually impossible to detect with software such as LMPC, when used properly by the cheater, is either very very slight use of Slow motion (such as 5% slower than normal, still gives an enormous edge I know) and segmenting when skillfully forged to the previous segment to avoid detection.

I don't think it requires any skill to make a segmented run to look like non-segmented. Just use save points while stuck after teleporting or while long straight run. I don't see any way to detect that one. Still, it's easy to segment even while fighting with monsters but those two others are just too easy cases.

Archy said:

Cheating is hard to get away with over and over again, and I doubt most cheaters would would just record a few cheated demos and then do everything else legitimately.

Are you talking about kimo? I think he's a fine example to overrule your argument.

Archy said:

a challenged to see if they can get past all these security software devises and successfully fool players in to believing their cheated demo was skillfully and legitimately done. Sounds pretty fun actually, would be a nice challenge :P

I can agree with that, except at the moment ANYONE who wants, can cheat. Even if little security is added, the amount of people being able to cheat will be reduced drastically because not everyone knows how to program or to do tricks to fool even simple security system.

Share this post


Link to post
Looper said:

C'mon, don't be gullible. We know there has been cheaters, and there will be.

Of coerce there has and there will be, but we're blowing this out of proportion.

------------------------CLARITY BAR------------------------

Looper said:

One can build a built run, which looks like humanly done, it's not that hard.

Not that hard? Maybe that is a correct statement, but it certainly is time consuming giving human characteristics to a build demo. Imagine having to write this:

UT                      #  3710 (1:46.00m)
UT                      #  3711 (1:46.02m)
UT                      #  3712 (1:46.05m)
Instead of this:
UT                      #  3710 (1:46.00m)
over and over and over again for thousand of tics. Anyone willing to put that type of time into cheating will have no problem going through with the trouble needed in order to defeat the security system. It's people that do a combination of build and "real" together that we need to watch out for though...

------------------------CLARITY BAR------------------------

Archy said:

and SR50 drivers are virtually impossible to hide, as some type of pattern will show. Even if the SR50 driver has a RNG, over many demos, it will still become noticeable because software can never be truly random, and the drivers range of variance will become known.

Looper said:

Wtf? I'm sure you couldn't detect driver like that. Humans have patterns too.

Unless the human is also inputting his own SR/SL50 tics along with the driver, the pattern would be all too noticeable, especially when an SR50 tics appears in an area where there is no reason to use SR50 and when an line of SR50 tics end at an area where there would be no reason to end the SR50 -- say a long, wide hall way.
Humans do have patterns, but those patterns are related to situations. A driver can't (well it could but it would require an extremely intelligent programmer who also had a lot of time) tell what situation you're in, so the RNG might stop the SR50 madness after Goom Guy has killed everyone and is running through a long long wide hall way. Not a good time to switch back to SR40, not a good time at all.

------------------------CLARITY BAR------------------------

Looper said:

I don't think it requires any skill to make a segmented run to look like non-segmented. Just use save points while stuck after teleporting or while long straight run. I don't see any way to detect that one. Still, it's easy to segment even while fighting with monsters but those two others are just too easy cases.

Bleh, I was thinking of the old days when segmenting was really hard to do without getting some weird series of tics in the transition time frame between the previous and next segment. Now will PrBoom-Plus, this ain't hard at all. Don't know how PrBoom-Plus could just float out of my head like that, sorry.

------------------------CLARITY BAR------------------------

Archy said:

Cheating is hard to get away with over and over again, and I doubt most cheaters would would just record a few cheated demos and then do everything else legitimately.

Looper said:

Are you talking about kimo? I think he's a fine example to overrule your argument.

Hitherto was always weary of Kimo's demos, though he was suspicious about the wrong one [mm01n052], and Henning Skogsto, while surprised, didn't seem too shocked either. He said:

skogsto09 said:

Whenever I see something I usualy do recognize when too many situations gets played out too favorable for the recorder. As I know the variance\randomness of this game, after having played it in so many ways for so many years.

but he also made a really grate and legitimate point when he said this:

skogsto09 said:

It's really hard to point out to someone, and making a discussion about it every time would just turn out to be a flamewar. Between longtime players it's another thing.

If Kimo continued, he would have gotten caught... God we need more people like Hitherto, I don't care about all the flamewars he could, has, and would start -- he's a damn good doom detective.

------------------------CLARITY BAR------------------------

Archy said:

a challenged to see if they can get past all these security software devises and successfully fool players in to believing their cheated demo was skillfully and legitimately done. Sounds pretty fun actually, would be a nice challenge :P

Looper said:

I can agree with that, except at the moment ANYONE who wants, can cheat.

I can't really argue with that.

Looper said:

Even if little security is added, the amount of people being able to cheat will be reduced drastically because not everyone knows how to program or to do tricks to fool even simple security system.

How many people would we be preventing with this method? I guess a few and I guess (know) that's a good thing, but it seems to me that fx and whoever are going to be putting a lot of work into something that is going to give back very little reward.

I think the best way to detect cheaters is to test them, and online co-op is the best way to do that. They can't use slow motion without giving them selves away, they can't use pre-recorded actions because the other player would mess up how the monsters respond, they can't segment, build, get a third person perspective on the map in real time, and all ports from the original Vanilla Doom to Chocolate to (I think) PrBoom and PrBoom-Plus can be played online with not too much effort.

Online co-op, the ultimate legitimacy test.

Share this post


Link to post

Whenever I see something I usualy do recognize when too many situations gets played out too favorable for the recorder. As I know the variance\randomness of this game, after having played it in so many ways for so many years.


Funny. That sort of reminded me of this

Share this post


Link to post
j4rio said:

Funny. That sort of reminded me of this

Wow, I was originally going to bring that up, espically since it shows the negative side of cheating detectives like Hitherto.

Share this post


Link to post

I'll probably never understand the 'sudden turn of events' there when he posted his h232 in zdoom, when in fact his first demo was done in zdoom and of rather very high difficulty.

Share this post


Link to post
Archy said:

Online co-op, the ultimate legitimacy test.

You've been repeatedly asserting this all through the thread, and it's really not true at all. The real ultimate legitimacy test is to make the player play in a controlled environment; even in an online coop game, there are cheats that can still be used.

Secondly, I'm not convinced it's a fair test. Online play always adds some amount of lag to the inputs, which can affect the gameplay. It's all about reaction times: think about a typical game of Doom and the kind of reactions you need to dodge a rocket or monster fireball, for example. You can think of it as like driving a car after having drunk alcohol: your response time is increased, because extra latency is added to the player's inputs.

Suppose you think someone is a cheater and you challenge them to play a game of coop to demonstrate their abilities. They accept your challenge, you play a game of coop and they play terribly, instead of the usual quality from their single player demos. But that doesn't necessarily mean that they cheated. All you've proved is that they're bad at online play. You've made them play with a handicap.

That's why I proposed a scheme that doesn't add latency to the inputs. Conceptually my scheme is sort of like a "coop game without the other player" - all the same advantages in terms of security (random element introduced by a trusted third party), without the disadvantages in terms of handicapping the player.

Don't get me wrong, in overall terms the "coop test" is probably a pretty good way to check if someone is legitimate. It also has the advantage of being really easy to set up. But it's by no means the "ultimate legitimacy test".

Share this post


Link to post
Archy said:

I really don't think this choco-fork is a good idea.

There are other reasons for a C-N specific fork too that have been discussed here, not just the closed source anticheat system (which I have pretty much the whole time said that it probably wouldn't be a good idea in the end, it would cause more harm and hassle and than it would help, but I kinda understand the other viewpoint too, and things are never only either black or white).

For example, metadata in LMP files can easily be implemented so that the demos still work even in vanilla straight out of the box. There's a specific demo end marker byte reserved (though the game will quit playing the demo when it reaches the end of the buffer regardless, at least IIRC, can't be arsed to go check the source right now) so we can just put all the metadata after it. If it breaks someone else's port or LMP tool, it's their code that needs fixing because it'll work in unmodified vanilla and unmodified Chocolate Doom.

Vanilla could even be hacked to support this new metadata format quite easily, in case someone still wants to use a real DOS PC or DOSBox to play. It's also easily possible to hack vanilla to support both longtics and regular demos in the same binary, and I have done it in the past, though I don't have a separate EXE with just that in it, I put it into a binary that plays No Rest for the Living properly in DOS. :-) (I gave it and a modified Chocolate Doom binary for Windows + source diff to some guy who used to come to #chocolate-doom who said he wanted to run a NR4TL speedrunning competition, dunno if anything ever came out from it though...) Anything not too complex like highres could be added to vanilla too so that it stays in feature parity with the Chocolate Doom fork. In theory even that could be hacked in, but it would take so much effort for so little gain that it's not worth it.

Archy said:

The DLL idea still won't prevent people from using system-induced slow motion, which is completely possible and realistically achievable.

Yes, it's never going to be perfect, but it could quite feasibly try to detect attempts to do that, or even attempts to run the game inside an emulator or VM modified for cheating.

Archy said:

Ultimately, I don't think this choco-fork thing will solve anything, it actually might just make cheaters more inclined to cheat because now it's like a game between the cheater and the admin (fx) -- a challenged to see if they can get past all these security software devises and successfully fool players in to believing their cheated demo was skillfully and legitimately done. Sounds pretty fun actually, would be a nice challenge :P

Which is exactly what I've been trying to explain to the folks on #nightmare.

Share this post


Link to post
fraggle said:

...I'm not convinced it's a fair test. Online play always adds some amount of lag to the inputs, which can affect the gameplay. It's all about reaction times: think about a typical game of Doom and the kind of reactions you need to dodge a rocket or monster fireball, for example. You can think of it as like driving a car after having drunk alcohol: your response time is increased, because extra latency is added to the player's inputs.

Suppose you think someone is a cheater and you challenge them to play a game of coop to demonstrate their abilities. They accept your challenge, you play a game of coop and they play terribly, instead of the usual quality from their single player demos. But that doesn't necessarily mean that they cheated. All you've proved is that they're bad at online play. You've made them play with a handicap.

Very good point but I'm still convinced that this is a very good cheater detection method. While the player will not play as well due to handicaps, it will show the admin (or whatever) that the player should at least have the ability to due "X" without segmenting or slow motion. Still a very good test in my opinion, but maybe not the actual ultimate test, this is a good quote:

fraggle said:

Don't get me wrong, in overall terms the "coop test" is probably a pretty good way to check if someone is legitimate. It also has the advantage of being really easy to set up. But it's by no means the "ultimate legitimacy test".


------------------------CLARITY BAR------------------------

fraggle said:

...I'll give a brief description of my idea.

Firstly, it seems like the biggest problem in terms of cheating is that of tool-assisted demos: for example, someone records the demo, but runs the game at half normal speed to give themselves an advantage, or uses a tool that allows them to record a demo in parts, replaying bits over and over again (I believe entryway once made a TAS demo where he played through the entirety of Doom II without being injured once).

It occurs to me that you can defeat this kind of cheating just by ensuring that the game must have been recorded within a particular timeframe. For example, if a demo is 3m24s long, and you can prove that it must have been recorded on a certain date within a specific 3m24s timeframe, then a tool-assisted cheat can't have been used.

Doom's game behavior is a deterministic state machine that easily goes out of sync if something is changed even slightly. We can make use of this: a pseudo-random number generator with a specific random seed can introduce a random element into the game: for example, adjusting the positions of all objects in the game by a fraction of a unit in a way that is imperceptible to the player but will cause the game to go out of sync if played back with the wrong seed.

Next you have a server on the Internet that responds to requests. When someone wants to record a verified demo, the Doom port sends a "start" message to the server, which replies with a random seed that it generates. This is used as the random seed for the game, which apart from the random element is otherwise recorded as normal. When the demo finishes, the Doom port sends an "end" message to the server, and includes the demo length and a cryptographic hash (eg. SHA1) of the demo contents. The server digitally signs the random seed, demo length and the hash and returns them back to the sender. These all get packaged up into a demo file.

A signed, verified demo file must have been recorded at that specific time, because:

  • It can't have been recorded earlier and replayed (eg. through tool assist), because the game depends on the random seed that was returned by the server at that specific time. If it was recorded earlier, the game will go out of sync.
  • It can't have been recorded at a reduced speed, because the server checks the demo length against the start and end times, and rejects the request if they don't match.

fraggle later said:

That's why I proposed a scheme that doesn't add latency to the inputs. Conceptually my scheme is sort of like a "coop game without the other player" - all the same advantages in terms of security, without the disadvantages in terms of handicapping the player.

While after thinking about it, this actually sounds like a really great idea, I still fail to see how that wouldn't "add latency to the inputs" considering that the engine is having to communicate with the server, and then the server sends a random seed. Wouldn't this cause the same lag like online co-op? Or is it just one random seed at the beginning that has an effect on every thing to come? If that is the case, then a cheater can cheat on a demo with TAS and then replay it over and over again on the server until the demos finally plays back properly due to the correct seed being randomly selected. Of coerce you could always have the server remember previous demos so that way, catching that method of cheat would be ultra easy.

Share this post


Link to post

Some online tests won't show much imo. Doom is rng based and getting some stuff work online would only mean replaying stuff over and over, except you'd feel a whole lot more uncomfortable because you're being observed. This can only work in theory. If you want some comparable online tests, doom would have to be a game that doesn't get affected by rng.

Share this post


Link to post
Archy said:

While after thinking about it, this actually sounds like a really great idea, I still fail to see how that wouldn't "add latency to the inputs" considering that the engine is having to communicate with the server, and then the server sends a random seed. Wouldn't this cause the same lag like online co-op?

Nope. It only communicates with the server once at the start of recording (to obtain a random seed) and then again at the end of recording (to digitally sign the checksum of the demo).

Or is it just one random seed at the beginning that has an effect on every thing to come? If that is the case, then a cheater can cheat on a demo with TAS and then replay it over and over again on the server until the demos finally plays back properly due to the correct seed being randomly selected.

No, because the seed would be some enormous number, so that the chances of the same seed being selected twice would be astronomically small.

Even if you used a simple 32-bit integer (and I was planning much larger than that), that's a 1 in 4 billion chance of your pre-chosen random seed being selected - comparable to winning the lottery several thousand times.

Share this post


Link to post

Chocolade fork is just to introduce some new things that we really must have to make it more interesting these days. We're not going for closed source, we were just discussing about it, and I respect too much fraggle to go against his will. We could build our own port but the problem is most of us want it like now :)
Afaik coop doesn't prove anything I think. I remember when Sedlo and I played some Coop games in the past and he was always playing like he's playing solo, and that meant like hundreds of failed runs and accuse him that he's a cheater because we made only one level right after ~200 tries would be nonsense because I know that Sedlo would rather die than cheat. :p

Share this post


Link to post

My thoughts on this all, after silently following the thread and observing / pitching in on a few discussions in #nightmare.

When Ocelot and me tried to resurrect Compet-N back in 2008, we did not get alot of positive feedback. The general idea from coders and players? "Let it die". Ultimatively we didnt want to do -anything- before we had some things sorted out. There was the obvious question first: How to transfer a vanilla consept over to a port that allows people to play it w/o doing ancient systems or messing with dosbox. One of the things we did not want, at any cost, was to compromise the integrity of the old demos, som 15+ years worth of work from hundreds of people that went into the current record tables. Simply going with any current unmodified port for the task would be unacceptable.

Choco seemed like the best option, with some modifications. It would have to support quickstart, and it would also need some sort of cheat detection, because cheating became so trivial and accessible that the few Winterfeldts of the past would no doubt multiply if the relaunch became a success and gained attention.

There was little to no support to get from coders at that point in time. W/o any techincal assistance, Oce and me figured its better to let CN rest as is for now, and put the relaunch on ice. Doomworld was maintaining activity in the speedrun forum, and good stuff was still produced, in any case.

The one thing some people tend to overlook in this thread is that one cant just move the old record tables over to a new port w/o considering stuff like quickstart. It would be impossible to reach the same low times in a port as it would over vanilla running on an old system, because of this. Records would instantly be incompatible, and in a way inferior.

Oce and me also had some clear ideas for how we wanted to transform compet-n to its original intended state, before the invasion of a multitude of pwads and categories. Compet-N started out as a hardcore site where it took effort and time to grab a point or two. It was limmited to the main categories of UV Speed, Nightmare Speed and UV Maxkill, over doom and doom2. Simon Widlake (RIP) then added -fast and -respawn so that he could harvest some 0.5 points on the tables himself, w/o being stomped by the more hardcore players, and thats where things got a bit out of hand.

Later on, Adam Hegyi was riding the popularity of CN at that point with a slew of active players constantly submitting recordbeaters, and to freshen things up he added pwads and cooperative playthroughs, as well as more categories. I think time showcased that all of that should have been reserved for a place such as DSDA instead, because it effectively killed the sense of prestige and accomplishment it took to gain points on the Compet-N tables. For alot of hardcore players, this became increasingly discouraging, and Adam eventually tired of doing 500 demos in one update and left the scene (I'm sure this was a combination of things tho, like cheating becomming increasingly harder to detect, and real life business). Imagine if anyone could compete in the olympics, how much fun would it be to watch that thing on tv in the long run? :) And yeah, I realize that comparison is stretching it, but on a tiny scale theres some comperative value.

With the establishment of DSDA, it became even more clear that Compet-N should differ itself by going back to its intended roots. Thats what we wanted to do. Limmit the competition to the IWADS, and the main categories of old.

With the addition of a gameplaywise identical port replacing vanilla, we also wanted to revitalize the old tables by introducing millisecond records instead of the full second tables currently at CN. This would mean an all new fight for the fastest times over some of the "prestige" records, like map01 or e1m1 where the full second time records of old look terrible compared to the low runs done in later years. And it would also guarranty hard worked and excellent runs. A new timer display would be one of the elements required in the modified port.

What really killed it in 2008 was the fact that there was no good way of going about effective cheat detection. And from the looks of things, thats still the main breaking point. The most promising one I see is the one Fraggle proposed, and I would personally dive into that and see what could come from it. Its worth a shot, and its a clear direction with a strong argument of why its the best solution. If this option is not chosen, I would just go with trust, and if theres reason for doubt with a submission, the CN administrator should be able to contact a cobble of voluntairs with lots of experience, and have them view the material and cast a vote / opinion.

Bottom line is, I think FX attacked this the wrong way, but his intentions are good. I applaud his hard work to get the old database working, and the life he have been breathing into this discussion. And not least, the way he managed to get some of the not so willing voices back in 2008 to pitch in. The site and the relaunch shoulda been secondary to having a good solution already worked out. This is sort of like buying a car w/o the engine. Nice to look at, but just sitting there until the components are in place. I'm rooting for him to find a solution to the issues, and hope he will keep working on the site. I'm sure theres a hundred ideas and opinions out there of what should be done and what should and should not be added to a "new" CN. Thats where having a clear vision from the start go comes in. And then people can like or disslike it all they want, as long as you've got a working plan.

Negativity never helped anyone, either. Lets stay constructive :)

Share this post


Link to post

With regards to anticheat measures, if they're going to be taken at all, I think fraggle's idea would be a pretty good solution if I understood it correctly. It wouldn't even have to affect gameplay at all (like average damage values and such over time would still be the same as in vanilla) if implemented correctly, and even the DOS executables could be hacked to support it (adding recording would be way more difficult than adding playback though!), but fx02 has already said that he doesn't care about vanilla (or rather that vanilla should continue living its own life in the original C-N).

Share this post


Link to post

Hi.

Couple things.

1) c-n needs be noone's cum dumpster. At the end of Adam H's involvement with it, this is what it started to become, and this is part of what drove him away. C-n was essentially being abused by people who didn't share the drives of the players it was meant to serve.

Tablefilling was happening and, on occasion, highly-skilled demos were being replaced by poorly-executed SR50 ones. Adam was unhappy with what was happening, but tends to not share how he feels with the public at large. Once he did write an unhappy, angry email to one of the abusers of c-n, but the recipient continued doing the same things.

The vulnerabilities in c-n that made Adam H walk away are still there.

a) it needed to have the bad cats that were being abused removed, and

b) the system needed an update which handles the fact that demos created with meaningful SR50 use are not compatible with the older SR40 ones, in particular when the threshold for records is measured in whole seconds.

;-------------------------

2) Integrity is critical.

The only way I can think to do this that gets the job done is a closed-source fork and a demo file format which is also closed. That way it's possible to build cheat detection into it.

Tools to cheat are far greater than they were in the past. Who wants to be a really amazing player only to know that someone who is a complete asshole freak will come behind you and effectively steal your rank on your best map.

I've seen some ppl who seem to be naysayers to some of the better solutions. I have a comment for those - - lead, follow, or get out of the way. Sick of seeing what you say being pasted into #nm.

Share this post


Link to post
fraggle said:

Nope. It only communicates with the server once at the start of recording (to obtain a random seed) and then again at the end of recording (to digitally sign the checksum of the demo).

No, because the seed would be some enormous number, so that the chances of the same seed being selected twice would be astronomically small.

Even if you used a simple 32-bit integer (and I was planning much larger than that), that's a 1 in 4 billion chance of your pre-chosen random seed being selected - comparable to winning the lottery several thousand times.


Sigh.

http://en.wikipedia.org/wiki/Video_game_bot

At least with a closed-source app you have a chance of detecting that and craftily making note of it in the demo.

Share this post


Link to post

BahdKo said:
Once he did write an unhappy, angry email to one of the abusers of c-n, but the recipient continued doing the same things.


Heh. Xit?

BahdKo said:
b) the system needed an update which handles the fact that demos created with meaningful SR50 use are not compatible with the older SR40 ones, in particular when the threshold for records is measured in whole seconds.


That's ridiculous. IMO.

BahdKo said:
Tools to cheat are far greater than they were in the past. Who wants to be a really amazing player only to know that someone who is a complete asshole freak will come behind you and effectively steal your rank on your best map.


Considering that properly done Tool-assisted, or as C-N likes to put it - cheated - demos are still very welcome here as long as you say it contains tool-assistance, it takes a special kind of freak. Besides, with roughly 2-3 new guys appearing at DSDA yearly, you probably won't live long enough to encounter too many of these potential freaks. Do something for enjoyment of yourselves and those who are willing participate rather than for potential freaks.

Share this post


Link to post
BahdKo said:

I don't present my scheme as a universal solution to all problems: as I've already stated, the only way to properly avoid cheating is to force the player to play in a controlled environment. But what I propose can be effective against other cheating techniques (TAS, reduced speed, etc). I believe that the specific problem of aim bots can probably be solved through analysis of demos.


At least with a closed-source app you have a chance of detecting that and craftily making note of it in the demo.

But while my scheme actually solves real problems, this one solves nothing at all, because obscurity ultimately adds no security - only the illusion of security.

Share this post


Link to post

I don't mean aimbots tho.

Unfortunately I don't code in the right languages to work with this myself. I just hope that whatever comes out of this in the end makes for sufficient integrity (and that the other weaknesses that c-n has are repaired).

fraggle said:
But while my scheme actually solves real problems, this one solves nothing at all, because obscurity ultimately adds no security - only the illusion of security.


This is wrong actually, but I'm not getting into it.

Share this post


Link to post
BahdKo said:

I don't mean aimbots tho.

Then I don't understand what your objection is? The page you link to describes "bots" that can play a game, like the ones in Quake 3. What does this have to do with cheating, exactly?

This is wrong actually, but I'm not getting into it.

Very well then, if you're not interested in debating the subject then your opinions can be dismissed without further consideration.

I've explained my opinion already: a closed source port would provide "security" and "integrity" for about 5 minutes before someone reverse engineered the "secret" demo format. If you have nothing to contradict that then I will assume it is correct.

Share this post


Link to post
BahdKo said:

1) c-n needs be noone's cum dumpster. At the end of Adam H's involvement with it, this is what it started to become, and this is part of what drove him away. C-n was essentially being abused by people who didn't share the drives of the players it was meant to serve.

Tablefilling was happening and, on occasion, highly-skilled demos were being replaced by poorly-executed SR50 ones. Adam was unhappy with what was happening, but tends to not share how he feels with the public at large. Once he did write an unhappy, angry email to one of the abusers of c-n, but the recipient continued doing the same things.

If this is referring to Xit Vono, please give it up already. Sure, he was perhaps an arrogant douchebag, he still might be, but all his runs were totally legit as far as I know, as in he didn't use anything that automatically allows the player to use SR50 as much as theoretically is possible without modifying the code in the game itself (never on tics with turning, always on tics without turning). Optimizing one's keyboard layout to take maximum advantage of SR50 does not count, no matter what you say as long as there's no rule that specifically bans this, and there certainly wasn't.

BahdKo said:

The only way I can think to do this that gets the job done is a closed-source fork and a demo file format which is also closed. That way it's possible to build cheat detection into it.

Tools to cheat are far greater than they were in the past. Who wants to be a really amazing player only to know that someone who is a complete asshole freak will come behind you and effectively steal your rank on your best map.

I've seen some ppl who seem to be naysayers to some of the better solutions. I have a comment for those - - lead, follow, or get out of the way. Sick of seeing what you say being pasted into #nm.

BahdKo said:

Sigh.

http://en.wikipedia.org/wiki/Video_game_bot

At least with a closed-source app you have a chance of detecting that and craftily making note of it in the demo.

Except even PunkBuster gets defeated time and time again (and even right now there are probably undetected cheats for PB enabled games out there, at least if you pay for them), and it's already doing lots of really, really questionable crap in kernel mode. An attitude like this will only make it more likely that someone will break the protection just to piss you off, by the way. In fact, the tone of your post is such that if I didn't dislike backstabbing too, I'd have little moral issue with breaking it assuming I could.

However, I think if someone wants to take the original linuxdoom source and make something like this on top of that, it's ok. id clearly wouldn't have any problems with it since they don't care about the Quake ports doing this either, and if you used an old port that didn't get relicensed under the GPL as the base, I think you could even keep the whole source to yourself without any legal issues. I might even be willing to help with this, but I'd never use any code from anyone who doesn't explicitly allow it though, because that would be just really, really disrespectful and nasty. It would be just as disrespectful as extreme GPL zealotry or "open source enthusiasm" from your perspective, or uploading "tablefillers" or sloppy SR50 runs to C-N.

EDIT: cleaned it up a bit...
EDIT2: more cleanup :-D

Share this post


Link to post
BahdKo said:

the system needed an update which handles the fact that demos created with meaningful SR50 use are not compatible with the older SR40 ones, in particular when the threshold for records is measured in whole seconds.

This really is ridiculous, SR50 is a skill and even if an overall lesser played beats an SR40 demo because he had grater SR50 skills, he has the legitimate world record. It's not like another player can't learn how to improve his/her SR50 skills and then beat the crap out of that "offending" demo.

BahdKo said:

Tablefilling was happening and, on occasion, highly-skilled demos were being replaced by poorly-executed SR50 ones. Adam was unhappy with what was happening, but tends to not share how he feels with the public at large. Once he did write an unhappy, angry email to one of the abusers of c-n, but the recipient continued doing the same things.

This is also ridiculous, tablefilling is good because it prevents this type of nonsensical tablefilling again. Also, when someone sees a record, they want to beat it, especially if it's easy to beat. After said person beats it, another will come and beat it and then another and then another (this would take a long time though, as few people still play Doom, but it would happen). It's good for competition, but I do think it would have been betting if COMPET-N just sticked with Max, Speed, and Nightmare! because that would intensify the competition -- but watching NM100S and Tyson demos though is pretty amazing.

Share this post


Link to post
fraggle said:

No, because the seed would be some enormous number, so that the chances of the same seed being selected twice would be astronomically small.

Even if you used a simple 32-bit integer (and I was planning much larger than that), that's a 1 in 4 billion chance of your pre-chosen random seed being selected - comparable to winning the lottery several thousand times.

Computer generated RNGs are never truly random, not even the famous RANDOM.ORG, a player could purposely synchronize the playback of a pre-recorded demo with the server at a time and situation that would cause the same number to be generated.

That's a real long-shot though, and probably something we would never have to encounter.

Share this post


Link to post

I think Compet-N is on the right track. The old database sticking around for everyone using DOS Doom and a new DB for demos from a chocolate doom fork. It seems there really is momentum to get it up and running, even when one runs over some speedbumps in the beginning. But don't ya like the feeling, running over one of these suckers without seeing them first and then being reliefed that the car did not break?

Ty.

P.S. i personally think that trying to prevent cheating through obscurity is futile. That being said, i'm not sure how well a online seed model would be received. Maybe better if it'd be optional and marked in the table.

Share this post


Link to post
BahdKo said:

b) the system needed an update which handles the fact that demos created with meaningful SR50 use are not compatible with the older SR40 ones, in particular when the threshold for records is measured in whole seconds.

Not compatible? How?

Are you going to propose the same for new gliding techniques?

Share this post


Link to post

Lets not morph this thread into a flamevar about xit vono. :)

A faster run is a faster run. I dont have to like the run, but s50 use and the amount of such is of no importance as long as its done "legal" ways. And thats all compet-n should care about in this context.

Anything else would be like getting annoyed at a route improvement. Those were much harder to take back in the days. You spent 12 hours on a run, and then someone comes around with a fresh thought and do the map backwards, cuts your time in two just with better weapon usage and a different approach.

All part of the game. If your going for the fastest time possible, apply as much s50 as possible as long as its not automated beyond whats doable humanly and ingame. Thats no more unfair (I'd say less) than improving the route or the weapon usage over an older record - something which was done constantly and natural through the years. Should we write off records made with optical mice instead of the old ball mouse? One could go on. Theres alot of factors as to why its not always "completely fair" when a less good looking record timewise manage to improve on an old one, but what matters in the end are the diggits when you exit.

Archy: I agree that theres lots of interesting demos over various categories, and some great pwad demos in existance. Nothing prevents people from producing, watching and enjoying these even if they are not point-rewarded compet-n recordings however. I think the two can exist seperatly, and that it will benefit the level of fierceness over the iwads and the original categories. Theres still infinite amount of improvent and rerecording possibilites even with such a limitation; it just raises the quality of compet-n considerably, through a more functional selection of tasks.

Fraggle, question: Wouldnt it be possible to set up a bot so that it feeds a built demo into the online verification process? I'm more worried about that than aim bots. Such a thing would be easily visually picked up on compared to slowmotion and cut/paste.

Edit:
Also wanna add, that this millisecond timer thing I'm talking about would work better as a gametic counter :} I guess the terms have for some insane reason merged in my head.

Share this post


Link to post
Archy said:

Computer generated RNGs are never truly random, not even the famous RANDOM.ORG, a player could purposely synchronize the playback of a pre-recorded demo with the server at a time and situation that would cause the same number to be generated.

That's why modern operating systems have entropy collectors. This is something that is already an issue for other protocols (like SSH, SSL) - it's effectively a solved problem.

(Actually, random.org really is truly random, just as it says on its front page - its random data comes from a hardware source, not a PRNG.)

That's a real long-shot though, and probably something we would never have to encounter.

Correct.

Andy Johnsen said:

Fraggle, question: Wouldnt it be possible to set up a bot so that it feeds a built demo into the online verification process? I'm more worried about that than aim bots. Such a thing would be easily visually picked up on compared to slowmotion and cut/paste.

No. If you go back and read my original description, a random element is introduced into the game, generated by a random seed received from the remote server:

It can't have been recorded earlier and replayed (eg. through tool assist), because the game depends on the random seed that was returned by the server at that specific time. If it was recorded earlier, the game will go out of sync.

Share this post


Link to post
Archy said:

This really is ridiculous, SR50 is a skill and even if an overall lesser played beats an SR40 demo because he had grater SR50 skills, he has the legitimate world record. It's not like another player can't learn how to improve his/her SR50 skills and then beat the crap out of that "offending" demo.


This is also ridiculous, tablefilling is good because it prevents this type of nonsensical tablefilling again. Also, when someone sees a record, they want to beat it, especially if it's easy to beat. After said person beats it, another will come and beat it and then another and then another (this would take a long time though, as few people still play Doom, but it would happen). It's good for competition, but I do think it would have been betting if COMPET-N just sticked with Max, Speed, and Nightmare! because that would intensify the competition -- but watching NM100S and Tyson demos though is pretty amazing.


Clueless. I'm done.

And, way too many hands in the pot.

Share this post


Link to post
BahdKo said:

Clueless. I'm done.

With respect, when were you ever even part of the discussion? All you appear to have done since you appeared in this thread earlier today is be insulting and abrasive, make some vague unsubstantiated claims that you've refused to explain, and try to shut down the discussion ("get out of the way, Sick of seeing what you say being pasted into #nm").

It's a shame you didn't take Andy Johnsen's advice and try to stay constructive, because I would have valued your input, if you would have made the effort to actually contribute anything.

Share this post


Link to post

fraggle: actually some short speedruns would be unaffected by your randomization, especially in levels where monsters don't block the way or they don't get alerted to screw up the prng.

and i think the notion to separate sr40 and sr50 runs for the main tables is absolutely outrageous. i will strongly oppose any organization with this goal.

Share this post


Link to post

fraggle:
No. If you go back and read my original description, a random element is introduced into the game, generated by a random seed received from the remote server


But can that be implemented to lmps? I kinda like that idea, this way we could have "verified" demos and normal ones. Verified would be noted in tables. But players could choose to play offline or online. Are you maybe interested in implementing such idea?

Also I don't care for normal SR50 usage or table filling. If we get client working as we want then you will just have to obey rules and play :)

Please stay constructive and on topic.

Share this post


Link to post
×