Ir para conteúdo

Scizorgame

Campones
  • Total de itens

    74
  • Registro em

  • Última visita

  • Dias Ganhos

    6

Tudo que Scizorgame postou

  1. Sinceramente, não esperava que a base avançaria tanto como avançou, tantos bugs resolvidos, eu testei agora e vi que bastantes coisas foram concertadas, estou com projeto de um server e sinceramente se comparar o meu com esse, considero que esse esta ganhando por muito, mesmo assim meu server tem algumas coisas a mais que nesse, e pelo esforço e empenho de vocês decidi me juntar e contribuir com algumas dessas coisas, vou listar as coisas e postar algumas correções aqui alem de alguns bugs que encontrei no server, e falar um pouco de mim no final do topico tambem, não me decidi ainda se migrarei ou não para essa base, em questão de poderem derrubar o server pela source, bem, da mesma forma que não sei oque fizeram na source desse server antes de eu pegar eu tambem não sei oque podem ter feito na minha source antes de eu pega-la, então daria na mesma. --- algumas coisas que tem no server que estou editando --- 1-Fly System melhor(o fly system do meu server você consegue sair de uma montanha com fly sem ter de subir no fly) 2-Sistema de Caught por Persistencia(quanto mais ball você taca em um pokemon maior a chance de você catar ele, com tabelas de pokes normais, hards, shinys e all) PS: bastante facil de fazer por sinal. 3-Bug do monstro não mandar magia por trocar de target corrigido(esse bug) 4-Loot de todos pokes da primeira geração contando shinys com novos loots balanceados e corrigidos especificamente para o meu server. 5-Orbs(uma ideia minha, basicamente com orbs você pode fazer stones). 6-Mais algumas correções que provavelmente deixei passar. --- Contribuições por enquanto --- 2- Vou deixar aqui algumas tabelas que uso nesse sistema: 3- Simplesmente nas sources no arquivo monsters.cpp procurem por: sb.combatSpell = sb.isMelee = false; e simplesmente troquem o false por true ficando: sb.combatSpell = sb.isMelee = true; 4- Vou deixar para download loots de shinys que fiz como .obd Print: download: http://www.mediafire.com/download/wdffm8727l2ff7m/Shinyitems+bydzru.rar scan: https://virustotal.com/pt/file/29c2c06a9a80f238877c3040cd688e092053ecaf4dbfa3a0a16c3d4cdc0f3896/analysis/1466409757/ Sobre mim: sempre gostei de mecher e jogar servers de pokemon, mechia mais em 2010~2012, meio que parei quando começei a jogar pxg, eu amo esses servers derivados, e gostava muito da pxg para não dizer que amava, mas depois de tantas historias e sofrer as injustiças da equipe na propria pele(ser movido e tomar ban sem estar blockando o resp por dar ks em um donater amiguinho do adm) não vou perdoa-los(ja dei chance e não aproveitaram), a pxg é um otimo jogo porem o jogo chega a ser tão impossivel e injusto que considero ser mais facil criar um jogo anos luz melhor que o deles do que conseguir full team shinys com held t7 no jogo deles sem donatar ou comprar rl, então meu objetivo é me vingar mesmo, criando um jogo mais justo e se possivel melhor que o deles ja que eu gosto mesmo de mecher com isso, e se tiver varios não só o meu, melhor, então podem contar comigo apartir de agora. Edit: Fiz 3 "correções" na catch window. 1- O modo que a mensagem aparece. 2- Como a janelinha é "organizada". 3- Botei a função que faz a window não ser "focada" quando aparece, antes tava sendo focada logo impedia de andar,etc se não clicasse no jogo. Download: http://www.mediafire.com/download/wmb50znb50a5ar7/catchwindow_bydzru.rar Scan: https://virustotal.com/pt/file/f248c834cca1467e5b860707af06125a486f3ec5a6ff485209b6c758c3ae77d0/analysis/1466419364/
  2. Estou fazendo um ot de pokemon e me deparei com algo que me parece ser simples de resolver para quem sabe mecher nas sources e quase impossivel para quem não as entende muito bem, quando eu boto ou tiro o pokemon da ball os pokemons selvagens trocam de target, e quando eles trocam de target parece que o interval dos attacks do .xml é "rezetado", ocasionando com que eu possa simplesmente fazer com que ele nunca consiga me mandar uma magia, se eu ficar simplesmente tirando e botando o poke ele nunca vai ter um target fixo e acaba ficando bebado andando pro lado e pro outro sem saber oque fazer kkkkk. ~Videozin de demonstração do "bug"~
  3. consegui adaptar a barrinha de caught pro meu server \o/ 

    HwzbOPe.png

    1. Mostrar comentários anteriores  %s mais
    2. Taiger

      Taiger

      mais essa base ja tem duel system e nick system?

       

    3. Scizorgame

      Scizorgame

      não, mas eu botei os 2, nick system na source e umas gambiarras pra funcionar o system do pda, ta funcionando 1x1 100% pelo q testei

    4. Taiger

      Taiger

      o nick system tu pegou de um topico aqui do forum? o que usa o mesmo npc do pda?

       

      Eu to estudando um pouco de sources para ver se pego o duel e a tv system do server que postei.

  4. eu encontrei alguns bugs no caught, se catar com bag full n vai pro cp, e se tiver outra bag vai para primeira bag, mas se tiver 1 bag dentro da outra e tiver que ir para bag dentro da bag da erro e n vai, nada que uma proteção para mandar o poke pro cp com a bag full não resolva, o autoloot tambem ta bem bugado, só ta abrindo no dg dudu e nem sempre ta stackando.
  5. tem esse sistema em algum lugar ? vamos precisar usar as distros adquiridas com as sources para descobrir os "bugs"/"codigos" e corrigi-los.
  6. aqui quando compilei a distro apareceu esses erros quando iniciei ela [05/06/2016 20:55:36] [Error - Npc interface] [05/06/2016 20:55:36] data/npc/scripts/miniTasks/diariaRosa.lua[05/06/2016 20:55:36] Description: [05/06/2016 20:55:36] data/npc/scripts/miniTasks/diariaRosa.lua:11: attempt to call global 'getNPCXMLNAME' (a nil value)[05/06/2016 20:55:36] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/miniTasks/diariaRosa.lua[05/06/2016 20:55:36] [Error - Npc interface] [05/06/2016 20:55:36] data/npc/scripts/miniTasks/diariaTon.lua[05/06/2016 20:55:36] Description: [05/06/2016 20:55:36] data/npc/scripts/miniTasks/diariaTon.lua:11: attempt to call global 'getNPCXMLNAME' (a nil value)[05/06/2016 20:55:36] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/miniTasks/diariaTon.lua[05/06/2016 20:55:36] [Error - Npc interface] [05/06/2016 20:55:36] data/npc/scripts/miniTasks/diariaKatarina.lua[05/06/2016 20:55:36] Description: [05/06/2016 20:55:36] data/npc/scripts/miniTasks/diariaKatarina.lua:11: attempt to call global 'getNPCXMLNAME' (a nil value)[05/06/2016 20:55:36] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/miniTasks/diariaKatarina.lua[05/06/2016 20:55:36] [Error - Npc interface] [05/06/2016 20:55:36] data/npc/scripts/miniTasks/diariaAllan.lua[05/06/2016 20:55:36] Description: [05/06/2016 20:55:36] data/npc/scripts/miniTasks/diariaAllan.lua:11: attempt to call global 'getNPCXMLNAME' (a nil value)[05/06/2016 20:55:36] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/miniTasks/diariaAllan.lua
  7. eu fiz os scans com alguns outros servers que tenho aqui e acusou os mesmos virus, o que me faz acreditar que são provavelmente inofensivos, comprei o kaspersky e ele varreu todas distros kkk, o kaspersky ta terminando a verificação, depois recupero o que foi perdido e testo o server, rep+
  8. Cara preciso que me solucione uma duvida, no seu topico do [DxP] eu postei uns scans de cada arquivo que eu fiz, onde cada um continha muitos virus, fiz um scan de um server que eu estava trabalhando aqui e ele tambem contem os mesmos virus, esses virus são do meu pc mesmo ou dos servers ? qual o motivo desses virus e oque eles fazem !? eu comprei o kaspersky agora e ele ta varrendo tudo(tenho backups e ja compilei outra source do meu server).

     

    aqui os scans: 

    Clients:

    https://virustotal.com/pt/file/86e1062a4782c847eee2db32f155f51bdc0dd7c54593270fc69e5e2518eb321d/analysis/1465151071/

     

    Server:

    https://virustotal.com/pt/file/f8f3bfe46b5b57b09e7e65e3e9ca371d37fba183894f8ab0a9403ab700734b6e/analysis/1465150946/

     

    Sources:

    https://virustotal.com/pt/file/2ba633f0229d4b53c6028696bb3c4620339ad88d40a1353faa820f08839a892e/analysis/1465150687/

     

    Obj Builder:

    https://virustotal.com/pt/file/bcf78efa722904da7553d17a14f8fd22191f22c0b0386ce46fa3217970062002/analysis/1465150373/

     

    tomara que seja eu mesmo e eu consiga arrumar, apesar de eu não manjar muito de mecher na source(c++), se o servidor tiver mesmo o que diz, vou me sentir honrado e no dever de retribuir o feito.

    1. Mostrar comentários anteriores  %s mais
    2. Scizorgame

      Scizorgame

      eu ia fazer tambem, só que tenho que refazer o mapa inteiro, ai nem fiz, se tiver a tabela pronta boto agora.

    3. Scizorgame

      Scizorgame

      tem module no client tbm ? tipo aquela janelinha na pxg quando cata, ou ta só dando a xp ?(a janelinha eu ia sofrer pra fazer)

    4. Taiger

      Taiger

      tem sim manow e no meu ver melhor ainda do q na pxg, rode o servidor e de uma testada para voce ver os sistemas que voce vai babar

  9. Aqui os scans ficaram assim: Clients: https://virustotal.com/pt/file/86e1062a4782c847eee2db32f155f51bdc0dd7c54593270fc69e5e2518eb321d/analysis/1465151071/ Server: https://virustotal.com/pt/file/f8f3bfe46b5b57b09e7e65e3e9ca371d37fba183894f8ab0a9403ab700734b6e/analysis/1465150946/ Sources: https://virustotal.com/pt/file/2ba633f0229d4b53c6028696bb3c4620339ad88d40a1353faa820f08839a892e/analysis/1465150687/ Obj Builder: https://virustotal.com/pt/file/bcf78efa722904da7553d17a14f8fd22191f22c0b0386ce46fa3217970062002/analysis/1465150373/
  10. sim no mesmo arquivo, editei o post são 8 attributes e não 3, reveja ele
  11. se estiver usando o pda by bolz(q não tem level system) vc tem q desabilitar esses 8 attributes: doItemSetAttribute(item, "offense", coffense) doItemSetAttribute(item, "level", clevel) doItemSetAttribute(item, "exp", cexp) doItemSetAttribute(item, "nextlevelexp", cnext) doItemSetAttribute(item, "defense", cdefense) doItemSetAttribute(item, "speed", cspeed) doItemSetAttribute(item, "vitality", cvitality) doItemSetAttribute(item, "specialattack", cspatk) deixe-os assim e teste: --doItemSetAttribute(item, "offense", coffense) --doItemSetAttribute(item, "level", clevel) --doItemSetAttribute(item, "exp", cexp) --doItemSetAttribute(item, "nextlevelexp", cnext) --doItemSetAttribute(item, "defense", cdefense) --doItemSetAttribute(item, "speed", cspeed) --doItemSetAttribute(item, "vitality", cvitality) --doItemSetAttribute(item, "specialattack", cspatk)
  12. Olá, estou tentando fazer que o valor de um storage apareça na minha janela de skills do otclient, mas não estou conseguindo,ja tentei atravez de talkaction e extendedopcode mas não sei fazer o otclient receber e adaptar não achei nada muito detalhado ensinando, eu quero fazer o numero do storage 16900 aparecer do lado do Kanto Caughts: EDIT: Ja consegui resolver, podem fechar o topico.
  13. acho q é só botar a tag "visible: false" em cada um no .otui
  14. posta o lib/catch system.lua, lembrando q o erro é pq esta setando um attribute q provavelmente n existe, foi tirado ou n configurado.
  15. consegui resolver o problema dos missiles na source no conts.h enquanto estava tirando o limite de effects com ajuda desse tutorial, porem não estou conseguindo aumentar o limite de efeitos com ele, alem dos arquivos que o tutorial manda alterar eu tambem arrumei o tools.cpp antes de compilar e o 000-constant.lua e magiceffects.lua do server e mesmo assim não consegui aumentar o limite de effects quando vou usar o /z em um numero maior que 255 aparece um efeito antigo é como se o 256 fosse = 1 e 257 = 2, até pensei que era o otclient então baixei a ultima versão adicionei a feature e mesmo assim não funcionou. EDIT: Consegui arrumar, é o seguinte uso base PDA By Bolz 2.5(Open Source), pelo menos na minha source, no game.h e game.cpp alem do: ..."addMagicEffect(const Position&"... tem tambem: ..."addMagicEffect(const SpectatorVec&"... se tiver tambem na de vocês, vocês tem q mudar tambem o uint8_t para uint16_t nelas, ficando no game.cpp: void Game::addMagicEffect(const SpectatorVec& list, const Position& pos, uint16_t effect, bool ghostMode/* = false*/) no game.h: void addMagicEffect(const SpectatorVec& list, const Position& pos, uint16_t effect, bool ghostMode = false);
  16. Ja vi muita gente falando sobre o limite de effects e tutoriais para tira-lo pra quem usa otclient, mas não achei nada sobre missiles/distance shoots, estou com um problema no meu ot em que não esta funcionando os Missiles com numero + que 40, alguem sabe como arrumar ? tenho sources.
  17. isso é alguma coisa do mapa, fez alguma alteração nele ou nos items ?
  18. justiceiro vai no data/actions/scripts goback.lua procura por: local x = pokes[pokemon] local boosts = getItemAttribute(item.uid, "boost") or 0 adiciona embaixo: if getPlayerLevel(cid) < (x.level+boosts) then doPlayerSendCancel(cid, "You need level "..(x.level+boosts).." to use this pokemon.") return true end
  19. fiz um tutorial enquanto instalava o msvc2010 estou tendo uns problemas com o msvc mas vou postar logo o duelsystem para vocês irem testando, não sei se esta 100% TUTORIAL DUEL SYSTEM BASE BOLZ 2.5 1)vai no config.lua e troque o worldType para pvp e o protectionLevel para 1000 ficando assim: worldType = "pvp" protectionLevel = 1000 OBS: Isso vai liberar para que os players possam atacar pelo menos o summon de um dos outros. 2)vai em data/creaturescripts no creaturescripts.xml e adicione: <!-- TV SYSTEM e DUEL SYSTEM --> <event type="joinchannel" name="WatchTv" event="script" value="tvsys.lua"/> <event type="leavechannel" name="StopWatchingTv" event="script" value="tvsys.lua"/> <event type="walk" name="WalkTv" event="script" value="tvsys.lua"/> <event type="textedit" name="RecordTv" event="script" value="tvsys.lua"/> OBS: Apesar de estar como tvsystem tambem é o script responsavel para funcionar os channels do duel(1x1, numero de pokes, etc). 3)agora precisamos fazer funcionar para atacar só quando estiver em duel, para isso conto com a colaboração de vocês para me ajudar a relembrar tudo que eu fiz vou postar o que eu lembro vocês testam e qualquer erro postem de preferencia com o conteudo do script que a distro acusar, vamos trabalhar encima do storage 6598754, o que acredito eu antes liberava para atacar em duel e agora nos vamos fazer ele bloquear para não atacar fora do duel va em data/creaturescripts/scripts no login.lua e procure pelo storage 6598754 você vai encontrar algo como: if not getPlayerStorageValue(cid, 6598754) == -1 or not getPlayerStorageValue(cid, 6598755) == -1 then setPlayerStorageValue(cid, 6598754, -1) setPlayerStorageValue(cid, 6598755, -1) doRemoveCondition(cid, CONDITION_OUTFIT) --alterado v1.9 \/ doTeleportThing(cid, posBackPVP, false) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) end na segunda linha troque o -1 por "cant" e deixe só essa e a 3ª linha, desabilite ou delete as outras linhas ficando: --if not getPlayerStorageValue(cid, 6598754) == -1 or not getPlayerStorageValue(cid, 6598755) == -1 then setPlayerStorageValue(cid, 6598754, "cant") setPlayerStorageValue(cid, 6598755, -1) --doRemoveCondition(cid, CONDITION_OUTFIT) --alterado v1.9 \/ --doTeleportThing(cid, posBackPVP, false) --doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) -- end ou só: setPlayerStorageValue(cid, 6598754, "cant") setPlayerStorageValue(cid, 6598755, -1) 4)vai em data/actions/scripts no revive.lua e procure por "if getPlayerStorageValue(cid,6598754)" bem no inicio, e delete e desabilite dali até o proximo end. OBS:isso era uma tentativa de proteção para não usar revive em duel mas logo embaixo tem outra proteção que faz o mesmo sem dar possiveis bugs e erros (do storage 52481). 5)vai em data/lib no some functions.lua procure por "function canAttackOther" e substitua toda função por: function canAttackOther(cid, pid) --Function q verifica se um poke/player pode atacar outro poke/player if not isCreature(cid) or not isCreature(pid) then return "Cant" end local master1 = isSummon(cid) and getCreatureMaster(cid) or cid local master2 = isSummon(pid) and getCreatureMaster(pid) or pid ---- if getPlayerStorageValue(master1, 6598754) ~= "cant" and getPlayerStorageValue(master2, 6598754) ~= "cant" then if getPlayerStorageValue(master1, 6598754) ~= getPlayerStorageValue(master2, 6598754) then if isDuelingAgainst(master1, master2) then --alterado v1.8 if isSummon(cid) and isPlayer(pid) then return "Cant" else return "Can" end end end end ---- pvp system if getPlayerStorageValue(cid, 6598754) == "cant" then return "Cant" else return "Can" end -- if getPlayerStorageValue(master1, 6598754) >= 1 and getPlayerStorageValue(master2, 6598755) >= 1 then -- return "Can" -- end -- if getPlayerStorageValue(master1, 6598755) >= 1 and getPlayerStorageValue(master2, 6598754) >= 1 then ---estar em times diferentes -- return "Can" -- end ---- if ehMonstro(cid) or ehMonstro(pid) then return "Can" end if getTileInfo(getThingPos(cid)).pvp then return "Can" end return "Cant" end 6)agora em data/lib no Duel System.lua procure por "function doEndDuel" e substitua toda função por: function doEndDuel(cid, desisto) if isCreature(cid) then if getPlayerStorageValue(cid, 52482) ~= -1 then t1 = string.explode(getPlayerStorageValue(cid, 52482), ",") t2 = string.explode(getPlayerStorageValue(cid, 52483), ",") end local invit = getPlayerByName(getPlayerStorageValue(cid, 52485)) if isCreature(invit) then table1 = string.explode(getPlayerStorageValue(invit, 52482), ",") table2 = string.explode(getPlayerStorageValue(invit, 52483), ",") end if getPlayerStorageValue(cid, 52484) ~= 10 then if getPlayerStorageValue(cid, 52482) ~= -1 then for a = 1, 3 do local pid, sid = getPlayerByName(t1[a]), getPlayerByName(t2[a]) if isCreature(pid) then doCreatureSetSkullType(pid, 0) doRemoveCondition(pid, CONDITION_INFIGHT) end if isCreature(sid) then doCreatureSetSkullType(sid, 0) doRemoveCondition(sid, CONDITION_INFIGHT) end for i = 1, #storagesDuel do if isCreature(pid) then setPlayerStorageValue(pid, storagesDuel, -1) setPlayerStorageValue(pid, 6598754, "cant") end if isCreature(sid) then setPlayerStorageValue(sid, storagesDuel, -1) setPlayerStorageValue(sid, 6598754, "cant") end end end else for i = 1, #storagesDuel do setPlayerStorageValue(cid, storagesDuel, -1) setPlayerStorageValue(cid, 6598754, "cant") end doCreatureSetSkullType(cid, 0) doRemoveCondition(cid, CONDITION_INFIGHT) --------------------------------- if table2 then local numero = 0 for i = 1, #table2 do local ppid = getPlayerByName(table2) if not isCreature(ppid) or getPlayerStorageValue(ppid, 52480) ~= -1 then numero = numero+1 end end if numero == 0 then doEndDuel(invit) sendMsgToPlayer(invit, 20, "The opponents are give up! Duel is canceled!") end end -------------------------------- end if desisto then doSendAnimatedText(getThingPosWithDebug(cid), "GIVE UP", COLOR_BLUE) end return true end for a = 1, #t1 do local pid, sid = getPlayerByName(t1[a]), getPlayerByName(t2[a]) removeFromTableDuel(pid, getCreatureName(cid)) removeFromTableDuel(sid, getCreatureName(cid)) end local t3 = string.explode(getPlayerStorageValue(cid, 52482), ",") local t4 = string.explode(getPlayerStorageValue(cid, 52483), ",") if (#t3 == 0 and #t4 >= 1) or (#t4 == 0 and #t3 >= 1) then for j = 1, (#t3 > 0 and #t3 or #t4) do local winner = #t3 > 0 and getPlayerByName(t3[j]) or getPlayerByName(t4[j]) if isCreature(winner) then addEvent(doSendAnimatedText, 500, getThingPosWithDebug(winner), "WIN", COLOR_ELECTRIC) for i = 1, #storagesDuel do setPlayerStorageValue(winner, storagesDuel, -1) setPlayerStorageValue(winner, 6598754, "cant") end doCreatureSetSkullType(winner, 0) doRemoveCondition(winner, CONDITION_INFIGHT) end end addEvent(doSendAnimatedText, 500, getThingPosWithDebug(cid), "LOSE", COLOR_BURN) for i = 1, #storagesDuel do setPlayerStorageValue(cid, storagesDuel, -1) setPlayerStorageValue(cid, 6598754, "cant") end doCreatureSetSkullType(cid, 0) doRemoveCondition(cid, CONDITION_INFIGHT) else for i = 1, #storagesDuel do setPlayerStorageValue(cid, storagesDuel, -1) setPlayerStorageValue(cid, 6598754, "cant") end doCreatureSetSkullType(cid, 0) doRemoveCondition(cid, CONDITION_INFIGHT) if desisto then doSendAnimatedText(getThingPosWithDebug(cid), "GIVE UP", COLOR_BLUE) else addEvent(doSendAnimatedText, 500, getThingPosWithDebug(cid), "LOSE", COLOR_BURN) end end end end 7)por ultimo va em data/lib no level system.lua procure pelo storage 6598754 e delete ou desabilite do if ao end assim: -- if getPlayerStorageValue(getCreatureMaster(pk), 6598754) >= 1 then -- setPlayerStorageValue(pk, 6598754, 1) -- elseif getPlayerStorageValue(getCreatureMaster(pk), 6598755) >= 1 then -- setPlayerStorageValue(pk, 6598755, 1) -- end
  20. eu consegui adaptar o sistema de duel, 1x1 pelo menos, mas tive q mecher em muita coisa para deixar 10/10, vou tentar fazer um tutorial se eu conseguir compilar essa source, compilei com um dev c++ de todos jeitos mas n funcionou o .exe, vou tentar compilar com msvc2010 e depois informo aqui.
  21. fly só ir no data/movements/movements.xml e adicionar os ids 11675,11676 e 11677 nessa linha: <movevent type="StepIn" itemid="460;1022;1023" event="script" value="fly.lua"/> ficando assim: <movevent type="StepIn" itemid="460;1022;1023;11675-11677" event="script" value="fly.lua"/>
  22. estou tentando arrumar o duel system do server mas estou tendo um probleminha, quando o server esta non-pvp e eu dou duel, msm depois do duel ativo n da pra atacar o outro poke mas quando o server esta pvp da para atacar o poke do outro player mesmo fora do duel.
  23. com essa function onMove é possivel consertar o order ? ou é a mesma q faz ele teleportar andando ?
  24. map.h fazendo o server funcionar só com um client ? oque seria exatamente ? e oq vc fez no client para ele funcionar ?
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...