Jemand mal mit dem Anti Cheat SAMPCAC gearbeitet?
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
-
-
Jemand mal mit dem Anti Cheat SAMPCAC gearbeitet?
- Sendet Passwörter unhashed an Server (zumindest bei 0.9; weiß nicht wie es bei der jetzigen Version aussieht, aber ich bezweifle dass sich da was geändert hat).
- Letztes Update im August -> bist auf wen anders angewiesen der obviously keine Lust mehr hat.
- SAMPCAC Bypass googeln und du wirst stark fündig wie viele Public-Bypasses es dafür bereits gibt.
-
Hat jemand von euch eine gut Funktionierende IsPlayerInArea Funktion?
Möchte es für mein Gang-Fight System nutzen.
Beim Googeln bin ich auf geschätzt 100 verschiedene Versionen gestoßen...
-
Hat jemand von euch eine gut Funktionierende IsPlayerInArea Funktion?
Möchte es für mein Gang-Fight System nutzen.
Beim Googeln bin ich auf geschätzt 100 verschiedene Versionen gestoßen...
kannst es auch selber schreiben xD
stock IsPlayerInArea(playerid,Float:minX,Float:minY,Float:maxX,Float:maxY)
{
new Float:pX,Float:pY,Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
if(pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) return 1;
else return 0;
} -
Ich habe ein Gebäude, was man betreten kann. In diesem Gebäude kann man ein weiteres Gebäude betreten.
Was ist hier der schlauste Weg? Ich setzte ja den PVar, dass der Spieler in einem Gebäude ist.Cenum buildungs{ Name[35], Interior, Welt, Float:EX,Float:EY,Float:EZ,// Enter Position Float:IX,Float:IY,Float:IZ// Exit Position }Codestock const Building[][buildungs]={ {"Ls Gebäude(1.Interior)",0,0,/*Eingang*X,X,X,/*Ausgang*/Y,Y,Y}, {"Ls Gebäude(2.weiteres Interior)",3,0,/*Eingang*/X,X,X,/*Ausgang*/Y,Y,Y} };C
Alles anzeigenif(GetPVarInt(playerid,"InBuilding")!=-1) { new e=GetPVarInt(playerid,"InBuilding"); if(IsPlayerInRangeOfPoint(playerid,3.0,Building[e][IX],Building[e][IY],Building[e][IZ])) { SetPlayerPos(playerid,Building[e][EX],Building[e][EY],Building[e][EZ]); SetPlayerInterior(playerid,0); SetPlayerVirtualWorld(playerid,0); SetPVarInt(playerid,"InBuilding",-1); return 1; } } else { new Float:dist = 3.0, Float:tmp, e = -1; for(new i; i<sizeof(Building); i++) { tmp = GetPlayerDistanceFromPoint(playerid, Building[i][EX],Building[i][EY],Building[i][EZ]); if(tmp < dist) { dist = tmp; e = i; } } if(e != -1) { SetPlayerPos(playerid,Building[e][IX],Building[e][IY],Building[e][IZ]); if(Building[e][Interior]!=0)SetPlayerInterior(playerid,Building[e][Interior]); if(Building[e][Welt]!=0)SetPlayerVirtualWorld(playerid,Building[e][Welt]); SetPVarInt(playerid,"InBuilding",e); return 1; } } -
Gibt es eine möglichkeit die Funktion dass der Anhänger direkt an den LKW Angehängt wird ausschalten ?
-
-
Nein, du könntest höchstens prüfen, ob ein Trailer attached wurde, wenn ja, ihn sofort wieder detachen.
-
DetachTrailerFromVehicle(vehicleid);kannst auch erst abfragen IsTrailerAttachedToVehicle(vehicleid);
-
Hei,
Kurze frage gibt es ein kleinen Code schnipsel oder so der Silent Aimbot und den Normalen Aimbot erkennt?
Wäre nett wen ihr sowas habt würde mir sehr helfen danke
-
-
Kurze frage gibt es ein kleinen Code schnipsel oder so der Silent Aimbot und den Normalen Aimbot erkennt?
Wäre nett wen ihr sowas habt würde mir sehr helfen danke
also ich habe es mal so gemacht.
Ich habe abgefragt ob der Spieler die linke Schulter trifft heißt sollte jeder hit in die linke Schulter kriegen werden die admin benachrichtigt sollte kein Admin Dasein kriegt er einen timeban.Aber dies konnte ich nicht so richtig Umsetzen
-
also ich habe es mal so gemacht.Ich habe abgefragt ob der Spieler die linke Schulter trifft heißt sollte jeder hit in die linke Schulter kriegen werden die admin benachrichtigt sollte kein Admin Dasein kriegt er einen timeban.
Aber dies konnte ich nicht so richtig Umsetzen
Huh? Sorry aber was redest du für einen Schwachsinn? Du kannst 1) Linke Schulter nicht präzise abfragen sondern nur Torso und Arme:
https://wiki.sa-mp.com/wiki/Image:Body_parts.jpg
Außerdem ist das lange kein Beweis für einen Silent Aimbot.
-
-
Huh? Sorry aber was redest du für einen Schwachsinn? Du kannst 1) Linke Schulter nicht präzise abfragen sondern nur Torso und Arme:
https://wiki.sa-mp.com/wiki/Image:Body_parts.jpgAußerdem ist das lange kein Beweis für einen Silent Aimbot.
deshalb habe ich auch geschrieben *aber dies konnte ich nicht so richtig umsetzen * damit will ich sagen das man eine andere Methode braucht
Mit handy geschrieben
-
C
Alles anzeigenstatic ac_KickWithCode(playerid, ip_address[], type, code, code2 = 0) { if(type == 0 && (!IsPlayerConnected(playerid) || ACInfo[playerid][acKicked] > 0)) return 0; ac_sInfo[5]++; switch(code) { //Diese Codes umwandeln wofür er gekickt wurde case 0..35, 37, 39, 51: ac_sInfo[0]++; // 0-35, 37 39 51 case 36, 38, 40, 41, 50: ac_sInfo[4]++; //36 38 40 41 50 case 42: ac_sInfo[1]++; //42 case 47..49: ac_sInfo[3]++; // 47 48 49 case 43..46: ac_sInfo[2]++; // 43 44 45 46 } #if defined NO_SUSPICION_LOGS #pragma unused code2 #else new ac_strtmp[6]; if(code2) format(ac_strtmp, sizeof ac_strtmp, " (%d)", code2); if(type) printf(SUSPICION_2, ip_address, code, ac_strtmp); else printf(SUSPICION_1, playerid, code, ac_strtmp); #endif #if defined OnCheatDetected OnCheatDetected(playerid, ip_address, type, code); #else ac_OnCheatDetected(playerid, ip_address, type, code); #endif return 0; }
Hey, Kurze frage möchte gerne die Codes umwandeln in was es ist, kann mir da jemand am besten ein Vorschlag geben?
Habe ingesamt 52 Codes. -
C
Alles anzeigenstatic ac_KickWithCode(playerid, ip_address[], type, code, code2 = 0) { if(type == 0 && (!IsPlayerConnected(playerid) || ACInfo[playerid][acKicked] > 0)) return 0; ac_sInfo[5]++; switch(code) { //Diese Codes umwandeln wofür er gekickt wurde case 0..35, 37, 39, 51: ac_sInfo[0]++; // 0-35, 37 39 51 case 36, 38, 40, 41, 50: ac_sInfo[4]++; //36 38 40 41 50 case 42: ac_sInfo[1]++; //42 case 47..49: ac_sInfo[3]++; // 47 48 49 case 43..46: ac_sInfo[2]++; // 43 44 45 46 } #if defined NO_SUSPICION_LOGS #pragma unused code2 #else new ac_strtmp[6]; if(code2) format(ac_strtmp, sizeof ac_strtmp, " (%d)", code2); if(type) printf(SUSPICION_2, ip_address, code, ac_strtmp); else printf(SUSPICION_1, playerid, code, ac_strtmp); #endif #if defined OnCheatDetected OnCheatDetected(playerid, ip_address, type, code); #else ac_OnCheatDetected(playerid, ip_address, type, code); #endif return 0; }Hey, Kurze frage möchte gerne die Codes umwandeln in was es ist, kann mir da jemand am besten ein Vorschlag geben?
Habe ingesamt 52 Codes.Müsstest die cases noch senden, da bsp wenn case 0-35, 37 39 51 eintrifft, der Array von ac_sInfo die 3 auf positiv gesetzt wird.
Und die verschiedene Array Nummern den 'type' des Cheats klarifiziert.
Weiß nicht ob das eintrifft, würde aber noch die Expressionen und cases einsenden.gruß
-
C
Alles anzeigenstock IsPlayerInWater(playerid) { new Float:X,Float:Y,Float:Z,an = GetPlayerAnimationIndex(playerid); GetPlayerPos(playerid,X,Y,Z); if((1544 >= an >= 1538 || an == 1062 || an == 1250) && (Z <= 0 || (Z <= 41.0 && IsPlayerInZone(playerid, -1387,-473, 2025,2824))) || (1544 >= an >= 1538 || an == 1062 || an == 1250) && (Z <= 2 || (Z <= 39.0 && IsPlayerInZone(playerid, -1387,-473,2025,2824)))) //45518 { return 1; } return 0; }Cstock Float:GetDistanceBetweenPoints(Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2) //45508 { return floatadd(floatadd(floatsqroot(floatpower(floatsub(x1, x2), 2)), floatsqroot(floatpower(floatsub(y1, y2), 2))), floatsqroot(floatpower(floatsub(z1, z2), 2))); }Cpublic BurningTimer(playerid) { if(PlayerOnFire[playerid] == 1) { SetPlayerHealth(playerid, GetPlayerHealth(playerid)-1); //45277 return 1; } return KillTimer(PlayerOnFireTimer[playerid]), KillTimer(PlayerOnFireTimer2[playerid]); }
C:\Users\User\Desktop\Script\gamemodes\German.pwn(45508) : warning 208: function with tag result used before definition, forcing reparse
C:\Users\User\Desktop\ Script\gamemodes\German.pwn(45277) : warning 202: number of arguments does not match definition
C:\Users\User\Desktop\ Script\gamemodes\German.pwn(45518) : error 035: argument type mismatch (argument 2)Hey,
Ich finde den fehler nicht kann mir einer sagen woran es liegt?
-
C
Alles anzeigenstock IsPlayerInWater(playerid) { new Float:X,Float:Y,Float:Z,an = GetPlayerAnimationIndex(playerid); GetPlayerPos(playerid,X,Y,Z); if((1544 >= an >= 1538 || an == 1062 || an == 1250) && (Z <= 0 || (Z <= 41.0 && IsPlayerInZone(playerid, -1387,-473, 2025,2824))) || (1544 >= an >= 1538 || an == 1062 || an == 1250) && (Z <= 2 || (Z <= 39.0 && IsPlayerInZone(playerid, -1387,-473,2025,2824)))) //45518 { return 1; } return 0; }Cstock Float:GetDistanceBetweenPoints(Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2) //45508 { return floatadd(floatadd(floatsqroot(floatpower(floatsub(x1, x2), 2)), floatsqroot(floatpower(floatsub(y1, y2), 2))), floatsqroot(floatpower(floatsub(z1, z2), 2))); }Cpublic BurningTimer(playerid) { if(PlayerOnFire[playerid] == 1) { SetPlayerHealth(playerid, GetPlayerHealth(playerid)-1); //45277 return 1; } return KillTimer(PlayerOnFireTimer[playerid]), KillTimer(PlayerOnFireTimer2[playerid]); }C:\Users\User\Desktop\Script\gamemodes\German.pwn(45508) : warning 208: function with tag result used before definition, forcing reparseC:\Users\User\Desktop\ Script\gamemodes\German.pwn(45277) : warning 202: number of arguments does not match definitionC:\Users\User\Desktop\ Script\gamemodes\German.pwn(45518) : error 035: argument type mismatch (argument 2)
Hey,
Ich finde den fehler nicht kann mir einer sagen woran es liegt?
if((1544 >= an >= 1538 || an == 1062 || an == 1250) && (Z <= 0 || (Z <= 41.0 && IsPlayerInZone(playerid, -1387.0,-473.0, 2025.0,2824.0))) ||
(1544 >= an >= 1538 || an == 1062 || an == 1250) && (Z <= 2 || (Z <= 39.0 && IsPlayerInZone(playerid, -1387.0,-473.0,2025.0,2824.0))))
Hier hast du der funktion IsPlayerInZone Intergers anstatt Floats gegeben.SetPlayerHealth(playerid, GetPlayerHealth(playerid)-1); //45277
Hier nutzt du GetPlayerHealth falsch.
new Float:Health;
GetPlayerHealth(playerid, Health);
SetPlayerHealth(playerid, Health -1.0);Und die funktion Float:GetDistanceBetweenPoints kannst du entweder forwarden (oben im Skript) oder nach oben schieben
-
Danke..
Codestock Float:GetDistanceBetweenPoints(Float:x1, Float:y1, Float:z1, Float:x2, Float:y2, Float:z2) //45508 { return floatadd(floatadd(floatsqroot(floatpower(floatsub(x1, x2), 2)), floatsqroot(floatpower(floatsub(y1, y2), 2))), floatsqroot(floatpower(floatsub(z1, z2), 2))); }Code
Alles anzeigenstock IsPlayerInWater(playerid) { new Float:pos[3], an = GetPlayerAnimationIndex(playerid); GetPlayerPos(playerid, pos[0], pos[1], pos[2]); if((1544 >= an >= 1538 || an == 1062 || an == 1250) && (pos[2] <= 0 || (pos[2] <= 41.0 && IsPlayerInZone(playerid, -1387.0, -473.0, 2025.0, 2824.0))) || (1544 >= an >= 1538 || an == 1062 || an == 1250) && (pos[2] <= 2 || (pos[2] <= 39.0 && IsPlayerInZone(playerid, -1387.0, -473.0, 2025.0, 2824.0)))) { return 1; } return 0; }
bei den beiden bleibt es gleich -
Hey,
Ich weiß, dass es möglich ist wenn ich ein Auto aufschließe, dass das Licht aufblinkt für 2 Sekunden (e.g) und wieder ausgeschaltet wird.
Ist es möglich es so zu gestalten?Licht an (500ms)
Licht aus (250ms)
Licht an (500ms)So schließe ich mein Fahrzeug ja ab.
Ich würde hier jeweils komplizierte Timer setzten, sinnvoll? Wenn ja, wie würde das grob aussehen? -