Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 07/27/10 em todas áreas
-
[Oficial] Real Global Map hello Galerinha do Xtibia, Venho aqui desponibilizar o mapa do Doidin (8.57 Só que editado com minhas ideias e na versão 8.60 OBS: Para rodar esse servidor No seu pc voce tem que ter 2GB+ de memória ram e em bom estado. ( nao recomendo abrir o otserv com o mapa editor aberto junto). Real Global Map: - Versão do Tibia:8.60 - Mapa global 95% full. - Quase todos os NPC's do Tibia Global. - Servidor com o mínimo de bugs possíveis. - Scripts arrumados. - Entre outros... Cidades: Quest's: Oque tem de melhor que o servidor do Doidin? Quase nada pois ele copio minhas coisas x) Algumas Print Screen: para quem nao conseguiu abrir o spolier e gostaria de ver as SS link abaixo: print screen.txt Créditos: - Doohz Rush - Doidin - Alissow - DoidinMapper - RenanSdc - TFS Team - Styller Team - Alissow Team - Feragon - Viana! - Azevedo ATUALIZADO DIA 28/10/2010 Scan: Arquivo Muito grande para fazer scan. Remeres Mapa Editor 2.0 ( nao use outra versão ou vai bugar o mapa: Download Aqui! Doohz Rush Server : Download Aqui! OBS: FOI ARRUMADO TODOS OS LOOT'S DOS MONSTROS, E FOI ADICIONADO A NOVA AREA DE ZÃO (OS Draken elite etc, todos configurados perfeitamente ) Atualização 2.2; Arrumado os Teleport's dos Drakens; Editado os seal's da POI (+ parecido com global); adicionado 1 npc de runa em northern de ZAO; arrumada as Houses, e bugs de Cormaya; Retirado BUG de money; Arrumado detalhes do mapa. MSN: Doohz_rush@hotmail.com Gostou? REP+ Ali do lado :arrow:3 pontos
-
PokeBall System! Ola Xtibianos, Vim hoje postar um Famoso Script de Pokeball System feito pelo Genioso Nahruto, claro pedi a autorização dele para postar. A Todos que forem pegar Scripts de outras Pessoas, lembre-se de sempre pedir autorização e claro colocar os creditos. Para Tfs: 0.34 , 0.35 e 0.36 Essas Forao Testadas E Funfo. Versoes: 8.42 - 8.50 - 8.52 - 8.54 - 8.6. Ots Testados: Snowz Yurots - Alissow Server - Styller Yurots Primeiramente Vamos Fuçar em Function.lua, se voce nao Sabe onde fica vá em: Data>Lib>Function.lua Abra e Coloque Isto: _warpzone = 2147483648 -- start storing strings here (THIS IS THE ABSOLUTE MAXIMUM VALUE FOR THIS) _maxlength = 1024 -- multiply by 3 to get the true length. setPlayerStorageInteger = setPlayerStorageValue getPlayerStorageInteger = getPlayerStorageValue function setPlayerStorageString(cid, key, value) if #value > (_maxlength-1) * 3 - 1 then -- Last word is reserved for 0 termination of the string. error("Storage string is too long") end if key > _warpzone / _maxlength then error("Storage string key is too large (" .. key .. ")") end key = _warpzone + key * _maxlength local word = 0 local wordwrap = 0 local wordcount = 0 local i = 1 while i <= #value do local byte = string.byte(string.sub(value, i, i)) word = bit.bor(word, bit.lshift(byte, wordwrap)) wordwrap = wordwrap + 8 if wordwrap == 24 then --[[ In the ideal world we would be able to store 4 characters per word, however, as the default return value for getPlayerStorageValue is -1, we cant use the last bit. ]]-- setPlayerStorageInteger(cid, key + wordcount, word) word = 0 wordwrap = 0 wordcount = wordcount + 1 end i = i + 1 end -- store the last word setPlayerStorageInteger(cid, key + wordcount, word) end function getPlayerStorageString(cid, key) if key > _warpzone / _maxlength then error("Storage string key is too large (" .. key .. ")") end key = _warpzone + key * _maxlength local wordcount = 0 local str = "" while true do if wordcount >= _maxlength then break end local word = getPlayerStorageInteger(cid, key + wordcount) if word == -1 then -- end of string break else -- Extract the 3 characters from the value byte = bit.band(word, 255) if byte == 0 then break else str = str .. string.char(byte) end byte = bit.rshift(bit.band(word, 65280), 8) if byte == 0 then break else str = str .. string.char(byte) end byte = bit.rshift(bit.band(word, 16711680), 16) if byte == 0 then break else str = str .. string.char(byte) end end wordcount = wordcount + 1 end return str end E Isso! function doConvinceSummon(cid, creature, amount, pos) summonplayerpos = {x=pos.x, y=pos.y, z=pos.z, stackpos=253} summonplayer = getThingfromPos(summonplayerpos) if(summonplayer ~= nil and summonplayer.itemid > 0) then doPlayerSendCancel(cid,"There is not enough room to summon here.") ret = 0 else convince = doSummonCreature(creature, pos) doConvinceCreature(cid, convince) ret = 1 end return ret end Agora Vamos Fazer o Script Vá em Pasta do Seu Ot > Data > Actions > Scripts Crie uma Pasta chamada pokeball.lua e bote isso dentro local notAllowed = {"Ferumbras", "Demon"} local storage = { status = 25650, pokeName = 25651 } local actionid_used = 7510 function onUse(cid, item, fromPos, item2, toPos) local pokeballStatus = getPlayerStorageValue(cid, storage.status) local pokeName = getPlayerStorageString(cid, storage.pokeName) pos = getPlayerPosition(cid) pos.stackpos = 0 if pokeballStatus == -1 then toPos.stackpos = 253 local pokeThing = getThingfromPos(toPos) if isCreature(pokeThing.uid) == TRUE then if isPlayer(pokeThing.uid) == FALSE then local pokename_ = getCreatureName(pokeThing.uid) if item.actionid ~= actionid_used then -- local maxHealth = 400 -- local creatureHealth = getCreatureHealth(pokeThing.uid) -- local divNum = (string.len(maxHealth)-1)^2 -- local result = math.floor((creatureHealth/divNum)/10) -- local chance = math.random(1, math.random(4, math.random(7, math.max(result, 7)))) -- if chance == result then if isInTable(notAllowed, pokename_) == TRUE then doPlayerSendCancel(cid, "You cannot catch this creature") else setPlayerStorageString(cid, storage.pokeName, pokename_) doRemoveCreature(pokeThing.uid) doSendDistanceShoot(fromPos, toPos, 37) setPlayerStorageValue(cid, storage.status, 1) doSetItemSpecialDescription(item.uid, "it contains a " .. pokename_ .. ".") doSetItemActionId(item.uid, actionid_used) end -- else -- doSendMagicEffect(fromPos, 2) -- doPlayerSendCancel(cid, "The Pokemom Escaped") -- end elseif item.actionid == actionid_used and pokename_ == pokeName then doPlayerSay(cid, pokeName .. " Back!!", TALKTYPE_SAY) doRemoveCreature(pokeThing.uid) doSetItemSpecialDescription(item.uid, "it contains a " .. pokename_ .. ".") setPlayerStorageValue(cid, storage.status, 1) doSendDistanceShoot(fromPos, toPos, 37) else doSendMagicEffect(fromPos, 2) doPlayerSendCancel(cid, "This pokeball is already used") end else doPlayerSendCancel(cid, "You cannot catch this creature") end else doPlayerSendCancel(cid, "Creature not found") end elseif pokeballStatus == 1 then summons = getCreatureSummons(cid) -- if #summons >= 2 then -- doPlayerSendCancel(cid, "You cannot call more pokemons") -- else doConvinceSummon(cid, pokeName, 0, toPos) doSendDistanceShoot(fromPos, toPos, 37) doPlayerSay(cid, pokeName .. " Go!!", TALKTYPE_SAY) setPlayerStorageValue(cid, storage.status, -1) doSetItemSpecialDescription(item.uid, "it is empty.") -- end end else return 1 end function isInTable(t, val) for _, v in pairs(t) do if v == val then return TRUE end end return LUA_ERROR end para TFS local notAllowed = {"Ferumbras", "Demon"} local storage = { status = 15244, pokeName = 15212 } local actionid_used = 7510 function onUse(cid, item, fromPos, item2, toPos) local pokeballStatus = getPlayerStorageValue(cid, storage.status) local pokeName = getPlayerStorageString(cid, storage.pokeName) pos = getPlayerPosition(cid) pos.stackpos = 0 if pokeballStatus <= 0 then toPos.stackpos = 253 local pokeThing = getThingfromPos(toPos) if isCreature(pokeThing.uid) == TRUE then if isPlayer(pokeThing.uid) == FALSE then local pokename_ = getCreatureName(pokeThing.uid) if item.actionid ~= actionid_used then -- local maxHealth = 400 -- local creatureHealth = getCreatureHealth(pokeThing.uid) -- local divNum = (string.len(maxHealth)-1)^2 -- local result = math.floor((creatureHealth/divNum)/10) -- local chance = math.random(1, math.random(4, math.random(7, math.max(result, 7)))) -- if chance == result then if isInTable(notAllowed, pokename_) == TRUE then doPlayerSendCancel(cid, "You cannot catch this creature") else setPlayerStorageString(cid, storage.pokeName, pokename_) doRemoveCreature(pokeThing.uid) doSendDistanceShoot(fromPos, toPos, 37) setPlayerStorageValue(cid, storage.status, 1) doSetItemSpecialDescription(item.uid, "it contains a " .. pokename_ .. ".") doSetItemActionId(item.uid, actionid_used) end -- else -- doSendMagicEffect(fromPos, 2) -- doPlayerSendCancel(cid, "The Pokemom Escaped") -- end elseif item.actionid == actionid_used and pokename_ == pokeName then doCreatureSay(cid, pokeName .. " Back!!", TALKTYPE_SAY) doRemoveCreature(pokeThing.uid) doSetItemSpecialDescription(item.uid, "it contains a " .. pokename_ .. ".") setPlayerStorageValue(cid, storage.status, 1) doSendDistanceShoot(fromPos, toPos, 37) else doSendMagicEffect(fromPos, 2) doPlayerSendCancel(cid, "This pokeball is already used") end else doPlayerSendCancel(cid, "You cannot catch this creature") end else doPlayerSendCancel(cid, "Creature not found") end elseif pokeballStatus == 1 then -- summons = doCreatureSummons(cid) -- if #summons >= 2 then -- doPlayerSendCancel(cid, "You cannot call more pokemons") -- else doConvinceSummon(cid, pokeName, 0, toPos) doSendDistanceShoot(fromPos, toPos, 37) doCreatureSay(cid, pokeName .. " Go!!", TALKTYPE_SAY) setPlayerStorageValue(cid, storage.status, 0) doSetItemSpecialDescription(item.uid, "it is empty.") -- end end return 1 end function isInTable(t, val) for _, v in pairs(t) do if v == val then return TRUE end end return LUA_ERROR end Agora Vamos Adicionar as Tags, vá em Data>Actions.xml e Adicione as Tags Corretas´ <action itemid="xxxx" script="pokeball.lua" allowfaruse="1" blockwalls="1" /> [font-"Georgia"]em <action itemid="xxxx" nos 4 X voce coloca o Number Id Do seu Item que Será como uma "Pokeball"[/font] Oque o Script Faz Realmente: - Guarda monstros dentro de objetos e salva seu status, você pode colocar pra salvar em qlqr objeto.. seria ótimo para projetos pokemons.. Creditos: Nahruto Print Screen's: Snorlax Saindo da Pokeball: Snorlax Voltando para a Pokeball Look da Pokeball ( o Player so Ve assim You See a Pokeball , Have Snorlax )] Lembrando que eu nao Adicionei o Efeito da Pokeball Abrindo e Jogando o Monstro. Para fazer este Tipo de efeito voce vai ter que saber direitinho o LookType da Pokeball Fechando e Saindo, e transformar para um efeito e depois modificar no Script, aqui no xtibia Existe varios Tutoriais explicando isto, é so procurar! Gostou? Clica no Ali em Baicho para me Ajudar! Abraços..3 pontos
-
Alissow OTs 4.11! Esta versão 4.11 foi meio apressada, só adicionamos as features novas do 8.6. Aproveitem. Créditos: Alissow Comedinha Luis Nirk TFS Team Viniply Xedegux Sobre o OT/Mapa: Principais quests: -Annihilator -Inquisition Quest -Pits of inferno -Demon Oak -Solar axe quest -HOTA -MPA quest -The Challenger Monstros: -Total monstros: 10292 -Total spawn: 5587+ Cidades: -12 Cidades -200 Houses+- Raids/Invasões: -Rat -Orshabaal -Ghazbaran -Giant spider/The old window -Ferumbras -Morgaroth Spells: -Magias editadas para balanceamento das vocações Changelog Atualização [3.4 BETA]: - Removido áreas não usadas no mapa, diminuindo o tamanho em MBs - Adicionado Anti Magebomb System - Corrigido bugs no npc addon - Adicionado sistema onde os npcs falam sozinhos (Igual como foi adicionado no global). First ;] - Adicionado Elf village em Venonh ( bem parecida com a do global ;]) - Potions desaparecem quando usadas - Corrigido sistema de Up - Corrigido sistema de Monster Counter - Nova dragon lair em Mirand Theraan (Subsolo) - Adicionado porta de level, que protege leveis baixos acessarem os demons da cidade de Flam - Ampliado deserto da cidade de Mirand Theraan - Adicionado Ilha de Goroma - Adicionado Forbidden islands - Ampliado floresta da cidade de alfon e colocado área de macacos parecida com Banuta. - Ligação de alfon com Mirand Theraan - Corrigido bugs reportados nas portas das casas - Corrigido posição dos buracos e escadas - Adicionado beds em todas as casas - Corrigido bugs em casas de yalahar - Adicionado Blue legs quest ( Koshei The Deathless global) - Corrigidas quase todas as areas de Yalahar - Teleports em Yalahar substituidos por NPCs de teleport do global - Corrigido pequenos erros no npc Capitao Coruja, e adicionado viagem à goroma - diminuido ataque do Eye of the seven - Ice rapier agora quebra - Corrigido npc Banker - Adicionado quase todos os items 8.5 - Adicionado medusa - Adicionado Todos os outfits novos - Corrigido NPC Banker (que dava dinheiro) Script By Ta4e - Corrigido Annihilator Quest - Adicionado Notice System - Adicionado novo distro, compilado por Comedinha Atualização nº 2 [3.4]: Otserv atualizado... Corrigido debugs frequentes Corrigido debugs na magia exevo pan Corrigido bugs nos npcs Roy e Firewalker Adicionados mais novos items 8.5, agora temos 90% dos items novos... Atualização 3.5 [06/08/2009]: - Cidade principal (dorion) totalmente reformada - corrigido blue legs quest - Corrigido alavancas de compra de potions - Adicionado alavancas de compra de runas - Corrigido npc Bank - Adicionado NPC King Arthas, que vende promotion - Adicionado npc Rashid, que vende items. - Arrumado Wild Growth rune - Arrumado Utani Hur - Magias reajustadas - Novo estilo de server save - Ilha de mystic reformulada (by Nirk) - Adicionado nova magia para knights "Exkordium". - Adicionado nova magia para mages (promoted) "Exura Seil". - Adicionado nova magia para mages (promoted) "Exevo Gran Frigo". (arrumar -> sem exhausted nem gasta mana) - Adicionados novos monstros. - Adicionado quest challenge (lvl 250) - Corrigido bug do Dead Cyclops - Bug aol Arrumado - Poi Modificada - Corrigido teleports ghouls yalahar - Modificada demon helmet quest, assim como o premio da quest - Corrigido nome do Hallowed axe - Corrigido bug das houses - Corrigido bug dos items andaveis Atualização Patch 3.5.1 [07/08/2009]: - Corrigido erro na inicialização do Ot - Bug das potions corrigido - Bug do aol corrigido (pelomenos pra mim) - Bug dos outfits corrigido - Corrigido erros nas escadas na ilha PvP - O monstro The Fastest Turtle agora não morre, se tornando um monstro apenas para atrapalhar - Retirada suposta quest dos 3 hellhounds e 1 minishabaal - Adicionado teleport de retorno na Ferumbras Tower - Corrigido posições da raid de The old widow - Corrigido bug das escadas nas minas de demons - Corrigido alguns bugs vistos no mapa Atualização 3.6 [10/08/2009]: - Arrumado bugs criticos - Arrumado comando !promote/!demote - Atualizado Items.xml - Bug das Beds arrumado - Modificações na cidade, como, nature e caves - Nova sala de treino - Adicionado comando !highscores Atualização 3.7! Beta [18/12/2009]: - Guildhall support (Elf) - Nova deathlist(Elf, OpenTibia SVN) - Frags funcionando (Elf) - Atualizado monstros e items (slawkens, KaczooH, Elf) - Novas talkactions: /commands, /wp, /storage, /config, /promote & /demote. (slawkens) - Novas funções lua - Novos creatureevents (slawkens, Elf) - Novos configuráveis (Elf, slawkens) - Modificado ataque de monstros existentes (especialmente outfits e velocidade) (Elf) - Monstros reorganizados & atualizados (Nem todos) (slawkens) - Melhorado sistema de banimentos (Elf) - Reescrita janela de Rule Violation (Elf) - Arrumado Stamina (Elf, OpenTibia SVN) - Casas agora são salvas nas modificações do dono (Elf) - Escadas de yalahar funcionando perfeitamente (Elf, Talaturen) - Sistema de nado & waterball completo (slawkens) - Monstros invisiveis não são mais mandandos ao client (anti bot) (OpenTibia SVN) - Anti-dash (OpenTibia SVN) - Sistema de leilão de casas, possibilidade de usar site para vender casas (house_actions table) (OpenTibia SVN, Elf) - Salvando bot actions para /logs/bots por cada player. Por exemplo, bot pode enviar mensagem com mais de 255 caracteres (slawkens) - Novos raid events- item spawning & disappearing and more (Elf) - Modificações no NPC system (Elf) - NPCs OutfitModule (Elf) - Completo 8.53 support, com wars (Elf) - Completo 8.54 support (Elf) - Arrumado NPC voices (Elf) - Players serão informados quando o Gamemaster logar ou ficar invisivel (slawkens) - Arrumado Player Deaths (Elf, slawkens) - Arrumado Abuso de PZ (slawkens) - Portas agora não ajudam players a entrar em PZ (slawkens) - Magic level formula (OpenTibia SVN, KaczooH) - Memory leaks (Elf) - Queries optimization (Talaturen) - Janelas podem ser abertas do lado de fora da casa- agora apenas GMs podem fazer isso (slawkens) - arrumado Efeitos para o Ghost (GM)- configuravel (slawkens) - Corrigido >> Ghost debugging players (OpenTibia SVN, Elf) - Corrigido erro na promotion (Elf) - Corrigido vários erros no console. (slawkens) - Corrigido Spam de magias (Elf) - Corrigido stamina premium (Elf) - Corrigido Clean (Elf) - Corrigido vários outfits (Elf) - Corrigido Ghost (Elf) - Todas as correções no OpenTibia SVN (Open Tibia SVN, Elf) - Corrigido Todos os crashes possiveis (Elf) - Npcs Corrigidos (Comedinha) - Distro Reformulado (comedinha) - Bugs de reports arrumados (Comedinha) - Novos outfits (Alissow) - Actions Arrumadas (Comedinha) - Libs trocadas (Comedinha) - Talkactions bugadas arrumadas (Comedinha) - Reforma na área Sul da cidade Dorion (Alissow) - Adicionado monstros 8.54 (Alissow) - Corrigido bug das potions infinitas (Alissow) Atualização 3.7 Patch 1 [27/12/2009]: - Rampa na frente da loja de foods retirada (Alissow) - Arrumado bugs de mapa em anknor (Alissow) - Bug na Lib dos npcs corrigido (Alissow) - Bug do acc manager arrumado! (Alissow) - Magias "Exkordium" e "Ice Storm" arrumadas (Alissow) - Monstros 8.54 funcionando (Alissow) - 2º Addon Yalaharian arrumado (Alissow) - Addons Warmaster adicionados no NPC Addoner (Alissow) - Pequenas modificações na cidade principal, Dorion, para melhora da jogabilidade (Alissow) - Comando /Deathlist retirado (Alissow) - Magic Wall Rune arrumada (Alissow) - Quest Annihilator arrumada (Alissow) - "Your depot contain x items" Arrumado (Alissow) - Addons reorganizados, mais facil aggora (Alissow) - Tempo de Red skull e Black skull reduzidos para 24 e 42 horas (Alissow) - Reduzida porcentagem de morte (Alissow) - Acrescentado chance de critical hits (Alissow) - ShowHealingDamage Adicionado (Alissow) - Várias partes do mapa remapeadas (Alissow) - NPCs para recarga de Soft boots & Firewalker boots arrumados [Não testado] (Alissow) - Comando !frags arrumado! (Alissow) - Agora é possivel fazer addons sem precisar do comando !buypremium (Alissow) Atualização 3.8 [17/01/2010]: - Arrumado bug nas escadas do Dlair (Alissow) - Todos os bugs nos NPCs arrumados (Comedinha) - Novas talkactions [a pedidos] (Comedinha) - Deathlist arrumada (Comedinha) - Novo Distro (Comedinha) - MySQL Atualizada (Comedinha) - Firewarker boots não é mais gasta quando não está usando (Comedinha) - Problemas com items no Rashid arrumados (Alissow, Comedinha, Comunidade) - O NPC Banker foi corrigido, mas achei mais seguro retira-lo, visto que ninguem usava e poderia causar outro tipo de bug - Ilha (Sim aqui é uma ilha) de Zao adicionada (Alissow, Barker) - Monstros 8.54 aperfeiçoados (Alissow, Markithu, Zkum) - Reduzido danos da magia Exkordium (Alissow) - Os npcs Dark Rodo e Rachel vendem Blank Runes (Alissow) - Magias que não hitavam anteriormente foram arrumadas (Alissow) - Comando !buypremium arrumado (Alissow) - Arena PVM - Mais conhecida como Arena Svargrond - FUNCIONANDO!!! (Alissow) - Magia LightChain Retirada (Alissow) - Adicionado um sisteminha legal no templo (Alissow) - NPC Rashid retirado (Alissow) Atualização 3.8 Minor Patch 1 [17/01/2010]: - Comando Deathlist retirado novamente, fizemos testes equivocados. Se você é uma das 16 pessoas que baixou a versão anterior (3.8) não precisa baixar esta, basta retirar o comando !deathlist e /deathlist do seu Talkactions.xml, Os comandos causam quedas no servidor. Atualização 3.9 [15/02/2010]: - Cidade principal (Dorion) reformada, novo templo, novo depot, novo porto, novos npcs :] (Alissow) - Adicionado Reputation System (Comedinha, Cybermaster) - Adicionado !bless system (Comedinha) - /info melhorado (Comedinha) - Jail System (Comedinha) - Bug chatinho nos tiles pretos arrumado. - Magic Wall Funcionando! (Alissow) - Agora você pode fazer bolos e pães :] (Comedinha, Jean, Ojani) - Adicionado sistema de casamento (Comedinha, ScorpiOOn93, Alissow) - Loot The Fastest Turtle diminuido (Alissow) - Loot e experiencia do Feromous mais baixo (Alissow) - Sistema de parceis para Dorion funcionando (Alissow) - Guildwar System (Comedinha) - Anti MageBomb System (Comedinha, Huggen) - Adicionado Anti Nuker - Esse funciona! (Comedinha) - Adicionado Map Marks, para os players novos (Alissow, Comedinha) Atualização 4.0 [15/02/2010]: - Cidade Mountain totalmente reformada (Alissow) - Montanha de Goblins de Dorion reformada (Alissow) - Demonic Castle de Dorion reformado (Alissow) - Cidade de Venonh modificada (Luis) - Distro atualizado, funcionando nos clients 8.54, 8.55, 8.56 e 8.57 (Comedinha) - Comando !bless retirado (Alissow) - O NPC Ermes não vende mais items de decoração (Alissow) - Arrumado bugs na Ferumbras Tower (Alissow) - O comando !AFK on agora mantem o player parado (Comedinha) - Arrumado bugs nas escadas da área de DeathFans (Alissow) - Comando !Deathlist funcionando! (Alissow, Doidinmapper, GT Thionix) - Sistema de REP atualizado (Comedinha) - Sistema de Polls (Comedinha) - Banco por comandos (Comedinha) - Novos comandos de addon e accounts (Comedinha) - Sistema de futebol completo! (Comedinha) - Sistema Antibot (Comedinha) - Magia Spared Hur modificada (Alissow, Orzeleagle) - Adicionado sistema de montaria (Alissow, unknown666) - Adicionado Canivetes (Alissow, Siramix) - Nova hunt Subaquatica (Luis) Atualização 4.11! [11/07/2010]: - Versão 8.6, todos os items, outfits e monstros novos (Comedinhasss, Fireelement) - Adicionados os novos monstros 8.6 (Alissow) - Bug das potions arrumado (Comedinha, Matheusmkalo, Gabriel linhares, Fireelement) - Erros das runas arrumado (Comedinha, Gabriel linhares, Matheusmkalo, fireelement) Download Servidor: 4shared Tamanho: 17,416 KB Download: http://www.4shared.com/file/ez8XKrju/860_Alissow_Ots_411.html Link protegido: http://lix.in/-8d4bc0 Scan VirusTotal: http://www.virustotal.com/pt/analisis/983abb574dbb957a75aa1fd29eb804065f775e6a0c43216aa277686d32bce22a-1263702373 Atenção - Acc do God: god/god - LEIA o tópico antes de postar qualquer coisa ou duvida - Reportem se houver algum bug - A database fica na pasta schemas+Database - Proibido o uso do nosso distro sem o nosso consenso, obrigado. Andei percebendo que há muitos mapas feitos por mim em outros servidores postados aqui no xtibia, eu não sei se vocês sabem, mas isso é PLÁGIO. Eu não sou uma pessoa egoista, tudo que eu posto aqui no XTibia é para ser compartilhado, mas desde que mantenham os devidos créditos. Será denunciado qualquer tipo de "roubo" sem minha autorização para beneficio próprio. Eu sei que vocês não se importam muito com isso, eu também não deveria me importar, mas é o tempo e a dedicação de outra pessoa que vocês estão roubando, então peço gentilmente aos que tem conhecimento desses mapas, que me apontem. Não tem graça trabalhar horas e horas e ser roubado em dois minutos.2 pontos
-
Ajuda Num Script
DevilMoon e um outro reagiu a Oneshot por um tópico no fórum
Olá, Tente usar o script abaixo: local config = { monsterName = "Minotaur", maxSummon = 1, storageHealth = 65000 } function onUse(cid, item, fromPosition, itemEx, toPosition) local summon = getCreatureSummons(cid) if(table.maxn(summon) < config.maxSummon) then local p = doCreateMonster(config.monsterName, getThingPosition(cid)) doConvinceCreature(cid, p) doCreatureAddHealth(p, -(getCreatureMaxHealth(p)-getPlayerStorageValue(cid, config.storageHealth))) doCreatureSay(cid, "Go, ".. config.monsterName .."", TALKTYPE_SAY) doSendMagicEffect(getThingPosition(cid), 10) else for _, pid in pairs(summon) do doRemoveCreature(pid) setPlayerStorageValue(cid, config.storageHealth, getCreatureHealth(pid)) doCreatureSay(cid, "Back, ".. config.monsterName .."", TALKTYPE_SAY) end end return true end Eu fiz de um modo que armazene em uma Storage o valor do Health da criatura, por exemplo, Se a criatura tem HP Máximo de 20, e estava com 6, quando foi guardada. Ele voltará com 6. Como? O programa faz uma subtração e adiciona esse valor (negativo) ao HP da criatura que for sumonada. Teste e reporte no tópico!2 pontos -
Upei esse packzinho que eu tava aqui, espero ajudar alguem Preview Link: MegaUpload1 ponto
-
Advanced Reset System'
LeoTK reagiu a MarcelloMendes por um tópico no fórum
~~ Advanced Reset System 1.0 ~~ By: MarcelloMkez Bom, vi alguns Sistemas de Reset como o do Marcryzius, Yunie, e etc. E sempre vi Muitos pedidos como por exemplo: OBS: NÂO FUNCIONA EM 8.60 Reset no Look; Mudar Vocação ao Resetar; Limite em Resets; e etc... Então, resolvi Criar o Meu 'Reset System' com todas essas funções acima, e com a opção de Abilitar ou Desabilitar as Funções. Testado em TFS 0.3.6 - 8.50 e 8.60, o Script Funcionou Perfeitamente. Funções do Sistema: - Reset No Look; - Mudar Vocação ao Resetar; - Limite de Resets; - Premium Account; Ja vi sistemas de Reset, cada um com alguma dessas Funções, então resolvi junta-las em Apenas um 'Advanced Reset System'... Espero Por Críticas e Elogios. Abra a pasta data/Talkactions, crie um arquivo .lua e coloque: advancedReset.lua e Adicione Isso: --[[ SCRIPTING> MarcelloMkez <scriptING ]] --[[ [Advanced Reset System] Autor: MarcelloMkez Versão: 1.0 TFS: 0.3.6 Testado em: 8.50 Fórum: www.xtibia.com/forum/topic/138026-talk-action-advanced-reset-system/ [Características] ~ Versão 1.0 ~ - Resets no Look; - Premium Account ou não; - Mudar Vocação; - Limite de Resets; - Opções para Abilitar e Desabilitar Condições; [Em Construção] - Stages Free e Premium; - 'Talvez' um novo sistema de mudar Vocação; sem data para postagem. ]] function onSay(cid, words, param) --[Configurações de Condição]__ config = { --[[verdadeiro / Falso]] needPa = false, -- Precisa de Premium Account? [true / false] needPz = true, -- Precisa estar em Protection Zone? [true / false] battle = false, -- Precisa estar sem Batlle para Resetar? [true / false] withe = false, -- Players PK Withe pode Resetar? [true / false] red = false, -- Players PK Red pode Resetar? [true / false] tp = true, -- Teleportar para o Templo após o reset? [true / false] look = true, -- Mostrar Resets no Look do Player? [true / false] addLimite = false, -- Abilitar Limite de Resets? [true / false] setClasse = true, -- Mudar Vocação do player quando resetar? [true / false] storage = 2310, -- Storage [valor] --[Configurações do Reset]__ resetStatus = { player = getPlayerGUID(cid), -- Não Mude. lvl = 350 , -- Level Necessário para Resetar. [valor] lvlreset = 8, -- Level que retornará após o Reset. [valor] limite = 114, -- Máximo de resets que um player pode chegar. [valor] newClasse = 1, -- Id da Nova Vocação após o Reset. [valor] tempo= 5 -- Tempo para o Player deslogar para Resetar. Em segundos. [valor] }, } --[Funções]__ function Reseting(cid) resets = getResets(cid) setPlayerStorageValue(cid,config.storage,resets+1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doPlayerSetVocation(cid, config.resetStatus.newClasse) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..resets.."]' WHERE `players`.`id` = "..config.resetStatus.player) db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player) return TRUE end function noAll(cid) resets = getResets(cid) setPlayerStorageValue(cid,config.storage,resets+1) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player) db.executeQuery("UPDATE `players` SET `description` = '' WHERE `players`.`id` = "..config.resetStatus.player) return TRUE end function noTeleporting(cid) resets = getResets(cid) setPlayerStorageValue(cid,config.storage,resets+1) doPlayerSetVocation(cid, config.resetStatus.newClasse) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player) db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..resets.."]' WHERE `players`.`id` = "..config.resetStatus.player) return TRUE end function noLook(cid) resets = getResets(cid) setPlayerStorageValue(cid,config.storage,resets+1) doPlayerSetVocation(cid, config.resetStatus.newClasse) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player) db.executeQuery("UPDATE `players` SET `description` = '' WHERE `players`.`id` = "..config.resetStatus.player) return TRUE end function noClasse(cid) resets = getResets(cid) setPlayerStorageValue(cid,config.storage,resets+1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..resets.."]' WHERE `players`.`id` = "..config.resetStatus.player) db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player) return TRUE end function setClasse(cid) resets = getResets(cid) setPlayerStorageValue(cid,config.storage,resets+1) doPlayerSetVocation(cid, config.resetStatus.newClasse) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `description` = '' WHERE `players`.`id` = "..config.resetStatus.player) db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player) return TRUE end function look(cid) resets = getResets(cid) setPlayerStorageValue(cid,config.storage,resets+1) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..resets.."]' WHERE `players`.`id` = "..config.resetStatus.player) db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player) return TRUE end function teleporting(cid) resets = getResets(cid) setPlayerStorageValue(cid,config.storage,resets+1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `description` = '' WHERE `players`.`id` = "..config.resetStatus.player) db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player) return TRUE end function getResets(cid) resets = getPlayerStorageValue(cid,config.storage) if resets < 0 then resets = 0 end return resets end local resets = getResets(cid) local needLvl ="Você precisa de "..config.resetStatus.lvl-getPlayerLevel(cid).." level's para resetar." local msg ="~~[Reset: "..getResets(cid).."]~~ 'Sucesso ao Resetar! Você será deslogado em "..config.resetStatus.tempo.." Segundos." --[Condiçoes]__ if(config.needPz == true) and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then doPlayerSendTextMessage(cid,22,"Você Precisa estar em Protection Zone Para Resetar.") return TRUE elseif(config.addLimite == true) and (getResets(cid) == config.resetStatus.limite) then doPlayerSendTextMessage(cid, 22, "Você ja atingiu o Limite de Resets.") return TRUE elseif(config.withe == false) and (getCreatureSkullType(cid) == 3) then doPlayerSendTextMessage(cid,22,"Você ta PK White, por isso não pode resetar.") return TRUE elseif(config.red == false) and (getCreatureSkullType(cid) == 4) then doPlayerSendTextMessage(cid,22,"Você ta PK Red, por isso não pode resetar.") return TRUE elseif(config.needPa == true) and not isPremium(cid) then doPlayerSendTextMessage(cid,22,"Você Precisa ser Premium Account para Resetar.") return TRUE elseif(config.battle == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then doPlayerSendTextMessage(cid,22,"Você Precisa estar sem Battle para Resetar.") return TRUE elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == true) and (config.look == true) and (config.setClasse == true) then addEvent(Reseting, config.resetStatus.tempo* 1000, cid) elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == false) and (config.look == false) and (config.setClasse == false) then addEvent(noAll, config.resetStatus.tempo* 1000, cid) elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == false) and (config.look == true) and (config.setClasse == true) then addEvent(noTeleporting, config.resetStatus.tempo* 1000, cid) elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == true) and (config.look == false) and (config.setClasse == true) then addEvent(noLook, config.resetStatus.tempo* 1000, cid) elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == true) and (config.look == true) and (config.setClasse == false) then addEvent(noClasse, config.resetStatus.tempo* 1000, cid) elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == false) and (config.look == false) and (config.setClasse == true) then addEvent(setClasse, config.resetStatus.tempo* 1000, cid) elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == false) and (config.look == true) and (config.setClasse == false) then addEvent(look, config.resetStatus.tempo* 1000, cid) elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == true) and (config.look == false) and (config.setClasse == false) then addEvent(teleporting, config.resetStatus.tempo* 1000, cid) elseif doPlayerSendCancel(cid, needLvl) then doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) return TRUE end if doPlayerPopupFYI(cid, msg) then end return TRUE end --[by: MarcelloMkez]__ E em Talkactions.xml adicione isso: <talkaction words="!resetar" event="script" value="advancedReset.lua"/> Configurações: em --[Configurações de Condição]__ Para você Abilitar ou Desabilitar uma Função, você usa " true " para Verdadeiro," false " para falso, como ta Explicando no script. Em --[Configurações do Reset]__ Você colocará os Valores desejados, como: Level necessário para Resetar; Level que o Player Retornara após o Reset; Vocação para qual o player irá mudar caso esteja Abilitado a Função; Limite de Resets, caso esteja Abilitada a Função; E tempo em 'Segundos', para o Player Deslogar ao Resetar; Agora, para resetar, basta usar o comando "!resetar". Espero que Gostem e Entendam, Obrigado. by: MarcelloMkez'1 ponto -
Tutorial Montanhas Vermelhas
anoidperuzzo reagiu a Koddy por um tópico no fórum
Outro dia, jogando o Kingdom Age, perguntei se o Castiello gostaria de algum tutorial de mapping em especial. A gente tava na área dos Trolls, e ele me pediu para criar um sobre as Montanhas Vermelhas. Agora, vejo a dúvida do Senat, que é igual. Então, vamos lá. Colocando Auto Border para sua Montanha Vermelha 1º Passo: Esqueça o RME por em quanto. Abra apenas a pasta dele. Dentro da pasta do RME, vá em data, e selecione a versão do seu mapa, que você gostaria de construir este tipo de montanhas (se quiser em mais de uma versão, siga o procedimento duas vezes) C:\...\Remere's Map Editor\data\(versão). Após abrir a pasta da versão escolhida por você, iremos utilizar três arquivos: o "borders", o "grounds" e o "tilesets". Começando pelo mais fácil, abra o arquivo tilesets no Bloco de Notas. Se ao clicar duas vezes não abrir no bloco de notas, clique com o botão direito, vá em "Abrir com", e selecione o programa desejado, o Bloco de Notas, que é o mais simples e o mais comum. Você encontrará algo parecido com isso: <materials> <!-- TILESETS --> <tileset name="Grounds"> <raw> Desça mais um pouco a barra lateral até encontrar o próximo título, parecido com isso: </raw> </tileset> <tileset name="Nature"> <terrain> Para facilitar a procura na hora da criação da montanha vermelha, entre: <brush name="mountain"/> <brush name="red mountain"/> (adicione esta linha) <brush name="ramp"/> Após adicionar a linha "<brush name="red mountain"/>", salve o arquivo e feche. 2º Passo: 1/3 do trabalho está feito. Está na hora de dizer para o RME qual é o nome do piso que você quer adicionar, como ele aparecerá no Map Editor, e quais bordas ele deve seguir. Abra o arquivo grounds, que é encontrado no mesmo local que o arquivo anterior. A Ordem do que deve ser adicionado agora não altera em nada. Eu coloquei no final, para saber o que veio com o programa na hora do download, e o que eu modifiquei. Não tenho certeza das duas ultimas linhas. Acredito que apenas uma poderia ser utilizada, mas como deu certo com as duas, é melhor deixá-las. Após qualquer </brush>, adicione: <brush name="red mountain" type="ground" server_lookid="7975" z-order="9900"> <item id="8133" chance="1"/> <border align="inner" to="icy mountain" id="53"/> <border align="inner" to="snowy mountain" id="53"/> <border align="outer" to="none" id="51"/> <border align="outer" id="999"/> <optional id="999"/> </brush> Salve, e feche o arquivo. Agora está quase pronto. 3º Passo: Depois de configurar o tile que aparecerá no Map Editor, e criá-lo, está na hora de colocar o auto border em ação. Abra o arquivo borders, dentro da pasta data. Também não há preferência de lugar para se colocar, coloque em qualquer lugar, após qualquer </border>. Basta adicionar o seguinte trecho: <border id="999" group="1"> -- red mountain border (by koddy)-- <borderitem edge="n" item="7989"/> <borderitem edge="w" item="7988"/> <borderitem edge="s" item="8169"/> <borderitem edge="e" item="8168"/> <borderitem edge="cnw" item="7995"/> <borderitem edge="cne" item="7996"/> <borderitem edge="csw" item="7994"/> <borderitem edge="cse" item="8371"/> <borderitem edge="dnw" item="8135"/> <borderitem edge="dne" item="8137"/> <borderitem edge="dsw" item="8136"/> <borderitem edge="dse" item="8138"/> </border> É isso. Salve e feche o arquivo. Agora você já pode abrir o RME e finalmente criar sua montanha de cor alternativa. OBS: O número 999 que aparece foi porquê não conheço como está as configurações dos borders ID's de vocês, mas caso já exista esse valor, mude para um qualquer, fazendo as modificações necessárias. Lembrando que se você quiser juntar os dois tipos diferentes, não testei ainda, mas acredito que terá de modificar as bordas manualmente na hora da divisão, mas já é um trabalhão a menos que levará Essa é uma pequena demonstração de como você pode modificar o programa, e alterar as bordas que você nunca gostou de utilizar, por outras mais agradáveis. Segue agora uma foto bem simples, dessa montanha que você agora pode criar com muito mais facilidade. Espero ter ajudado, e peço que continue acompanhando os próximos Tutoriais de Mapping. Não esqueça de pedir o seu! Abraços, Koddy PS: Não fiz no Layout do XTibia pois dificultaria a cópia e cola de vocês na hora de atualizar o arquivo. Preferem desse jeito? Não esqueçam de comentar!1 ponto -
[Download]Quest Maker E Como Usar
ALLan162 reagiu a MatheusGlad por um tópico no fórum
Fikei em duvida se postava na aprovaçao de tutorial ou downloads, pois o meu contem os dois. Quest Maker Download: 4shared Virus Scan Virus Total Ps: So 1 antivirus achou, acho que inofensivo. Como usar: Ele e um programa muito simples de se usar porem algumas pessoas nao sabem, irei explicar. Apos baixar o Quest Maker bote-o na pasta "actions/scripts" do seu otserver. Em seguida,abra-o e espera carregar. Preencha todos os campos do quest maker. Use a ss como exemplo 1 - Nome do Arquivo.lua onde ficara o script (dentro da pasta aonde botou o Quest Maker) 2 - Comentarios (Nao ira modificar em nada seu script) 3 - Unique ID que voce vai botar no bau da quest.(Sempre botar um numero qualquer que n tenha em actions.xml) 4 - Storage ID. (Pode ser o mesmo do Unique ID, mais nao afetara se for diferente) 5 - Mensagem que ira aparecer apos completar a quest. 6 - Botao que cria o script em sua pasta. 7 - ID do item que ira dar na quest. 8 - Apaga todas as suas configuraçoes feitas no programa. 9 - Cria Tag que voce ira botar em actions.xml 10 - NAO USE ESTA BUGADO ELE TE DA OS IDS ERRADOS 11 - Aonde aparece sua tag criada pelo botao numero 9 Criando o Bau: Agora abra o seu mapa com o seu Map Editor e crie um bau. Adicione o UniqueId que voce colocou no Quest Maker. Salve e aproveite! Quest Criada com Sucesso Tutorial by MatheusMkalo, exclusivo para o Xtibia Copia Ilegal,PROIBIDA Sugestoes,Duvidas,Elogios aceitados nesse topico ou via MP.1 ponto -
Olá Vim Trazer A Voçês um Script De Top Fragger. ;D Vamo Ao Que Interessa. Va Em: xampp\htdocs Crie Um Novo Arquivo frags.php e Cole Isso: <?php $main_content .= '<div style="text-align: center; font-weight: bold;">Top 25 Frags on ' . $config['server']['serverName'] . '</div> <table border="0" cellspacing="1" cellpadding="4" width="100%"> <tr bgcolor="' . $config['site']['vdarkborder'] . '"> <td class="white" style="text-align: center; font-weight: bold;">Name</td> <td class="white" style="text-align: center; font-weight: bold;">Frags</td> </tr>'; $i = 0; foreach($SQL->query('SELECT `p`.`name` AS `name`, COUNT(`p`.`name`) as `frags` FROM `killers` k LEFT JOIN `player_killers` pk ON `k`.`id` = `pk`.`kill_id` LEFT JOIN `players` p ON `pk`.`player_id` = `p`.`id` WHERE `k`.`unjustified` = 1 GROUP BY `name` ORDER BY `frags` DESC, `name` ASC LIMIT 0,25;') as $player) { $i++; $main_content .= '<tr bgcolor="' . (is_int($i / 2) ? $config['site']['lightborder'] : $config['site']['darkborder']) . '"> <td><a href="?subtopic=characters&name=' . urlencode($player['name']) . '">' . $player['name'] . '</a></td> <td style="text-align: center;">' . $player['frags'] . '</td> </tr>'; } $main_content .= '</table>'; ?> Salve E Fexe. Agora Va Em index.php Após: case "guilds"; $topic = "Guilds"; $subtopic = "guilds"; include("guilds.php"); break; Cole isso: case "frags"; $topic = "Top Frags"; $subtopic = "frags"; include("frags.php"); break; Agora Va na Detabase DO Seu Servidor e Adicione Isso: ALTER TABLE `players` ADD `frags` INT( 11 ) NOT NULL DEFAULT '0'; Agora Va Ate: data\creaturescripts\scripts Abra o Login.lua Após: registerCreatureEvent(cid, "Mail") Cole Isso: registerCreatureEvent(cid, "TopFrags") Em: data\creaturescripts\scripts Crie Um Novo Arquivo Com O nome: topfrags.lua function onKill(cid, target, lastHit) if isPlayer(target) then db.executeQuery("UPDATE `players` SET `frags` = `frags` + 1 WHERE `id` = " .. getPlayerGUID(cid) .. ";") end return true end Salve E Fexe. Agora Va em: data/creaturescripts/ e Abra o: creaturescripts.xml E Adicione essa Linha: <event type="kill" name="TopFrags" event="script" value="topfrags.lua"/> Agora Va Em: C:\xampp\htdocs\layouts\tibiacom Após <a href='?subtopic=guilds'> <div id='submenu_guilds' class='Submenuitem' onMouseOver='MouseOverSubmenuItem(this)' onMouseOut='MouseOutSubmenuItem(this)'> <div class='LeftChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> <div id='ActiveSubmenuItemIcon_guilds' class='ActiveSubmenuItemIcon' style='background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);'></div> <div class='SubmenuitemLabel'>Guilds</div> <div class='RightChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> </div> </a> Cole isso: <a href='index.php?subtopic=frags'> <div id='submenu_wars' class='Submenuitem' onMouseOver='MouseOverSubmenuItem(this)' onMouseOut='MouseOutSubmenuItem(this)'> <div class='LeftChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> <div id='ActiveSubmenuItemIcon_wars' class='ActiveSubmenuItemIcon' style='background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);'></div> <div class='SubmenuitemLabel'><font color="red"> Top Fragger </font></div> <div class='RightChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> </div> </a> Resultado: Pronto. CréDiToS: Layout: widnet1 ponto
-
Bem, Eu sei que eu estou um pouco mal falado aqui.. Mais eu quero agradar vocês com um mapa que eu tinha feito tempo atras, peguei e Mudei totalmente.. Na minha mente está cidade está pequena, mas eu acho que daria bem para Rook, Mas pode ser Main também, sejá de sua escolha. Bem, Está cidade eu peguei umas partes de um Mapa, De um Server Próprio, e editei. Se o dono do server não gostar do Map, e quizer que eu tire, avontade, Eu tiro o Map. Começando, Vou Mostrar as Print Screens. Temple http://img143.imageshack.us/i/templo.jpg/ Depot http://img571.imageshack.us/i/depotx.jpg/ Shops http://img413.imageshack.us/i/shops2.jpg/ Houses http://img156.imageshack.us/i/housest.jpg/ Mini-Map http://img243.imageshack.us/i/minimap.jpg/ Gostou? Então vamos Baixar. Download Map Scan map Os Trainers estão daquele geito (sem monster) Pois no meu server aqueles itens de boneco e a Mira são os trainers, espero que entendam, é só tirar aquilo e por os trainers. Obrigado! Abraços, Espero que goste do Map! P.s.: Eu sei que a city ta quadrada, não tem como reformular, ela é uma fortaleza. Créditos: 70% Nivaldo (Fazer o mapa) 30$ Equipe XSoft (Dar uma Base ao mapa)1 ponto
-
Hospagem De Site
SkyDangerous reagiu a Kairion por um tópico no fórum
Um Web Designer perguntar isso não é vergonha alguma, ou melhor, qualquer pessoa perguntar isso não é vergonha alguma. Bom, não mecho com sites de OT a algum tempo, porém ao que me consta, scripts prontos como gesior e modern aac não se conectam a base de dados do OTServer caso ela esteja em servidores externos (porém é possível, e para quem tem conhecimento até fácil fazer). Normalmente, o servidor e o site compartilham a mesma hospedagem, com as tabelas do site ficando na mesma base de dados do OTServer (ao menos no modern aac, isso não muda, o que explicaria minha frase acima), assim é feita a "comunicação" entre eles. A configuração geralmente é simples, você coloca o site na pasta do seu servidor web (para testes em casa, normalmente usa-se o XAMPP, já em hospedagens dedicadas, pode-se instalar o Apache, o PHP e o MySQL), dependendo do script utilizado, há processos a seguir na instalação, por exemplo, no Modern AAC você deve entrar no seu futuro site, e ir até o diretório (pasta) install, seguindo o link: http://www.seudominio.com/install (se for dedicado com domínio próprio) http://127.0.0.1/install (exemplo de caseiro, com o IP) / http://meuot.no-ip.com/install (exemplo de caseiro com NO-IP) Na instalação, ele vai pedir para você informar o usuário da base de dados, a senha e o nome dela (que devem ser os mesmos utilizados pelo servidor), após isso basta clicar no botão "Enviar" (o nome não é esse, mas é o único botão nessa página) e o script instalará o site para você, criando as tabelas necessárias na base de dados. Sobre hospedagem, como informei, não conheço algum script (nunca vi, nem nunca me interessei em procurar, na verdade) que se conecte a base de dados externas, porém, caso exista algum, pode-se usar hospedagens de sites do tipo: HostGator UOLHost Mas o mais aconselhável mesmo é que utilize uma hospedagem dedicada, há algumas empresas que anunciam aqui no XTibia, por exemplo, o XServidores, além de outras que membros da equipe anunciam. Tente também uma busca no Google por "servidores dedicados", encontrará resultados bem úteis, e aí vai uma dica: Antes de sair e pegar o primeiro host, fale com o suporte técnico, tire todas as suas dúvidas, não importando se estas sejam "bobas", e caso o suporte não saiba responder alguma, considere ver outra empresa. Tente optar por empresas grandes e conhecidas no ramo, pois normalmente estas escolhem os seus profissionais com um rigor maior, costumam ser mais confiáveis e menos propicias a erros. Abraços1 ponto -
bem simples, faltou alguns detalhes como pédrinhas andaveis, etc. mas ta legal, vlw!1 ponto
-
[Arquivado]Alguen Sabe Crear Ot Serve No Windows Vista Sp 2
Fodastico1025 reagiu a marcelo1025 por um tópico no fórum
alguen sabe crear ot serve no windows vista sp 2 ? obs: ja tive mais de um ot agora estou com ploblemas com o S.O windows vista sp 2 ja fiz tudo nos minimos detalhes e nao esta dando pros players entrar. alguen poderia dar um HELLP PLX.1 ponto -
Advanced Reset System'
MatheusGlad reagiu a marcellos por um tópico no fórum
Otimo. Facil de mecher, mando muito bem MarcelloMkez' Abraço, continue assim.1 ponto -
mano eu ja disse q n sei mexe no Xtibia eu ainda n sei "organizar' como vc diz sou novo ak olha kara eu fiz oq consegui1 ponto
-
caraca Dooh sempre melhorando ne mt mt bom vlww1 ponto
-
eu testei aqui e funciono perfeitamente,se não está funcionando ai é porque vc fez algo errado. cara vc tem que colocar no actions.xml <action itemid="ID DO ITEM EXILIR" script="NOME DO SCRIPT.lua" /> qualquer coisa add ai thiagoredlife@hotmail.com1 ponto
-
[Arquivado]Qual Map E O Preferido
Fodastico1025 reagiu a marcelo1025 por um tópico no fórum
Qual map voce acha ser o preferido pelos jogadores? e por que. Ai Pessoal me add como amigo e so clicar ali no rostinho <<<<<1 ponto -
[Encerrado] Como Eu Adiciono Sprites ?
Sertthoon reagiu a helinholima por um tópico no fórum
Tópico Movido para a seção Dúvidas Sanadas.1 ponto -
Killing In The Name Of... [Todos Os Monstros, Todas As Recompensas]
quijinrock reagiu a miter por um tópico no fórum
Parabéns tibiaa4e me ajudou e vai ajudar muitas pessoas belo script. Abraços!1 ponto -
local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 41) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -1.7, -84, -2.4, -108) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 45) setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -2.3, -160, -3, -2220) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 36) setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -2.3, -170, -3, -230) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat4, COMBAT_PARAM_EFFECT, 37) setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, -2.3, -180, -3, -240) arr1 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } arr2 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } arr3 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } arr4 = { {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, } local area1 = createCombatArea(arr1) local area2 = createCombatArea(arr2) local area3 = createCombatArea(arr3) local area4 = createCombatArea(arr4) setCombatArea(combat1, area1) setCombatArea(combat2, area2) setCombatArea(combat3, area3) setCombatArea(combat4, area4) local function onCastSpell1(parameters) doCombat(parameters.cid, combat1, parameters.var) end local function onCastSpell2(parameters) doCombat(parameters.cid, combat2, parameters.var) end local function onCastSpell3(parameters) doCombat(parameters.cid, combat3, parameters.var) end local function onCastSpell4(parameters) doCombat(parameters.cid, combat4, parameters.var) end function onCastSpell(cid, var) local parameters = { cid = cid, var = var} addEvent(onCastSpell1, 200, parameters) addEvent(onCastSpell2, 500, parameters) addEvent(onCastSpell3, 900, parameters) addEvent(onCastSpell4, 1300, parameters) end1 ponto
-
Apenas Membro De X Guild Pode Passar De Tal Tile
Oapocalipse reagiu a Oneshot por um tópico no fórum
hretro, - Crie um arquivo LUA com nome de sua escolha, copie e cole o conteúdo abaixo, local config = { guildName = "" --[[insira o nome da guild]] uniqueid = 5900 --[[unique ID do piso]] } function onStepIn(cid, item, position, fromPosition) local guildId = getGuildId(config.guildName) if (item.uid == config.uniqueid) then if (getPlayerGuildId == guildId) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Welcome Guildmember!") else doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You aren\'t from this guild") doTeleportThing(cid, fromPosition) end end return true end - Copie a tag abaixo no seu arquivo XML movements. <moveevent type="StepIn" uniqueid="5900" event="script" value=".lua"/> Lembrando que você deverá completar o campo value com o nome do documento LUA que você criou seguido da extensão (é claro). Até mais.1 ponto -
Fazer Training Monk Não Andar
eduhespanhol reagiu a luisfe23 por uma questão
É só vc mudar o speed dele para 0, ficando assim: <?xml version="1.0" encoding="UTF-8"?> <monster name="Trainers" nameDescription="a trainers" race="blood" experience="0" speed="0" manacost="0"> <health now="240000" max="240000"/> <look type="268" head="114" body="77" legs="0" feet="0" addons="2" corpse="6080"/> <targetchange interval="60000" chance="0"/> <strategy attack="100" defense="0"/> <flags> <flag summonable="0"/> <flag attackable="1"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="0"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag staticattack="50"/> <flag lightlevel="0"/> <flag lightcolor="0"/> <flag targetdistance="1"/> <flag runonhealth="0"/> </flags> <attacks> <attack name="melee" interval="2000" min="-19" max="-20"/> </attacks> <defenses armor="0" defense="0"> <defense name="healing" interval="10000" chance="100" min="24000" max="24000"/> </defenses> <immunities> <immunity physical="0"/> <immunity energy="0"/> <immunity fire="0"/> <immunity poison="0"/> <immunity lifedrain="0"/> <immunity paralyze="0"/> <immunity outfit="0"/> <immunity drunk="0"/> <immunity invisible="1"/> </immunities> <loot> <item id="2148" countmax="20" chance1="100000" chancemax="0"/> <item id="1949" chance="10000"/> <item id="2467" chance="10000"/> <item id="2642" chance="6666"/> <item id="1987" chance="100000"> <inside> <item id="2044" chance="6666"/> <item id="2689" countmax="3" chance1="20000" chancemax="0"/> <item id="2401" chance="3333"/> <item id="2166" chance="1428"/> </inside> </item> </loot> </monster> Abraços.1 ponto -
Atualização: v2, veja no tópico. Todos os bugs que eu vi em outros forums foram arrumados.1 ponto
-
(Pedido) Level Maximo
vitimdumau reagiu a matheus1000 por uma questão
Da mais rep ae Pedido Sanado, tópico reportado1 ponto -
Exori Blood Fury
Kadaversito reagiu a locosporot por um tópico no fórum
A maioria dos caras do forum fala qui esta bom pra iniciante ou fala um defeito ,amigo o cara ta de parabens ,se vc tem capacidade de fazer uma magia melhor faça ,mais nao fale qui a do cara ta ruim po1 ponto