Cуdigo para lidar com jogadores nгo sincronizados? -
gmstrikker - 25.11.2018
Estava tendo diversos problemas com jogadores nгo sincronizados.
Achei esse tуpico explicando direitinho:
https://sampforum.blast.hk/showthread.php?tid=659658
Mas ainda resta a dъvida, qual a melhor forma de lidar com isso? Vcs tem algum cуdigo pra detectar e kickar? Qual funзгo vcs usam? Compartilhem ai pfvr
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
Electrifying - 25.11.2018
Quote:
Originally Posted by gmstrikker
Estava tendo diversos problemas com jogadores nгo sincronizados.
Achei esse tуpico explicando direitinho: https://sampforum.blast.hk/showthread.php?tid=659658
Mas ainda resta a dъvida, qual a melhor forma de lidar com isso? Vcs tem algum cуdigo pra detectar e kickar? Qual funзгo vcs usam? Compartilhem ai pfvr
|
Eu achei o cуdigo desse tutorial o suficiente pra utilizar, mas vocк pode usar uma funзгo pra reconectar o jogador automaticamente
PHP код:
if(IsPlayerSync{playerid} == true)
{
new pIp[16];
GetPlayerIp(playerid, pIp, sizeof(pIp) );
SetPVarString(playerid, "reconectIP", pIp);
new str[22];
format(str, sizeof(str), "banip %s", pIp);
SendClientMessage(playerid, -1, "Vocк foi reconectado por estar desincronizado (Relogio travado) para evitar problemas.");
SendRconCommand(str);
}
Em onplayerdisconnect vocк coloca isso
PHP код:
new reconnect[16], strquit[24];
GetPVarString(playerid, "reconectIP", reconnect, 16);
format(strquit, sizeof(strquit), "unbanip %s", reconnect);
SendRconCommand(strquit);
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
Gguiz - 25.11.2018
Para se reconectar pode-se utilizar a funзгo:
BlockIpAddress, assim nгo serб necessбrio banir o jogador e conseguinte desbanir.
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
GSantana - 26.11.2018
Verifica se o ping dele estб alto, se estiver kicka
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
GRiMMREAPER - 26.11.2018
Quote:
Originally Posted by GSantana
Verifica se o ping dele estб alto, se estiver kicka
|
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
gmstrikker - 01.01.2019
Opa vlw rapaziada, dei um +rep pra cada um dos que ma ajudaram, desculpa a demora, eu tinha desistido, muito obrigado mesmo.
Nгo tenho como testar e nгo tenho experiencia para dizer se estб certo, alguйm com experiencia ou que consiga parar o tempo tem como me dizer se isso aqui estб certo?
Код:
public OnPlayerUpdate(playerid)
{
// tempo parado
if(gettime() > PlayerUpdateTick[playerid])
{
static current_weapon, current_ammo;
PlayerUpdateTick[playerid] = gettime() + 2;
GetPlayerWeaponData(playerid, 0, current_weapon, current_ammo);
IsPlayerSynced{playerid} = (current_ammo != PlayerAmmo{playerid});
SetPlayerAmmo(playerid, current_weapon, !current_ammo);
PlayerAmmo{playerid} = current_ammo;
if(IsPlayerSync{playerid} == true) {
SendClientMessage(playerid, -1, "Vocк foi reconectado por estar desincronizado (Relogio Travado) para evitar problemas.");
BlockIpAddress(ip, 10 * 1000); // 10 segundos
}
}
return 1;
}
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
gmstrikker - 06.01.2019
upppp
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
CodingArt - 08.01.2019
Quote:
Originally Posted by gmstrikker
upppp
|
Ao inves disso tambйm poderia kickar o player usando a funзгo nativa "Kick(playerid)"
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
MrToddyYT - 10.01.2019
Quote:
Ao inves disso tambйm poderia kickar o player usando a funзгo nativa "Kick(playerid)"
|
Kick(playerid, ""); // ("Motivo")
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
StartOver - 10.01.2019
Quote:
Originally Posted by MrToddyYT
Kick(playerid, ""); // ("Motivo")
|
PHP код:
native Kick(playerid);
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
KoloradO - 10.01.2019
Esse IsPlayerSync, pelo menos no meu GM, nгo funcionou.
Encheu de falsos positivos. O Bruno disse que й possнvel fazer o mesmo com SetPlayerDrunkLevel, mas nгo sei como.
Re: Cуdigo para lidar com jogadores nгo sincronizados? -
gmstrikker - 19.01.2019
Quote:
Originally Posted by KoloradO
Esse IsPlayerSync, pelo menos no meu GM, nгo funcionou.
Encheu de falsos positivos. O Bruno disse que й possнvel fazer o mesmo com SetPlayerDrunkLevel, mas nгo sei como.
|
Putz, dai й tenso, to tendo muito problemas com esses jogadores com tempo parado...
Serб que nгo tem soluзгo? Varios outros servers que eu jogava tbm sofriam com isso