Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 11/02/11 em todas áreas
-
[Action] Teleporte Conforme O Level
loleo77 e 2 outros reagiu a SkyDangerous por um tópico no fórum
+1 Script crie uma arquivo lua chamado random.lua local sky = { pos = {{x = 1009,y = 1025,z=7},{x = 1009,y = 1026,z=7},{x = 1009,y = 1027,z=7},{x = 1009,y = 1028,z=7}}, level = {100,200,300,400}, fight = true, premium = true, remover = true } function onUse(cid, item, frompos, item2, topos) level = getPlayerLevel(cid) if (sky.fight == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then doPlayerSendTextMessage(cid,22,"Você Precisa estar sem battle para usar o item.") return FALSE elseif not isPremium(cid) and configs.premium then doPlayerSendCancel(cid, "Você precisa de premium account para usar o item.") return FALSE end if (level <= sky.level[1] ) and (sky.remover) then doRemoveItem(item.uid, 1) doTeleportThing(cid,sky.pos[1]) doSendMagicEffect(getPlayerPosition(cid), 10) doPlayerSendTextMessage(cid,22,"Voce foi teleportado para um lugar secreto.") elseif (level >= sky.level[1]) and (level < sky.level[2]) and (sky.remover) then doRemoveItem(item.uid, 1) doTeleportThing(cid,sky.pos[2]) doSendMagicEffect(getPlayerPosition(cid), 10) doPlayerSendTextMessage(cid,22,"Voce foi teleportado para um lugar secreto.") elseif (level >= sky.level[2]) and (level < sky.level[3]) and (sky.remover) then doRemoveItem(item.uid, 1) doTeleportThing(cid,sky.pos[3]) doSendMagicEffect(getPlayerPosition(cid), 10) doPlayerSendTextMessage(cid,22,"Voce foi teleportado para um lugar secreto.") elseif (level >= sky.level[4]) and (sky.remover) then doRemoveItem(item.uid, 1) doTeleportThing(cid,sky.pos[4]) doSendMagicEffect(getPlayerPosition(cid), 10) doPlayerSendTextMessage(cid,22,"Voce foi teleportado para um lugar secreto.") else doPlayerSendTextMessage(cid, 25, "Desculpa nao e possiver teleportar") end end na action.xml cola essa tag <action itemid= "2177" event="script" value="random.lua"/> Explicando o Script: Aqui são as posições que sera teleportado pos = {{x = 1009,y = 1025,z=7},{x = 1009,y = 1026,z=7},{x = 1009,y = 1027,z=7},{x = 1009,y = 1028,z=7}}, Aqui são os levels que podem teleportar level = {100,200,300,400}, Se ele pode estar em battle (True = Ativo | False = Desativado) fight = true, Se ele pode estar premium (True = Ativo | False = Desativado) premium = true, Se ele irá remover o item ao usar (True = Ativo | False = Desativado) remover = true Explore o script , modifique do seu jeito. Depois eu concerto o remover, esqueci dele Agradecimentos: apocarai demonbholder3 pontos -
Pokemon Online Editado
sabrina45 e um outro reagiu a amvnmarcio por um tópico no fórum
Svke Editado!!!!! Fly 100% Houses 100% NPC's 100% Loot 90% (pokemons viam itens de tibia e outros com itens errados) Pokemons Shiny 75% (tinha muitos pokemons Shiny bugados "e ainda tem alguns na verdade" fiz o que estava ao meu alcance) Pokedex 95% (tinha muitos pokemons que não dava pra usar pokedex, os Shiny's por exemplo) MAP 90% svke Moves 98% Fishing 100% Iniciando 100% System Ditto 90% Respaw shiny 80% Respaw Pokemons 98% Rare Candy 100% Box 100% NPC que compra pokemon 100% Teleport 100% Quest Pokeballs-Venom-Cerulean-Pewter-RockTunnel-Gengar-Charizard etc.. Max 6 Poke 100% (o resto vai pro pro DP) Evoluções 100% Cidades 90% Ilhas 90% Ordem 100% Elite Hitmonlee ou Elite Hitmonchan precisa ter 10 Punch Stones. (aqui voce pode configurar do seu jeito) COLOQUEI NPC'S EM CIMA DO CP DE TODAS AS CIDADES COLOQUEI PVP DOWNLOAD serve CLIENT CLIENT ACC DO GOD: god/god Créditos: Primeiramente para Equipe Xtibia, pois sem ela seria muito dificil. Créditos: EU, que me dediquei totalmente ao otserv. Créditos: Masterboby OBS: É MEU PRIMEIRO POST, NAO SEI FAZER O SCAM's.......alguem pode fazer pra mim2 pontos -
[Action] Sumonando Item Tal Posição
aspratextibia e um outro reagiu a SkyDangerous por um tópico no fórum
Estou treinando funções novas e treinando lua Vamos lá , é bem simples, mas irei melhorar cada versão nova. Crie um arquivo lua com nome summon.lua local sky = { pos = {{x = 1009,y = 1025,z=7},{x = 1009,y = 1026,z=7},{x = 1009,y = 1027,z=7}}, level = 100, fight = true } function onUse(cid, item, frompos, item2, topos) level = getPlayerLevel(cid) if (sky.fight == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then doPlayerSendTextMessage(cid,22,"Você Precisa estar sem battle para usar o item.") return FALSE end if (level >= sky.level) and (item.itemid == 2177) then doPlayerRemoveItem(cid, 2177,1) doPlayerSendTextMessage(cid, 25, "Foi sumonado um item no mapa, ache-o") doCreateItem(2160, 1,sky.pos[math.random(1,#sky.pos)]) else doPlayerSendTextMessage(cid, 25, "Level insuficiente") end end Agora cole essa tag no action.xml <action itemid="2177" event="script" value="summon.lua"/> Intendendo o script: Mude a posição onde o item será enviado local pos = {x = 1009,y = 1025,z=7} Mude o level necessário para usar (level > 100) Item a ser removido doPlayerRemoveItem(cid, 2177,1) True quer dizer que quem está battle nao pode usar o item e false que pode usar fight = true Mude apenas o id (primeiro numero) e a quantidade o segundo numero Mude para o id do item que poderá sumonar action itemid="2177" Lembrando irei melhorar a função Agradecimentos: Apocarai DemonBholder fireelement2 pontos -
Criando Um Cliente 100% Proprio
LuisMatheuziin reagiu a Tony por um tópico no fórum
Olá pessoal do Xtibia! Hoje vou ensinar a vocês como criar um cliente 100% próprio para seu servidor de tibia. :forward: Créditos :back: :star2: Jakiin :star2: Trazer ao x-tibia :star2: TiraDuvidas :star2: Fazer o Tutorial Este tópico recebeu destaque em nosso portal!1 ponto -
Gesior Acc Modificado
raspandos reagiu a Natanael Beckman por um tópico no fórum
-=Gesior Acc=- Opa galera estava com um tempo livre e resolvi fazer alguns ajustes no Gesior ACC, ajuste bestas mais que fazem a diferença e adicionei algumas novas abas e novos sistemas no Shop System. Novo background-artwork do tibia.com Removi o Signatures que não server pra nada e ainda facilata alguns acessos a sua database! Removi o Houses.php Adicionei Database Infor Adicionei Most powerfull guilds! Tirei os bug da Guild tinha uma tag que apresentava fraquesas em relação a segunraça do site. Adicionei 2 novas categorias no shop system, VIP Days e ITEM VIP. Adicionei as abas Vantagéns VIP e Confirmção. Adicionei sistema de status VIP em todo o site. Removi o bug dos points. whoisonline modificado. highscores modificado. characters modificado. Veja algumas SS: Bom galera não foi feita grandes mudanças mais as que fiz faz efeito. Download Site Download Xampp 1.7.31 ponto -
Boa noite, Bom, quem me conhece sabe que eu era Spriter/Client Maker, e fiz ate 2 apostilas sobre o assunto. Derrepente me deu vontade de aprender script, e fiquei lendo tutoriais em varios Foruns. E hoje estou aqui pra mostrar meu primeiro trabalho medio divulgado! Nome do Script: Castle War 2.0 ultimate Versão testada: Tfs 0.3.6 ( deve funcionar em versões anteriores ) Descriçao: Um sistema de Guerra de castelos para guilds, deferente :]! Como funciona: O Player vai no castelo, e puxa uma lavanca, e automaticamente, todos da guild dele, tem acesso ao castelo ( porta ). Alem de contar pontos pra ganhar premios por vezes que ele conseguiu conquistar Castelos! ps: esse guarda é configurado para não atacar os ‘donos’ do castelo! :fail: Instalação Actions Va na pasta Data/action/action.xml e adicione isto: Agora vá em Data/actions/scripts , crie esses 4 arquivos abaixo: castlewar1.lua ----------------------------------- ---------SCRIPT por PC98------------ NAO REMOVA OS CREDITOS ----------------------------------- function onUse(cid, item, frompos, item2, topos) ------------------ Inicio das Config ------------ local castle_one_name = "Ratim Bum" -- Nome do castelo 1 local storages = {154154,54321,123123} -- Storages ( se vc eh iniciante, deixe como está...) -------PREMIOs I N D I V I D U A L --------- local premio_por_vezes = 1 -- Premio por vezes de conquista de castelo. (1) = Ativo (0) = Desativa. local premio_vezes = 13 -- Caso ativo, a quantidade de conquista que o player tem, para ganhar PREMIO. local premio = 2472 -- ID do Premio local premio_cont = 1 -- Quantidade do Premio local premio_reset = 1 -- Resetar o contador do premio depois que atingir a meta?? (1) = SIM (0) = NAO -------FIM PREMIOs I N D I V I D U A L --------- ----------------- FIM DAS CONFIG ----------------- local sto_ativ = getGlobalStorageValue(storages[2]) position = getCreaturePosition(cid) if isPlayerGuild(cid) == TRUE then if sto_ativ == 1 or sto_ativ == -1 then guildname = getPlayerGuildName(cid) guild = getPlayerGuildId(cid) guild_sto = getGlobalStorageValue(storages[3]) if guild ~= guild_sto then setPlayerStorageValue(cid,guild_sto,guild) if getPlayerStorageValue(cid,storages[1]) == -1 then setPlayerStorageValue(cid,storages[1],0) end sto_vezes = getPlayerStorageValue(cid,storages[1]) setGlobalStorageValue(storages[3],getPlayerGuildId(cid)) setPlayerStorageValue(cid,storages[1], sto_vezes + 1) sto_vezes_total = getPlayerStorageValue(cid,storages[1]) doBroadcastMessage("O(a) "..getCreatureName(cid).." acabou de conquistar o castelo "..castle_one_name.." para a guild \""..guildname.."\" pela "..sto_vezes_total.."ª vez(s).", 22) doSendMagicEffect(position, 39) if premio_por_vezes == 1 then if getPlayerStorageValue(cid,storages[1]) == premio_vezes then if getItemWeightById(premio,1) <= getPlayerFreeCap(cid) then doBroadcastMessage("O "..getCreatureName(cid).." ganhou uma(o) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!", 21) doPlayerAddItem(cid, premio,premio_cont) doPlayerSendTextMessage(cid, 18, "Voce recebeu o(a) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!") ----------------------------------------------- -- if premio_reset == 1 then -- setPlayerStorageValue(cid,storages[1],0) -- Resetar a contagem end -- ----------------------------------------------- -- else doPlayerSendTextMessage(cid, 18, "Voce nao tem capacidade para ganhar o item. Vamos verificar novamente em 10 segundos!") addEvent(additem,10000,cid,premio,premio_cont,premio_reset) end end end else doPlayerSendCancel(cid,"Este castelo ja foi conquistado pela sua guild!") doSendMagicEffect(position, 2) end else doPlayerSendCancel(cid,"O sistema está desativado") end else doPlayerSendCancel(cid,"É nescessario ter guild para dominar o castelo!") doSendMagicEffect(position, 2) end end ------------------------- por pc98 function additem(cid,premio,premio_cont,premio_reset) if getItemWeightById(premio,1) <= getPlayerFreeCap(cid) then doPlayerAddItem(cid, premio,premio_cont) doPlayerSendTextMessage(cid, 18, "Voce recebeu o(a) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!") if premio_reset == 1 then setPlayerStorageValue(cid,storages[1],0) end stopEvent(additem) else doPlayerSendTextMessage(cid, 18, "Voce nao tem capacidade para ganhar o item. Verificando novamente em 10 segundos!") addEvent(additem,10000,cid) end end ------------------------- por pc98 function isPlayerGuild(cid) if getPlayerGuildName(cid) ~= "" then return TRUE else return FALSE end end castlewar2.lua ----------------------------------- ---------SCRIPT por PC98------------ NAO REMOVA OS CREDITOS ----------------------------------- function onUse(cid, item, frompos, item2, topos) ------------------ Inicio das Config ------------ local castle_two_name = "do Dracula" -- Nome do castelo 2 local storages = {154154,54321,321321} -- Storages ( se vc eh iniciante, deixe como está...) -------PREMIOs I N D I V I D U A L --------- local premio_por_vezes = 1 -- Premio por vezes de conquista de castelo. (1) = Ativo (0) = Desativa. local premio_vezes = 13 -- Caso ativo, a quantidade de conquista que o player tem, para ganhar PREMIO. local premio = 2472 -- ID do Premio local premio_cont = 1 -- Quantidade do Premio local premio_reset = 0 -- Resetar o contador do premio depois que atingir a meta?? (1) = SIM (0) = NAO -------FIM PREMIOs I N D I V I D U A L --------- ----------------- FIM DAS CONFIG ----------------- local sto_ativ = getGlobalStorageValue(storages[2]) position = getCreaturePosition(cid) if isPlayerGuild(cid) == TRUE then if sto_ativ == 1 or sto_ativ == -1 then guildname = getPlayerGuildName(cid) guild = getPlayerGuildId(cid) guild_sto = getGlobalStorageValue(storages[3]) if guild ~= guild_sto then setPlayerStorageValue(cid,guild_sto,guild) ----------------------------------------------------- if getPlayerStorageValue(cid,storages[1]) == -1 then setPlayerStorageValue(cid,storages[1],0) end ----------------------------------------------------- sto_vezes = getPlayerStorageValue(cid,storages[1]) setGlobalStorageValue(storages[3],getPlayerGuildId(cid)) setPlayerStorageValue(cid,storages[1], sto_vezes + 1) sto_vezes_total = getPlayerStorageValue(cid,storages[1]) doBroadcastMessage("O(a) "..getCreatureName(cid).." acabou de conquistar o castelo "..castle_two_name.." para a guild \""..guildname.."\" pela "..sto_vezes_total.."ª vez(s).", 22) doSendMagicEffect(position, 39) if premio_por_vezes == 1 then if getPlayerStorageValue(cid,storages[1]) == premio_vezes then if getItemWeightById(premio,1) <= getPlayerFreeCap(cid) then doBroadcastMessage("O "..getCreatureName(cid).." ganhou uma(o) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!", 21) doPlayerAddItem(cid, premio,premio_cont) doPlayerSendTextMessage(cid, 18, "Voce recebeu o(a) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!") ----------------------------------------------- -- if premio_reset == 1 then -- setPlayerStorageValue(cid,storages[1],0) -- Resetar a contagem end -- ----------------------------------------------- -- else doPlayerSendTextMessage(cid, 18, "Voce nao tem capacidade para ganhar o item. Vamos verificar novamente em 10 segundos!") addEvent(additem,10000,cid,premio,premio_cont,premio_reset) end end end else doPlayerSendCancel(cid,"Este castelo ja foi conquistado pela sua guild!") doSendMagicEffect(position, 2) end else doPlayerSendCancel(cid,"O sistema está desativado") end else doPlayerSendCancel(cid,"É nescessario ter guild para dominar o castelo!") doSendMagicEffect(position, 2) end end ------------------------- Por PC98. function additem(cid,premio,premio_cont,premio_reset) if getItemWeightById(premio,1) <= getPlayerFreeCap(cid) then doPlayerAddItem(cid, premio,premio_cont) doPlayerSendTextMessage(cid, 18, "Voce recebeu o(a) "..getItemNameById(premio).." como recompensa das suas "..premio_vezes.." conquistas!") if premio_reset == 1 then setPlayerStorageValue(cid,storages[1],0) end stopEvent(additem) else doPlayerSendTextMessage(cid, 18, "Voce nao tem capacidade para ganhar o item. Verificando novamente em 10 segundos!") addEvent(additem,10000,cid) end end ------------------------- por pc98 function isPlayerGuild(cid) if getPlayerGuildName(cid) ~= "" then return TRUE else return FALSE end end castledoor1.lua --------------- -----BY PC98------- --------------- function onUse(cid, item, frompos, item2, topos) -------------------------Config----------------------------------------------------------------- door_opened = 1228 -- ID da porta aberta storage_guild = getGlobalStorageValue(123123) -- A 3ª storage configurada em Castle.lua guarda_ativ = 1 -- Caso um invasor tente abrir a porta, sumonar o Monstro "Guarda"?? | (1) = SIM (0) = NAO guarda_cont = 2 -- Caso ativo: a quantidade de guardas a sumonar guarda_pos = {x=123,y=123,y=7} -- Posiçao a ser sumonada os guardas! -------------------------Fim de Config----------------------------------------------------------- if getPlayerGuildId(cid) == storage_guild then doTeleportThing(cid,getThingPos(item.uid)) doTransformItem(item.uid, door_opened) doPlayerSendTextMessage(cid, 22, "Seja bem vindo a vosso castelo!") return TRUE else if guarda_ativ == 1 then doPlayerSendTextMessage(cid, 22, "Guaaaardas, tirem esses invasores daqui!!") for i=1, guarda_cont do doSummonCreature("Guarda", guarda_pos) end return FALSE else doPlayerSendTextMessage(cid, 22, "Este castelo nao pertence a sua guild") return FALSE end end end castledoor2.lua --------------- -----BY PC98------- --------------- function onUse(cid, item, frompos, item2, topos) -------------------------Config----------------------------------------------------------------- door_opened = 1228 -- ID da porta aberta storage_guild = getGlobalStorageValue(321321) -- A 3ª storage configurada ( ja esta configurada o PADRAO ) guarda_ativ = 1 -- Caso um invasor tente abrir a porta, sumonar o Monstro "Guarda"?? | (1) = SIM (0) = NAO guarda_cont = 4 -- Caso ativo: a quantidade de guardas a sumonar guarda_pos = {x=321,y=321,y=7} -- Posiçao a ser sumonada os guardas! -------------------------Fim de Config----------------------------------------------------------- if getPlayerGuildId(cid) == storage_guild then doTeleportThing(cid,getThingPos(item.uid)) doTransformItem(item.uid, door_opened) doPlayerSendTextMessage(cid, 22, "Seja bem vindo a vosso castelo!") return TRUE else if guarda_ativ == 1 then doPlayerSendTextMessage(cid, 22, "Guaaaardas, tirem esses invasores daqui!!") for i=1, guarda_cont do doSummonCreature("Guarda", guarda_pos) end return FALSE else doPlayerSendTextMessage(cid, 22, "Este castelo nao pertence a sua guild") return FALSE end end end Talkactions Va na pasta Data/talkaction/talkactions.xml , clique com o botao direito e depois editar. Adicione esta linha: <talkaction words="/war" event="script" value="castlesystem.lua"/> Agora va na pasta scripts , e crie um arquivo lua chamado castlesystem.lua. castlesystem.lua function onSay(cid, words, param) access = 4 -- Coloque aqui o access requirido para Ativar/Desativar o sistema if param == "start" then if getPlayerAccess(cid) == access then setGlobalStorageValue(54321,1) doPlayerSendTextMessage(cid, 20, "Voce ativou o Castle Wars com suscesso!") return TRUE end elseif param == "stop" then if getPlayerAccess(cid) == access then setGlobalStorageValue(54321,2) doPlayerSendTextMessage(cid, 20, "Voce desativou o Castle Wars com suscesso!") return TRUE end end end Monster O mostro Guarda... aquele que eu disse que pode ficar dentro do castelo :] Instalaçao: va na pasta data/monsters e edite o arquivo Monster.xml , adicionando esta linha: <monster name="Guarda" file="guarda.xml"/> e depois crie um arquivo na mesma pasta chamado guarda.xml guarda.xml <?xml version="1.0"?> <monster name="Guarda" nameDescription="the guard" experience="6000" speed="268" race="Blood"> <health now="20000" max="20000"/> <look type="73" corpse="6080"/> <strategy attack="200" defense="300"/> <targetchange speed="420" chance="1"/> <flags> <flag canpushitems="1"/> <flag canpushcreatures="1"/> <flag attackable="1"/> <flag pushable="0"/> <flag staticattack="90"/> <flag targetdistance="1"/> </flags> <attacks> <attack name="melee" interval="2000" chance="100" min="-400" max="-800" range="1"/> <attack name="physical" interval="4000" chance="25" min="-600" max="-700" range="7" radius="8" target="1"> <attribute key="shootEffect" value="arrow"/> </attack> </attacks> <defenses defense="45" armor="40"/> <immunities> <immunity name="paralyze"/> <immunity name="invisible"/> </immunities> <voices speed="2200" chance="75"> <voice sentence="Grrrrrrrrrr" yell="1"/> <voice sentence="Saia daqui intrusos!" yell="1"/> <voice sentence="Sua resistencia e inutil!" yell="1"/> <voice sentence="Voce vai ser preso!" yell="1"/> </voices> <script> <event name="guard"/> </script> <elements/> <loot/> </monster> Creatures Scripts Bom, agora a gente tem de configurar pra esse bixo nao atacar os donos do castelo neh, se nao ele vai sair porai matando GERAL :fuu:. Vamo nessa. Va na pasta data/creaturescripts e edite o arquivo creaturescripts.xml adicionando esta linha: <event type="combat" name="guard" script="guard.lua"/> agora abra a pasta scripts, que esta na mesma pasta e crie um arquivo chamado guard.lua. guard.lua function onCombat(cid, target) if(not isPlayer(target)) then return TRUE else targets = getMonsterTargetList(cid) if getPlayerGuildId(target) == getGlobalStorageValue(123123) then addEvent(check,1000,cid,targets) return FALSE else return TRUE end end end function check(cid,targets) for i=1, #targets do if getPlayerGuildId(targets[i]) == getGlobalStorageValue(123123) then addEvent(check,1000,cid,targets) return FALSE else stopEvent(check) return TRUE end end end Esta configurado o Monstro! Vamos pra proxima etapa! Instalaçao no MapaEditor Va ate no primeiro castelo, e adicione uma lavanca ( id recomendado: 1945 ) e coloque aonde voce quiser. Depois de colocado a lavanca, clique nela com o botao direito do mouse e va em property. No campo "ActionID:" coloque 9999. Faça a mesma coisa com o segundo castelo, crie la a lavanca, e coloque actionID 8888. Se voce quiser voce pode criar uma porta especial, por onde so os 'donos' do castelo pode entrar, afinal, ja ta instalado! :fail: Coloque ActionID 9998 na porta no primeiro castelo, e actionID 8887 na porta do segundo castelo. Comandos /war start - Para Ativar o sistema ( ja vem ativado por padrao) /war stop - Para desativar o sistema. Bom, eh isso ai. Eh meu primeiro Script ( de muitos ) pro forum XTibia, e espero ta ajudando o forum. Creditos: PC98 - Pelo script MonsterEditor - Pelo mosntro Guarda. ( blackdemon) obs: Esse mesmo script foi postado em outro forum, porem fui eu mesmo que postei ( PC98 - mesmo nick ). abraços!1 ponto
-
Hallows Map V1.0.0 [8.6] Map Editado 70% Novos Itens Novos Comandos Novas Hunt Nova Area VIP Novos Monstros Novas Quest Nova Vocation Templo Reformulado, Agora sem o bug do treiner Sistema de !fly Adicionado (Script Feito Por Mim) Nova Vocation Hallow Fast Attack Para Hallow Promo Novos Comandos: !helmet (compra hallow helmet por 8 vip coins) !armor (compra hallow armor por 8 vip coins) !legs (compra hallow legs por 8 vip coins) !boots (compra hallow boots por 8 vip coins) !shield (compra hallow shield por 8 vip coins) !axe (compra hallow axe por 15 vip coins) !sword (compra hallow sword por 15 vip coins) !wand (compra hallow wand por 15 vip coins ) (Para Todas Vocations) !bow (compra hallow bow por 15 vip coins) !hallowheal (compra hallow healling rune por 15 vip coins) !hallowmana (compra hallow mana rune por 15 vip coins) !Fly Sistema: !fly temple (leva o player ate o temple) !fly depot (leva o plater ate o dp) !fly arena (leva o player ate a arena) Agora Vamos ao que Interessa As ScreenShot (SS) Master VIP Area Teleports Temple Treiner VIP Area Hallow Map V1.0.0 [8.6](Pasta) Dll/Distro/AntiNuker San (Pasta) Este Mapa Foi Um De Meus Primeiros Trabalho, entao aceito criticas e sujestões Créditos Baiak Linnux Gostou ??? Da um :button_ok:1 ponto
-
[Gesior Acc] Vendedo Vip Pelo Pacc
leokjba reagiu a Natanael Beckman por um tópico no fórum
Pra quem usa Gesior ACC! Boa galera, vejo que tem uma grande quantidade de pessoas que necessitam desse sistema para seu OTserv. Depois varias tentativas, pesquisas, conseguir concluir os coder necessarios com ajuda de um amigo de outro fórum o Samme. Vamos lá... Como não o tem o que explicar e nem precisa, apenas faça isso: Vai até htdocs/shopsystem.php, procura por: if($buy_offer['type'] == 'pacc') Selecione todos esse coder a seguir: if($buy_offer['type'] == 'pacc') { $player_premdays = $buy_player_account->getCustomField('premdays'); $player_lastlogin = $buy_player_account->getCustomField('lastday'); $save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_pacc').' (id, to_name, to_account, from_nick, from_account, price, pacc_days, trans_state, trans_start, trans_real) VALUES (NULL, '.$SQL->quote($buy_player->getName()).', '.$SQL->quote($buy_player_account->getId()).', '.$SQL->quote($buy_from).', '.$SQL->quote($account_logged->getId()).', '.$SQL->quote($buy_offer['points']).', '.$SQL->quote($buy_offer['days']).', \'realized\', '.$SQL->quote(time()).', '.$SQL->quote(time()).');'; $SQL->query($save_transaction); $buy_player_account->setCustomField('premdays', $player_premdays+$buy_offer['days']); $account_logged->setCustomField('premium_points', $user_premium_points-$buy_offer['points']); $user_premium_points = $user_premium_points - $buy_offer['points']; if($player_premdays == 0) { $buy_player_account->setCustomField('lastday', time()); } $main_content .= '<center><h2>Premium ACcount added!</h2><b>'.$buy_offer['days'].' days</b> of Premium Account added to the account of player <b>'.$buy_player->getName().'</b> for <b>'.$buy_offer['points'].' premium points</b> from your account.<br />Now you have <b>'.$user_premium_points.' premium points</b>.<br><br><a href="index.php?subtopic=shopsystem">Go to Shop Site</a><br>'; } E substiuir por: Vipsystem by Mock and Lukeskywalker if($buy_offer['type'] == 'pacc') { $player_vip_time = $buy_player_account->getCustomField('vip_time'); $player_lastlogin = $buy_player_account->getCustomField('lastday'); $save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_pacc').' (id, to_name, to_account, from_nick, from_account, price, pacc_days, trans_state, trans_start, trans_real) VALUES (NULL, '.$SQL->quote($buy_player->getName()).', '.$SQL->quote($buy_player_account->getId()).', '.$SQL->quote($buy_from).', '.$SQL->quote($account_logged->getId()).', '.$SQL->quote($buy_offer['points']).', '.$SQL->quote($buy_offer['days']).', \'realized\', '.$SQL->quote(time()).', '.$SQL->quote(time()).');'; $SQL->query($save_transaction); if($player_vip_time > 0) $buy_player_account->setCustomField('vip_time', $player_vip_time + $buy_offer['days'] * 86400); else $buy_player_account->setCustomField('vip_time', time() + $buy_offer['days'] * 86400); $buy_player_account->setCustomField('premium_points', $user_premium_points-$buy_offer['points']); $user_premium_points = $user_premium_points - $buy_offer['points']; if ($player_vip_days >= 1) { } $main_content .= '<center><h2>VIP Days added!</h2><b>'.$buy_offer['days'].' days</b> of VIP days added to the account of player <b>'.$buy_player->getName().'</b> for <b>'.$buy_offer['points'].' premium points</b> from your account.<br />Now you have <b>'.$user_premium_points.' premium points</b>.<br><br><a href="index.php?subtopic=shopsystem">Go to Shop Site</a><br>'; } Vip system by Kydrai. if($buy_offer['type'] == 'pacc') { $player_viptime = $buy_player_account->getCustomField('viptime'); $player_lastlogin = $buy_player_account->getCustomField('lastday'); $save_transaction = 'INSERT INTO '.$SQL->tableName('z_shop_history_pacc').' (id, to_name, to_account, from_nick, from_account, price, pacc_days, trans_state, trans_start, trans_real) VALUES (NULL, '.$SQL->quote($buy_player->getName()).', '.$SQL->quote($buy_player_account->getId()).', '.$SQL->quote($buy_from).', '.$SQL->quote($account_logged->getId()).', '.$SQL->quote($buy_offer['points']).', '.$SQL->quote($buy_offer['days']).', \'realized\', '.$SQL->quote(time()).', '.$SQL->quote(time()).');'; $SQL->query($save_transaction); if($player_viptime > 0) $buy_player_account->setCustomField('viptime', $player_viptime + $buy_offer['days'] * 86400); else $buy_player_account->setCustomField('viptime', time() + $buy_offer['days'] * 86400); $buy_player_account->setCustomField('premium_points', $user_premium_points-$buy_offer['points']); $user_premium_points = $user_premium_points - $buy_offer['points']; if ($player_vip_days >= 1) { } $main_content .= '<center><h2>VIP Days added!</h2><b>'.$buy_offer['days'].' days</b> of VIP days added to the account of player <b>'.$buy_player->getName().'</b> for <b>'.$buy_offer['points'].' premium points</b> from your account.<br />Now you have <b>'.$user_premium_points.' premium points</b>.<br><br><a href="index.php?subtopic=shopsystem">Go to Shop Site</a><br>'; } Bom, esse sistema funciona perfeitamente. E lembre-se na sua database tem que ter vip_time na tabela account. Espero acabar com o pesadelo de varias pessoas ;DD1 ponto -
[Phpmyadmin] Comandos Sql
WalefXavi reagiu a walefxavier por um tópico no fórum
Tenho certeza que esse tutorial irá ajudar MUITA gente que usam o mysql como database de seu otserv. Remover Premium ACC de todos. Não funciona com VIP System . UPDATE account SET premdays=0; Dar 7 dias de Premium ACC a todos os players. Não funciona com VIP System. UPDATE accounts SET premdays = premdays + 7 Mardar todos os Players para o templo. UPDATE players SET posx = X, posy = Y, posz = Z; Colocar todo mundo como Grupo 1 = Player. UPDATE groups SET flags=0,name="Player" WHERE id=1; UPDATE players SET group_id=1; DELETE FROM groups WHERE id<>1; Criar Account Manager. (Original em forgottenserver.sql) INSERT INTO `players` VALUES (1, 'Account Manager', 1, 1, 1, 0, 150, 150, 0, 0, 0, 0, 0, 110, 0, 0, 0, 0, 0, 0, 0, 50, 50, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 0, 10, 10, 10, 0, 0); Remover Red Skull e frags de todos. UPDATE `players` SET `redskulltime`=0; Dar Todas as Blesses aos players. UPDATE `players` SET `blessings`=31; Remover um item especifico (exemplo id 2160) completamente do jogo (depot, players, houses). Ótimo para casos de cloners. DELETE FROM player_depotitems, player_items, tile_items WHERE itemtype = 2160; Deletar players inativos, level baiaxo de 50, 20 days Inativo. Recomendo um backup do seu banco de dados antes desta ação. DELETE FROM players WHERE level < 50 AND lastlogin < UNIX_TIMESTAMP() - 20*24*60*60 Deletou um player do banco de dados? Com este código irá remover todos os items dele que ficaram no database. DELETE FROM player_items WHERE player_id NOT IN (SELECT id FROM players); Deletar todos os itens de um único player .Onde 1234 é o ID do player. DELETE FROM `player_depotitems` , `player_items` WHERE `player_id` = '1234' Trocar o outfit de todos os players. UPDATE players SET lookbody =69, lookfeet =95, lookhead =115, looktype =128 Remover as casas de players que foram deletados. UPDATE `houses` SET `owner` = '0' WHERE `houses`.`owner` NOT IN ( SELECT `players`.`id` FROM `players` WHERE `players`.`id` = `houses`.`owner` ); Deletar um Storage de todos os players. Ótimo em caso de bugs de Quest. DELETE FROM `player_storage` WHERE `key` = '11551'; E o Global Storage Também. DELETE FROM `global_storage` WHERE `key` = '11551'; Deletar players que nunca logaram. DELETE FROM `players` WHERE `lastlogin`=0;1 ponto -
Mapa Pokémon [8.5] Svke. Versão 2.
leinadlol reagiu a LaisDosOts por um tópico no fórum
Trago a vocês o primeiro mapa divulgado da Svke. Estava com esse mapa a um tempinho, então vou postar, mas não é meu ^^ V2 Adicionada, baixem a nova versão: Créditos: MappingShow (Fórum americano) Donwload V2: Aqui. Scan: Aqui. Screenshots do Update (Versão 2): Espero que gostem. Se eu não me engano esse mapa é do WPO, mas vou ficar com a dúvida, pois onde eu baixei, como já dito, não tinha créditos nem descrição. Abraços =D1 ponto -
Sistema M1-M12 Como Prometido
jhonnyyakato reagiu a Jeffer000 por um tópico no fórum
Nome do sistema: M1 ~M12 Autor : Editado por min , retiado do server Pokemon EX 2.0 Descrição : Como prometido resolvi postar o meu sistema de move, é o mesmo que vem no pokemon EX 2.0 , porem arrumei a maioria dos bug que encontrei como o de o trainer falar "m7" e a falta de ataque em alguns pokemons, não tive tempo de add pokemons shinys porque estou add pokemons johto no meu OT, mas assim que eu colocar os shinys posto aqui novamente. Alterações feitas: Add magia strafe, metronome,eggbomb e aluma otra que não lembro, enfim que add foi poucas, mas a grande modificação esta na parte de não estar faltano nenhum ataque em nenhum pokemon, como antes q exeggcute so tinha m2. Link para download Aqui Instalação : Extraia os 12 arquivos em sua pasta data\talkactions\scripts e depois na pasta data\talkactions abra o arquivo talkactions.xml e coloque o seguinte : <talkaction words="m1" case-sensitive="no" event="script" value="move1.lua"/> <talkaction words="m2" case-sensitive="no" event="script" value="move2.lua"/> <talkaction words="m3" case-sensitive="no" event="script" value="move3.lua"/> <talkaction words="m4" case-sensitive="no" event="script" value="move4.lua"/> <talkaction words="m5" case-sensitive="no" event="script" value="move5.lua"/> <talkaction words="m6" case-sensitive="no" event="script" value="move6.lua"/> <talkaction words="m7" case-sensitive="no" event="script" value="move7.lua"/> <talkaction words="m8" case-sensitive="no" event="script" value="move8.lua"/> <talkaction words="m9" case-sensitive="no" event="script" value="move9.lua"/> <talkaction words="m10" case-sensitive="no" event="script" value="move10.lua"/> <talkaction words="m11" case-sensitive="no" event="script" value="move11.lua"/> <talkaction words="m12" case-sensitive="no" event="script" value="move12.lua"/> Ainda não tive tempo de congirar tambem os CD's e o ataque max e min, então o mais facil fica por parte de vocês ^^ Qualque duvida postem aqui que tentarei ajudalos.Abraços1 ponto -
Como Editar Items
HannahHelenaTei reagiu a Slayersg por um tópico no fórum
Eaew gente blz? Bem eu n sei se aque é o lugar certo! ;s Pelo oq eu vi aque no xtibia n axei nenhum tutorial de como editar item então vim aque postar um! (Se tiver tutorial de como Editar items aque no xtibia me corrijam ><) Bem vamos lah!! Abra a pasta do seu ot vai em data/item/item.XML(abra o item.xml com bloco de notas) Bem eu vo usa aque como base a ARMA Demonrage Sword 1° O Weight(peso da arma):Dendendo do valor q vc coloca vai defeni um poco na velocidade dos atks 2° A Defense(Defesa):Dependendo do valor q vc coloca seu player vai ter maior defesa ou menor isso vai do valor q vc coloca 3° Attack:Dependendo do valor q vc coloca defini o valor do hit q a arma vai da o valor do hit tb depende do lvl do Sword Fighting 4° Weanpon Type(Tipo de arma):Coloque Sword(espada) 5° Slot Type(se vai usa uma mão ou duas): coloque Two-Handed(duas mãos pelo peso da arma defini isso tb) Em alguns itens vai ter coisas deferentes como Speed(velocidade) q é mais encontrado em botas Gente basicamente é isso espero ter ajudado(Se alguem ainda tiver duvida me add no msn q eu vo tenta ajudar blz ) Criditos: Slayersg(Eu) GOSTO? REP+ :button_ok: :people: Cristianogomes10@hotmail.com1 ponto -
[Talkaction] Proibir Palavrões!
risada21 reagiu a Gabriel Couto por um tópico no fórum
Não precisa falar assim. Como você ajuda a comunidade e é a primeira vez, vou deixar no alerta verbal. Talvez ele tenha se referido ao "ESTE LOCAL NAO é APROPRIADO PARA PEDIR SCRIPTS. FAÇA CORRETO, FAÇA SUA PARTE!", que não teve relação alguma ao tópico. Resolvido. Até.1 ponto -
function onUse(cid, item, fromPosition, toPosition) if doRemoveItem(item.uid, 1) then if math.random(1, 100) <= (2 + math.ceil(getPlayerSkill(cid, 1)/10)) then local creature = doSummonCreature("wolf", getPlayerPosition(cid)) doConvinceCreature(cid, creature) addEvent(doRemoveCreature, 10000, creature) else doPlayerSendCancel(cid, "você errou") end else return doPlayerSendCancel(cid, "") end return true end dá sim pra remover em 10 segundos, testa aí, aqui testei e funcionou.1 ponto
-
[Spell] Spell Facil De Fazer
soexpedito reagiu a jedian1 por um tópico no fórum
@lordbug99 mas o otserv dele não tem a função "setHealingFormula" cara, então não devemos usá-la, e estou atendendo ele por MSN @topic calma ae ja entro no msn,to aqui trabalhando .-.1 ponto -
Treinando Desert Críticas, insultos, bans é aqui mesmo. OBS: Agradeço aos comentários acima.1 ponto
-
Sistema Exit Treiner
alemao2011 reagiu a KennyConrad por um tópico no fórum
Procure em config lua por stopAttackingAtExit = false e ai coloque assim stopAttackingAtExit = true quero REP +1 ponto -
[Encerrado] 9.10 War System
arthur199 reagiu a eduardosm14 por um tópico no fórum
para corrigir esse erro vc deve utilizar um tfs 4 no tutorial que vc viu esse war system comtem esse tfs mas ele contem virus, pelomenos meu antivirus detecta!... SE AJUDEI REP++1 ponto -
[Ajuda] Preciso De Ajuda No Meu Fishing Poketibia
superbruno100 reagiu a jedian1 por um tópico no fórum
local condition = createConditionObject(CONDITION_INFIGHT) setConditionParam(condition, CONDITION_PARAM_TICKS, 60000) function onUse(cid, item, fromPos, itemEx, toPos) doAddCondition(cid, condition) d0 = { [0] = {pokemon = 'Magikarp'}, } d20 = { [0] = {pokemon = 'Magikarp'}, [1] = {pokemon = 'Horsea'}, [2] = {pokemon = 'Poliwag'}, [3] = {pokemon = 'Goldeen'}, [4] = {pokemon = 'Krabby'}, } d40 = { [0] = {pokemon = 'Magikarp'}, [1] = {pokemon = 'Horsea'}, [2] = {pokemon = 'Poliwag'}, [3] = {pokemon = 'Goldeen'}, [4] = {pokemon = 'Krabby'}, [5] = {pokemon = 'Tentacool'}, } d60 = { [0] = {pokemon = 'Magikarp'}, [1] = {pokemon = 'Horsea'}, [2] = {pokemon = 'Poliwag'}, [3] = {pokemon = 'Goldeen'}, [4] = {pokemon = 'Krabby'}, [5] = {pokemon = 'Tentacool'}, [6] = {pokemon = 'Seaking'}, } d80 = { [0] = {pokemon = 'Magikarp'}, [1] = {pokemon = 'Horsea'}, [2] = {pokemon = 'Poliwag'}, [3] = {pokemon = 'Goldeen'}, [4] = {pokemon = 'Krabby'}, [5] = {pokemon = 'Tentacool'}, [6] = {pokemon = 'Seaking'}, [7] = {pokemon = 'Starmie'}, [8] = {pokemon = 'Kingler'}, [9] = {pokemon = 'Seadra'}, } d100 = { [0] = {pokemon = 'Magikarp'}, [1] = {pokemon = 'Horsea'}, [2] = {pokemon = 'Poliwag'}, [3] = {pokemon = 'Goldeen'}, [4] = {pokemon = 'Krabby'}, [5] = {pokemon = 'Tentacool'}, [6] = {pokemon = 'Seaking'}, [7] = {pokemon = 'Starmie'}, [8] = {pokemon = 'Kingler'}, [9] = {pokemon = 'Seadra'}, [10] = {pokemon = 'Starmie'}, [11] = {pokemon = 'Kingler'}, [12] = {pokemon = 'Seadra'}, } local config = { waters = {4614, 4615, 4616, 4617, 4618, 4619, 4608, 4609, 4610, 4611, 4612, 4613, 7236, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4665, 4666, 4820, 4821, 4822, 4823, 4824, 4825}, } local skill = getPlayerSkillLevel(cid, 6) local playerpos = {x=getCreaturePosition(cid).x, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z} function Effect() doSendMagicEffect(toPos, 214) end function Say() if skill >= 0 and skill < 20 then local random = math.random(0, 0) doSendMagicEffect(getThingPos(cid), 173) doSendMagicEffect(toPos, 53) doSummonCreature(d0[random].pokemon, playerpos) setPlayerStorageValue(cid, 171833, -1) doPlayerAddSkillTry(cid, 6, 1) elseif skill >= 20 and skill < 40 then local random = math.random(0, 4) doSendMagicEffect(getThingPos(cid), 173) doSendMagicEffect(toPos, 53) doSummonCreature(d20[random].pokemon, playerpos) setPlayerStorageValue(cid, 171833, -1) doPlayerAddSkillTry(cid, 6, 1) elseif skill >= 40 and skill < 60 then local random = math.random(0, 5) doSendMagicEffect(getThingPos(cid), 173) doSendMagicEffect(toPos, 53) doSummonCreature(d40[random].pokemon, playerpos) setPlayerStorageValue(cid, 171833, -1) doPlayerAddSkillTry(cid, 6, 1) elseif skill >= 60 and skill < 80 then local random = math.random(0, 6) doSendMagicEffect(getThingPos(cid), 173) doSendMagicEffect(toPos, 53) doSummonCreature(d60[random].pokemon, playerpos) setPlayerStorageValue(cid, 171833, -1) doPlayerAddSkillTry(cid, 6, 1) elseif skill >= 80 and skill < 100 then local random = math.random(0, 9) doSendMagicEffect(getThingPos(cid), 173) doSendMagicEffect(toPos, 53) doSummonCreature(d80[random].pokemon, playerpos) setPlayerStorageValue(cid, 171833, -1) doPlayerAddSkillTry(cid, 6, 1) elseif skill >= 100 then local random = math.random(0, 12) doSendMagicEffect(getThingPos(cid), 173) doSendMagicEffect(toPos, 53) doSummonCreature(d100[random].pokemon, playerpos) setPlayerStorageValue(cid, 171833, -1) doPlayerAddSkillTry(cid, 6, 1) end end if(isInArray(config.waters, itemEx.itemid)) and getPlayerStorageValue(cid, 171833) >= 1 then doPlayerSendTextMessage(cid, 27, "You can't fish yet.") return false end if(isInArray(config.waters, itemEx.itemid)) and getPlayerStorageValue(cid, 171833) <= 0 then setPlayerStorageValue(cid, 171833, 1) doSendMagicEffect(toPos, CONST_ME_LOSEENERGY) doSendMagicEffect(toPos, 214) for i = 1,3 do addEvent(Effect,750*i,cid) end addEvent(Say,3000) return true end return true end testa mas tipo, é meio inútil né? já que se vier algum monstro ele entra em battle automaticamente >.>1 ponto -
Bom.. Quanto ao acc manager entrar pelo site, isso é ruim, pois da para qualquer um entrar no acc manager, e exclui-lo. Clique aqui para ver como arrumar isso ;D Quanto ao temple id, baixe o accountmanagment.php que vou deixar aqui em baixo e substitua pelo seu :s ve se presta e me fala por PM, pra n ficar dando flood no forum '-' AccountManagment AJUDEI? REP+ ;D1 ponto
-
isso é reamente simples se quise quele uso amunition arrows ou bolts abra items.xml procure o axe que se quer colocar e cole isso no lugar, subtitua x,y,z pelas informaçoes pedidas (colquei na frente oque é cada um) <item id="x" article="a" name="y"> ----x = id do axe e y = a nome do axe <attribute key="weight" value="3100"/> <attribute key="description" value="z"/> ---z = descriçao do item quando da look <attribute key="weaponType" value="distance"/> <attribute key="slotType" value="two-handed"/> <attribute key="ammoType" value="arrow"/> --- se quise por bolt coloque entre "bolt" no lugar de "arrow" <attribute key="range" value="6"/> ---distancia que vai pega agora se quise que ele atire arrows outros shottypes so de perto(encosta no bixo) abra items.xml e no lugar do axe cole isso, subtitua w,x,y,z pelas informaçoes pedidas (colquei na frente oque é cada um)[para ver shottypes abra seu ot e use com o god ou cm o commando /x +um numero] ex: /x 4 ---vai sai umas bola de fogo <item id="x" article="The" name="y"> ---x = id do axe e y = nome do axe <attribute key="description" value="z"/> ---z = descriçao do item quando da look <attribute key="weight" value="4300"/> <attribute key="weaponType" value="wand"/> <attribute key="shootType" value="w"/> ---w = nome do shottype ou id dele <attribute key="range" value="3"/> ----distancia que vai pega abra weapons.xml,crie uma tag assim(no começo depois de<weapons>), so mexe no min(damege minimo) e no max(demage maximo)no valor e nas vocations x = id do axe e y = level nessesario pra usa <wand id="x" level="y" mana="0" min="20000" max="27000" type="physical" function="default"> <!-- axe --> <vocation name="knight"/> ---nome das vocation que usa(mude caso o nome das vocation for outro) <vocation name="elite knight"/> </wand> caso queira que todas vocation use esclua essa parte <vocation name="knight"/> <vocation name="elite knight"/>1 ponto
-
1 ponto
-
[Gender System] For Pokemon Ots
PostadorHunter reagiu a 3145288 por um tópico no fórum
Eu cheguei a postar numa resposta, mais tem gente que vive me pedindo coisas pelo msn, como não gosto de pokemon e não gosto de ficar postando meus códigos, arrumei esse system pra vocês colocarem em ots de pokemon. Em monster.CPP troque essa linha setSkull(mType->skull); por essa aqui if(!isSummon()){ setSkull((Skulls_t) random_range(2, 4));} pronto, todos os monstros terão skulls aleatorias, entre 2, 3 e 4. Se quiser uma coisa mais "complexa", deixar uns com skulls pré definidas, faça o seguinte: if(!isSummon()) { if (_mType->name == "nidoran male") setSkull(SKULL_WHITE); else if (_mType->name == "nidoran female") setSkull(SKULL_RED); else setSkull((Skulls_t) random_range(3, 4));} isso nao é para summons, se quiser fazer um summon nascer com skulls você precisa usar esse código: doCreatureSetSkullType(cid, skull) como fazer capturar com o sexo? Faça um script onDeath, onde ele verifica o skulls e seta um specialDescription no corpse, na pokebola faça uma busca na string que armazena o sexo e coloque como attribute no item... hà varias formas de fazer, até! Créditos 100% Cykotitan1 ponto -
@Topico Vlw pelo script ajudou bastante pois o script que eu fiz lagava o server quando setava as skull, trabalhando em um ondeath todos os que eu fiz o script dava erro quando ia dar um attribut especial. Rep ++ @Para Todos Passei aki no topco e vi que tem varios caras pedindo a soucer, n posso passar a minha pois já está editada.... mas tenho o link para a soucer necessaria link: http://www.4shared.com/file/nF-9GIIE/Server_Sources.html Programa de para compilar é o Stian's Repack Dev-Cpp. Tem um tutorial aki no xtibia de como compilar um exe para seu ot server. Link: http://www.xtibia.com/forum/topic/145300-c-compilando-um-otserv/ Agora é so se virar um pouco e brincar com a linguagem c++ que é legal pra carai =]1 ponto
-
Mapa Naruto Legend
buburadok reagiu a aguinho600 por um tópico no fórum
Pensava que era o mapa do Naruto Legends - Maniaks *-*1 ponto -
De vip só vc criando uma classe para vip rsrs dai é um pouco mais dificil eu sei só que n tou com vontade de explicar mais para vc colocar para gm adm god e cm então em vez de>>>>>>\/ if getPlayerGroupId(cid) == 6 then -- Grupo de quem podera acessar o TRONO Coloque>>>>>>>>\/ if getPlayerGroupId(cid) == 3 then -- Grupo de quem podera acessar o TRONO Obrigado Se ajudei me de um REP+1 ponto
-
Level Door !
gustavo3754 reagiu a Vodkart por um tópico no fórum
acho que já tem no seu servidor usa a Porta "Gate of Expertise" e só ir na propriedade da porta e colocar ActionID = 1050 só level 50 acima irá passar ActionID = 1100 só level 100+ irá passar1 ponto