Anti Cheat kickt Bots

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Tag,


    ich habe folgendes anti cheat system auf meinem samp Server gepackt [Dark-Trigardon] Anticheat Open Beta 0.2a .
    Jetzt habe ich ein Problem ich habe 2 Bots auf meinem Server und das AntiCheat script kickt immer die Bots vom Server kann mir einer sagen wie ich es so einstellen kann das die Bots nicht gekickt werden?
    Hier ein kleiner auszug:



    [npc:part] [BOT]PilotSF has left the server (0:2)
    [BOT]PilotSF trys to cheat ( onfoot, airbreak, 1236.7 m/s )
    Incoming connection: 127.0.0.1:59565
    [npc:join] [BOT]PilotSF has joined the server (0:127.0.0.1)
    [BOT]PilotSF tryes to cheat ( Money cheat )
    [npc:part] [BOT]PilotSF has left the server (0:2)


    Ps. Ohne die bots kommt man nicht auf den Server drauf.


    Mit freundlichen Grüßen


    Mixipixi

  • Frage ab, ob der Spieler ein NPC ist, siehe hier.


    Mit freundlichen Grüßen
    [GP]Saitek | Timo


    Du hast Probleme beim Programmieren oder mit deinem PC?
    Registriere Dich doch auf PC-Rat-Hilfeforum.de.
    Nach dem Registrieren musst du nur deine E-Mail-Adresse bestätigen,
    dann kann es auch schon losgehen. Also worauf wartest du?


    Erreichbar unter folgender E-Mail-Adresse
    support@pc-rat-hilfeforum.de

  • Mach einfach in dem Filterscript sowas:


    //Unter OnFilterScriptInit & unter OnPlayerConnect
    if(IsPlayerNPC(playerid)) return 1;


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Kaliber


    meintest du das so public OnPlayerConnect(playerid)
    if(IsPlayerNPC(playerid)) return 1;
    {



    public OnFilterScriptInit()
    if(IsPlayerNPC(playerid)) return 1;
    {


    Wenn ja es funktioniert nicht hier die Fehlermeldungen

    Spoiler anzeigen
    \filterscripts\DT_Anticheat.pwn(120) : error 017: undefined symbol "playerid"
    \filterscripts\DT_Anticheat.pwn(121) : warning 209: function "OnFilterScriptInit" should return a value
    \filterscripts\DT_Anticheat.pwn(121) : error 055: start of function body without function header
    \filterscripts\DT_Anticheat.pwn(128) : error 010: invalid function or declaration
    \filterscripts\DT_Anticheat.pwn(130) : error 010: invalid function or declaration
    \filterscripts\DT_Anticheat.pwn(133) : error 010: invalid function or declaration
    \filterscripts\DT_Anticheat.pwn(147) : error 010: invalid function or declaration
    \filterscripts\DT_Anticheat.pwn(148) : error 010: invalid function or declaration
    \filterscripts\DT_Anticheat.pwn(160 -- 161) : error 029: invalid expression, assumed zero
    \filterscripts\DT_Anticheat.pwn(163) : error 021: symbol already defined: "GetPlayerName"
    \filterscripts\DT_Anticheat.pwn(165) : error 021: symbol already defined: "format"
    \filterscripts\DT_Anticheat.pwn(166) : error 010: invalid function or declaration
    \filterscripts\DT_Anticheat.pwn(171) : error 021: symbol already defined: "SendClientMessage"
    \filterscripts\DT_Anticheat.pwn(177) : error 054: unmatched closing brace ("}")
    \filterscripts\DT_Anticheat.pwn(181) : error 010: invalid function or declaration
    \filterscripts\DT_Anticheat.pwn(183) : error 021: symbol already defined: "ResetPlayerMoney"
    \filterscripts\DT_Anticheat.pwn(185) : error 010: invalid function or declaration
    \filterscripts\DT_Anticheat.pwn(235) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(275) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(345) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(624) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(747) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(815) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(873) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(891) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(968) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(982) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(1025) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(1378) : warning 219: local variable "string" shadows a variable at a preceding level
    \filterscripts\DT_Anticheat.pwn(2051) : warning 203: symbol is never used: "playername"
    \filterscripts\DT_Anticheat.pwn(2051) : warning 203: symbol is never used: "string"

  • So soll das aussehen:



    public OnPlayerConnect(playerid)
    {
    if(IsPlayerNPC(playerid)) return 1;
    return 1;
    }



    Bei OnPlayerConnect machst du das ganz oben rein, alles was darunter passiert wird nicht ausgeführt da dieser Public an der Stelle returnt wird und sozusagen nicht mehr gilt, aber das was darüber steht gilt immernoch! Also ganz oben rein tuhen!


    //Edit: Ja das was Kaliber sagt stimmt schon^^ ich bin mal wieder ein wenig Abwesend :/ Sry also OnPlayerConnect war aber richtig :D

    Einmal editiert, zuletzt von LogispireMode ()

  • Wieso interpretierst du meinen Post :huh:


    Ich habe nie so eine Klammer gesetzt "{" wieso tust du es 2x :huh:


    Nimm die Klammer raus ^^


    und bei OnFilterScriptInit musst du halt darauf achten, dass der Parameter "playerid" nicht übergeben wird also suche dir die SetTimer("bla"...); funktion und jetzt gehe unter "bla" und mache da if(IsPlayerNPC(playerid)) return 1;



    Das ist falsch, vergiss das, schreib das nicht rein, das würde den Callback unterbrechen !


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • [align=start]LogispireMode So wie du es geschrieben hast funktioniert es leider auch nicht.[/align]
    [align=start]Kaliber Es funktioniert immer noch nicht. Die klammern hatte ich gesetzt weil im script es so steht und du nicht gesagt hast das ich die raus nehmen soll.[/align]
    [align=start]Könnte mir vielleicht jemand bei Skype oder so helfen?[/align]

  • So ich habe mit ihm mal via Skype versucht das Problem zu lösen.


    Allerdings Funktioniert das immernoch nicht so wie wir uns das erhofften... vllt. weisst du ja doch noch weiter Kaliber
    ^^ Ich bin ausgelaugt^^ er könnte echt noch hilfe gebrauchen, das login/register system ist es aber nicht! Es steht da das die NPC's wegen Cheats verbannt wurden(Money,Health,Amour) aber M_Bot und sein Anti Cheat Sys. haben wir eig. schon bearbeitet^^ vorallem die publics die kicken lassen.... im script haben wir uns auch schon umgeschaut