1 [join] Ramon_Mendezzs has joined the server (1:198.144.105.179) SAMP:Cuentas guardadas correctamente. [debug] Server crashed while executing VZRP.amx [debug] AMX backtrace: [debug] #0 00000033 in INI_AddToBuffer (INI:file=57, name[]=@0x00000000 "", data[]=@0x0143ca40 "0000001659309359") at <unknown file>:0 [debug] #1 0001aacc in ?? (... <13 arguments>) at E:\F CRISTOPER\Cristoper 2015\2015 SAMP\GAMEMODES 2016\MI SERVER 2017 COPIA DE SEGURIDAD 2\MiserverRoleplay\pawno\include\YSI\y_ini.inc:107 3 [debug] #2 00000033 in public S@@_OnDialogResponse () at <unknown file>:0 |
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { new sendername[MAX_PLAYER_NAME],giveplayer[MAX_PLAYER_NAME]; new idcar = GetPlayerVehicleID(playerid),string[256]; GetPlayerName(playerid, sendername, sizeof(sendername)); if(!isnull(inputtext)) { if(strfind(inputtext, "%s", true) != -1) { format(string, sizeof(string), " %s (ID %d) es un posible dialog-exploiting, intenta enviar string en blanco mediante diбlogos.", GetPlayerNameEx(playerid), playerid); ABroadCast(COLOR_ORANGE, string, 2); format(string, sizeof(string), "%s a intentado insertar un falso string en un diбlogo. [Exploit]", GetPlayerNameEx(playerid)); Log("logs/reportbug.log", string); Kick(playerid); return 1; } } if(dialogid == MPSPAYTICKETS) { if(response) { new szMessage[128]; if(Info[playerid][pWantedLevel] != 0) { format(szMessage, sizeof(szMessage), "%s intenta pagar multas y es buscado por la policнa - Nivel de bъsqueda: %i.", GetPlayerNameEx(playerid), Info[playerid][pWantedLevel]); SendRadioMessage(1, TEAM_RADIO_COLOR, szMessage); SendRadioMessage(2, TEAM_RADIO_COLOR, szMessage); return SendClientMessageEx(playerid, COLOR_YELLOW, "La policнa ha dado comunicado que usted estб buscado, y estбn en camino."); } if(PlayerVehicleInfo[playerid][listitem][pvTicket]) { if(GetPlayerCash(playerid) < PlayerVehicleInfo[playerid][listitem][pvTicket]) { return SendClientMessageEx(playerid, COLOR_GRAD2, "No tienes suficiente dinero para pagar la multa."); } GivePlayerCash(playerid, -PlayerVehicleInfo[playerid][listitem][pvTicket]); Tax += PlayerVehicleInfo[playerid][listitem][pvTicket]; format(szMessage, sizeof(szMessage), "Pagaste la multa de $%d de tu %s.", PlayerVehicleInfo[playerid][listitem][pvTicket], VehicleName[PlayerVehicleInfo[playerid][listitem][pvModelId] - 400]); SendClientMessageEx(playerid, COLOR_GRAD2, szMessage); PlayerVehicleInfo[playerid][listitem][pvTicket] = 0; } else if(PlayerVehicleInfo[playerid][listitem][pvImpounded]) { new iCost = (PlayerVehicleInfo[playerid][listitem][pvPrice] / 20) + PlayerVehicleInfo[playerid][listitem][pvTicket] + (Info[playerid][pLevel] * 2); if(GetPlayerCash(playerid) < iCost) { return SendClientMessageEx(playerid, COLOR_GRAD2, "No tienes suficiente dinero para pagar la multa."); } format(szMessage, sizeof(szMessage), "Liberaste tu %s por $%i.", VehicleName[PlayerVehicleInfo[playerid][listitem][pvModelId] - 400], iCost); SendClientMessageEx(playerid, COLOR_LIGHTBLUE, szMessage); SendClientMessageEx(playerid, COLOR_GRAD2, "Tu auto se encuentra en el depуsito municipal, puedes abrir la reja usando /deposito."); GivePlayerCash(playerid, -iCost); Tax += iCost; PlayerVehicleInfo[playerid][listitem][pvImpounded] = 0; PlayerVehicleInfo[playerid][listitem][pvPosX] = 1655.4379; PlayerVehicleInfo[playerid][listitem][pvPosY] = -1829.5668; PlayerVehicleInfo[playerid][listitem][pvPosZ] = 13.2677; PlayerVehicleInfo[playerid][listitem][pvPosAngle] = 91.6165; PlayerVehicleInfo[playerid][listitem][pvTicket] = 0; PlayerVehicleInfo[playerid][listitem][pvVW] = 0; ++PlayerCars; PlayerVehicleInfo[playerid][listitem][pvId] = CreateVehicle(PlayerVehicleInfo[playerid][listitem][pvModelId], PlayerVehicleInfo[playerid][listitem][pvPosX], PlayerVehicleInfo[playerid][listitem][pvPosY], PlayerVehicleInfo[playerid][listitem][pvPosZ], PlayerVehicleInfo[playerid][listitem][pvPosAngle],PlayerVehicleInfo[playerid][listitem][pvColor1], PlayerVehicleInfo[playerid][listitem][pvColor2], -1); SetPlayerVirtualWorld(PlayerVehicleInfo[playerid][listitem][pvId], PlayerVehicleInfo[playerid][listitem][pvVW]); VehicleFuel[PlayerVehicleInfo[playerid][listitem][pvId]] = PlayerVehicleInfo[playerid][listitem][pvFuel]; if(PlayerVehicleInfo[playerid][listitem][pvLocked] == 1) LockPlayerVehicle(playerid, PlayerVehicleInfo[playerid][listitem][pvId], PlayerVehicleInfo[playerid][listitem][pvLock]); LoadPlayerVehicleMods(playerid, listitem); } else SendClientMessageEx(playerid, COLOR_GRAD2, "Este coche, o bien no existe, o no es necesario liberar o tiene sus multas pagadas."); } return 1; }
case DIALOG_REG_MSN: { if(response == 1) { new rt[] = "{FFFFFF}Gracias por confirmar los datos de tu personaje,\nahora podrбs empezar a jugar.\n\nRecuerda leйr las {6E9AFF}/reglas{FFFFFF}.\nSuerte! Gracias por preferirnos\n\nїPreparado?"; SafeDialogEx(playerid,DIALOG_REG_TUT,DIALOG_STYLE_MSGBOX,"{00A1FF}Fin del registro", rt,"Empezar",""); } else { SetTimerEx("FreezePlayer", 1000, false, "i", playerid); ClearChatbox(playerid); gNewbie[playerid]=1; gOoc[playerid] = 1; gNews[playerid] = 1; gFam[playerid] = 1; SetPosEx(playerid,1649.5704,-2286.4312,-1.2097,271.8517,0,playerid); SetPlayerCameraPos(playerid,423.3802,-2067.7915,29.8605); SetPlayerCameraLookAt(playerid,370.0804,-2087.8767,7.8359); Info[playerid][pAge] = 30; Info[playerid][pSex] = 1; new sex[]= "{FFFFFF}їDe quй sexo serб tu personaje?:\n"; SafeDialogEx(playerid,REG_SEX,DIALOG_STYLE_MSGBOX, "Sexo", sex, "Hombre", "Mujer"); } } case DLOGIN: { if(response == 1) { if(udb_hash(inputtext) == Info[playerid][pKey]) { InsideMainMenu[playerid] = false; INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid); KillTimer(LoginTimer[playerid]); OnPlayerLogin(playerid); } else { new ip[32]; new titlestring[64]; GetPlayerIp(playerid, ip, 32); format(titlestring, sizeof(titlestring), "{FFFFFF}%s", GetPlayerNameEx(playerid)); format(string, sizeof(string), "{FFFFFF}Ingresa tu contraseсa para conectarte\n\n{0197D7}Contraseсa:", ip); SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,string,"Entrar","Salir"); SetPlayerVirtualWorld(playerid, 20); return 1; } } else { SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automбticamente."); Kick(playerid); } return 1; } case DREGISTER: { if (response == 1) { if(strlen(inputtext) > 24) { new ip[32]; new titlestring[64]; GetPlayerIp(playerid, ip, 32); format(titlestring, sizeof(titlestring), "{FF8000}Error: {FFFFFF}%s", GetPlayerNameEx(playerid)); format(string, sizeof(string), "{FFFFFF}Contraseсa con un mбximo de 24 carбcteres!\n\n%s Ingresa una contraseсa valida para registrarte en el servidor:\n\n{FF8000}Contraseсa:", GetPlayerNameEx(playerid)); SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,string,"Registrar","Salir"); SetPlayerVirtualWorld(playerid, 20); return 1; } if(isnull(inputtext)) { new ip[32]; new titlestring[64]; GetPlayerIp(playerid, ip, 32); format(titlestring, sizeof(titlestring), "{FF8000}Registro: {FFFFFF}%s", GetPlayerNameEx(playerid)); format(string, sizeof(string), "{FFFFFF}Direccion IP: %s\nBienvenido a America United RolePlay\nIngresa una contraseсa para registrarte en el servidor.\n\n{FF8000}Contraseсa.", ip); SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD,titlestring,string,"Registrar","Salir"); return 1; } InsideMainMenu[playerid] = false; OnPlayerRegister(playerid,inputtext); KillTimer(LoginTimer[playerid]); return 1; } else { SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automбticamente."); Kick(playerid); } return 1; } case CARSPAWN: { if (response == 1) { if(PlayerVehicleInfo[playerid][listitem][pvImpounded] == 1) return SendClientMessageEx(playerid,COLOR_WHITE,"El auto que intenta spawnear estб embargado."); if(PlayerVehicleInfo[playerid][listitem][pvImpounded] >= 2) PlayerVehicleInfo[playerid][listitem][pvImpounded] = 0; if(PlayerVehicleInfo[playerid][listitem][pvModelId] != 0 && PlayerVehicleInfo[playerid][listitem][pvImpounded] == 0 && PlayerVehicleInfo[playerid][listitem][pvSpawned]== 0) { if(carsforplayer[playerid] == 8) return SendClientMessageEx(playerid,COLOR_WHITE,"* Sуlo puedes tener 8 coches spawneados."); PlayerCars++; carsforplayer[playerid]++; new carcreated = CreateVehicle(PlayerVehicleInfo[playerid][listitem][pvModelId], PlayerVehicleInfo[playerid][listitem][pvPosX], PlayerVehicleInfo[playerid][listitem][pvPosY], PlayerVehicleInfo[playerid][listitem][pvPosZ], PlayerVehicleInfo[playerid][listitem][pvPosAngle],PlayerVehicleInfo[playerid][listitem][pvColor1], PlayerVehicleInfo[playerid][listitem][pvColor2], -1); PlayerVehicleInfo[playerid][listitem][pvId] = carcreated; VehicleFuel[carcreated] = PlayerVehicleInfo[playerid][listitem][pvFuel]; SetVehicleHealth(carcreated, PlayerVehicleInfo[playerid][listitem][pvHealth]); SetVehicleVirtualWorld(carcreated, PlayerVehicleInfo[playerid][listitem][pvVW]); PlayerVehicleInfo[playerid][listitem][pvSpawned] = 1; SendClientMessageEx(playerid,COLOR_WHITE,"Vehiculo spawneado correctamente, en la ъltima posiciуn que lo estacionaste. (/localizar)"); if(PlayerVehicleInfo[playerid][listitem][pvLocked] == 1) LockPlayerVehicle(playerid, PlayerVehicleInfo[playerid][listitem][pvId], PlayerVehicleInfo[playerid][listitem][pvLock]); LoadPlayerVehicleMods(playerid, listitem); return 1; } else if(PlayerVehicleInfo[playerid][listitem][pvSpawned] == 1) { new playername[MAX_PLAYER_NAME]; GetPlayerName(playerid, playername, sizeof(playername)); //printf(" Unloading %s's vehicles.", playername); new Float:health; GetVehicleHealth(PlayerVehicleInfo[playerid][listitem][pvId], health); if(health < 500) return SendClientMessageEx(playerid, COLOR_GREY, " El vehiculo estб muy daсado para ser guardado."); if(IsVehicleBusy(PlayerVehicleInfo[playerid][listitem][pvId])) return SendClientMessageEx(playerid, COLOR_GREY, " El vehiculo estб ocupado por otra persona y no puede ser guardado."); if(PlayerVehicleInfo[playerid][listitem][pvImpounded] >= 2) PlayerVehicleInfo[playerid][listitem][pvImpounded] = 0; if(PlayerVehicleInfo[playerid][listitem][pvId] != INVALID_PLAYER_VEHICLE_ID && PlayerVehicleInfo[playerid][listitem][pvImpounded] == 0 && PlayerVehicleInfo[playerid][listitem][pvSpawned]== 1) { PlayerCars--; carsforplayer[playerid]--; if(LockStatus[PlayerVehicleInfo[playerid][listitem][pvId]] != 0) LockStatus[PlayerVehicleInfo[playerid][listitem][pvId]] = 0; UpdatePlayerVehicleMods(playerid, listitem); DestroyVehicle(PlayerVehicleInfo[playerid][listitem][pvId]); VehicleFuel[PlayerVehicleInfo[playerid][listitem][pvId]] = 1000; PlayerVehicleInfo[playerid][listitem][pvId] = INVALID_PLAYER_VEHICLE_ID; PlayerVehicleInfo[playerid][listitem][pvSpawned] = 0; SendClientMessageEx(playerid,COLOR_WHITE,"Tu vehнculo fue guardado correctamente."); if(PlayerVehicleInfo[playerid][listitem][pvAllowedPlayerId] != INVALID_PLAYER_ID) { Info[PlayerVehicleInfo[playerid][listitem][pvAllowedPlayerId]][pVehicleKeys] = INVALID_PLAYER_VEHICLE_ID; Info[PlayerVehicleInfo[playerid][listitem][pvAllowedPlayerId]][pVehicleKeysFrom] = INVALID_PLAYER_ID; PlayerVehicleInfo[playerid][listitem][pvAllowedPlayerId] = INVALID_PLAYER_ID; } } } } } } return 1; }
pwn(2683) : warning 213: tag mismatch pwn(20961) : warning 204: symbol is assigned a value that is never used: "Distance" pwn(20981) : warning 204: symbol is assigned a value that is never used: "Distance" pwn(35826) : warning 202: number of arguments does not match definition pwn(40349) : warning 219: local variable "YSI_timer" shadows a variable at a preceding level .pwn(42364) : warning 203: symbol is never used: "carcreated" .pwn(42360) : warning 204: symbol is assigned a value that is never used: "oldfuel" .pwn(42344) : warning 203: symbol is never used: "health" .pwn(43836) : warning 204: symbol is assigned a value that is never used: "Distance" .pwn(4387 ![]() .pwn(44094) : warning 203: symbol is never used: "Chocones" .pwn(44094) : warning 203: symbol is never used: "PlayerPos" .pwn(44094) : warning 203: symbol is never used: "Presidente" .pwn(43853) : warning 204: symbol is assigned a value that is never used: "PuertaRobo" .pwn(43895) : warning 204: symbol is assigned a value that is never used: "PuertaRobo1" .pwn(1236 ![]() .pwn(12423) : warning 204: symbol is assigned a value that is never used: "gWeather" .pwn(12423 -- 44094) : warning 203: symbol is never used: "strinmode" |
public OnPlayerConnect(playerid) { // PlayAudioStreamForPlayer(playerid,"http://ciavarro.com/music/random/12_-Toxicity.mp3"); // XTR MUSICA INICIO PlayAudioStreamForPlayer(playerid,"https://dl.dropbox.com/u/100949615/eve%20w%20gwen%20stefani%20-%20scorpion%20-%20let%20me%20blow%20your%20mind.mp3"); // XTR MUSICA INICIO if(IsPlayerNPC(playerid)) return 1; new playerIP[16]; GetPlayerIp(playerid, playerIP, sizeof(playerIP)); SetPlayerColor(playerid,COLOR_GRAD2); if (CheckBan(playerIP) == 1) { SetPlayerName(playerid, "BannedPlayer"); SendClientMessage(playerid, COLOR_ORANGE, " Lo sentimos, te encuentras baneado de este servidor."); Kick(playerid); return 1; } TotalConnect++; resetPlayerVariables(playerid); MapsRemoveForPlayer(playerid); ClearMarriage(playerid); SyncPlayerTime(playerid); SetPVarInt(playerid,"Trabajando",0); SetPVarInt(playerid,"TomoCarpintero",0); SetPVarInt(playerid,"MueblesCreados",0); ShowMenuLogin(playerid); if(Iter_Count(Player) > MaxPlayersConnected) { MaxPlayersConnected = Iter_Count(Player); gettime(MPHour,MPMinute); getdate(MPYear,MPMonth,MPDay); } if(MaxPlayersConnected > 400) MaxPlayersConnected = 400; // Temp good fix new playername[MAX_PLAYER_NAME]; GetPlayerName(playerid, playername, sizeof(playername)); if(!INI_Exist(playername)) // If exists in Y_ini { if(doesAccountExist(playername)) // If exists in .ini { ConvertAccount(playerid); // Convert Account to y_ini return 1; } } SetTimerEx("SafeLogin", 4000, 0, "d", playerid); return 1; } function SafeLogin(playerid) { /// XTR ELIMINO ESTO INICIO /* SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); SendClientMessageEx(playerid, COLOR_NEGRO, ""); */ /// XTR ELIMINO ESTO FIN ClearChatbox(playerid); // XTR AUMENTE TAMBIEN AKI ( BORRRAR SI NO DA ) TextDrawHideForPlayer(playerid, cargando); TextDrawHideForPlayer(playerid, looking); TextDrawHideForPlayer(playerid, box); SetPlayerJoinCamera(playerid); new playername[MAX_PLAYER_NAME]; GetPlayerName(playerid, playername, sizeof(playername)); //LoginTimer[playerid] = SetTimerEx("TimerLogin",30000000,0,"d",playerid); if(INI_Exist(playername)) { gPlayerAccount[playerid] = 1; ShowMainMenuDialog(playerid, 1); return 1; } else { if(strcmp(playername, "Zerox", false) == 0) return 1; // https://sampwiki.blast.hk/wiki/Strcmp if(strfind( playername, "_", true) == -1) { SetPlayerName(playerid, "InvalidNick"); SendClientMessageEx(playerid, COLOR_WHITE, "Porfavor usa el formato correcto: Nombre_Apellido"); SendClientMessageEx(playerid, COLOR_WHITE, "Vuelve a entrar con el formato indicado." ); Kick(playerid); } else { gPlayerAccount[playerid] = 0; ShowMainMenuDialog(playerid, 2); } return 1; } } ShowMainMenuDialog(playerid, frame) { new titlestring[28]; new string[256]; InsideMainMenu[playerid] = true; switch(frame) { case 1: { INI_ParseFile(UserPath(playerid), "LoadUser_pass", .bExtra = true, .extra = playerid); new ip[32]; PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0); GetPlayerIp(playerid, ip, 32); format(titlestring, sizeof(titlestring), "{0197D7}%s", GetPlayerNameEx(playerid)); format(string, sizeof(string), "{FFFFFF}Ingresa tu contraseсa para conectarte\n\n{0197D7}Contraseсa:", ip); SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,string,"Entrar","Salir"); SetPlayerVirtualWorld(playerid, 20); } case 2: { new ip[32]; PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0); GetPlayerIp(playerid, ip, 32); format(titlestring, sizeof(titlestring), "{0197D7}%s", GetPlayerNameEx(playerid)); format(string, sizeof(string), "{FFFFFF}Bienvenido a America United Roleplay\nIngresa una contraseсa para registrarte en el servidor.\n\n{0197D7}Contraseсa:", ip); SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_INPUT ,titlestring,string,"Registrar","Salir"); SetPlayerVirtualWorld(playerid, 20); } } } ShowMenuLogin(playerid) { ClearChatbox(playerid); new string[128]; for(new i = 0; i < 9; i++) { TextDrawShowForPlayer(playerid, LoginMenu[i]); } TextDrawShowForPlayer(playerid, cargando); TextDrawShowForPlayer(playerid, looking); TextDrawShowForPlayer(playerid, box); TextDrawHideForPlayer(playerid, VortexZone); TextDrawSetString(MOTD, string); TextDrawShowForPlayer(playerid, MOTD); TextDrawSetString(LoginMenu[8], string); return 1; } HideMenuLogin(playerid) { TextDrawHideForPlayer(playerid, MOTD); for(new i = 0; i < 9; i++) { TextDrawHideForPlayer(playerid, LoginMenu[i]); } TextDrawShowForPlayer(playerid, VortexZone); return 1; } //function TimerLogin(playerid) //{ // SendClientMessage(playerid,COLOR_GENERAL,"*Fuiste expulsado, por no entrar.."); // SetPlayerName(playerid,"InvalidNick"); // Kick(playerid); //}
Bбjala a 12 - 15 caracteres como mбximo.
Porque Escribe 25 caracteres sнmbolos como estos |||||||| y eso crashea el Server. Tambiйn te recomiendo que arregles los warnings. |
if(strlen(inputtext) > 12)
{
SendClientMessage(playerid, COLOR_GRAD2, "Contraseсa con un mбximo de 12 carбcteres!");
//Tu dialog de login
}
if(strfind(inputtext, "|", true) != -1)//Solo cambia el | por otro caracter.
{
format(string, sizeof(string), " %s (ID %d) es un posible dialog-exploiting, intenta enviar string en blanco mediante diбlogos.", GetPlayerNameEx(playerid), playerid);
ABroadCast(COLOR_ORANGE, string, 2);
format(string, sizeof(string), "%s a intentado insertar un falso string en un diбlogo. [Exploit]", GetPlayerNameEx(playerid));
Log("logs/reportbug.log", string);
Kick(playerid);
return 1;
}
printf("%s", inputtext);
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
printf("%s", inputtext);
//demбs cуdigo
return 1;
}
El problema de usar un gm descargado es que mucha gente tiene acceso al cуdigo interno del gamemode y una vez descubren un fallo van jodiendo a los demбs servidores.
Primero: pawn Код:
pawn Код:
pawn Код:
pawn Код:
No he probado ninguna pero supongo que te podrбn ayudar. |