The Dink Network

GoD v1.1

August 29th 2010, 03:59 PM
dragon.gif
Quiztis
Peasant He/Him Sweden bloop
Life? What's that? Can I download it?! 
I'll upload it tomorrow but I really want one more thing before I release it.

The Ultimate cheat is a great tool for debugging DMODs, but it shouldn't be used to beat the game if you haven't done it before already imo. Is there any way of disabling it completely? Or something near it? I got an anti-cheat that covers stats and gold but I do not like the "Kill enemies" function of the cheat. Assuming that the key- files are in the dink folder.
August 29th 2010, 04:13 PM
anon.gif
Absolution
Peasant They/Them
The Dark Lord of the DN. 
Then make it so that when you cheat it kills the game after Dink says, "Don't cheat". Just put
say("Don't cheat!!" ,1);
kill_game()

at the end of the key scripts.

Or just delete the whole script and put that script in.

OR just make it so when the cheat keys are pressed it sets off
say("Don't cheat!!" ,1);
kill_game()

August 29th 2010, 04:30 PM
dragon.gif
Quiztis
Peasant He/Him Sweden bloop
Life? What's that? Can I download it?! 
Anyone else with proper solutions?
August 29th 2010, 04:33 PM
slayer.gif
rabidwolf9
Peasant He/Him United States
twitch.tv/rabidwolf9 
Anti-cheat is a waste of time IMO. There's nothing you can do to completely prevent a player from cheating. Also, the Ultimate cheat has it's uses in DMODs. Since virtually no DMOD is perfect and bug free, there may be times the player needs to warp to escape a hardness bug, get out of an unbalanced fight, or escape a faulty screenlock.

Then there's also cheating by the editor or altering your scripts. You're just making things harder on yourself.

However, if you're determined, about all you can do is to have double stats (where stat must = psuedostat or the player is declared a cheater), make a keyscript for common cheat keys, and have screenlocks that loop. That would keep out the less persistent cheaters, but if someone really wants to cheat, there's really no way you can stop them.
August 29th 2010, 04:38 PM
anon.gif
Absolution
Peasant They/Them
The Dark Lord of the DN. 
Anyone else with proper solutions?

Are you just looking for a way to be a dick?
August 29th 2010, 04:40 PM
dinkdead.gif
He probably misunderstood... one of Rabid's answers is the same as yours.
August 29th 2010, 04:43 PM
burntree.gif
hell7fire1
Peasant He/Him Botswana
It's like that. 
he dosent need to be one
we have you to do that

i cheat a lot
but not to win
to test a game
if a game is anti-cheat it is a challenge to me
August 29th 2010, 04:44 PM
anon.gif
Absolution
Peasant They/Them
The Dark Lord of the DN. 
Actually I think we have YOU to do that hell.
August 29th 2010, 04:59 PM
slimeg.gif
metatarasal
Bard He/Him Netherlands
I object 
Are you just looking for a way to be a dick?

Uh... Have you actually considered that your answer didn't answer anything? You just said "make it so that when you cheat it kills the game after Dink says, "Don't cheat"." While the question was how to detect someone cheating. I mean, surely you must have realized that yourself...

As for preventing cheating, you can look into initiation, not sure how redink1 pulled it of, but he had some form of cheat protection. Otherwise, like rabid said, a double set of variables is probably the way to go.
August 29th 2010, 05:06 PM
anon.gif
Absolution
Peasant They/Them
The Dark Lord of the DN. 
I did post for it to close after a cheat key was pressed. That's pretty much preventing it.
August 29th 2010, 05:08 PM
slimeg.gif
metatarasal
Bard He/Him Netherlands
I object 
And how did you plan to detect that? If you have the corresponding key script in the DMOD installing a cheat just overwrites that key script...

EDIT: Hey, this gives me an idea... How about making a key script that corresponds to the one used by ultimate cheat and put an external procedure in it that is somehow needed to make the DMOD work?

Something like this:

external("Key-86","cheat");
if (&return != 5)
{
say("You're a cheater!",1);
}


With in the key script:

void cheat(void)
{
return(5);
}


That would tell you if the original key script is overwritten...
August 29th 2010, 05:19 PM
custom_iplaydink.gif
Iplaydink
Peasant He/Him Sweden
Hmm.. 
That's really clever! My solution would be too loop a check if a script with one of those names are running, but that would be slower and less presice.
August 30th 2010, 03:44 PM
pq_knight.gif
ExDeathEvn
Peasant He/Him New Zealand rumble
"Skinny Legend" 
Regarding the Kill All Enemies functions of the Ultimate cheat, would a One-Pixel sprite with a script that, when it takes damage, kills the game? Placing it somewhere ABSOLUTELY (Not referring to skorn) out of the way of regular combat areas (maybe on the edge of each screen) could easilly work.

It'd be almost perfect aside from if the player goes about randomly throwing spells all over the place, or punching everywhere just to find it.
August 30th 2010, 03:57 PM
dragon.gif
Quiztis
Peasant He/Him Sweden bloop
Life? What's that? Can I download it?! 
A very interesting idea, ExDeath.
August 31st 2010, 04:52 PM
dragon.gif
Quiztis
Peasant He/Him Sweden bloop
Life? What's that? Can I download it?! 
Uploaded. W00T!