Os Melhores
Conteúdo popular
Mostrando conteúdo com a maior reputação em 10/11/25 em Posts
-
Coisas importantes na source Pode ser compilado para sistemas 32 ou 64 bits você vai ter que fazer ajustes no makefile e resolver os problemas que aparecerem. PACKAGE’S LIST : ( Estou usando o Ubuntu-20.04 (source 152), os nomes dos packages ou comandos podem mudar de acordo com a Distro que você está usando ). Os pacotes são os mesmo usados para rodar o servidor, adicionando somente alguns para fins de compilação. sudo apt-get install build-essential sudo apt-get install gcc-multilib sudo apt-get install g++-multilib sudo apt-get install dos2unix sudo apt-get install default-jdk sudo apt-get install libxml-dom-perl sudo apt-get install libxml2-dev sudo apt-get install libpcre3-dev sudo apt-get install libssl-dev sudo apt-get install libcrypto++-dev sudo apt-get install ant sudo apt-get install libsaxonhe-java sudo apt-get install libxslt1-dev sudo apt-get install libreadline-dev sudo apt-get install python sudo dpkg --add-architecture i386 sudo apt-get install libssl1.0-dev:i386 download the “libssl1.0.0_1” package wget [Conteúdo Oculto] sudo dpkg -i *.deb sudo apt-get update sudo apt-get upgrade apt --fix-broken install sudo apt-get install zlib1g:i386 sudo apt-get install libncurses5:i386 sudo apt-get install libssl-dev:i386 sudo apt-get install libxml2:i386 sudo apt-get install libpcre3-dev:i386 sudo apt-get install libxml2-dev:i386 sudo apt-get install libc6:i386 sudo apt-get install libstdc++6:i386 sudo apt-get update sudo apt-get upgrade Primeiro de tudo converter os arquivos para UNIX : pwsource/ = ./fixsrc.sh ( essa é minha pasta raiz “pwsource” você deve colacar o script dentro da sua pasta raiz ) #!/bin/bash find . -name "*.h" -exec dos2unix {} \; find . -name "*.hpp" -exec dos2unix {} \; find . -name "*.hxx" -exec dos2unix {} \; find . -name "*.cpp" -exec dos2unix {} \; find . -name "*.cxx" -exec dos2unix {} \; find . -name "Makefile" -exec dos2unix {} \; chmod -R 0755 . ; chmod -R 0755 * chown -R root:root ; chown -R root:root * share : pasta e arquivos = common , io , mk, perf, rpc, rpcgen, storage criar um link dinâmico para a pasta “cnet” ou copiar diretamente os arquivos. cnet : gfaction/operations/ = ./opgen.pl opgen.xml ( cria arquivos protocol’s) cnet/ = ./rpcgen rpcalls.xml ( cria arquivos protocol’s ) gamed/ = cria static lib libgsPro2.a gdbclient/ = cria static lib libdbCli.a logclient/ = cria static lib liblogCli.a io/ = cria static lib libgsio.a storage/ = cria static lib libdb.a ( necessário instalar o Berkeley DB 4.2 ( por algum motivo as pessoas não usam essa static lib para compilar a gs, outros jogos da Wanmei usam isso quando compila a gs. ) ) gacd/ = cria gacd gamedbd/ = cria gamedbd gauthd/ = cria gauthd substitui a authd feita em java . gdeliveryd/ = cria gdeliveryd gfaction/ = cria gfaction glinkd/ = cria glinkd logservice/ = cria logservice uniquenamed/ = cria uniquenamed gacdclient/ = ???? gclient/ = ???? cskill : skill/ = cria static lib libskill.a gen/ = ant compile cria skilleditor ( alterar a versão do java no “build.xml” para sua versão instalada) gen/ = ant -buildfile build.xml cria gen.jar ( skilleditor e gen.jar trabalham juntos , em teoria conecta num banco de dados) gen/ = java -jar gen.jar ( executa o programa ) Obs. : Existe uma relação desse programa com o rpcalls.xml , existe uma função no xmlcoder.pl para verificar a versão do rpcalls.xml ele tenta acessar o bando de dados. iolib : copiar as statics libs ( arquivos *.a ) da pasta “cnet” para a “iolib”. cgame: libcommon/ = cria static lib libcommon. a ( não é necessário copiar para “iolib”) cgame/ = cria gs e a dynamic lib libtask.so Extra: Não tem uma utilidade real, porém o arquivo “rpcalls.xsl” serve para gerar uma versão do “rpcalls.xml” em “.html” Gera um HTML com link para os arquivos. cnet/ = java -jar /usr/share/java/Saxon-HE.jar -s:rpcalls.xml -xsl:rpcalls.xsl -o:nome.html cria nome.html (“nome” é o nome do arquivo html, você pode usar qualquer um) OBS. : A pasta “share” existem muitos programas em java, porém não são necessários para compilar a source mas devem ter alguma utilidade, não me aprofundei mais fiquem a vontade para descobrir suas funcionalidades.1 ponto
-
1 ponto
-
Boa tarde. estava mexendo em uns arquivos e achei a source do pw editor octets. e estou deixando aqui para vocês editarem e atualizarem ele. já esta com a raça sombria. também deixo em aberto aqui. caso queiram compartilhar suas melhorias e duvidas. para que podemos sempre trazer novos conteúdo para o forum. qualquer duvida entre em contato inbox. deixei uma foto mostrando a compilação perfeita. OctetsSource.zip1 ponto
-
1 ponto
-
1 ponto
-
Há algum tempo eu venho estudando sobre os octets do PW (hex strings) para adicionar os detalhes dos itens no visualizador de inventário do meu painel. Inclusive eu achei esses 2 pdfs que estão anexados nesse post perdidos por aí (Além de outros projetos relacionados), o que me ajudou bastante no começo. E apartir disso eu construi esse projeto em php chamado PWHexParser que recebe um octet de um item, o tipo do item e retorna um json como resultado, exemplos: Lendo octets de uma roupa: <?php require __DIR__ . '/../vendor/autoload.php'; $decoder = new App\Decoder(); $decoder->setItemType('Fashion'); // Weapon, Armor, Charm, Jewelry, Flight, Card... $decoder->sethexString('1e00000092470100010a620072007500630065000000'); //Mandarin Silk Gown $result = $decoder->decodeHexString(); header('Content-Type: application/json'); echo json_encode($result, JSON_PRETTY_PRINT); Resultado: { "level_req": 30, "color": 18322, "gender": 1, "creator_type": 1, "name_length": 5, "name": "bruce", "color_mask": 0 } Adivinhando o tipo do item (arma nesse caso): <?php require __DIR__ . '/../vendor/autoload.php'; $mask = 1; // Weapon $decoder = new App\Decoder(); $decoder->guessItemType($mask); $decoder->sethexString('5a00ff001001000031000000b4610000786900002c00040a4200720075006300650000000000090000000b00000000000000930200009b0500000000000000000000180000000000604000000000010000000000000003000000114500009200000001000000f02300004d000000cf2500000e000000'); $result = $decoder->decodeHexString(); header('Content-Type: application/json'); echo json_encode($result, JSON_PRETTY_PRINT); Resultado: { "level": 90, "class": 255, "strength": 272, "vitality": 0, "dexterity": 49, "magic": 0, "min_durability": 250, "max_durability": 270, "item_type": 44, "item_flag": 4, "name_length": 10, "name": "Bruce", "ranged_type": 0, "weapon_type": 9, "weapon_grade": 11, "ammunition_type": 0, "min_physical_damage": 659, "max_physical_damage": 1435, "min_magic_damage": 0, "max_magic_damage": 0, "attack_rate": 0.83, "attack_range": 3.5, "minimum_range": 0, "sockets_count": 1, "sockets": [ 0 ], "addons_count": 3, "addons": { "special_addons": [ { "id": 1297, "value": 146, "level": 1 } ], "normal_addons": [ { "id": 1008, "value": 77 }, { "id": 1487, "value": 14 } ], "refine_addons": [ ], "socket_addons": [ ] } } O projeto está disponível no Github e também é possível instalar via composer: Ele não está 100% finalizado ainda, mas já da pra utilizar em algum projeto de seu interesse. :) Hex Data Guide v2T2.pdf Hex Code Guide By Drakaer.pdf1 ponto
-
Virtual Machine para compilar a source, pronto para uso. Fedora Core 2 i386 login = root password = 123456 Essa versão usa o gcc 3.33. Está com Firewall desativado, caso for usar internet nela recomendo ativar. [Conteúdo Oculto] Obs.: 1 – Caso for alterar as configurações da vbox, deixar o processador somente com 1 nucleo caso contrário vai dar erro e não inicia a vm. 2 – Caso você use o “yum update” vai atualizar todos os pacotes, eu tive que alterar o yum.conf para fazer link direto com repositório já que o sistema não tem mais suporte e precisava adicionar alguns pacotes, quando atualizar pode ser que trave sua rede eth0, e apareça o mac adress no lugar do ip. Para resolver faça os passos abaixo. Va em configurações >> rede >> conectado a >> Placa em modo Bridge >> avançado >> Tipo de Placa Altere o tipo para outro que não seja Intel. salva e reiniciar a vbox. Durante o boot vai reconhecer que houve uma alteração deleta a antiga e não adicione a nova, espere terminar o boot e desligue a vm. Volte em: Va em configurações >> rede >> conectado a >> Placa em modo Bridge >> avançado >> Tipo de Placa Selecione o tipo para Intel novamente e reinicie a vm, delete a antiga e configure essa, só marque a opção apra ip dinâmico e termina o boot, você vai ver que agora tem o ip. Com isso vai conseguir usar o Winscp caso tenha atualizado. 3 – Caso você faça o update irá aparecer diversas kernels durante o boot, recomendo usar a padrão. Não sei se as outras kernels afetam a compilação não testei. 4 – Caso queira adicionar algum pacote extra só procurar no repositório. [Conteúdo Oculto]1 ponto
-
libssl1.0.0_1.0.2n-1ubuntu5.11_i386.deb libssl1.0-dev_1.0.2n-1ubuntu5.11_i386.deb1 ponto
-
Traduzido por mim de russo para português funcional na versão 1.7.2 Senha pra usar o console – d 777 2177 (sempre usar antes de usar o console dura 1 hora ) script.lua0 pontos
