Tudo que Werner postou
-
Old Outfit
Vc tem que criar um client próprio pro servidor e ir seguindo os tutorias para adicionar sprites do outfit e etc... tem vários tutorias aqui no fórum.
-
OTserver, vale o tempo?
Existem ja servidores mapa global 8.6 com mais de 1000 players online e mais um monte com 100+ ... Se o seu servidor n se destacar em algo, ou tiver um diferencial para atrair os players, acho que não vale o investimento. Porem como o @Absolute falou "tudo é conhecimento"
-
RPG viajado?
Open Tibia com Rpg, na minha opinião hj em dia n vira... A comunidade ja está pequena de mais, e a procura por servidores assim menor ainda. O Rpg do tibia é "lenda".
-
(Resolvido)Ajuda Com Ip-Fixo
ta acusando que a porta ta fechada, se tem q tentar abrir corretamente no seu roteador. abrir elas é possível e se tao fechada provavelmente vc está abrindo incorretamente...
-
ERRO TheForgottenServer
Ele ta tentando se conectar com o forgottenserver.otland.net/blacklist.xml e se da dando erro deve ser poque o site esta fora do ar. Se vc der yes, acho q o servidor abrirá normalmente e o erro vai sumir quando o site da otland voltar. da pra resolver isso ai nas sources.
-
(Resolvido)Ajuda Com Ip-Fixo
Temos que ir por partes, algo está sendo feito errado, caso contrario estaria funcionando ... Reveja todos os passos e faça todos novamente, com calma. segue tudo que deixei ali na resposta anterior, porq até que a gente descubra o erro, ou o q está acontecendo n tem o que fazer...
- COMO TIRAR MUTED DO OT
-
Feyrist includes monsters.xml
Parabéns, seu tópico de conteúdo foi aprovado! Muito obrigado pela sua contribuição, nós do Tibia King agradecemos. Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.
-
(Resolvido)Ajuda Com Ip-Fixo
vc n precisa mudar seu ip para estático, eu utilizo ip dinamico e funciona normalmente....
-
Feyrist includes monsters.xml
Adicione Scan dos arquivos para que o tópico seja aprovado.
-
Problemas no CTF Event
Comentar ''UP'' para subir o tópico e proibido e considerado flood. Caso queira subir o tópico utilize o botão "subir este tópico" localizado perto do título. Leia as regras!
-
Alguem Sabe como configurar essa script
Escolha o item que deseja no items.xml e coloca o id do item. O Id que vc ve no client é o id do servidor.
-
Ajuda Erro em script
Tenta ae: local function filtrateString(str) if type(str) ~= "string" then return false end local first, last = 0, 0 local second, final = 0, #str for i = 1, #str do if string.byte(str:sub(i,i)) == string.byte('a') then first = i + 2 for t = first, #str do if string.byte(str:sub(t,t)) == string.byte(' ') then last = t - 1 break end end end if string.byte(str:sub(i,i)) == string.byte('b') then second = i + 2 end end return {str:sub(first, last), str:sub(second, final)} end function onUse(cid, item, fromPosition, itemEx, toPosition) local config = { timeExhausted = 2, -- tempo em horas para poder usar o item novamente. } if getPlayerLevel(cid) > 700 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Voce e maior que level 700, porem nao pode usar a cave exclusiva.") return false end if tonumber(filtrateString(getGlobalStorageValue(822081))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822081, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 1 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822082))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822082, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 2 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822083))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822083, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 3 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822084))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822084, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 4 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822085))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822085, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 5 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822086))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822086, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 6 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822087))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822087, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 7 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822088))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822088, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 8 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822089))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822089, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 9 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822090))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822090, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 10 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822091))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822091, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 11 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822092))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822092, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 12 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822093))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822093, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 13 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822094))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822094, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 14 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822095))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822095, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 15 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822096))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822096, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 16 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822097))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822097, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 17 e pode upar lá por 4 horas.") elseif tonumber(filtrateString(getGlobalStorageValue(822098))[2]) < os.time() then doRemoveItem(item.uid) setGlobalStorageValue(822098, "a "..getPlayerAccountId(cid).." b ".. os.time() + (3600 * 4)) doPlayerSendTextMessage(cid, 25, "Agora você é o dono da cave 18 e pode upar lá por 4 horas.") else doPlayerSendCancel(cid, "Todas as caves já estão com dono no momento. Tente mais tarde.") end return true end
-
Ajuda Erro em script
tenta colocar isso no Killua Cave Owners e ve se resolve: function onUse(cid, item, frompos, item2, topos) local config = { timeExhausted = 2, -- tempo em horas para poder usar o item novamente. timeForUse = 12, -- tempo em horas que o player poderá entrar na cave. exhausted = 456789, storage = 789456, toKnow = 123456, effect = 27, -- efeito que dará ao usar o item. } if getPlayerLevel(cid) > 5000 then doPlayerSendCancel(cid, "Você só pode usar esse item se for abaixo do level 5000.") return true end if getPlayerStorageValue(cid, config.exhausted) < os.time() then setPlayerStorageValue (cid, config.storage, config.timeForUse * 60 * 60 + os.time()) setPlayerStorageValue (cid, config.exhausted, config.timeExhausted * 60 * 60 + os.time()) doRemoveItem(item.uid,1) setPlayerStorageValue (cid, config.toKnow, 1) doSendMagicEffect (getThingPos(cid), config.effect) doPlayerSendTextMessage (cid, 19, "Você ganhou acesso a Cave Exclusiva por 12 horas. Aproveite!") else doPlayerSendTextMessage (cid, 19, "Você já usou esse item. Espere 2 horas para usa-lo novamente.") end return true end
-
Ajuda Erro em script
Pega o ID do item que da acesso a cave exclusiva no seu server, abre o actions.xml e procura por ele e posta o que achar
- COMO TIRAR MUTED DO OT
-
Ajuda Erro em script
Vai em actions/script e la deve ter um arquivo chamado "caveex" ou algo parecido. Abra ele e procure por "timeExhausted = X" O X é a quantidade de tempo (em horas) que o player vai poder usar o item novamente.
-
Ajuda Erro em script
Substitui por isso aqui e ve se vai: local function filtrateString(str) if type(str) ~= "string" then return false end local first, last = 0, 0 local second, final = 0, #str for i = 1, #str do if string.byte(str:sub(i,i)) == string.byte('a') then first = i + 2 for t = first, #str do if string.byte(str:sub(t,t)) == string.byte(' ') then last = t - 1 break end end end if string.byte(str:sub(i,i)) == string.byte('b') then second = i + 2 end end return {str:sub(first, last), str:sub(second, final)} end local positions = { [1] = {{x = 2435, y = 499, z = 7}, {x = 2578, y = 593, z = 7}}, [2] = {{x = 2445, y = 390, z = 7}, {x = 2588, y = 487, z = 7}}, [3] = {{x = 2410, y = 280, z = 7}, {x = 2520, y = 377, z = 7}}, [4] = {{x = 2423, y = 167, z = 7}, {x = 2561, y = 271, z = 7}}, [5] = {{x = 2457, y = 252, z = 6}, {x = 2520, y = 302, z = 6}}, [6] = {{x = 1932, y = 402, z = 7}, {x = 2081, y = 459, z = 7}}, [7] = {{x = 2194, y = 469, z = 6}, {x = 2282, y = 543, z = 6}}, [8] = {{x = 2058, y = 559, z = 7}, {x = 2135, y = 632, z = 7}}, [9] = {{x = 2049, y = 458, z = 9}, {x = 2133, y = 528, z = 9}}, [10] = {{x = 2068, y = 325, z = 8}, {x = 2160, y = 405, z = 8}}, [11] = {{x = 2592, y = 507, z = 7}, {x = 2730, y = 597, z = 7}}, [12] = {{x = 2609, y = 399, z = 7}, {x = 2723, y = 489, z = 7}}, [13] = {{x = 2526, y = 318, z = 7}, {x = 2580, y = 370, z = 7}}, [14] = {{x = 2267, y = 161, z = 7}, {x = 2398, y = 269, z = 7}}, [15] = {{x = 2769, y = 505, z = 7}, {x = 2919, y = 601, z = 7}}, [16] = {{x = 2245, y = 315, z = 7}, {x = 2393, y = 419, z = 7}}, [17] = {{x = 2598, y = 316, z = 7}, {x = 2655, y = 370, z = 7}}, [18] = {{x = 2411, y = 16, z = 7}, {x = 2557, y = 124, z = 7}}, [19] = {{x = 1949, y = 62675, z = 7}, {x = 2011, y = 62767, z = 7} }, [20] = {{x = 1875, y = 62774, z = 7}, {x = 1930, y = 62753, z = 7}}, [21] = {{x = 1773, y = 62774, z = 7}, {x = 1832, y = 62863, z = 7}}, [22] = {{x = 1777, y = 62697, z = 7}, {x = 1849, y = 62772, z = 7}}, [23] = {{x = 697, y = 62607, z = 6}, {x = 878, y = 62710, z = 6}}, [24] = {{x = 895, y = 62607, z = 7}, {x = 966, y = 62674, z = 7}}, [25] = {{x = 969, y = 62611, z = 6}, {x = 1097, y = 62694, z = 6}}, [26] = {{x = 988, y = 62701, z = 7}, {x = 1108, y = 62787, z = 7}}, [27] = {{x = 1761, y = 62627, z = 9}, {x = 1844, y = 62689, z = 9}}, [28] = {{x = 1680, y = 62660, z = 8}, {x = 1756, y = 62732, z = 8}}, [29] = {{x = 1591, y = 62699, z = 7}, {x = 1664, y = 62772, z = 7}}, [30] = {{x = 1516, y = 62591, z = 7}, {x = 1664, y = 62688, z = 7}}, [31] = {{x = 1425, y = 62715, z = 7}, {x = 1475, y = 62755, z = 7}}, [32] = {{x = 1123, y = 62685, z = 6}, {x = 1240, y = 62763, z = 6}}, [33] = {{x = 1270, y = 62721, z = 6}, {x = 1397, y = 62806, z = 6}}, [34] = {{x = 1297, y = 62599, z = 6}, {x = 1357, y = 62692, z = 6}}, [35] = {{x = 1372, y = 62602, z = 6}, {x = 1516, y = 62672, z = 6}}, [36] = {{x = 2730, y = 62701, z = 7}, {x = 2808, y = 62754, z = 7}} ---[ } function onThink(interval, lastExecution) for i = 1, #positions do local players = getPlayersInArea(positions[i][1], positions[i][2]) if players then for _, pid in pairs(players) do if getPlayerAccountId(pid) ~= tonumber(filtrateString(getGlobalStorageValue(822080+i))[1]) or getPlayerAccountId(pid) == tonumber(filtrateString(getGlobalStorageValue(822080+i))[1]) and tonumber(filtrateString(getGlobalStorageValue(822080+i))[2]) <= os.time() then doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid))) doPlayerPopupFYI(pid, "Seu tempo como dono da Cave ".. i .." expirou. Você foi levado até seu templo.") end end end end return true end
-
(Resolvido)"Ajuda +REP" Load Monster erro
Vai no monsters.xml e ve como os bixos estão registrados. Se o arquivo do Draken Elite por exemplo estiver nomeado com letras minusculas (draken elite.xml), no monsters.xml a tag deve estar do mesmo jeito. O nome do arquivo do monstro no linux tem q ser registrado exatamente igual sem diferenca de letras. Exemplo: --> Rat.xml no monsters.xml deve estar registrado como: file="Rat.xml"/> \/ Se o "R" for usado minusculo não irá encontrar --> DEMON.XML no monsters.xml deve estar registrado como: file="DEMON.xml"/> --> bat.xml no monsters.xml deve estar registrado como: file="bat.xml"/>
-
[Ajuda/Pedido] Spell
Spell Creator acho q te ajudaria bastante.
- Gesior Layout Dragon
-
(Resolvido)Script staminia Regeneração
Este deve funcionar
- Gesior Layout Dragon
-
(Resolvido)Ajuda Com Ip-Fixo
-Primeiro vc deve abrir as portas no Firewall do windows. ¹Clique aqui -Abra as portas do seu roteador. ²Clique aqui - Crie um IP fixo. ³Clique aqui Se abrir todas as portas corretamente e seguir esses passos, não vai mais precisar de hamachi. Caso esteja com dificuldade de abrir as portas do roteador pela maneira do tutorial, ou o seu modelo for diferente, vc pode tentar usar este OUTRO MÉTODO. # Para o IP que vc criou no No-Ip funcionar, o DUC (que é baixado no site) deve estar aberto, e na config.lua ser colocado o seu IP do DUC, e n do Hamachi
- Abrir Porta Roteador Ubiquiti
Informação Importante
Confirmação de Termo