Líderes
-
-
-
xWhiteWolf
HéroiPontos3605Total de itens -
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 04/20/15 em %
-
[C++] Cor das mensagens nos channels
[C++] Cor das mensagens nos channels
PlaYerZ e 3 outros reagiu a Deadpool por uma resposta no tópico
4 pontosBom, postarei como colocar para gm, adm, cm falar em red nos channels e tutores e senior tutores em orange. testado em: tfs 0.3.6 |854| pl Em chat.cpp procure por: bool ChatChannel::talk(Player* player, SpeakClasses type, const std::string& text, uint32_t _time/* = 0 e vai ter uma linha assim: if(it == m_users.end()) return false; de 2 quebra de linhas e adicione em baixo: SpeakClasses ntype = type; uint16_t channelId = getId(); if (channelId == 5) { if (player->getGroupId() == 6) { ntype = SPEAK_CHANNEL_RN; } else if (player->getGroupId() == 5) { ntype = SPEAK_CHANNEL_RN; } else if (player->getGroupId() == 4) { ntype = SPEAK_CHANNEL_RN; } else if(player->getGroupId() >= 2) { ntype = SPEAK_CHANNEL_O; } } Agora, um pouco em baixo disso que você adicionou, tem essa função: it->second->sendToChannel(player, type, text, m_id, _time); troque por essa: it->second->sendToChannel(player, ntype, text, m_id, _time); ou, é só adiciona um "n", no type da primeira linha rs Como Editar os Groups ? (player->getGroupId() == 5) "5" -> Grupo do player, no caso aqui seria CM4 pontos -
[Event New] Últimos Sobreviventes
[Event New] Últimos Sobreviventes
Luis Matheus e 3 outros reagiu a Ceos por uma resposta no tópico
4 pontosOpa galerinha do Tk, resolvi trazer um evento para vocês. O script foi testado. Atenção, Funciona da seguinte maneira o admistrador ira falar "/eventoarena" 5 apenas 5 player poderão participar do evento, depois de entrar passara uns minutos, e começara 1 wave, e assim por diante, Para ganhar o evento você tem que ficar vivo ate a ultima wave. Vamos ao que interessa. Vá na pasta do seu servidor crie um .xml em mods chamado eventoarena.xml Configuração do evento. delay = 1, -- e onde o minuto que cada invasão ira aparecer. posicaoPlayer = {x = 2426,y = 2499,z = 8}, -- posição que o player ira cair quando teleport for aberto. posicaoArena = {{x = 2418,y = 2491,z = 8},{x = 2434,y = 2507,z = 8}}, -- Ponta a ponta da arena. posicaoTp = {x = 2501, y = 2499, z = 7}, -- posição que o teleport aparecera, leveis = { -- você ira colocar os monstro da wave. Bom e isso caso você precisar de ajuda em algo poste aqui no comentário. Creditos: 50% Vodkart 50% Septy4 pontos -
[8.54] Servidor + Client Naruto B&W [EXCLUSIVO]
OLÁ USUARIOS DO TIBIA KING .. HOJE ESTAREI TRAZENDO UMA NOVIDADE .. O SERVIDOR DE NTO EXCLUSIVO DO NTO BLACK & WHITE(AKELE OT NOVO QUE FOI CRIADO A 1 MES POR E MIN E POR O [ADM] Johnatan). VALE LEMBRAR QUE O NTO BLACK WHITE FOI UM DOS SERVIDORES DE NARUTIBIA QUE MAIS CRESCEU NOS ULTIMOS TEMPOS .. EM APENAS 1 SEMANA DE NTO JÁ ATINGIMOS A META DE 70 ~ 80 USUARIOS ONLINE FIXOS DIARIOS, E ESSE É O SERVIDOR MAIS RECENTE DO NTO BLACK WHITE BASEADO NO DO SERVIDOR MADARA RINNEGAN EDITADO POR MIN E POR O JOHNATA. ANTES DE MAIS NADA GOSTARIA DE EXPLICAR O MOTIVO DE TAR POSTANDO O SERVER .. BEM O JOHNATAN ERA QUEM FAZIA PRATICAMENTE TUDO NAS ATUALIZAÇÕES E TAALS .. POREM ELE PAROU COM NTO AI TIVE QUE DESMONTAR O NTO B&W PORQUE EU NÃO TINHA CONDIÇÕES PRA DAR CONTA DO NTO SOZINHO. CHEGA DE BLABLA E VAMOS LÁ!! [+] NOVIDADES & CARACTERISTICAS [+] ERROS E BUGS [+] PRINTS DO SERVER [+] DOWNLOAD [+] CREDITOS [+] NOVIDADES & CARACTERISTICAS [+] ERROS E BUGS [+] PRINTS DO SERVER [+] Downloads Servidor Naruto B&W: Clique Aqui Client(descompilado): Clique Aqui [+] Creditos - Madara Rinnegan (servidor base) - [ADM] Johnata Editar Praticamente Todo o Servidor - Eu Por umas Besteiras q eu Coloquei e Por Postar GOSTOU DO SERVIDOR? DA UM REP++2 pontos
-
[Spell] Katara's Sense
[Spell] Katara's Sense
Sanieg e um outro reagiu a xWhiteWolf por uma resposta no tópico
2 pontosFala pessoal do TK, hoje vim trazer uma spell bem bonita que veio na minha cabeça. em 14:06 desse vídeo dá pra ver oque eu tentei criar http://tvuol.uol.com.br/video/avatar--livro-3-fogo--ep-48--a-manipuladora-de-fantoches-04028C98306ED8A90326/ mas por conta dos efeitos precários que o Tibia possui não ficou tão legal qnt eu imaginei mas em todo caso eu decidi compartilhar o código com vocês. O resultado final foi esse daqui: Se vocês se interessaram é só criar um arquivo em spells/scripts e colocar isso daqui dentro dele: function onCastSpell(cid, var) local config = { spins = 1, delay = 120 } local k = checkGroundInArray(getPositionsByDirection(cid), grass) if #k < 1 then doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) doPlayerSendCancel(cid, "You need to be around grass to cast this spell.") return false end for i = 1, #k do addEvent(function() if isPlayer(cid) then local pos = k[i] local grama = getThingFromPos(pos) doTransformItem(grama.uid, driedgrass[math.random(1, #driedgrass)]) a = (i < 9) and doSendMagicEffect(pos, 1) or doSendMagicEffect(pos, 53) doSendDistanceShoot(pos, getThingPos(cid), 36) end end, (config.delay/2) * i) end range = #k > 4 and 7 or 5 addEvent(function() if isPlayer(cid) then local pos = k[i] local lastPos = false for i = 1, range do local position = getPositionByDirection(getCreaturePosition(cid), getCreatureLookDirection(cid), i) if isWalkable(position, false, true, true) then local creature = getTopCreature(position) if (creature.uid > 0) then doSendDistanceShoot(getCreaturePosition(cid), getCreaturePosition(creature.uid), 36) doTargetCombatHealth(cid, creature.uid, COMBAT_PHYSICALDAMAGE, -142 * (#k - 1), -150 * (#k - 1), CONST_ME_NONE) break end lastPos = position end if lastPos then doSendDistanceShoot(getCreaturePosition(cid), lastPos, 36) end end end end, (config.delay + (4 * config.delay * config.spins)) ) addEvent(function() for j = 1, #k do addEvent(function() local pos = k[j] local grama = getThingFromPos(pos) if isInArray(driedgrass, grama.itemid) then doTransformItem(grama.uid, grass[math.random(1, #grass)]) end end, (config.delay/2) * j) end end, config.delay * 100) spinRotate(cid, config.spins, config.delay) return true end e em spells.xml vc adiciona: <instant name="TK" words="kataras sense" lvl="8" mana="35" prem="0" casterTargetOrDirection="1" exhaustion="1500" needlearn="0" event="script" value="nomedoarquivo.lua"> </instant> OBS: Note que esse script usa funções da new library. Você pode conseguir essas funções aqui: http://www.tibiaking.com/forum/topic/46015-new-library-v-10/ Espero que tenham curtido, esse é só o começo! Testada em TFS 0.3.6 Tibia 8.54.2 pontos -
Como tirar imagens in-game decentes
Como tirar imagens in-game decentes
BangxD e um outro reagiu a Caronte por uma resposta no tópico
2 pontosComo tirar imagens in-game decentes. créditos: Daniel. Abra seu client e vá em: Open Options: Graphics Advanced Don't Stretch/Shrink Game Window. Programa Pra tirar PRINTS recomendado! PRNTSCR.COM Basta baixar e apertar a tecla "Print Screen": Para melhorar! Um jeito da print sair perfeita, é escurecer o ambiente e utilizar itens de iluminação. Para isso, você pode esperar o ambiente ficar escuro ou utilizar este script: http://www.tibiaking.com/forum/topic/48074-tutorial-god-ambient-light/ Itens de iluminação recomendados! Torch Frozen Starlight Magic Light Wand Necromancer Shield ANTES! DEPOIS2 pontos -
(Resolvido)[PEDIDO] Skull Remover e Change Sex
(Resolvido)[PEDIDO] Skull Remover e Change Sex
arthur122222 e um outro reagiu a Flavio S por uma resposta no tópico
2 pontosChange sex : http://www.tibiaking.com/forum/topic/41033-tfs-1011-change-sex-por-item/ Skull remover : http://www.tibiaking.com/forum/topic/38808-tfs-10-frag-remover/2 pontos -
[TFS 0.3][8.54] Digimon World Cerberus Online vrs 1.1
Dependendo da Repercussão desse server irei voltar a atualiza-lo para os player , qualquer duvida pergunte aqui que responderei assim que possível. Atualizações do Server Vrs.1.1: Golden Arena Cliente Server Alguns Bugs básicos(item.otb,cliente.dat, client.spr) Informações Server: Sistema VIP Mapa próprio 3 cidades 1 evento automático - funcionando 251 digimons 100% Corpos dos digimons 30% Capturar digimons 100% E mais! Imagens: Download server: http://www.4shared.com/rar/mCAKkkoIba/DigimonCerb-Vrs11_-wwwdigimonc.html Download cliente: http://www.4shared.com/rar/Ac8d1Wyq/cliente_digimoncerb_vrs1.1.html Scan: Use o scan automático do 4Shared! Créditos TFS Team Cerberus Animal Pak - pelo escrito acima xD...1 ponto
-
[v32] GlobalFull 11/12 - New Asuras, Falcons, Warzones 4,5,6 . (Updates Frequentes)
[v32] GlobalFull 11/12 - New Asuras, Falcons, Warzones 4,5,6 . (Updates Frequentes)
anderson de souza reagiu a Qwizer por uma resposta no tópico
1 pontoGlobal 11/12x [v32] - New Falcons - New Asuras - Warzone 4,5,6 - Exercise Training - Raids 100% - Monstros 100% - Trainer Offline 100% - Trainer Online 100% - Taming system funcionando 100%; - Database completa - War System 100% - Global MAP Full - Store 100% - Imbuement - Prey System - Entre outros sistemas. Projeto no: GITHUB Scan Vírus Total IMAGES Créditos:1 ponto -
New Library v. 1.2
New Library v. 1.2
Underewar reagiu a xWhiteWolf por uma resposta no tópico
1 pontoFala galera, hoje vim trazer pra vocês uma nova biblioteca de funções que eu venho desenvolvendo, pretendo ir atualizando esse tópico constantemente sempre adicionando funções novas e explicando a utilização delas. Algumas funções que eu coloquei aqui estão presentes na OTAL também, porém algumas eu fiz pequenas correções de forma que essa lib poderia facilmente substituir a OTAL sem grandes problemas (pelo menos se você utilizava apenas as funções básicas da otal) Todas as funções que não tem -- nome do autor do lado dela foram feitas por mim, xWhiteWolf ou Night Wolf (NW). O restante delas são créditos dos devidos autores, apenas coloquei pois considero funções vitais no server de cada um. Crie um arquivo em data/lib chamado 075 - White Wolf Functions.lua e coloque o seguinte código dentro: Agora eu vou explicar oque cada função faz porque de nada adianta lançar uma lib e não explicar oque ela faz não é mesmo? hahaha Obs inicial: quando uma função tiver em seus parametros um [] significa que oque está dentro do colchetes não é um parâmetro obrigatório. Como usar: doShowTimeByPos(cid, getCreaturePosition(cid), 20, 20) Irá fazer uma contagem regressiva na posição que o player se encontra começando de 20 e mandando a mensagem na mesma cor da fala dos monstros. Essa função é bem útil em actions/spells para fazer contagem de tempo em runas como a magic wall e ver quanto tempo falta pra magic wall sumir) Obs: Espero que ajude bastante pessoas a entender sobre funções, eu utilizei cid como o principal uid das funções nos exemplos mas você pode muito bem utilizar outros uids, fica a critério seu. Qualquer dúvida comentem abaixo que eu vou tentar ajudar da melhor maneira. Ahhh, isso daí foi testado em 8.54 mas deve funcionar em quase todas as versões que tenham as funções básicas do TFS. EDIT: Pessoal, agora é sério, essa lib tem fácil umas 600 linhas, das quais umas 500 eu devo ter codado sozinho (na mão, linha por linha). Eu tive todo o trabalho de testar cada uma delas e oque eu peço é o mínimo de gratidão e respeito. Se eu te ajudei clique em Gostei, se você tiver alguma dúvida eu to me colocando a disposição de responder qualquer coisa relacionada ao tópico, mesmo que você não saiba nem oque é uma lib apenas venha aqui e escreva sua dúvida. EDIT 2: Duas novas funções adicionas, espero que gostem! EDIT 3: Três novas funções adicionadas juntamente com suas respectivas explicações.1 ponto -
OTChecker - Notificações de players e servers
OTChecker - Notificações de players e servers
ManoTobira reagiu a Wolven por uma resposta no tópico
1 pontoOTChecker é uma ferramenta para jogadores e OT admins. O sistema coleta informações de jogadores e OT Servers e as utiliza para enviar notificações. Para jogadores: Encontre os melhores servidores e veja informações legais sobre eles. Você pode receber notificações quando um jogador for visto online ou avançar de level. Além disso, você pode seguir seus servers favoritos e saber quando eles estiverem offline, dentre outras opções. Para admins: Dê ao seu OT uma página bonita, mais visibilidade e veja informações úteis. Configure canais de notificação e aumente a competitividade entre seus jogadores. Diversas opções estão disponíveis. Beta test liberado! Lembre-se de selecionar o pacote Beta Tester ao criar sua conta. Site: https://otchecker.net Alguns guias: Como adicionar um server na OT List/Grid Aumentando o tamanho máximo das Network Messages Configurando notificações de OTServers e Players1 ponto -
TFS 0.4 CAST
TFS 0.4 CAST
Lurk reagiu a luanluciano93 por uma resposta no tópico
1 pontoOlá pessoal, tive a iniciativa de criar esse tópico para atualizar e otimizar as sources do TFS 0.4 DEV que é uma das mais usadas no mundo do otserv. Conteúdo totalmente gratuito e pretendemos melhora-lo cada vez mais. Qualquer um pode colaborar, postando bugs, erros, otimizando códigos, comentar aqui no tópico, toda ajuda é bem vinda, vamos tornar essa a melhor source disponível. Conto com vocês. Versão do Tibia: 8.60 Alguns sistema já implementados na source: • TFS 0.4 DEV rev 3777 (by TFS Team) • Anti-Divulgação (.servegame, .no-ip, .net, .com, .org, .pl, .biz, .br, .sytes, .info) • War System • Cast System (by Summ) • Retirado bugs de anti-push .. • Retirado bugs de elfbot ... • Retirado erro de não aceitar outros items ... • Retirado erro de Malformed File ... • Add creatureevent onMoveItem() ... • Add função getCreaturePathTo () ... • E vários outros! Complementos: • Add cast System (passo a passo): [AQUI] • Pode add o comando na config.lua: healthHealingColor = COLOR_GREEN -- [podendo alterar a cor]. manaHealingColor = COLOR_DARKPURPLE -- [podendo alterar a cor]. Downloads: • Distro Compilada 32x • Distro Compilada 64x • Sources 7 TESTADO EM WINDOWS, DEBIAN 7.8, UBUNTU 12.04 E 14.05! • Compilar em Linux: • Erros para arrumar: Obrigado ao runeraserver pelo incentivo em fixa-la para linux E é isso pessoal, espero ter ajudado, abraços1 ponto -
PGalaxy Atx
1 pontoPGalaxy Atx Olha Galera Estou Aqui de Novo Para Posto Mais Um Serve De Poketibia Espero Que gostei Desse Serve Esse Serve E O Pokemon Titanium • Menu: ├ Informações; ├ Ediçoes; ├ Erros; ├ Prints; ├ Download; └ Creditos. Informações Básicas: •Senha do god: god/god. •Adicionado pokemons da 6ª Geração (nao esta completa) •Server com System de level !. •Pokemons das gerações: 1 - 2 - 3 - 4 shinys •Client com espaço ainda •novas paredes, pisos, e itens •Shinys Espalhado pelo mapa. •Adicionada Varias quest •Duel System. •Moves system (m1 a m12). •Maximo 6 pokemons na bag. •Order 100%. •Sprites Reformuladas Erros do Servidor Nenhum que eu saiba Créditos Aline PGalaxy Team Gabrieltxu Slicer E Eu Por Editar Umas Coisas Print Link Do Serve>> http://www.mediafire.com/download/ky7672l9eyv1hpe/PGalaxy+Server.rar Link Do Client>> http://www.mediafire.com/download/1sd46xdiyd9clkl/PGalaxy+Atx.rar1 ponto
-
[8.60] Norah RPG Server
[8.60] Norah RPG Server
Jbracovich reagiu a .HuRRiKaNe por uma resposta no tópico
1 pontoInformações: Mapa próprio estilo RPG; Diversos Respaws; Novas Quests; Novos Items; Novos Monstros: Dark Mage, Hades, Hegard, Royal Hero entre outros; Guild War; Novos Sistemas; Novo Sistema de Trainers; Rookgaard, (Opcional); Servidor 100% estável; E mais! Imagens: Download Server: Mega 4Shared Scan Server: Virustotal Créditos: Norah Team tfs Team SoulBreaker SmoOkeR - Ajeitar versão 8.60, itens iniciais, configurar para rodar em sqlite(Também funcional em mysql)!1 ponto -
Variação de Dano Reformulada(Source)
Variação de Dano Reformulada(Source)
FeeTads reagiu a rohfagundes por uma resposta no tópico
1 pontoOla, atualmente a variação de dano é enorme e não importa qual arma você usa e quanto de skill você tem, na formula o dano minimo é sempre 0. Então vou mostrar pra vocês onde pode ser editado para resolver esse problema • Versão - Otx 2(final) -- Baseado na Tfs 0.3.7 • Em weapons.ccp procure por: Nessa parte: int32_t damage = -random_range(0, (int32_t)maxDamage, DISTRO_NORMAL); Troque por: int32_t damage = -random_range((int32_t)maxDamage/2, (int32_t)maxDamage, DISTRO_NORMAL); Sendo assim o dano de fist tera uma variedade de danomaximo/2 a danomaximo • Agora para editar o dano de arma, procure: Nessa parte: return -random_range(0, ret, DISTRO_NORMAL); Troque por: return -random_range(ret/2, ret, DISTRO_NORMAL); Sendo assim o dano de (sword,axe e club) terá uma variedade de danomaximo/2 a danomaximo • Agora dano de arma elemental, procure: Nessa parte: return -random_range(0, ret, DISTRO_NORMAL); Troque por: return -random_range(ret/2, ret, DISTRO_NORMAL); Sendo assim o dano elemental de (sword,axe e club) terá uma variedade de danomaximo/2 a danomaximo • Agora distance, procure:1 ponto -
[Resolvido] 30 Dias de VIP em X Item
[Resolvido] 30 Dias de VIP em X Item
Yago Blind. reagiu a Ootsutsuki por uma resposta no tópico
1 pontoPesquisei Muito sobre isso mas não achei nada relacionado só achei á premium points então resolvi trazer isso, Quando você clicar em X item ganha 30 dias de premium account Então vamos la primeiro crie um arquivo chamado ootvipdays em data/actions/scripts e adicione isso dentro: 1° Verde: Mensagem que irá aparecer ao você clicar no item Azul Claro: Efeito que irá aparecer ao clicar no item Laranja: Dias que você irá ganhar 2° depois vá em data/actions/actions.xml e adicione isso: Verde: ID do item (obs: você pode deixar o mesmo ID eu acho que funciona Vermelho: Nome do arquivo .lua criado1 ponto -
Concertando o Erro '' gate of expertise '' ( Player vai e Volta )
Concertando o Erro '' gate of expertise '' ( Player vai e Volta )
Jonathan alcino reagiu a Wlucas por uma resposta no tópico
1 pontoFalaaaaa Galera do Tk Beleza? Venho Trazer a Vocês Uma Descoberta Minha, Muitos Passam a Raiva de temtar concertar o tal erro do gate of expertise, que o Player Vae e Volta na Porta, sem Consseguir entrar, Então vou Ensinar a Vocês Como Concertar esse Erro Pequeno e Que Ajuda-rar a Muitos. 1° Vamos em data/movements/walkback 2° abra o walkback.lua 3° adicione isto no finalzinho depois de ' end ' function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) if(not isPlayer(cid)) then return true end if(isContainer(item.uid)) then if(not isInArray(SPECIAL_QUESTS, item.actionid) and item.uid > 65535) then return true end elseif(getTileInfo(position).creatures <= 1) then return true end if(fromPosition.x == 0) then -- player just logged in fromPosition = getTownTemplePosition(getPlayerTown(cid)) doSendMagicEffect(fromPosition, CONST_ME_TELEPORT) end doTeleportThing(cid, fromPosition, true) return true end e Depois Salve e Feche,Testem e me Digam se Gostaram!! Créditos: Valakinhas : Pelo Scripter Eu: Pelo o Post1 ponto -
Scripts by Diabolic
Scripts by Diabolic
rikardoTibiabrbot reagiu a Bruno Minervino por uma resposta no tópico
1 pontoFala galera, venho aqui trazer pra vocês todos meus scripts de iBot. Como eu parei com iBot ja faz um tempo, não sei se estão todos 100%, quem quiser testar e me dar um feedback eu agradeço. [Knight] Yalahar Bog Raider - 100% [Knight] Brimstonebugs Surface - 100% [Knight] Lizards Mortal Combat - 100% [Mage] Oasis Tomb - 100% [Mage] Demon Yalahar (somente hunt) Postman Quest (não fui eu que fiz) Download https://www.dropbox.com/s/eeb8lcg436g7jaa/scriptsiBotByDiabolic.zip1 ponto -
(Resolvido)[Duvida] Script para Players Vip
(Resolvido)[Duvida] Script para Players Vip
MerlinMage reagiu a Wakon por uma resposta no tópico
1 pontoEsse ai é usando o que te passei mesmo: local t = { storage = 13540, effect = 13 } function onStepIn(cid, item, position, fromPosition) if not isPlayer(cid) then return true end if getPlayerStorageValue(cid, t.storage) - os.time() <= 0 then doTeleportThing(cid, fromPosition, true) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você não é VIP.") doSendMagicEffect(getThingPos(cid), t.effect) return true end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Bem-vindo a área VIP.") return true end1 ponto -
(Resolvido)[AJUDA] Sair de rookguard e ganhar montaria
(Resolvido)[AJUDA] Sair de rookguard e ganhar montaria
arthur122222 reagiu a Flavio S por uma resposta no tópico
1 pontoUse : local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local vocation = {} local town = {} local config = { towns = { ["venore"] = 1, ["thais"] = 2, ["carlin"] = 4 }, vocations = { ["sorcerer"] = { text = "A SORCERER! ARE YOU SURE? THIS DECISION IS IRREVERSIBLE!", vocationId = 1, --equipment spellbook, wand of vortex, magician's robe, mage hat, studded legs, leather boots, scarf {{2175, 1}, {2190, 1}, {8819, 1}, {8820, 1}, {2468, 1}, {2643, 1}, {2661, 1}}, --container rope, shovel, mana potion {{2120, 1}, {2554, 1}, {7620, 1}} }, ["druid"] = { text = "A DRUID! ARE YOU SURE? THIS DECISION IS IRREVERSIBLE!", vocationId = 2, --equipment spellbook, snakebite rod, magician's robe, mage hat, studded legs, leather boots scarf {{2175, 1}, {2182, 1}, {8819, 1}, {8820, 1}, {2468, 1}, {2643, 1}, {2661, 1}}, --container rope, shovel, mana potion {{2120, 1}, {2554, 1}, {7620, 1}} }, ["paladin"] = { text = "A PALADIN! ARE YOU SURE? THIS DECISION IS IRREVERSIBLE!", vocationId = 3, --equipment dwrven shield, 5 spear, ranger's cloak, ranger legs scarf, legion helmet {{2525, 1}, {2389, 5}, {2660, 1}, {8923, 1}, {2643, 1}, {2661, 1}, {2480, 1}}, --container rope, shovel, health potion, bow, 50 arrow {{2120, 1}, {2554, 1}, {7618, 1}, {2456, 1}, {2544, 50}} }, ["knight"] = { text = "A KNIGHT! ARE YOU SURE? THIS DECISION IS IRREVERSIBLE!", vocationId = 4, --equipment dwarven shield, steel axe, brass armor, brass helmet, brass legs scarf {{2525, 1}, {8601, 1}, {2465, 1}, {2460, 1}, {2478, 1}, {2643, 1}, {2661, 1}}, --container jagged sword, daramian mace, rope, shovel, health potion {{8602, 1}, {2439, 1}, {2120, 1}, {2554, 1}, {7618, 1}} } } } function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end local function greetCallback(cid) local player = Player(cid) local level = player:getLevel() if level < 8 then npcHandler:say("CHILD! COME BACK WHEN YOU HAVE GROWN UP!", cid) npcHandler:resetNpc(cid) return false elseif level > 31 then npcHandler:say(player:getName() ..", I CAN'T LET YOU LEAVE - YOU ARE TOO STRONG ALREADY! YOU CAN ONLY LEAVE WITH LEVEL 9 OR LOWER.", cid) npcHandler:resetNpc(cid) return false elseif player:getVocation():getId() > 0 then npcHandler:say("YOU ALREADY HAVE A VOCATION!", cid) npcHandler:resetNpc(cid) return false else npcHandler:setMessage(MESSAGE_GREET, player:getName() ..", ARE YOU PREPARED TO FACE YOUR DESTINY?") end return true end local function creatureSayCallback(cid, type, msg) if not npcHandler:isFocused(cid) then return false end local player = Player(cid) if npcHandler.topic[cid] == 0 then if msgcontains(msg, "yes") then npcHandler:say("IN WHICH TOWN DO YOU WANT TO LIVE: {CARLIN}, {THAIS}, OR {VENORE}?", cid) npcHandler.topic[cid] = 1 end elseif npcHandler.topic[cid] == 1 then local cityTable = config.towns[msg:lower()] if cityTable then town[cid] = cityTable npcHandler:say("IN ".. string.upper(msg) .."! AND WHAT PROFESSION HAVE YOU CHOSEN: {KNIGHT}, {PALADIN}, {SORCERER}, OR {DRUID}?", cid) npcHandler.topic[cid] = 2 else npcHandler:say("IN WHICH TOWN DO YOU WANT TO LIVE: {CARLIN}, {THAIS}, OR {VENORE}?", cid) end elseif npcHandler.topic[cid] == 2 then local vocationTable = config.vocations[msg:lower()] if vocationTable then npcHandler:say(vocationTable.text, cid) npcHandler.topic[cid] = 3 vocation[cid] = vocationTable.vocationId else npcHandler:say("{KNIGHT}, {PALADIN}, {SORCERER}, OR {DRUID}?", cid) end elseif npcHandler.topic[cid] == 3 then if msgcontains(msg, "yes") then npcHandler:say("SO BE IT!", cid) player:setVocation(Vocation(vocation[cid])) player:setTown(Town(town[cid])) player:getPosition():sendMagicEffect(CONST_ME_TELEPORT) player:addMount(38) player:teleportTo(Town(town[cid]):getTemplePosition()) player:getPosition():sendMagicEffect(CONST_ME_TELEPORT) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You have received a backpack with starting items for reaching the mainlands.") local targetVocation = config.vocations[Vocation(vocation[cid]):getName():lower()] for i = 1, #targetVocation[1] do player:addItem(targetVocation[1][i][1], targetVocation[1][i][2]) end local backpack = player:addItem(1988) for i = 1, #targetVocation[2] do backpack:addItem(targetVocation[2][i][1], targetVocation[2][i][2]) end else npcHandler:say("THEN WHAT? {KNIGHT}, {PALADIN}, {SORCERER}, OR {DRUID}?", cid) npcHandler.topic[cid] = 2 end end return true end local function onAddFocus(cid) town[cid] = 0 vocation[cid] = 0 end local function onReleaseFocus(cid) town[cid] = nil vocation[cid] = nil end npcHandler:setCallback(CALLBACK_ONADDFOCUS, onAddFocus) npcHandler:setCallback(CALLBACK_ONRELEASEFOCUS, onReleaseFocus) npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:setMessage(MESSAGE_FAREWELL, "COME BACK WHEN YOU ARE PREPARED TO FACE YOUR DESTINY!") npcHandler:setMessage(MESSAGE_WALKAWAY, "COME BACK WHEN YOU ARE PREPARED TO FACE YOUR DESTINY!") npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())1 ponto -
Recentes Trabalhos - Mapping
1 pontoBem criativo, acho que ficaria melhor com um pouquinho de debris... participa da nossa seção de mapping, vamos movimentar ela, e nos ensinar mutuamente ...1 ponto
-
Recentes Trabalhos - Mapping
1 pontoMeio Bosta (?) :~ rs1 ponto
-
[10.51] Global Map [Completo] Melhor da atualidade! -Zombie Event-
[10.51] Global Map [Completo] Melhor da atualidade! -Zombie Event-
joaobrambilla reagiu a Danilopereir4 por uma resposta no tópico
1 pontoTbm fico no aguardo1 ponto -
SharpMapTracker v0.8.15 Travando
1 pontoAlem de querer copiar mapa dos outro ainda reclama?, WTF.1 ponto
-
(Resolvido)[PEDIDO] Player perder house após ficar alguns dias inativo
(Resolvido)[PEDIDO] Player perder house após ficar alguns dias inativo
arthur122222 reagiu a Fir3element por uma resposta no tópico
1 pontohttp://www.tibiaking.com/forum/topic/36529-clean-house-remover-casas-de-quem-n%C3%A3o-loga/1 ponto -
[10.51] Global Map [Completo] Melhor da atualidade! -Zombie Event-
[10.51] Global Map [Completo] Melhor da atualidade! -Zombie Event-
Danilopereir4 reagiu a joaobrambilla por uma resposta no tópico
1 pontoOs três últimos links estão quebrados. Gesior compatível e recomendado: http://www.4shared.c...Master_008.html Trunks TFS 1.0: http://www.tibiaking...10-by-absolute/ TFS 1.0 Compilado: http://www.tibiaking...10-by-absolute/ Alugém pode disponibilizar novamente? Obrigado.1 ponto -
(Resolvido)[Duvida] Script para Players Vip
(Resolvido)[Duvida] Script para Players Vip
hunne reagiu a Drazyn1291 por uma resposta no tópico
1 pontovc usa Premium Account ou instalou algum sistema VIP?1 ponto -
(Resolvido)Erro ao compilar 0.3.6pl1 -
(Resolvido)Erro ao compilar 0.3.6pl1 -
Ryukiimaru reagiu a Fir3element por uma resposta no tópico
1 pontoExclui seu dev-cpp e usa esse: http://www.mediafire.com/download/os3063htddwxlb9/dev-cpp.rar Se tu quer na versão 8.6: https://github.com/Skazw/forgottenserver0361 ponto -
(Resolvido)[PEDIDO] Skull Remover e Change Sex
(Resolvido)[PEDIDO] Skull Remover e Change Sex
arthur122222 reagiu a Wakon por uma resposta no tópico
1 pontoEm "Data/actions/scripts" crie um arquivo chamado changesex.lua e coloque isso dentro: function onUse(cid, item, fromPosition, itemEx, toPosition, isHotkey) local player = Player(cid) if not player:isPzLocked() then player:setSex(player:getSex() == 1 and 0 or 1) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, 'Seu sexo foi alterado.') player:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN) Item(item.uid):remove(1) player:save() else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, 'Você não pode usar em batalha.') end return true end Depois coloque a TAG em "Data/actions" no actions.xml: <action itemid="2456" script="changesex.lua"/> Créditos: Luan -- Apenas modifiquei uma parte. Vou ver se consigo adaptar o skull remover do jeito que você quer e edito esse post. @Edit O remove do Luan já retira os frags, testei aqui...1 ponto -
(Resolvido)[PEDIDO] Skull Remover e Change Sex
(Resolvido)[PEDIDO] Skull Remover e Change Sex
arthur122222 reagiu a Wakon por uma resposta no tópico
1 pontoEspecifique melhor seu pedido, o que será cobrado, tu quer comando ou usar item?1 ponto -
(Resolvido)[Ajudem] Sistema de Vocation Supreme
Mas para trocar as vocaçoes nao seria apenas editar aqui: function exc(cid, sorteio) local pos = getThingPos(cid) local cores = { [5] = 35, [6] = 66, [7] = 210, [8] = 180, [x] = x, [x] = x, [x] = x, [x] = x, } Nos x entre os colchetes coloca as ID das voc e no X antes da virgula coloca os numeros referente a cor da tabela que o lobo passou.1 ponto
-
rme bug ajuda +rep
1 pontoTendi mas qual o motivo de você querer o do Comedinha ao invez do oficial? se for porque quer um Remeres extended,tem esse >> Remeres Map Editor Versão Extended1 ponto
-
(Resolvido)[Ajudem] Sistema de Vocation Supreme
(Resolvido)[Ajudem] Sistema de Vocation Supreme
BielZet reagiu a xWhiteWolf por uma resposta no tópico
1 pontoVai em data/lib/constant.lua e procura algo parecido com isso: É a lista de cores do seu servidor.. no meu a azul escuro é 5 e a claro é 89 TEXTCOLOR_BLUE = 5 TEXTCOLOR_GREEN = 18 TEXTCOLOR_TEAL = 35 TEXTCOLOR_LIGHTGREEN = 66 TEXTCOLOR_DARKBROWN = 78 TEXTCOLOR_LIGHTBLUE = 89 TEXTCOLOR_DARKPURPLE = 112 TEXTCOLOR_BROWN = 120 TEXTCOLOR_GREY = 129 TEXTCOLOR_DARKRED = 144 TEXTCOLOR_DARKPINK = 152 TEXTCOLOR_PURPLE = 154 TEXTCOLOR_DARKORANGE = 156 TEXTCOLOR_RED = 180 TEXTCOLOR_PINK = 190 TEXTCOLOR_ORANGE = 192 TEXTCOLOR_DARKYELLOW = 205 TEXTCOLOR_YELLOW = 210 TEXTCOLOR_WHITE = 215 TEXTCOLOR_NONE = 2551 ponto -
Gui's place - Show oFF
Gui's place - Show oFF
Cat reagiu a Beyond Sky por uma resposta no tópico
1 pontoVoltando a Ativa Salve, salve rapaziada estou voltando a brincar um pouco com mapa com um propósito porém não vim pra falar disso agora vim vergonhosamente mostrar alguns mapas para vocês depois desse tempo parado estou meio fraquinho sem muita criatividade e testei algumas sprites novas do tempo que voltei e tô dando um upgrade em Edron, critiquem, de idéias, avaliem ... todo tipo de opinião (positiva ou negativa) é bem vinda. Entrada do novo porto de Edron Entrada da cidade de Edron Treiners Offline Shops/Houses Leste cidade e entrada do Templo1 ponto -
TFS 0.4 CAST
TFS 0.4 CAST
luanluciano93 reagiu a douglasamata por uma resposta no tópico
1 ponto@Coul, acabei de compilar essa source no Ubuntu 14.04 64 bits. Tive que arrumar alguns erros. Estou montando um tutorial pra postar aqui na thread pra contribuir. Postarei também a distro compilada para quem quiser.1 ponto -
(Resolvido)[Resolvido] Erro move1.lua
(Resolvido)[Resolvido] Erro move1.lua
eliaspalermo reagiu a Snowsz por uma resposta no tópico
1 pontolocal msgs = {"use ", ""} function doAlertReady(cid, id, movename, n, cd) if not isCreature(cid) then return true end local myball = getPlayerSlotItem(cid, 8) if myball.itemid > 0 and getItemAttribute(myball.uid, cd) == "cd:"..id.."" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(myball.uid).." - "..movename.." (m"..n..") esta pronto!") return true end local p = getPokeballsInContainer(getPlayerSlotItem(cid, 3).uid) if not p or #p <= 0 then return true end for a = 1, #p do if getItemAttribute(p[a], cd) == "cd:"..id.."" then if isInArray({"m1", "m2", "m3"}, n) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(p[a]).." - "..movename.." (t"..n..") esta pronto!") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getPokeballName(p[a]).." - "..movename.." (m"..n..") esta pronto!") end return true end end end function onSay(cid, words, param, channel) local storage = 918271 if param ~= "" then return true end if string.len(words) > 3 then return true end if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce precisa de um pokemon para usar as moves.") return 0 end --alterado v2.5 local mypoke = getCreatureSummons(cid)[1] if getCreatureCondition(cid, CONDITION_EXHAUST) then return true end if getCreatureName(mypoke) == "Evolution" then return true end local name = getCreatureName(mypoke) == "Ditto" and getPlayerStorageValue(mypoke, 1010) or getCreatureName(mypoke) local it = string.sub(words, 2, 3) local move = movestable[name].move1 if getPlayerStorageValue(mypoke, 212123) >= 1 then cdzin = "cm_move"..it.."" else cdzin = "move"..it.."" --alterado v2.5 end if it == "2" then doPlayerSendTextMessage(cid, 26, "sounds/105.wav") move = movestable[name].move2 elseif it == "3" then move = movestable[name].move3 elseif it == "4" then move = movestable[name].move4 elseif it == "5" then move = movestable[name].move5 elseif it == "6" then move = movestable[name].move6 elseif it == "7" then move = movestable[name].move7 elseif it == "8" then move = movestable[name].move8 elseif it == "9" then move = movestable[name].move9 elseif it == "10" then move = movestable[name].move10 elseif it == "11" then move = movestable[name].move11 elseif it == "12" then move = movestable[name].move12 elseif it == "13" then move = movestable[name].move13 end if isInArray({1,2,3,4,5,6,7,8,9,10,11,12,13}, it) then mLevel = move.level mCD = move.cd mName = move.name mTarget = move.target mDist = move.dist else m = getItemAttribute(getPlayerSlotItem(cid, 8).uid, "t"..it.."") mLevel = tmList[m].level mCD = tmList[m].cd mName = m mTarget = tmList[m].target mDist = tmList[m].dist end if not move then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn't recognize this move.") return true end --if false and getLevel(mypoke) < mLevel then if getLevel(mypoke) < mLevel then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu Pokemon ainda nao sabe usar essa move.") return 0 end if getPlayerStorageValue(mypoke, storage) > os.time() then return doPlayerSendCancel(cid, "You need wait "..(tonumber(getPlayerStorageValue(mypoke, storage)) - os.time()).." second"..((tonumber(getPlayerStorageValue(mypoke, storage)) - os.time()) > 1 and "s" or "").." to cast this spell.") end if getCD(getPlayerSlotItem(cid, 8).uid, cdzin) > 0 and getCD(getPlayerSlotItem(cid, 8).uid, cdzin) < (mCD + 2) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "voce deve esperar "..getCD(getPlayerSlotItem(cid, 8).uid, cdzin).." segundos para usar "..mName.." novamente.") return 0 end if getTileInfo(getThingPos(mypoke)).protection then doPlayerSendCancel(cid, "Voce nao pode atacar em area protegida.") return 0 end if getPlayerStorageValue(mypoke, 3894) >= 1 then return doPlayerSendCancel(cid, "You can't attack because you is with fear") --alterado v2.3 end if (mName == "Team Slice" or mName == "Team Claw") and #getCreatureSummons(cid) < 2 then --alterado v2.5 doPlayerSendCancel(cid, "Your pokemon need be in a team for use this move!") return 0 end --alterado v2.6 if isCreature(getCreatureTarget(cid)) and isInArray(specialabilities["evasion"], getCreatureName(getCreatureTarget(cid))) and math.random(1, 100) <= 10 then local target = getCreatureTarget(cid) if isCreature(getMasterTarget(target)) then --alterado v2.6 --alterado v2.5 doSendMagicEffect(getThingPos(target), 211) doSendAnimatedText(getThingPos(target), "TOO BAD", 215) doTeleportThing(target, getClosestFreeTile(target, getThingPos(mypoke)), false) doSendMagicEffect(getThingPos(target), 211) doFaceCreature(target, getThingPos(mypoke)) return true --alterado v2.6 end end if mTarget == 1 then if not isCreature(getCreatureTarget(cid)) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Nao ha pokemon na mira.") return 0 end if getCreatureCondition(getCreatureTarget(cid), CONDITION_INVISIBLE) then return 0 end if getCreatureHealth(getCreatureTarget(cid)) <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ja derrotou seu oponente.") return 0 end if not isCreature(getCreatureSummons(cid)[1]) then return true end if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > mDist then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.") return 0 end if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then return 0 end end local newid = 0 if isSleeping(mypoke) or isSilence(mypoke) then --alterado v2.5 doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sorry you can't do that right now.") return 0 else newid = setCD(getPlayerSlotItem(cid, 8).uid, cdzin, mCD) end doCreatureSay(cid, ""..getPokeName(mypoke)..", "..msgs[math.random(#msgs)]..""..mName.."!", TALKTYPE_SAY) local summons = getCreatureSummons(cid) --alterado v2.6 addEvent(doAlertReady, mCD * 1000, cid, newid, mName, it, cdzin) for i = 2, #summons do if isCreature(summons[i]) and getPlayerStorageValue(cid, 637501) >= 1 then docastspell(summons[i], mName) --alterado v2.6 end end docastspell(mypoke, mName) setPlayerStorageValue(mypoke, storage, os.time() + mCD) doCreatureAddCondition(cid, playerexhaust) if useKpdoDlls then doUpdateCooldowns(cid) end return 0 end1 ponto -
(Resolvido)[Ajudem] Sistema de Vocation Supreme
(Resolvido)[Ajudem] Sistema de Vocation Supreme
BielZet reagiu a xWhiteWolf por uma resposta no tópico
1 ponto^acho que vc confundiu os dois tópicos q ele criou.. esse é pra uma certa vocação soltar efeito normalmente, o outro que era pra equipar o ring.. em todo caso esse script que vc postou possui alguns erros de lógica.. corrigindo tudo fica assim: local tableffects = { "' , . '" ,". ' , ' ", "' , . '"} local config = { [5] = 35, -- [vocID] = cor (master sorcerer = 35) [6] = 66, -- elder druid = 66 [7] = 210, -- royal paladin = 210 [8] = 180 -- elite knight = 180 -- esse 180 eh o codigo da cor } local function exc(uid, cores, formato) if getPlayerStorageValue(uid, 4730) == 1 and cores[getPlayerVocation(uid)] then doSendAnimatedText(getThingPos(uid), formato[math.random(1, #formato)], cores[getPlayerVocation(uid)]) addEvent(exc, 1000 * 2, cid, cores, formato) end return true end function onEquip(cid, item, slot) if getPlayerStorageValue(cid, 4730) <= 0 then setPlayerStorageValue(cid, 4730, 1) exc(cid, config, tableffects) end return true end function onDeEquip(cid, item, slot) setPlayerStorageValue(cid,4730, -1) return true end1 ponto -
(Resolvido)[Ajudem] Sistema de Vocation Supreme
local events_id = {} local tableffects = { "' , . '" ,". ' , ' ", "' , . '"} function exc(cid, sorteio) local pos = getThingPos(cid) local cores = { [5] = 35, [6] = 66, [7] = 210, [8] = 180, } if getPlayerStorageValue(cid, 4730) == 1 then doSendAnimatedText(pos, tableffects[sorteio], cores[getPlayerVocation(cid)]) events_id[cid] = addEvent(exc, 1000 * 2, cid, math.random(#tableffects)) end return true end function onEquip(cid, item, slot) if getPlayerVocation(cid) < 5 then return doPlayerSendCancel(cid, "You are not promoted") and doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) end if getPlayerStorageValue(cid, 4730) <= 0 then doCreatureSetStorage(cid, 4730, 1) exc(cid, math.random(#tableffects)) end return true end function onDeEquip(cid, item, slot) setPlayerStorageValue(cid,4730, -1) stopEvent(events_id[cid]) events_id[cid] = nil return true end <movevent type="Equip" itemid="2121" event="script" value="effectitem.lua"/> <movevent type="DeEquip" itemid="2121" event="script" value="effectitem.lua"/>1 ponto
-
(Resolvido)NPCs respondendo em 2 Channels
Tenta fazer assim (não testei): Vai em data/npc/lib e procura por um arquivo chamado npchandler.lua, abra ele e procure pela função: function NpcHandler:greet(cid) e dentro dessa função, apague essa parte: self:say(msg) e veja se deu certo. OBS: é pra apagar onde esta self:say(msg) e não self:say(msg, cid).1 ponto
-
(Resolvido)[PEDIDO] UM TUTORIAL DE COMO CRIAR SPRITES E SPELLS DE SERVIDORES DERIVADOS!
(Resolvido)[PEDIDO] UM TUTORIAL DE COMO CRIAR SPRITES E SPELLS DE SERVIDORES DERIVADOS!
Ryukiimaru reagiu a Factur por uma resposta no tópico
1 pontoOlá, Tutoriais de Sprites você aprende nesta área! http://www.tibiaking.com/forum/forum/190-tutoriais-spriting/ Se você quizer algum programa, utilize Paint, Photoshop ou outro que você achar. Tutorial de Spells você aprende neste tópico! http://www.tibiaking.com/forum/topic/7448-criando-spells-para-seu-servidor/ Espero que tenha gostado REP+ E Melhor Resposta se ajudou! Um bom tutorial pra iniciantes é este que é introdução. http://www.tibiaking.com/forum/topic/35499-apostila-sprite-seduction1-introdu%C3%A7%C3%A3o/1 ponto -
[8.6X - > 10.5X] SIMON HERE GALLERY
[8.6X - > 10.5X] SIMON HERE GALLERY
Beyond Sky reagiu a Simon Here por uma resposta no tópico
1 pontoOutra foto da nova cidade RPG1 ponto -
[9.83] SinX OTServ
1 pontoOlá galera do TK, hoje venho mostrar para vocês o SinX OTServ. Estive trabalhando nele durante mais ou menos 3 meses. Percebi que não posso dar a atenção que um OTServ Online precisa sozinho, então, estou procurando alguém que já tenha experiência em otservs - Já ter comprado dedicado, colocado algum ot online, etc. - para me ajudar a levar o projeto pra frente. Um Pouco sobre o Projeto Amo servidores RPG's. No entanto, não são esses que costumam dar lucro ou muitos players - vide poucas excessões. Por esse motivo, quis mesclar um pouco dos dois mundos. Trazer o mundo do Baiak refeito a partir do meu ponto de vista, mas sem deixar um pouco a essência do RPG de lado. Infelizmente, durante três meses, não consegui fazer muita coisa em sentido RPG, mas já tenho planos no papel. Queria apenas alguem que coloca-se online, que soubesse administrar. E eu, cuidaria do RPG, scrips, etc. Dangerous As Dangerous são quest's especiais que envolve força, agilidade e inteligência em alguns casos. A monotonía de simplesmente matar monstros em uma sala fechada será quebrada - embora em determinadas situações, se exija isso. Agora você deverá fazer algumas ações em determinada ordem, resolver puzzles e eliminar bosses para poder prosseguir. Entenda um pouco sobre o sistema: Item de entrada Toda Dangerous possuí um Item de entrada específico para acessá-la. Todos esses itens podem ser comprados no NPC Oficial - Jhonny, localizado na Central (depot). Sem os itens de entrada, não será possível acessá-los. No momento existem apenas 3 Dangerous. Portanto, há apenas 3 Itens de entrada: Tempo Toda Dangerous possuí tempo. O desafio é você finalizar a dangerous antes do tempo acabar. Normalmente não se deve preocupar-se demais com o tempo. Ele sempre é dado em um valor muito acima. Mas não relaxe demais! Tempo dentro da Dangerous Desistir Em toda a Dangerous há a opção de desistir. Logo no início de cada dangerous, há uma estátua. Ao clicar nela, você será questionado se deseja realmente abandonar esta dangerous. Se concordar, você sairá imediatamente do local. Canal Novamente, toda Dangerouspossue 2 canais. Os canais foram criados para que algum jogador que queira entrar em determinada dangerous, mas outro estiver já fazendo-a, não precise esperar ele terminar. Se o canal 1 estiver ocupado, você poderá fazer a mesma dangerous no canal 2. Sem precisar esperar pelo outro jogador. Leia mais sobre as Dangerous no Website Oficial. CLIQUE AQUI The Black List Minha ideia inicial era criar algumas task's para fazer com que os players acessassem mais as Dangerous. No entanto, eu resolvi expandir esse sistema. Envolvendo pontos e ranks, a The Black List lhe da acesso a quest's especiais e possibilidade de negociar com o próprio NPC. Entenda um pouco mais sobre as The Black List no Website Oficial CLIQUE AQUI Quest's Esse era o meu maior trunfo, no entanto, foi deixado um pouco de lado. Mas isso não significa que o servidor não possua Quests. O problema é que há apenas quests simples no momento. Como as Quest's Addons. Com respeito a Quest's RPGs, tenho poucas. Mas elas existem! Leia mais sobre as Quest's Addons no Website Oficial CLIQUE AQUI Mini Mapa Em três meses consegui fazer apenas isso. Mas acho que da pra começar. Considerações Finais e Imagens Nesses três meses passei grande parte do meu tempo desenvolvendo as dangerous, por isso as outras coisas eu considero como incompletas. Mas isso também não significa que está mal acabado. Está sim em plena capacidade de colocá-lo online no estado em que está. No entanto, gostaria de um bom parceiro pra colocá-lo online pra vê se as coisas podem ir pra frente. Observações CONSIDERO O OTSERV INCOMPLETO APENAS PORQUE ALGUMAS MONTARIAS E ADDONS AINDA NÃO ESTÃO ACESSÍVEIS DENTRO DO SERVIDOR - OU SEJA, NÃO POSSUEM QUEST NEM NPC QUE AS DÊ-LA AO PLAYER. AS DANGEROUS FORAM FEITAS PARA SEREM REALIZADAS EM GRUPO. NO ENTANTO, APENAS ALGUMAS DANGEROUS CONSEGUI TESTAR EM GRUPO. CRIEI UM PEQUENO WEBSITE PARA EXPLICAR ALGUMAS QUEST E SISTEMAS. NÃO TIVE MUITO TEMPO PARA TRABALHAR MELHOR NELE, MAS DA PRO GASTO. http://sinx.webnode.com/ EMBORA NÃO TENHA TEMPO NEM RECURSOS PARA ADMINISTRAR UM OTSERV, ESTOU A DISPOSIÇÃO A TRABALHAR COM QUALQUER UM QUE QUEIRA COLOCAR MEU SERVIDOR ONLINE. ENTRE EM CONTATO COMIGO AQUI PELO TÓPICO OU ME MANDANDO MENSAGEM AQUI MESMO TK.1 ponto
-
[PEDIDO] NTO PANZER OU NTO UNITED
[PEDIDO] NTO PANZER OU NTO UNITED
AllanSilva reagiu a GBs por uma resposta no tópico
1 pontokkkkkkkk, ninguem ira te dar o nto panzer e nto united pq eles fizeram e não publicaram. Agradeço meu Rep+1 ponto -
Naruto White
Naruto White
claudenymg reagiu a Beeny por uma resposta no tópico
1 pontoPode ser Obrigado pelo seu comentário1 ponto -
Dê sua opinião de como seria o OT que atrairia maior número de player
Dê sua opinião de como seria o OT que atrairia maior número de player
Magalhaes92reagiu a KekezitoLHP por uma resposta no tópico1 pontoAcho que o tibia está mto carente, e pessoal não para em um otserv eles quer guerra coisas que não pode fazer no global, entao tem que te coisas novas um serv que der chances pra eles pega items q nunca viu na vida, novidades alem de caça treina mata1 ponto -
Fábrica de Outfits.
1 pontoBom, ultimamente eu vinha estando ocupado lidando apenas com scripts em meu projeto. Por esse motivo, entre outros, to há séculos sem pegar em sprites. Enfim, gostaria de ver a área de Spriting crescendo no fórum, e irei ajudar no que posso. Vai funcionar assim: Você irá fazer seu pedido com o nome do que deseja, e alguma imagem de referência (no mínimo 2, caso passe desse número, coloque-as em spoiler), e eu as faço tento. Como colocar imagens? Bom, eu costumo usar o imgur.com. De upload em sua imagem, e copie o direct link que será formado. Após feito isso, coloque seu link entre [ IMG ] [ /IMG ], ficando: [ IMG ] direct link [ /IMG ] Como colocar em spoiler? [ spoiler ] Conteúdo do spoiler. [ /spoiler ] (Sem os espaços, claro). Farei as Outfits conforme meu tempo livre permitir, sendo que algumas farei apenas de frente, outras frente/costas, e outras com os movimentos, irá depender. Não prometo rapidez, nem qualidade no resultado. Se ficar uma bosta ruim, apaga, é uma doação. Após ter seu pedido atendido, peço para que o membro aguarde no mínimo 7 dias para efetuar outro, obrigado. Vamos lá.1 ponto
-
Evolutions Server
1 pontoÉ uma pena a saída do Alissow. Jogo desde 2006, comecei com 11 anos hoje estou com 19 e posso dizer que deixei de aproveitar muito da minha juventude pra ficar em frente o PC acessando fóruns e perdendo muito tempo principalmente no tibia. Fiz bons amigos, esses não esqueço, contudo chega uma hora em que o compromisso com o estudo e trabalho é muito maior e o pouco tempo de lazer que sobra é mal aproveitado. Equilíbrio é palavra que manda, e no meu caso infelizmente ela não é tão presente. Provavelmente este será o último server que testarei, deixarei alguns dias on e também quero me retirar definitivamente desse jogo. Chegou na hora de acordar pra vida. Meu primeiro post aqui e provavelmente o último. Acompanho esse fórum a um bom tempo, assim como o tibiaking, tibiabr, outerspace... Vou focar nos estudos que é o melhor que o ser humano pode fazer. Bom jogo para aqueles que ficam.1 ponto
-
[NEW] Baiak Edited By Daesung (Zona Donate+4ItensDonate)
[NEW] Baiak Edited By Daesung (Zona Donate+4ItensDonate)
roger157123 reagiu a renan209 por uma resposta no tópico
1 pontoCARA TE JURO POR TUDO Q EH MAIS SAGRADO NESSE MUNDOO MEU SONHO ERA ACHAR UM BAIAK COM TUDO ISOO LOOOL UM BAIAK SÉRIO COM TUDOOOOOOOOOO CARA VALEU JA VO BAIXA AKI UNICO PROBLEMA E Q MEU PC QUEBRO TO NO CEL KKKK JA VO COMPRA 1 COM PROCESSADOR DE 4GB VLW REP+++++++++++++++++++++ PRA TU TO EMOCIONADOO 1°POST?? LOL CONTINUA ASSIM TU TEM FUTURO VEY SERIO MANOLO TINHA TUDOO EU ACHO Q FOI PQ EU RESEI HJ NOSSA VEY KK VO BAIXA LOGO1 ponto -
(Resolvido)[Resolvido] Como fazer para paladin poder healar em quanto ataca?
Olha para paladin atacar mesmo quando estiver healando! Abra Weapons.xml, e adicione essa tag em todas as Ammunitions de Paladin! swing="true" Vai ficar tipo: Antes: <distance id="7367" level="42" event="function" value="default"/> Depois: <distance id="7367" level="42" swing="true" event="function" value="default"/>1 ponto
-
[Resolvido] Mana Rune e Life Rune que encha X quantidade
[Resolvido] Mana Rune e Life Rune que encha X quantidade
Magalhaes92reagiu a markim1986 por uma resposta no tópico1 pontoEntao cara ta tudo pegando certinhu, o unico detalhe é que na mana rune duplico o ID [10/12/2012 12:35:31] > Loading customspells.xml...[Warning - Spells::registerEvent] Duplicate registered rune with id: 2270 Tem como arrumar isso? No life rune tambem funcionou porem, como faço para que o mesmo encha sempre 1200 de life? E gostaria de colocar os dois infinitos, tem jeito? e mais um detalhe aonde mana rune somente Druids e sorceres possam usar. e o life rune somentes os kina. Obrigado1 ponto -
[Dúvida]Quero Saber Como Editar O Limite De Upar Skill No Meu Ot
[Dúvida]Quero Saber Como Editar O Limite De Upar Skill No Meu Ot
Magalhaes92reagiu a Skyforever por uma resposta no tópico1 ponto/\ Está errado ai são os multiplicadores do skill quanto mais alto ai mais ira hitar para almentar o maximo de skill creio que é somente nas sources1 ponto