Tungs 249 Postado Maio 5, 2023 Share Postado Maio 5, 2023 (editado) Olá a todos, Recentemente, trabalhei em um projeto de desenvolvimento de uma source para PDA e fiquei muito satisfeito com os resultados. Depois de muito esforço e testes, consegui atingir cerca de 90% de sucesso na implementação da source em diversos PDAs. Agora, gostaria de compartilhar meu trabalho com vocês. A source é escrita em C++ e possui diversas funções, incluindo getDamageMapPercent, isPokeball e Order System (getDirectionToWalk). Adicionado raças (Crystal, Steel, Dark), função OnSpawn, Pokemon Passivos e agressivos. Além disso, é altamente compatível com a maioria dos PDAs, embora possa haver algumas adaptações necessárias dependendo do dispositivo específico. Para quem estiver interessado em testar a source, deixo aqui o link para todas as funções: https://pastebin.com/ewKUt9dH Ficarei muito grato por qualquer feedback que vocês possam me dar sobre a minha source. Compartilhar conhecimento e ajudar a comunidade é sempre muito gratificante e espero que minha source possa ajudá-los em seus projetos. Obrigado pela atenção e apoio! Atenciosamente, Tungs (kevick) a source se encontra anexada nesse tópico + link do mediafire para quem não conseguir baixar aqui. Download: https://www.mediafire.com/file/8irkqnrgxtuw1b9/Source.rar/file Download Atualização 052023: https://www.mediafire.com/file/nbf3ypdv8yaf903/Source_PDA_atualiza%C3%A7%C3%A3o_052023.rar/file PS. QUALQUER ERRO EU AJUDAREI, BASTA COMENTAR AQUI NO TÓPICO ATUALIZAÇÃO 052023 ADIÇÃO DA FUNÇÃO getDirectionToWalk (C++)após baixar e compilar a nova source que se encontra logo abaixo, adicione em 032-position.lua que se encontra na pasta lib a função abaixo: function getDirectionToWalk(p1, pos2) local dir = NORTH local pos1 = getCreaturePosition(p1) if(pos1.x > pos2.x) then dir = WEST if(pos1.y > pos2.y) then dir = NORTHWEST elseif(pos1.y < pos2.y) then dir = SOUTHWEST end elseif(pos1.x < pos2.x) then dir = EAST if(pos1.y > pos2.y) then dir = NORTHEAST elseif(pos1.y < pos2.y) then dir = SOUTHEAST end else if(pos1.y > pos2.y) then dir = NORTH elseif(pos1.y < pos2.y) then dir = SOUTH end end return dir end function getNextStepDelay(cid, dir) return tonumber(398) end DOWNLOAD DA SOURCE ATUALIZADA: https://www.mediafire.com/file/nbf3ypdv8yaf903/Source_PDA_atualiza%C3%A7%C3%A3o_052023.rar/file Source PDA atualização 052023.rar Editado Maio 12, 2023 por Tungs lSainty, BrunooMaciell, Furyox e 5 outros reagiu a isso 5 2 1 Link para o comentário Compartilhar em outros sites More sharing options...
DarkWore 112 Postado Maio 6, 2023 Share Postado Maio 6, 2023 Obrigado pela contribuição, dando meus 2 cents, senti falta da função selfAttackCreature na source, caso tenha curiosidade pra saber mais sobre a função, segue o link de uma thread que foi conversado sobre e até apresentado o código em tfs 1.x. Link para o comentário Compartilhar em outros sites More sharing options...
Tungs 249 Postado Maio 6, 2023 Autor Share Postado Maio 6, 2023 8 horas atrás, DarkWore disse: Obrigado pela contribuição, dando meus 2 cents, senti falta da função selfAttackCreature na source, caso tenha curiosidade pra saber mais sobre a função, segue o link de uma thread que foi conversado sobre e até apresentado o código em tfs 1.x. Temos as funções //doSetMonsterGym(cid, target) lua_register(m_luaState, "doSetMonsterGym", LuaScriptInterface::luaDoSetMonsterGym); //DoSetAttackGym(cid, target) lua_register(m_luaState, "doSetAttackGym", LuaScriptInterface::luaDoSetAttackGym); //DoSetGym(cid) lua_register(m_luaState, "doSetGym", LuaScriptInterface::luaDoSetGym); adicionadas na source Link para o comentário Compartilhar em outros sites More sharing options...
Rookie 0 Postado Maio 6, 2023 Share Postado Maio 6, 2023 Você disse que a source possui Pokémon Passivos e agressivos correto? Dei uma olhada por cima, não achei nenhuma função relacionada ao mesmo, nem mesmo o "passive" que é a configuração no .xml do PDA, foi feito de outra maneira? Esta source me lembra muito uma que foi postada junto a um servidor, o PokeXUniverse algo assim, ela estava 90% compatível com o PDA também. Mas realmente é um ótimo trabalho, mas recomendo firmemente que o povo largue mão de PDA e 0.3.6! Link para o comentário Compartilhar em outros sites More sharing options...
Tungs 249 Postado Maio 6, 2023 Autor Share Postado Maio 6, 2023 1 hora atrás, Rookie disse: Você disse que a source possui Pokémon Passivos e agressivos correto? Dei uma olhada por cima, não achei nenhuma função relacionada ao mesmo, nem mesmo o "passive" que é a configuração no .xml do PDA, foi feito de outra maneira? Esta source me lembra muito uma que foi postada junto a um servidor, o PokeXUniverse algo assim, ela estava 90% compatível com o PDA também. Mas realmente é um ótimo trabalho, mas recomendo firmemente que o povo largue mão de PDA e 0.3.6! praticamente a mesma source, na época que eu estava trabalhando nessa base, eu e o Luiz (que postou a pxu) usamos a source no mesmo, porem essa postada tem mais funções na qual trabalhei. Se for no post do PXU ta la meus creditos (Jair Kevick) Link para o comentário Compartilhar em outros sites More sharing options...
DarkWore 112 Postado Maio 7, 2023 Share Postado Maio 7, 2023 Em 06/05/2023 em 10:37, Tungs disse: Temos as funções //doSetMonsterGym(cid, target) lua_register(m_luaState, "doSetMonsterGym", LuaScriptInterface::luaDoSetMonsterGym); //DoSetAttackGym(cid, target) lua_register(m_luaState, "doSetAttackGym", LuaScriptInterface::luaDoSetAttackGym); //DoSetGym(cid) lua_register(m_luaState, "doSetGym", LuaScriptInterface::luaDoSetGym); adicionadas na source Essas funções não estão listadas no pastebin que você anexou, acredito que vale anexar. Link para o comentário Compartilhar em outros sites More sharing options...
Tungs 249 Postado Maio 8, 2023 Autor Share Postado Maio 8, 2023 15 horas atrás, DarkWore disse: Essas funções não estão listadas no pastebin que você anexou, acredito que vale anexar. eu teria que gerar um novo :v Link para o comentário Compartilhar em outros sites More sharing options...
DarkWore 112 Postado Maio 8, 2023 Share Postado Maio 8, 2023 11 horas atrás, Tungs disse: eu teria que gerar um novo :v https://pastebin.com/ewKUt9dH Espero ter ajudado, abraços. Link para o comentário Compartilhar em outros sites More sharing options...
Tungs 249 Postado Maio 12, 2023 Autor Share Postado Maio 12, 2023 ATUALIZAÇÃO ADIÇÃO DA FUNÇÃO getDirectionToWalk (C++)após baixar e compilar a nova source que se encontra logo abaixo, adicione em 032-position.lua que se encontra na pasta lib a função abaixo: function getDirectionToWalk(p1, pos2) local dir = NORTH local pos1 = getCreaturePosition(p1) if(pos1.x > pos2.x) then dir = WEST if(pos1.y > pos2.y) then dir = NORTHWEST elseif(pos1.y < pos2.y) then dir = SOUTHWEST end elseif(pos1.x < pos2.x) then dir = EAST if(pos1.y > pos2.y) then dir = NORTHEAST elseif(pos1.y < pos2.y) then dir = SOUTHEAST end else if(pos1.y > pos2.y) then dir = NORTH elseif(pos1.y < pos2.y) then dir = SOUTH end end return dir end function getNextStepDelay(cid, dir) return tonumber(398) end DOWNLOAD DA SOURCE ATUALIZADA: https://www.mediafire.com/file/nbf3ypdv8yaf903/Source_PDA_atualiza%C3%A7%C3%A3o_052023.rar/file Link para o comentário Compartilhar em outros sites More sharing options...
Henrique Amicci 0 Postado Junho 21, 2023 Share Postado Junho 21, 2023 Consigo adaptar essa source para uma base cyan, se sim conseguem me ajudar como faria isso ? Link para o comentário Compartilhar em outros sites More sharing options...
Tungs 249 Postado Junho 22, 2023 Autor Share Postado Junho 22, 2023 18 horas atrás, Henrique Amicci disse: Consigo adaptar essa source para uma base cyan, se sim conseguem me ajudar como faria isso ? sim, basta compilar a source e usar o executavel compilado Link para o comentário Compartilhar em outros sites More sharing options...
Henrique Amicci 0 Postado Junho 22, 2023 Share Postado Junho 22, 2023 (editado) Em 22/06/2023 em 08:17, Tungs disse: sim, basta compilar a source e usar o executavel compilado Editado Junho 25, 2023 por Henrique Amicci Link para o comentário Compartilhar em outros sites More sharing options...
Henrique Amicci 0 Postado Junho 25, 2023 Share Postado Junho 25, 2023 Em 22/06/2023 em 08:17, Tungs disse: sim, basta compilar a source e usar o executavel compilado Oi Tungs, consegui compilar, porém o meu client ficou inutilizável, os pokemons não soltam effect nenhum. Você teria algum client para disponibilizar ? Link para o comentário Compartilhar em outros sites More sharing options...
Tungs 249 Postado Junho 26, 2023 Autor Share Postado Junho 26, 2023 13 horas atrás, Henrique Amicci disse: Oi Tungs, consegui compilar, porém o meu client ficou inutilizável, os pokemons não soltam effect nenhum. Você teria algum client para disponibilizar ? ative no seu otclient os OPCODES, Effects extendidos e sprite extendida Link para o comentário Compartilhar em outros sites More sharing options...
Henrique Amicci 0 Postado Junho 26, 2023 Share Postado Junho 26, 2023 4 horas atrás, Tungs disse: ative no seu otclient os OPCODES, Effects extendidos e sprite extendida Como eu faço isso, alterei no things.lua e coloquei isso function load() g_game.enableFeature(GameSpritesAlphaChannel) g_game.enableFeature(GameMagicEffectU16) Porém quando é colocado os effects u16 que apresentam os erros Qualquer client que eu habilito uint16 fica desse jeito Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados