Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums



(Advanced Search)

Forum Statistics
» Members: 7,496
» Latest member: u888brbrcom
» Forum threads: 2,412
» Forum posts: 12,359

Full Statistics

Online Users
There are currently 484 online users.
» 0 Member(s) | 480 Guest(s)
Google, Bing, Applebot, Yandex

Latest Threads
Adding new vehicles and s...
Forum: Programming
Last Post: __.A.__
Yesterday, 07:47 PM
» Replies: 0
» Views: 49
Zona América del Sur Free...
Forum: Advertisements
Last Post: kevinberriosflores
Yesterday, 02:16 PM
» Replies: 1
» Views: 71
Busco copia de gamemode S...
Forum: Spanish/Espa?ol
Last Post: briancristaldo2021
2025-09-11, 11:14 AM
» Replies: 0
» Views: 60
[Tutorial] Registrando o ...
Forum: Portuguese/Portugu?s
Last Post: Crazy_ArKzX
2025-09-09, 08:36 PM
» Replies: 0
» Views: 204
San Andreas Police Pursui...
Forum: Advertisements
Last Post: BriBri
2025-09-08, 10:09 PM
» Replies: 1
» Views: 293
Problem with plugins load...
Forum: Support
Last Post: MrKacu13
2025-09-08, 07:15 PM
» Replies: 9
» Views: 368
Compilation error
Forum: Pawn Scripting
Last Post: MrKacu13
2025-09-07, 07:18 AM
» Replies: 6
» Views: 353
Need help, problem when i...
Forum: Programming
Last Post: nonickowned
2025-09-06, 06:21 PM
» Replies: 0
» Views: 145
Transfer server from SAMP...
Forum: Support
Last Post: MrKacu13
2025-09-06, 04:03 PM
» Replies: 1
» Views: 237
Not relevant anymore
Forum: Questions and Suggestions
Last Post: peti
2025-09-05, 02:00 PM
» Replies: 0
» Views: 194

 
Question Keybinds
Posted by: GeorgeXCarl - 2021-07-17, 04:17 AM - Forum: Pawn Scripting - Replies (1)

is there any way i can detect other keybinds for?example



Code:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)

{

? ? ?if((newkeys & KEY_P) || (newkeys & KEY_Z))

? ? ?{

? ? ? ? ? // which is detecting the key "P" or key "Z"

? ? ?}

? ? ?return 1;

}


  warning 239: literal array/string passed to a non-const parameter
Posted by: Ambarita - 2021-07-15, 11:55 PM - Forum: Pawn Scripting - Replies (2)

SendRconCommand("exit");



This is inside a mysql connection code where if failed to connect then rcon exit.



I don't want to disable the warning, how can i fix this properly?


  how to get the last digit of a player's IP
Posted by: mems - 2021-07-15, 09:38 PM - Forum: Pawn Scripting - Replies (16)

hello,



title simply says it all but i'm going to elaborate a bit. i'm trying to make an anti proxy system and so far it works. however i want to whitelist ips like 192.168.1.1 until 192.168.1.255. however, it seems like i dont know how, even though i tried so many times with different approaches such as strfind, strlen, strdel but these didnt help me out either probably because the way i did it didn't work. well here's the code:



Code:
forward httpResponse(playerid, response_code, data[]);

public httpResponse(playerid, response_code, data[])

{

    new name[MAX_PLAYERS], string[192], ipstring[64];

    new ip[16];

    GetPlayerName(playerid, name, sizeof(name));

    GetPlayerIp(playerid, ip, sizeof(ip));

    format(ipstring, sizeof(string), "192.168.1.%d", strlen(ip) - 13);

    if(strcmp(ip, "127.0.0.1", true) == 0 || strcmp(ip, ipstring, true) == 0)

    {

        printf("%s(%d) IP(%s) is a LAN type, therefore able to enter the server.", name, playerid, ip);

        return 1;

    }

    // If the site sends an OK message

    if(response_code == 200)

    {

        // If a player is using VPN

        if(data[0] == 'Y')

        {

            format(string, sizeof(string), "ANTI VPN: %s(%d) has been kicked from the server due to VPN usage.", name, playerid);

            SendClientMessageToAll(COLOR_RED, string);

            printf("%s(%d) IP(%s) is not legit, therefore not able to enter the server.", name, playerid, ip);

            //SetTimerEx("DelayKick", 100, false, "i", playerid);

        }

        // If not

        if(data[0] == 'N')

        {

            printf("%s(%d) IP(%s) is legit, therefore able to enter the server.", name, playerid, ip);

            // OnPlayerConnect welcome messages should handle this

        }

        // Failsafe. Should not trigger

        if(data[0] == 'X')

        {

            printf("From the site: Wrong IP format!");

        }

    } else {

        printf("The request failed! The response code was: %d", response_code);

    }

    return 1;

}



much appreciated if anyone could help, ive been trying to fix this issue for like hours.



edit: i could do it the worst way which is:
Code:
if(strcmp(ip, "192.168.1.1", true) == 0)
then 192.168.1.2 and so on but it sucks


Sad Weapon recoil
Posted by: Radical - 2021-07-15, 11:53 AM - Forum: Pawn Scripting - Replies (1)

It's possible to add recoil to weapons with sa-mp functions?


  The open.mp should be released
Posted by: NoxxeR - 2021-07-15, 10:03 AM - Forum: Questions and Suggestions - Replies (15)

Even though some people think open.mp will not be good, this thread for example: https://www.burgershot.gg/showthread.php?tid=464



I think the open.mp team should release a version, here is the reason:



Sa-mp is more stable than MTA, i've played mta years ago, and it crashes more than sa-mp.



Open-mp has backward compatibility, thats something awesome and good.



Sa-mp has more servers than MTA:SA and this should be released.



-



Hows the progress on open.mp? When will a release be expected? This game is so awesome, and its not getting old by days.





// NoxxeR


  Failed To Start Server
Posted by: RainG - 2021-07-15, 05:05 AM - Forum: Support - Replies (3)

Code:
SA-MP Dedicated Server

----------------------

v0.3.7-R2, (C)2005-2015 SA-MP Team



[12:55:14] filterscripts = ""? (string)

[15/07/2021 12:55:14]

[15/07/2021 12:55:14] Server Plugins

[15/07/2021 12:55:14] --------------

[15/07/2021 12:55:14]? Loading plugin: crashdetect

[15/07/2021 12:55:14]? crashdetect v4.8.3 is OK.

[15/07/2021 12:55:14]? Loaded.

[15/07/2021 12:55:14]? Loading plugin: socket

[15/07/2021 12:55:14]? Failed.

[15/07/2021 12:55:14]? Loading plugin: mysql

[15/07/2021 12:55:14]



? > MySQL plugin R5 successfully loaded.



[15/07/2021 12:55:14]? Loaded.

[15/07/2021 12:55:14]? Loading plugin: sscanf

[15/07/2021 12:55:14]



[15/07/2021 12:55:14]? ===============================



[15/07/2021 12:55:14]? ? ? sscanf plugin loaded.? ?



[15/07/2021 12:55:14]? ? ? ? ? Version:? 2.8.3? ? ? ?



[15/07/2021 12:55:14]? (c) 2018 Alex "Y_Less" Cole?



[15/07/2021 12:55:14]? ===============================



[15/07/2021 12:55:14]? Loaded.

[15/07/2021 12:55:14]? Loading plugin: streamer

[15/07/2021 12:55:14]



*** Streamer Plugin v2.9.5 by Incognito loaded ***



[15/07/2021 12:55:14]? Loaded.

[15/07/2021 12:55:14]? Loading plugin: Whirlpool

[15/07/2021 12:55:14]?

[15/07/2021 12:55:14]? ==================

[15/07/2021 12:55:14]?

[15/07/2021 12:55:14]? Whirlpool loaded

[15/07/2021 12:55:14]?

[15/07/2021 12:55:14]? ==================

[15/07/2021 12:55:14]?

[15/07/2021 12:55:14]? Loaded.

[15/07/2021 12:55:14]? Loaded 5 plugins.



[15/07/2021 12:55:14]

[15/07/2021 12:55:14] Filterscripts

[15/07/2021 12:55:14] ---------------

[15/07/2021 12:55:14]? Loaded 0 filterscripts.



[15/07/2021 12:55:14] AMX (45873712) loaded

[15/07/2021 12:55:14] [debug] Run time error 19: "File or function is not found"

[15/07/2021 12:55:14] [debug]? socket_sendto_remote_client

[15/07/2021 12:55:14] [debug]? socket_close_remote_client

[15/07/2021 12:55:14] [debug]? socket_create

[15/07/2021 12:55:14] [debug]? is_socket_valid

[15/07/2021 12:55:14] [debug]? socket_set_max_connections

[15/07/2021 12:55:14] [debug]? socket_listen

[15/07/2021 12:55:14] [debug]? socket_destroy

[15/07/2021 12:55:14] Script[gamemodes/MHRP.amx]: Run time error 19: "File or function is not found"

[15/07/2021 12:55:14] Number of vehicle models: 0



Code:
echo Executing Server Config...

lanmode 0

rcon_password yhRe53Y5hrS

maxplayers 200

port 7777

hostname Money Heist Roleplay

gamemode0 MHRP

filterscripts

plugins crashdetect socket mysql sscanf streamer Whirlpool

announce 0

query 1

weburl mh-roleplay.com

mapname San Andreas

language English

maxnpc 0

onfoot_rate 50

incar_rate 50

weapon_rate 50

stream_distance 200.0

stream_rate 2000

logtimeformat [%d/%m/%Y %H:%M:%S]

rcon 0


  The new sa-mp modification
Posted by: NoxxeR - 2021-07-13, 09:07 PM - Forum: General Discussions - Replies (4)

Hi everyone!



Since partyserver went down on sa-mp, people been playing other games, but what happend to sa-mp forums? They were gone as well.

Lots of people miss the old partyserver. Now this modification existed and is backwards compatible with sa-mp.



Then Open.mp came along, but I cant find the partyserver on this application either.

Will open.mp replace the old sa-mp client? Or what will happen? I just wanna understand since lots of players miss the old server.



It's the real noxxer, so I miss how we trolled back then in partyserver, we have had good times in the servers since 2008, trolling and having fun with the game.



I just need to understand what happend to partyserver and to this new sa-mp client?


  Sistema de ban textdraw
Posted by: Nikolay_Staggs - 2021-07-12, 05:41 AM - Forum: Filterscripts - No Replies

Es un simple sistema de Baneo



file:///C:/Users/pc/Documents/GTA%20San%20Andreas%20User%20Files/SAMP/screens/sa-mp-029.png

file:///C:/Users/pc/Documents/GTA%20San%20Andreas%20User%20Files/SAMP/screens/sa-mp-030.png

file:///C:/Users/pc/Documents/GTA%20San%20Andreas%20User%20Files/SAMP/screens/sa-mp-035.png

file:///C:/Users/pc/Documents/GTA%20San%20Andreas%20User%20Files/SAMP/screens/sa-mp-036.png

file:///C:/Users/pc/Documents/GTA%20San%20Andreas%20User%20Files/SAMP/screens/sa-mp-037.png



Code:



/* Cr?ditos Nikolay Staggs se puede modificar*/



#include <a_samp>

#include <dof2>

#include <zcmd>

#include <sscanf2>



#define BanPlayer "Bans/Player/%s.ini"



#define ban 1

main()

{

print("\n----------------------------------");

print(" Blank Gamemode by your name here");

print("----------------------------------\n");

}



new PlayerBaner[MAX_PLAYERS];

new PlayerBanerDays[MAX_PLAYERS];

new PlayerBanerRazon[MAX_PLAYERS][65];



new PlayerText:TextDraw_BAN_Player[MAX_PLAYERS][6];



CMD:ban(playerid, params[])

{

new razon[150], id, Days, Name[24], str[50];

if(sscanf(params, "iis[150]", id, Days, razon)) return SendClientMessage(playerid, -1, "USE: /ban [id] [dias] [razon]");

GetPlayerName(id, Name, sizeof(Name));

format(str, sizeof(str), BanPlayer, Name);



DOF2_CreateFile(str);

DOF2_SetInt(str, "Dias", gettime() (60*60*24*Days));

DOF2_SetInt(str, "Ban", ban);

DOF2_SetString(str, "Razon", razon);

DOF2_SaveFile();

PlayerBaner[id] = 1;



format(str, sizeof(str), "Fuiste baneado %i %s Razon %s", Days, Days == 1 ? ("dia") : ("dias"), razon);

SendClientMessage(id, -1, str);

return 1;

}



public OnFilterScriptInit()

{

print("\n--------------------------------------");

print(" Blank Filterscript by your name here");

print("--------------------------------------\n");

return 1;

}



public OnFilterScriptExit()

{

? ? DOF2_Exit();

return 1;

}



public OnPlayerConnect(playerid)

{

? ? CargarTextDraw(playerid);



new str[100], Name[24];

GetPlayerName(playerid, Name, sizeof(Name));

format(str, sizeof(str), BanPlayer, Name);

if(IsPlayer(playerid))

{

PlayerBanerDays[playerid] = DOF2_GetInt(str, "Dias");

if(gettime() >= PlayerBanerDays[playerid])

{

SendClientMessage(playerid, -1, "..................");

PlayerBaner[playerid] = 0;

DOF2_RemoveFile(str);

}

else

{

PlayerBaner[playerid] = DOF2_GetInt(str, "Ban");



if(PlayerBaner[playerid])

{

PlayerBanerDays[playerid] = DOF2_GetInt(str, "Dias");

strmid(PlayerBanerRazon[playerid],DOF2_GetString(str,"Razon"),0,strlen(DOF2_GetString(str,"Razon")),255);

new strs[128];

format(strs, sizeof strs, "te_ha_baneado~y~_razon~w~:~r~_%s_~w~%s", PlayerBanerRazon[playerid], ConvertTime(PlayerBanerDays[playerid] - gettime()));

PlayerTextDrawSetString(playerid, TextDraw_BAN_Player[playerid][5], strs);

PlayerTextDrawShow(playerid, TextDraw_BAN_Player[playerid][0]);

PlayerTextDrawShow(playerid, TextDraw_BAN_Player[playerid][1]);

PlayerTextDrawShow(playerid, TextDraw_BAN_Player[playerid][2]);

PlayerTextDrawShow(playerid, TextDraw_BAN_Player[playerid][3]);

PlayerTextDrawShow(playerid, TextDraw_BAN_Player[playerid][4]);

PlayerTextDrawShow(playerid, TextDraw_BAN_Player[playerid][5]);

SetTimerEx("TimerBan", 1000, true, "i", playerid);

}

}

}

return 1;

}





public OnPlayerSpawn(playerid)

{

return 1;

}



forward TimerBan(playerid);

public TimerBan(playerid)

{

? ? Kick(playerid);

return 1;

}



stock GetName(playerid)

{

new Name[MAX_PLAYER_NAME];

GetPlayerName(playerid, Name, MAX_PLAYER_NAME);

return Name;

}



stock IsPlayer(playerid)

{

new str[40],

Name[21];



GetPlayerName(playerid, Name, 21);



format(str, 40, BanPlayer, Name);



if(DOF2_FileExists(str)) return 1;

return 0;

}



stock ConvertTime(SEGUNDOS)

{

new MINUTOS_, HORAS_, DIAS_, String[200];



if(SEGUNDOS > 59)

{

MINUTOS_ = SEGUNDOS / 60;

SEGUNDOS = SEGUNDOS - MINUTOS_ * 60;

}

if(MINUTOS_ > 59)

{

HORAS_ = MINUTOS_ / 60;

MINUTOS_ = MINUTOS_ - HORAS_ * 60;

}

if(HORAS_ > 23)

{

DIAS_ = HORAS_ / 24;

HORAS_ = HORAS_ - DIAS_ * 24;

}



format(String, sizeof(String), "~y~Dias~w~:_%2d", DIAS_);

if(DIAS_ < 1) format(String, sizeof(String), "~y~Horas~w~:_%2d", HORAS_);

if(DIAS_ < 1 && HORAS_ < 1) format(String, sizeof(String), "~y~Minutos~w~:_%2d", MINUTOS_);

if(DIAS_ < 1 && HORAS_ < 1 && MINUTOS_ < 1) format(String, sizeof(String), "~y~Segundos~w~:_%2d", SEGUNDOS);



return String;

}



CargarTextDraw(playerid)

{

TextDraw_BAN_Player[playerid][0] = CreatePlayerTextDraw(playerid, 0.299992, -1.449999, "box");

PlayerTextDrawLetterSize(playerid, TextDraw_BAN_Player[playerid][0], 0.000000, 49.700000);

PlayerTextDrawTextSize(playerid, TextDraw_BAN_Player[playerid][0], 661.802734, 0.000000);

PlayerTextDrawAlignment(playerid, TextDraw_BAN_Player[playerid][0], 1);

PlayerTextDrawColor(playerid, TextDraw_BAN_Player[playerid][0], -1);

PlayerTextDrawUseBox(playerid, TextDraw_BAN_Player[playerid][0], 1);

PlayerTextDrawBoxColor(playerid, TextDraw_BAN_Player[playerid][0], 255);

PlayerTextDrawSetShadow(playerid, TextDraw_BAN_Player[playerid][0], 0);

PlayerTextDrawBackgroundColor(playerid, TextDraw_BAN_Player[playerid][0], 255);

PlayerTextDrawFont(playerid, TextDraw_BAN_Player[playerid][0], 1);

PlayerTextDrawSetProportional(playerid, TextDraw_BAN_Player[playerid][0], 0);



TextDraw_BAN_Player[playerid][1] = CreatePlayerTextDraw(playerid, 236.200103, 194.375000, "alerta");

PlayerTextDrawLetterSize(playerid, TextDraw_BAN_Player[playerid][1], 1.635500, 3.341249);

PlayerTextDrawTextSize(playerid, TextDraw_BAN_Player[playerid][1], 59.000000, 0.000000);

PlayerTextDrawAlignment(playerid, TextDraw_BAN_Player[playerid][1], 1);

PlayerTextDrawColor(playerid, TextDraw_BAN_Player[playerid][1], -5963521);

PlayerTextDrawSetShadow(playerid, TextDraw_BAN_Player[playerid][1], 0);

PlayerTextDrawBackgroundColor(playerid, TextDraw_BAN_Player[playerid][1], -5963521);

PlayerTextDrawFont(playerid, TextDraw_BAN_Player[playerid][1], 3);

PlayerTextDrawSetProportional(playerid, TextDraw_BAN_Player[playerid][1], 1);



TextDraw_BAN_Player[playerid][2] = CreatePlayerTextDraw(playerid, 327.100524, 240.775268, "el_equipo_de~y~_Radiation~w~_RP");

PlayerTextDrawLetterSize(playerid, TextDraw_BAN_Player[playerid][2], 0.209500, 0.401250);

PlayerTextDrawTextSize(playerid, TextDraw_BAN_Player[playerid][2], 0.000000, 561.000000);

PlayerTextDrawAlignment(playerid, TextDraw_BAN_Player[playerid][2], 2);

PlayerTextDrawColor(playerid, TextDraw_BAN_Player[playerid][2], -1);

PlayerTextDrawSetShadow(playerid, TextDraw_BAN_Player[playerid][2], 0);

PlayerTextDrawBackgroundColor(playerid, TextDraw_BAN_Player[playerid][2], 255);

PlayerTextDrawFont(playerid, TextDraw_BAN_Player[playerid][2], 2);

PlayerTextDrawSetProportional(playerid, TextDraw_BAN_Player[playerid][2], 1);



TextDraw_BAN_Player[playerid][3] = CreatePlayerTextDraw(playerid, 157.499603, 234.727783, "LD_SPAC:white");

PlayerTextDrawTextSize(playerid, TextDraw_BAN_Player[playerid][3], 341.000000, 1.000000);

PlayerTextDrawAlignment(playerid, TextDraw_BAN_Player[playerid][3], 1);

PlayerTextDrawColor(playerid, TextDraw_BAN_Player[playerid][3], -1);

PlayerTextDrawSetShadow(playerid, TextDraw_BAN_Player[playerid][3], 0);

PlayerTextDrawBackgroundColor(playerid, TextDraw_BAN_Player[playerid][3], 255);

PlayerTextDrawFont(playerid, TextDraw_BAN_Player[playerid][3], 4);

PlayerTextDrawSetProportional(playerid, TextDraw_BAN_Player[playerid][3], 0);



TextDraw_BAN_Player[playerid][4] = CreatePlayerTextDraw(playerid, 157.499603, 260.029327, "LD_SPAC:white");

PlayerTextDrawTextSize(playerid, TextDraw_BAN_Player[playerid][4], 341.000000, 1.000000);

PlayerTextDrawAlignment(playerid, TextDraw_BAN_Player[playerid][4], 1);

PlayerTextDrawColor(playerid, TextDraw_BAN_Player[playerid][4], -1);

PlayerTextDrawSetShadow(playerid, TextDraw_BAN_Player[playerid][4], 0);

PlayerTextDrawBackgroundColor(playerid, TextDraw_BAN_Player[playerid][4], 255);

PlayerTextDrawFont(playerid, TextDraw_BAN_Player[playerid][4], 4);

PlayerTextDrawSetProportional(playerid, TextDraw_BAN_Player[playerid][4], 0);



TextDraw_BAN_Player[playerid][5] = CreatePlayerTextDraw(playerid, 327.100524, 249.975830, "te_abaneado~y~_razon~w~:_por pendejo_Dias:~y~_9999");

PlayerTextDrawLetterSize(playerid, TextDraw_BAN_Player[playerid][5], 0.209500, 0.401250);

PlayerTextDrawTextSize(playerid, TextDraw_BAN_Player[playerid][5], 0.000000, 561.000000);

PlayerTextDrawAlignment(playerid, TextDraw_BAN_Player[playerid][5], 2);

PlayerTextDrawColor(playerid, TextDraw_BAN_Player[playerid][5], -1);

PlayerTextDrawSetShadow(playerid, TextDraw_BAN_Player[playerid][5], 0);

PlayerTextDrawBackgroundColor(playerid, TextDraw_BAN_Player[playerid][5], 255);

PlayerTextDrawFont(playerid, TextDraw_BAN_Player[playerid][5], 2);

PlayerTextDrawSetProportional(playerid, TextDraw_BAN_Player[playerid][5], 1);

return 1;

}


  CGEN_MEMORY problem
Posted by: Neckiysa - 2021-07-11, 01:26 AM - Forum: Pawn Scripting - Replies (2)

So, I just installed YSI and when I want to start my server I get this message like 50 times: "*** YSI Fatal Error: Out of code generation (CGen) space.? The current value of `CGEN_MEMORY` is `10000`, please recompile with a higher value (approximately 13342).". Now, I've read that I need to define CGEN_MEMORY to a bigger number but I don't know where. I've looked in y_ini and y_commands but I can't find it. When I try to define it in my main script I get an error that says I'm redefining it. Can somebody please tell me where I need to define CGEN_MEMORY? Thanks!


  samp-uuid-rs
Posted by: Carlos - 2021-07-10, 02:20 PM - Forum: Plugins - No Replies

samp-uuid-rs



[Image: sampctl-samp--uuid--rs-2f2f2f.svg?style=for-the-badge]



This library provides a UUID v4?generator function.



UUIDs are generally used for identifying information that needs to be unique within a system or network thereof. Their uniqueness and low probability in being repeated makes them useful for being associative keys in databases and identifiers for physical hardware within an organization.



Installation



Simply install to your project:



Code:
sampctl package install carlos-menezes/samp-uuid-rs



Include in your code and begin using the library:



Quote:

#include <uuid>




Usage



Code:
new dest[UUID_LEN];

UUID(dest);

printf("%s", dest); // xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx



Build



To build, run:



Code:
make build



Testing



To test, run:



Code:
make test