A um tempo atraz, quando ainda usava server xml, eu tinha um site que adicionava os player com um id totalmente louco, tipo 898515464 e o proximo era totalmente diferente ![]()
Seu script pode ajudar muito, caso haja algum tipo de bug no player, além de ficar bem + organizado.
Vlw ;D





info
Grupo: Visconde
Registrado: 10/06/06
Posts: 338
Reputação: +6
Char no Tibia: Setyte Berseker
Primeiramente, gostaria de agradeçer o Arkilus por me dar algumas dicas em Simple_XML.
Essa função adiciona players no players.xml facilmente criando guids dependendo da acima, caso não exista nenhum, ele toma conta disso também, não já erro, é extremamente avançado.
function players_xml($name) { $dir = "C:/otserv/data"; // Altere aqui o diretório da pasta data if(!file_exists("$dir/players/players.xml") { $fp = fopen("$dir/players/players.xml", "w"); fwrite($fp, ' <?xml version="1.0"?> <players> </players> '); fclose($fp); } else { $xml = new SimpleXMLElement(file_get_contents("$dir/players/players.xml")); $xml->players->addChild('player'); $player = end($xml->xpath('/players/player')); $nextGuid = (int) $player['guid'] + 1; $newPlayer = end($xml->xpath('/players'))->addChild('player'); $newPlayer->addAttribute('guid', $nextGuid); $newPlayer->addAttribute('name', $name); $xml->asXML("$dir/players/players.xml"); } }Como usar:
players_xml('Nostradamus'); // Onde Nostradamus seria o nome do playerEssa é a melhor forma de adicionar players no players.xml, pois a versão do budaum, ele usa a função date() para adicionar no guid, o que é uma idiotisse.
IMPORTANTE! Por usar simple_xml, requer PHP5 ou superiores, ou seja, não funcionará no Easy-PHP 1.8, mas no Easy-PHP 2.0, funcionará normalmente.
Além disso, o jogador deve possuir a mesma guid do players.xml, por isso edite no seu script tal parte substituindo pela variável $nextGuild.
Editado Julho 2 por Nostradamus