Ir para conteúdo

Featured Replies

  • Respostas 52
  • Visualizações 12.6k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Novos remake sendo adicionado       

  • Sistema de AutoLoot automatico adicionado ao servidor, ao clica no corpse do pokémon o loot vai automaticamente para a bp do player  

  • Ótimo servidor, para quem realmente quer uma boa base ta ai.. Parabéns wend 

Postado
  • Autor

Bom, removi milhoes de bugs, creio que consegui retirar level system, ou ter parado ele.. Bom, tenho caught, look, move, login, tudo 100%.. quero mesmo arrumar esse BUG de new players não conseguirem pegar items.. :/..

Wend, quando você for postar atualizações, pode postar apenas os arquivos que você mexeu, listando o que fez? Porque já mexi em tanta coisa aqui, e tals.. 

 

Resolvi esse dos novos players ai, troca teu login.lua da pasta data\creaturescripts\scripts por esse: 

 

local config = {
loginMessage = getConfigValue('loginMessage'),
useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}
 
--alterado v2.6 tabelas soh em lib/configuration.lua;
 
function onLogin(cid)
 
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, 100)
doCreatureSetDropLoot(cid, false)
 
local accountManager = getPlayerAccountManager(cid)
 
if(accountManager == MANAGER_NONE) then
local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage
if(lastLogin > 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "."
else
str = str
end
 
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
 
elseif(accountManager == MANAGER_NAMELOCK) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?")
elseif(accountManager == MANAGER_ACCOUNT) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.")
end
 
if getCreatureName(cid) == "Account Manager" then
local outfit = {}
if accountManagerRandomPokemonOutfit then
outfit = {lookType = getPokemonXMLOutfit(oldpokedex[math.random(151)][1])}
else
outfit = accountManagerOutfit
end
 
doSetCreatureOutfit(cid, outfit, -1)
return true
end
 
if(not isPlayerGhost(cid)) then
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
end
 
local outfit = {}
 
if getPlayerVocation(cid) == 0 then
doPlayerSetMaxCapacity(cid, 7)
doPlayerSetVocation(cid, 1)
setCreatureMaxMana(cid, 6)
doPlayerAddSoul(cid, -getPlayerSoul(cid))
setPlayerStorageValue(cid, 19898, 0)
if getCreatureOutfit(cid).lookType == 128 then
outfit = {lookType = 510, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)}
elseif getCreatureOutfit(cid).lookType == 136 then
outfit = {lookType = 511, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)}
end
doCreatureChangeOutfit(cid, outfit)
end
 
    registerCreatureEvent(cid, "Duel")    --alterado v2.6 duel system
    registerCreatureEvent(cid, "ShowPokedex") --alterado v2.6
    registerCreatureEvent(cid, "ClosePokedex") --alterado v2.6
registerCreatureEvent(cid, "WatchTv")
registerCreatureEvent(cid, "StopWatchingTv")
registerCreatureEvent(cid, "WalkTv")
registerCreatureEvent(cid, "RecordTv")
--registerCreatureEvent(cid, "Death")
registerCreatureEvent(cid, "PlayerLogout")
registerCreatureEvent(cid, "WildAttack")
registerCreatureEvent(cid, "Idle")
registerCreatureEvent(cid, "PokemonIdle")
registerCreatureEvent(cid, "EffectOnAdvance")
registerCreatureEvent(cid, "GeneralConfiguration")
registerCreatureEvent(cid, "ReportBug")
registerCreatureEvent(cid, "LookSystem")
registerCreatureEvent(cid, "T1")
registerCreatureEvent(cid, "T2")
registerCreatureEvent(cid, "task_count")
 
if getPlayerStorageValue(cid, 99284) == 1 then
setPlayerStorageValue(cid, 99284, -1)
end
 
    if getPlayerStorageValue(cid, 6598754) >= 1 or getPlayerStorageValue(cid, 6598755) >= 1 then
       setPlayerStorageValue(cid, 6598754, -1)
       setPlayerStorageValue(cid, 6598755, -1)
    end
    
doChangeSpeed(cid, -(getCreatureSpeed(cid)))
 
--///////////////////////////////////////////////////////////////////////////--
    local storages = {17000, 63215, 17001, 13008, 5700}
    for s = 1, #storages do
        if not tonumber(getPlayerStorageValue(cid, storages[s])) then
           if s == 3 then
              setPlayerStorageValue(cid, storages[s], 1)
           elseif s == 4 then
              setPlayerStorageValue(cid, storages[s], -1)
           else   
              if isBeingUsed(getPlayerSlotItem(cid, 8).itemid) then
                 setPlayerStorageValue(cid, storages[s], 1)                 --alterado v2.6
              else
                 setPlayerStorageValue(cid, storages[s], -1) 
              end
           end
           doPlayerSendTextMessage(cid, 27, "Sorry, but a problem occurred on the server, but now it's alright")
        end
    end
    --/////////////////////////////////////////////////////////////////////////--
  
if getPlayerStorageValue(cid, 17000) >= 1 then -- fly
        
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
doRemoveCondition(cid, CONDITION_OUTFIT)
doSetCreatureOutfit(cid, {lookType = flys[poke][1] + 351}, -1)
 
local apos = getFlyingMarkedPos(cid)
apos.stackpos = 0
 
if getTileThingByPos(apos).itemid <= 2 then
doCombatAreaHealth(cid, FIREDAMAGE, getFlyingMarkedPos(cid), 0, 0, 0, CONST_ME_NONE)
doCreateItem(460, 1, getFlyingMarkedPos(cid))
end 
 
doTeleportThing(cid, apos, false)  
 
    local posicao = getTownTemplePosition(getPlayerTown(cid))
    markFlyingPos(cid, posicao)
    
elseif getPlayerStorageValue(cid, 63215) >= 1 then -- surf
 
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
doSetCreatureOutfit(cid, {lookType = surfs[poke].lookType + 351}, -1) --alterado v2.6
doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
 
elseif getPlayerStorageValue(cid, 17001) >= 1 then -- ride
        
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
 
 
if rides[poke] then
  doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
  doRemoveCondition(cid, CONDITION_OUTFIT)
  doSetCreatureOutfit(cid, {lookType = rides[poke][1] + 351}, -1)
else
  setPlayerStorageValue(cid, 17001, -1)
  doRegainSpeed(cid)   --alterado v2.6
end
 
   local posicao2 = getTownTemplePosition(getPlayerTown(cid))
        markFlyingPos(cid, posicao2)
        
elseif getPlayerStorageValue(cid, 13008) >= 1 then -- dive
       if not isInArray({5405, 5406, 5407, 5408, 5409, 5410}, getTileInfo(getThingPos(cid)).itemid) then
setPlayerStorageValue(cid, 13008, 0)
doRegainSpeed(cid)              --alterado v2.6
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end   
          
       if getPlayerSex(cid) == 1 then
          doSetCreatureOutfit(cid, {lookType = 1034, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1)
       else
          doSetCreatureOutfit(cid, {lookType = 1035, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1)
       end
       doChangeSpeed(cid, 800)
 
     elseif getPlayerStorageValue(cid, 5700) > 0 then   --bike
        doChangeSpeed(cid, getPlayerStorageValue(cid, 5700)) 
        if getPlayerSex(cid) == 1 then
           doSetCreatureOutfit(cid, {lookType = 1394}, -1)
        else
           doSetCreatureOutfit(cid, {lookType = 1393}, -1)
        end
else
doRegainSpeed(cid)  --alterado v2.6
end
 
if getPlayerStorageValue(cid, 22545) >= 1 then   --golden arena
  setPlayerStorageValue(cid, 22545, -1)              --alterado v2.4
  doTeleportThing(cid, getClosestFreeTile(cid, posBackGolden), false) 
    end
    
if useKpdoDlls then
doUpdateMoves(cid)          --alterado v2.4 soh pra quem quiser... ;p
doUpdatePokemonsBar(cid)
end
 
return true
end

 

e o stater.lua da pasta data\actions\scripts 

 

local starterpokes = {
["Weedle"] = {x = 53, y = 71, z = 7},
["Rattata"] = {x = 51, y = 71, z = 7},
["Caterpie"] = {x = 49, y = 71, z = 7},
}
 
local level = 10
local extrastr = 1.5
local btype = "normal"
 
function onUse(cid, item, frompos, item2, topos)
 
if getPlayerLevel(cid) > 10 then
return true
end
 
local pokemon = ""
 
for a, b in pairs (starterpokes) do
if isPosEqualPos(topos, b) then
pokemon = a
end
end
 
if pokemon == "" then return true end
 
local gender = getRandomGenderByName(pokemon)
 
local mypoke = getPokemonStatus(pokemon)
 
if not mypoke then return true end
 
local offense = mypoke.off * level * extrastr
local defense = mypoke.def * level * extrastr
local speed = mypoke.agi * level * extrastr
local vit = mypoke.vit * level * extrastr
local spatk = mypoke.spatk * level * extrastr
local happy = 180
local leveltable = getPokemonExperienceTable(pokemon)
 
doPlayerAddItem(cid, 2160, 2)
doPlayerAddItem(cid, 2392, 50)
doPlayerAddItem(cid, 2394, 100)
doPlayerAddItem(cid, 12344, 20)
 
local balls = doPlayerAddItem(cid, 2394, 10)
 
local item = doCreateItemEx(2219)
doItemSetAttribute(item, "poke", pokemon)
doItemSetAttribute(item, "hp", 1)
doItemSetAttribute(item, "level", level)
doItemSetAttribute(item, "exp", leveltable[level])
doItemSetAttribute(item, "nextlevelexp", leveltable[level+1] - leveltable[level])
doItemSetAttribute(item, "offense", offense)
doItemSetAttribute(item, "defense", defense)
doItemSetAttribute(item, "speed", speed)
doItemSetAttribute(item, "vitality", vit)
doItemSetAttribute(item, "specialattack", spatk)
doItemSetAttribute(item, "happy", happy)
doItemSetAttribute(item, "gender", gender)
doItemSetAttribute(item, "description", "Contains a "..pokemon..".")
doItemSetAttribute(item, "fakedesc", "Contains a "..pokemon..".")
doPlayerAddItemEx(cid, item, true)
 
doTransformItem(item, pokeballs[btype].on)
 
doPlayerSendTextMessage(cid, 27, "Você achou um novo pokemon, boa jornada.")
doPlayerSendTextMessage(cid, 27, "Não esqueca de usar a pokedex neste novo pokemon.")
 
doSendMagicEffect(getThingPos(cid), 29)
doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
doSendMagicEffect(getThingPos(cid), 27)
doSendMagicEffect(getThingPos(cid), 29)
 
 
return TRUE
end

 

Lembrando que só funciona para os novos players, então os antigos ainda não podem pegar 

@Deadpool também poderia ajudar relatando os bugs que encontrou não é? 

 

 

Servidor parece muito bom! Pessoalmente acho que os Pokémons sem level fica mais legal, como o antigo Pokémon Online. Acompanharei a evolução do projeto :)

 

Obrigado Nightz! Também acho que os pokemons sem level system fica mais legal mais por enquanto vou continuar com o level system

quem sabe nas próximas versões ^^ 

 

 

vou baixar aqui para verificar os bugs rep+

 

Obrigado! pode ajudar também relando os bugs que encontra  :wow:

 

@Comecei trabalha na segunda versão do servidor 

Postado

1 bug: quando poke morre a ball n transforma em discharged (apagada), é preciso da um clique, para mudar..

 

@: Tirei level System, se quiser te passo pra você fazer uma versao sem level system. (nao fiz igual slice, eu tirei mesmo, deixei online e testei tudo, sem nenhuma bug =) ) em outra versao que mexi aprimorei o level system(que será para meu servidor, em breve creio topico).

Se te ajudei, deixe seu curti, clique em melhor resposta, para que eu possa ajudar sempre.

 

skype.png

Trabalhos (C++):

Cor das mensagens nos channels

Ajusta/Mudar cor das mensagens de Loot

Liberação dos novos Remakes da PokeXGames.

NPC "Guild Master" que cria, deleta, invita, kicka players da guild.

 

 B4OBUkH.png At Soon, LIKE ON FACEBOOK. Clik on Imgs

Postado
  • Autor

1 bug: quando poke morre a ball n transforma em discharged (apagada), é preciso da um clique, para mudar..

 

@: Tirei level System, se quiser te passo pra você fazer uma versao sem level system. (nao fiz igual slice, eu tirei mesmo, deixei online e testei tudo, sem nenhuma bug =) ) em outra versao que mexi aprimorei o level system(que será para meu servidor, em breve creio topico).

 

Pode me passa a versão sem level? vai ajudar muito, irei fazer uma versão sem level também ^^ 

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo