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

Username
  

Password
  





Search Forums



(Advanced Search)

Forum Statistics
» Members: 8,068
» Latest member: mikasabaggins
» Forum threads: 2,430
» Forum posts: 12,450

Full Statistics

Online Users
There are currently 380 online users.
» 1 Member(s) | 376 Guest(s)
Yandex, Bing, Google, Mychael

Latest Threads
Is there a WebSocket plug...
Forum: General Discussions
Last Post: lyly19
2 hours ago
» Replies: 1
» Views: 244
UZS Zombie Survival
Forum: Advertisements
Last Post: phnx
2026-04-04, 05:32 PM
» Replies: 0
» Views: 38
🎮 Free SA-MP Server Hosti...
Forum: Chat
Last Post: Centnodes
2026-04-02, 02:22 AM
» Replies: 14
» Views: 3,141
FCNPC for open.mp
Forum: Pawn Scripting
Last Post: mentaletion
2026-04-01, 12:28 PM
» Replies: 7
» Views: 7,371
Samp development
Forum: Chat
Last Post: pmemorex2016
2026-03-31, 09:57 AM
» Replies: 0
» Views: 119
Pawno compiler (pawncc.ex...
Forum: Support
Last Post: PutuSuhartawan
2026-03-20, 11:12 PM
» Replies: 0
» Views: 166
[0.3.7 & 0.3.DL] Los Sant...
Forum: Advertisements
Last Post: renza1st
2026-03-16, 05:58 AM
» Replies: 0
» Views: 116
Las Venturas Gang Wars - ...
Forum: Advertisements
Last Post: lvgwgta
2026-03-13, 11:17 AM
» Replies: 0
» Views: 105
Atlanta DeathMatch/Team D...
Forum: Advertisements
Last Post: NixaSha
2026-03-10, 04:57 AM
» Replies: 1
» Views: 151
mysql_samp
Forum: Plugins
Last Post: NullSablex
2026-03-10, 03:33 AM
» Replies: 0
» Views: 194

 
  Open Roleplay | Biome Generator V3
Posted by: Corne - 2025-01-01, 09:24 PM - Forum: Videos and Screenshots - No Replies

I've posted some videos and photos of this in the past, but after many years I've picked up on this project again for my upcoming roleplaying server.

Current history so far:
V1: Was written in PAWN, world generation took 30 - 60 minutes and during that time you couldn't join the server.
V2: Was written in .NET using spaghetti code, world generation took roughly 15 minutes and during that time you could play on the server and see it happen in front of you, see Young Fir Forest & Dense Fir Forest video.
V3: Fully refactored the code in .NET and made it organized, clean and now partially supports multi-threading. World generation now takes roughly 100 seconds, does give a bit of a lag spike on the server while it is generating.

Little disclaimer: This is not yet actually for the entire world. Red County and Whetstone are near fully implemented, Flint County and Bone County still have to be done. I also have plans to add way more biomes in the future, and even underwater biomes, all of which will increase the generation time.

[Video: https://www.youtube.com/watch?v=fF0cSdKCPnw]
[Video: https://www.youtube.com/watch?v=0Q5gp7N4M0M]
[Video: https://www.youtube.com/watch?v=KvREbFi6sb0]
[Video: https://www.youtube.com/watch?v=c5YGdkrZHsE]

I also have plans for a V4 in the future. I believe I can get the world generation time down even more, but for now I am satisfied and working on other more important features for the server. The biome generator is not just meant to be a gimmick but have an actual purpose for RPG elements like crafting, gathering, hunting, woodcutting, mining, etc.


  ayuda con sistema de zonas
Posted by: Nikolay_Staggs - 2024-12-31, 07:40 AM - Forum: Programación - No Replies

hola amigos me preguntaba si me podían pasarme un sistema de conquistar zonas basico como no le entiendo aun me cerbiria mucho plis lo cambio por otro sistema que tenga tengo robo a banco tengo sistema vip tengo sistema cambiar color Random a un vehiculo tengo sistema de bombas de aera lo cambio por una de esas solo necesito el sistema de conquistar zonas plis


  Problema con sistema de casa
Posted by: Nikolay_Staggs - 2024-12-28, 09:50 AM - Forum: Programación - Replies (2)

tengo un problema con mi sistema de casas por ejemplo compro la casa ID 0 y la ID 1 bueno entro a la ID 1 y cuando salGO de la ID 1 salgo en la ID 0 no se si es porque mi servidor TDM

CMD:entrar(jugador, params[])
{
para (new i = 0; i < MAX_PROPERTY; i++) //- Sistema de casas
{
if(IsPlayerInRangeOfPoint(playerid, 1.0, INFO_PROPERTY[i][p_POS_EXT][0], INFO_PROPERTY[i][p_POS_EXT][1], INFO_PROPERTY[i][p_POS_EXT][2]))
{
    if(INFO_PROPERTY[i][p_CLOSED] == 0)
    {
¡¡¡¡si(INFO_PROPERTY[i][p_BOUGHT] == 1 && !strcmp(PlayerName(playerid), INFO_PROPERTY[i][p_OWNER]))
{
SetPlayerPosEx(playerid, INFO_PROPERTY[i][p_POS_INT][0], INFO_PROPERTY[i][p_POS_INT][1], INFO_PROPERTY[i][p_POS_INT][2], 0.0, INFO_PROPERTY[i][p_INTERIOR], i+10);
TEMPORAL_PLAYER[playerid][t_AT_HOME] = i;
    SetCameraBehindPlayer(jugador);
    TogglePlayerControlable(reproductor, falso);
GameTextForPlayer(jugador, "~g~Cargando~n~ ~w~~h~~h~Objetos", 3000, 1);
TEMPORAL_PLAYER[playerid][t_TIMER][2] = SetTimerEx("RemoverObjectos", 3000, false, "i", playerid);
regreso 1;
}
otra cosa
{
    ShowPlayerMessage(jugador, "~y~No eres el dueño de esta propiedad", 3);
}
}
otra cosa
{
    ShowPlayerMessage(jugador, "~r~Cerrado", 3);
}
regreso 1;
}
}
regreso 1;
}


CMD:salir(jugador, params[])
{

para (new i = 0; i < MAX_PROPERTY; i++) //- Sistema de casas

{

if(IsPlayerInRangeOfPoint(playerid, 1.0, INFO_PROPERTY[i][p_POS_INT][0], INFO_PROPERTY[i][p_POS_INT][1], INFO_PROPERTY[i][p_POS_INT][2]))

{

SetPlayerPosEx(playerid, INFO_PROPERTY[i][p_POS_EXT][0], INFO_PROPERTY[i][p_POS_EXT][1], INFO_PROPERTY[i][p_POS_EXT][2], 0.0, 0, 0);

TEMPORAL_PLAYER[playerid][t_AT_HOME] = -1;

    SetCameraBehindPlayer(jugador);

    TogglePlayerControlable(reproductor, falso);

GameTextForPlayer(jugador, "~g~Cargando~n~ ~w~~h~~h~Objetos", 3000, 1);

TEMPORAL_PLAYER[playerid][t_TIMER][2] = SetTimerEx("RemoverObjectos", 3000, false, "i", playerid);

regreso 1;

}

}

regreso 1;
}

CMD:crearcasa(jugador, params[])
{
nuevo tipo, precio, str[250];
if(sscanf(params, "dd", type, price)) volver SendClientMessage(playerid, -1, "Syntax: /crearcasa [tipo de casa] [price]");
¿si (tipo < 1 || tipo > 5) devolver SendClientMessage(playerid, -1, "Las casas est?n entre 1 y 5 espacios.");
  para (nuevo cid = 0; cid < MAX_PROPERTY; cid++)
{
¡si (!INFO_PROPERTY[cid][p_TIPO])
{
    GetPlayerPos(playerid, INFO_PROPERTY[cid][p_POS_EXT][0], INFO_PROPERTY[cid][p_POS_EXT][1], INFO_PROPERTY[cid][p_POS_EXT][2])
    INFO_PROPERTY[cid][p_TYPE] = tipo;
    INFO_PROPERTY[cid][p_BOUGHT] = 0;
    INFO_PROPERTY[cid][p_CERRADO] = 0;
switch(tipo)
{
    caso 1:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 446.7660;
INFO_PROPERTY[cid][p_POS_INT][1] = 507.1065;
INFO_PROPERTY[cid][p_POS_INT][2] = 1001.4206;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 12;
    }
    caso 2:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 2495.9719;
INFO_PROPERTY[cid][p_POS_INT][1] = -1693.5554;
INFO_PROPERTY[cid][p_POS_INT][2] = 1014.8061;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 3;
    }
    caso 3:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 2455.6968;
INFO_PROPERTY[cid][p_POS_INT][1] = -1698.3298;
INFO_PROPERTY[cid][p_POS_INT][2] = 1013.5068;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 2;
    }
    caso 4:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 2524.9165;
INFO_PROPERTY[cid][p_POS_INT][1] = -1679.4109;
INFO_PROPERTY[cid][p_POS_INT][2] = 1015.4873;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 1;
    }
    caso 5:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 2807.5103;
INFO_PROPERTY[cid][p_POS_INT][1] = -1174.0422;
INFO_PROPERTY[cid][p_POS_INT][2] = 1025.5898;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 8;
    }
}
    formato(str,sizeof(str),"{00A8FF}EN VENTA\n {FFFFFF}Precio:{00A8FF}%d\n {FFFFFF}ID casa:{00A8FF}%d\n {FFFFFF}Usa{00A8FF}/comprarcasa", precio, cid);
    INFO_PROPERTY[cid][p_LABEL] = Create3DTextLabel(str, -1, INFO_PROPERTY[cid][p_POS_EXT][0], INFO_PROPERTY[cid][p_POS_EXT][1], INFO_PROPERTY[cid][p_POS_EXT][2], 10.0, 0, 0);
CreateDynamicMapIcon(INFO_PROPERTY[cid][p_POS_EXT][0], INFO_PROPERTY[cid][p_POS_EXT][1], INFO_PROPERTY[cid][p_POS_EXT][2], 31, -1, 0, 0);
    ActualizarCasa(cid);
    cid = MAX_PROPERTY;
}
}
regreso 1;
}

no se que hacer porfa ayuda


  OPEN.MP Streaming System
Posted by: Southclown - 2024-12-28, 09:16 AM - Forum: Videos and Screenshots - No Replies

[Image: Screenshot_20241218_164623_SA-MP.jpg?ex=...height=473]
[Image: Screenshot_20241218_164040_SAMP.jpg?ex=6...height=460][Image: Screenshot_20241218_164055_SAMP.jpg?ex=6...height=460][Image: Screenshot_20241218_164119_SAMP.jpg?ex=6...height=460]


-voice support
-donate system
-select cameramen system
-hastag system
-favorite system
-add some notifications for favorite streamer
-note system for reporter
stream system by me (southclown, for open.mp)


Heart .....
Posted by: Crazy_ArKzX - 2024-12-28, 08:37 AM - Forum: Portuguese/Português - No Replies

.....


  Problema con sistema de casa
Posted by: Nikolay_Staggs - 2024-12-28, 08:17 AM - Forum: Programación - No Replies

tengo un problema con mi sistema de casas por ejemplo compro la casa ID 0 y la ID 1 bueno entro a la ID 1 y cuando salGO de la ID 1 salgo en la ID 0 no se si es porque mi servidor TDM

CMD:entrar(jugador, params[])
{
para (new i = 0; i < MAX_PROPERTY; i++) //- Sistema de casas
{
if(IsPlayerInRangeOfPoint(playerid, 1.0, INFO_PROPERTY[i][p_POS_EXT][0], INFO_PROPERTY[i][p_POS_EXT][1], INFO_PROPERTY[i][p_POS_EXT][2]))
{
    if(INFO_PROPERTY[i][p_CLOSED] == 0)
    {
¡¡¡¡si(INFO_PROPERTY[i][p_BOUGHT] == 1 && !strcmp(PlayerName(playerid), INFO_PROPERTY[i][p_OWNER]))
{
SetPlayerPosEx(playerid, INFO_PROPERTY[i][p_POS_INT][0], INFO_PROPERTY[i][p_POS_INT][1], INFO_PROPERTY[i][p_POS_INT][2], 0.0, INFO_PROPERTY[i][p_INTERIOR], i+10);
TEMPORAL_PLAYER[playerid][t_AT_HOME] = i;
    SetCameraBehindPlayer(jugador);
    TogglePlayerControlable(reproductor, falso);
GameTextForPlayer(jugador, "~g~Cargando~n~ ~w~~h~~h~Objetos", 3000, 1);
TEMPORAL_PLAYER[playerid][t_TIMER][2] = SetTimerEx("RemoverObjectos", 3000, false, "i", playerid);
regreso 1;
}
otra cosa
{
    ShowPlayerMessage(jugador, "~y~No eres el dueño de esta propiedad", 3);
}
}
otra cosa
{
    ShowPlayerMessage(jugador, "~r~Cerrado", 3);
}
regreso 1;
}
}
regreso 1;
}


CMD:salir(jugador, params[])
{

para (new i = 0; i < MAX_PROPERTY; i++) //- Sistema de casas

{

if(IsPlayerInRangeOfPoint(playerid, 1.0, INFO_PROPERTY[i][p_POS_INT][0], INFO_PROPERTY[i][p_POS_INT][1], INFO_PROPERTY[i][p_POS_INT][2]))

{

SetPlayerPosEx(playerid, INFO_PROPERTY[i][p_POS_EXT][0], INFO_PROPERTY[i][p_POS_EXT][1], INFO_PROPERTY[i][p_POS_EXT][2], 0.0, 0, 0);

TEMPORAL_PLAYER[playerid][t_AT_HOME] = -1;

    SetCameraBehindPlayer(jugador);

    TogglePlayerControlable(reproductor, falso);

GameTextForPlayer(jugador, "~g~Cargando~n~ ~w~~h~~h~Objetos", 3000, 1);

TEMPORAL_PLAYER[playerid][t_TIMER][2] = SetTimerEx("RemoverObjectos", 3000, false, "i", playerid);

regreso 1;

}

}

regreso 1;
}

CMD:crearcasa(jugador, params[])
{
nuevo tipo, precio, str[250];
if(sscanf(params, "dd", type, price)) volver SendClientMessage(playerid, -1, "Syntax: /crearcasa [tipo de casa] [price]");
¿si (tipo < 1 || tipo > 5) devolver SendClientMessage(playerid, -1, "Las casas est?n entre 1 y 5 espacios.");
  para (nuevo cid = 0; cid < MAX_PROPERTY; cid++)
{
¡si (!INFO_PROPERTY[cid][p_TIPO])
{
    GetPlayerPos(playerid, INFO_PROPERTY[cid][p_POS_EXT][0], INFO_PROPERTY[cid][p_POS_EXT][1], INFO_PROPERTY[cid][p_POS_EXT][2])
    INFO_PROPERTY[cid][p_TYPE] = tipo;
    INFO_PROPERTY[cid][p_BOUGHT] = 0;
    INFO_PROPERTY[cid][p_CERRADO] = 0;
switch(tipo)
{
    caso 1:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 446.7660;
INFO_PROPERTY[cid][p_POS_INT][1] = 507.1065;
INFO_PROPERTY[cid][p_POS_INT][2] = 1001.4206;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 12;
    }
    caso 2:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 2495.9719;
INFO_PROPERTY[cid][p_POS_INT][1] = -1693.5554;
INFO_PROPERTY[cid][p_POS_INT][2] = 1014.8061;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 3;
    }
    caso 3:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 2455.6968;
INFO_PROPERTY[cid][p_POS_INT][1] = -1698.3298;
INFO_PROPERTY[cid][p_POS_INT][2] = 1013.5068;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 2;
    }
    caso 4:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 2524.9165;
INFO_PROPERTY[cid][p_POS_INT][1] = -1679.4109;
INFO_PROPERTY[cid][p_POS_INT][2] = 1015.4873;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 1;
    }
    caso 5:
    {
INFO_PROPERTY[cid][p_POS_INT][0] = 2807.5103;
INFO_PROPERTY[cid][p_POS_INT][1] = -1174.0422;
INFO_PROPERTY[cid][p_POS_INT][2] = 1025.5898;
INFO_PROPERTY[cid][p_PRICE] = precio;
INFO_PROPERTY[cid][p_INTERIOR] = 8;
    }
}
    formato(str,sizeof(str),"{00A8FF}EN VENTA\n {FFFFFF}Precio:{00A8FF}%d\n {FFFFFF}ID casa:{00A8FF}%d\n {FFFFFF}Usa{00A8FF}/comprarcasa", precio, cid);
    INFO_PROPERTY[cid][p_LABEL] = Create3DTextLabel(str, -1, INFO_PROPERTY[cid][p_POS_EXT][0], INFO_PROPERTY[cid][p_POS_EXT][1], INFO_PROPERTY[cid][p_POS_EXT][2], 10.0, 0, 0);
CreateDynamicMapIcon(INFO_PROPERTY[cid][p_POS_EXT][0], INFO_PROPERTY[cid][p_POS_EXT][1], INFO_PROPERTY[cid][p_POS_EXT][2], 31, -1, 0, 0);
    ActualizarCasa(cid);
    cid = MAX_PROPERTY;
}
}
regreso 1;
}

no se que hacer porfa ayuda


  pomoc
Posted by: Miro_Tkalac - 2024-12-27, 01:38 PM - Forum: Ex-Yu - No Replies

strozdrav posto sam iz austrije nece mi ucitati server izbaci mi da poseljem zahtjev za white listu a neznam gdje to pa ako moze netko pomoci


Video Problema con sistema de casa
Posted by: Nikolay_Staggs - 2024-12-26, 07:06 AM - Forum: Pawn Scripting - Replies (2)

tengo un problema con mi sistema de casas por ejemplo compro la casa ID 0 y la ID 1 bueno entro a la ID 1 y cuando sale de la ID 1 salgo en la ID 2 no se si es un servidor TDM

CMD:entrar(jugador, params[])
{
para (new i = 0; i < MAX_PROPERTY; i++) //- Sistema de casas
{
if(IsPlayerInRangeOfPoint(playerid, 1.0, INFO_PROPERTY[i][p_POS_EXT][0], INFO_PROPERTY[i][p_POS_EXT][1], INFO_PROPERTY[i][p_POS_EXT][2]))
{
    if(INFO_PROPERTY[i][p_CLOSED] == 0)
    {
¡¡if(INFO_PROPERTY[i][p_BOUGHT] == 1 && !strcmp(PlayerName(playerid), INFO_PROPERTY[i][p_OWNER]))
{
SetPlayerPosEx(playerid, INFO_PROPERTY[i][p_POS_INT][0], INFO_PROPERTY[i][p_POS_INT][1], INFO_PROPERTY[i][p_POS_INT][2], 0.0, INFO_PROPERTY[i][p_INTERIOR], i+10);
TEMPORAL_PLAYER[playerid][t_AT_HOME] = i;
    SetCameraBehindPlayer(jugador);
    TogglePlayerControlable(reproductor, falso);
GameTextForPlayer(jugador, "~g~Cargando~n~ ~w~~h~~h~Objetos", 3000, 1);
TEMPORAL_PLAYER[playerid][t_TIMER][2] = SetTimerEx("RemoverObjectos", 3000, false, "i", playerid);
regreso 1;
}
otra cosa
{
    ShowPlayerMessage(jugador, "~y~No eres el dueño de esta propiedad", 3);
}
}
otra cosa
{
    ShowPlayerMessage(jugador, "~r~Cerrado", 3);
}
regreso 1;
}
}
regreso 1;
}


CMD:salir(jugador, params[])
{

para (new i = 0; i < MAX_PROPERTY; i++) //- Sistema de casas

{

if(IsPlayerInRangeOfPoint(playerid, 1.0, INFO_PROPERTY[i][p_POS_INT][0], INFO_PROPERTY[i][p_POS_INT][1], INFO_PROPERTY[i][p_POS_INT][2]))

{

SetPlayerPosEx(playerid, INFO_PROPERTY[i][p_POS_EXT][0], INFO_PROPERTY[i][p_POS_EXT][1], INFO_PROPERTY[i][p_POS_EXT][2], 0.0, 0, 0);

TEMPORAL_PLAYER[playerid][t_AT_HOME] = -1;

    SetCameraBehindPlayer(jugador);

    TogglePlayerControlable(reproductor, falso);

GameTextForPlayer(jugador, "~g~Cargando~n~ ~w~~h~~h~Objetos", 3000, 1);

TEMPORAL_PLAYER[playerid][t_TIMER][2] = SetTimerEx("RemoverObjectos", 3000, false, "i", playerid);

regreso 1;

}

}

regreso 1;
}



no se que hacer


  DOF2.1 (DOF2 Updated)
Posted by: Collw - 2024-12-25, 06:01 AM - Forum: Libraries - Replies (2)

I was looking for alternatives to DOF2 that are compatible with the latest versions of the Pawno compiler (3.10.10 and 3.10.11), but I couldn't find any viable options. Since I couldn't adapt to using y_ini or similar libraries, I decided to use the latest available version of DOF2 and update it to suit my needs. I named it DOF2.1.

https://github.com/xWendorion/DOF2.1-Include/releases

The library is fully compatible with both San Andreas Multiplayer and Open Multiplayer. Feel free to improve or adapt it to meet your specific requirements.


  Multiple trailers support
Posted by: BGTrucker - 2024-12-15, 10:57 PM - Forum: Questions and Suggestions - No Replies

Hey all. Sorry if my suggestion sounds stupid, but since Silent Patch added the ability to attach multiple trailers and create a real roadtrain in single player for year now, I think it's time to somehow make that possible in multiplayer too, so trucking servers and their players can benefit from that and finally go to the next level of trucking. I'm not into programming but I'm sure it's possible, I've tried attaching multiple trailers in SAMP with a script before I found out about Silent Patch, and also with Silent Patch, it works but the problem is that the second trailer gets respawned after some time. Other than that everything works fine as far as I remember. I'm saying that because it was years ago when I tried it. Anyway, You know what I mean, that's it from me. Think about it, and keep up the good work.