Postado Junho 10, 2015 9 anos 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 + [Linux] OT Server Ready - Apache + MySQL + phpmyadmin + bibliotecas + [Linux] Protegendo seu SSH + [Linux] Instalando, usando e entendendo o Screen + [Linux] Configurando o (D)DoS Deflate para trabalhar com o CSF + [Linux] Monitorando Servidor/Rede + [Windows] Otimizando TCP/IP + [Linux] Bloqueando países no CSF + [Linux] Otimize o desempenho do seu MySQL com o MySQLTuner + [Linux] Backup automatizado do banco MySQL + [Linux] Aumente sua proteção contra ataques com o SYN Proxy + [Linux] Aumente a segurança do seu servidor com o Two-Factor Authentication (Authy) + [Websites] Lost Account funcionando com MailGun (HTTP API) Servidores? Eu indico:
Postado Junho 10, 2015 9 anos Autor Em 09/06/2015 em 23:53, Deadpool disse: 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: Mostrar conteúdo oculto 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 Mostrar conteúdo oculto 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 é? Em 10/06/2015 em 00:14, Nightz disse: 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 Em 10/06/2015 em 02:46, elton123 disse: vou baixar aqui para verificar os bugs rep+ Obrigado! pode ajudar também relando os bugs que encontra @Comecei trabalha na segunda versão do servidor
Postado Junho 12, 2015 9 anos 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. 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. At Soon, LIKE ON FACEBOOK. Clik on Imgs
Postado Junho 12, 2015 9 anos Autor Em 12/06/2015 em 17:29, Deadpool disse: 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.