Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 03/31/13 em todas áreas
-
[Arquivado]Entrevista - Demonbholder
5584759 e um outro reagiu a PsyMcKenzie por um tópico no fórum
Entrevista com Demonbholder Essa entrevista é com um membro que admiro muito, há muito tempo e que faz um grande trabalho no fórum! ( e é foda em scripting \o/ ) PsyMcKenzie - Nome completo? Demonbholder - Leonardo Silva Rosa PsyMcKenzie - Idade? Demonbholder - Tenho 17 anos. PsyMcKenzie - Estuda? Demonbholder - Sim, faço cursinho pré vestibular. PsyMcKenzie - Você gosta de ser moderador? Demonbholder - Gosto sim, apesar de não ter muito tempo para entrar no fórum ultimamente. PsyMcKenzie - Como entrou pra equipe? Demonbholder - Em 2010, eu acho, eu comecei a ajudar bastante na seção de scripts com pedidos e códigos novos e logo entre como colaborador de scripting. PsyMcKenzie - O trabalho de qual membro você mais aprecia no fórum? Demonbholder - Acho que são os tutoriais do tibiaa4e, pois sem eles eu não saberia lua hoje. Foram esses tutoriais que me ensinaram o básico de lua. PsyMcKenzie - Como descobriu o Xtibia? Demonbholder - Não lembro muito bem, mas provavelmente foi procurando como criar um otserver. Isso deve ter sido em 2008. PsyMcKenzie - Qual script feito por voce, que mais gosta? Demonbholder - Acho que o lua messenger, é o código mais avançado que eu já fiz, apesar de não ser tão avançado assim. Pena que ele ta meio feio, tenho preguiça de reescrever ele. PsyMcKenzie - Um scripter que admira/ gosta dos trabalhos? Demonbholder - Eu gosto muito dos trabalhos do Vodkart e do Mkalo, aprendi muito com os dois na época que eu começava a aprender lua. Pena que eles não frequentam mais o fórum. PsyMcKenzie - Qual o melhor script feito por voce? Demonbholder - Acho que o lua messenger, não que ele seja difícil de ser feito, mas é demorado e deu muitos erros até chegar como está hoje. PsyMcKenzie - Qual o melhor OT server que você já jogou? Demonbholder - Eu nunca joguei muitos ots, mas eu joguei o globalwar, onde eu faço parte da equipe, e gostei bastante, me viciei! Há uns anos atrás eu joguei um ot chamado cotar, gostava muito também. Esses foram os dois ots que eu dediquei dias jogando. PsyMcKenzie - Qual foi o melhor script já visto por você no fórum? e fora do fórum? Demonbholder - Pergunta complicada rsrsrs, em termos de utilidade, pelo que eu me lembro agora, provavelmente é o sistema de Vip System do Vodkart. Não sei hoje, mas antigamente a maioria dos servidores usavam ele. PsyMcKenzie - Conte como começou sua carreira na área de programação. Demonbholder - Eu comecei com os tutoriais do tibiaa4e, fui praticando e praticando, mas comecei a melhorar mesmo quando o Mkalo me ensinou. Depois disso eu conseguia entender melhor os termos tecnicos e foi bem mais fácil aprender sozinho. Mas como qualquer iniciante, eu errava muito no começo, me lembro de não saber fechar os ifs direito rsrsrs. PsyMcKenzie - O que acha da linguagem LUA? acha dificil de compreender? Demonbholder - É uma linguagem muito, muito fácil de aprender. Ela não é nem um pouco exigente na sintaxe e tem vários tutoriais bons na internet. Apesar disso, adoro usar ela, se você souber usar bibliotecas como wx, socket, etc, lua se torna bem útil. PsyMcKenzie - Gosta da seção de mapping? Demonbholder - Confesso que não frequento muito, a unica coisa que eu vejo relacionado a mapping é o trabalho do Erimyth. O que eu gosto na seção de mapping é que, assim como na seção de scripting, os mappers iniciantes tem um grande respeitos pelos mappers renomados. PsyMcKenzie - Qual o melhor script que você já viu? Demonbholder - Outra pergunta difícil rsrs. Depois de um certo ponto, o que vale mesmo é a criatividade do código. Acho que não tem como escolher o melhor, talvez o mais criativo. É isso ai galera, espero que tenham gostado!2 pontos -
Resultado Ads #78
Alexclusive e um outro reagiu a LuckinhaSan por um tópico no fórum
Nossa, Essa Foi Tensa. Comecei Perdendo De Lavada, Mais No Final Consegui Virar Ô/2 pontos -
AGORA NA VERSÃO 2.0 Ola amigo Xtibianos vim trazer uma novidade a vocês... sei que existem varios Baiaks por ai.. todos diferentes alguns são até iguais mais com funções inovadoras.. A um tempo atras resolvi criar um Baiakão pra mim rsrs. E pior que deu certo, em 5 dias online consegui conquistar mais de 100 players fixos online. mais acabei ficando sem tempo de resolver tudo sozinho e resolvi fechar. o server ficou parado aqui.. muitos no msn me pedirão e eu nunca tive coragem de entregar ele assim de mão beijada né guardei por um bom tempo.. Mais.... hoje resolvi dar uma olhada nele e enquanto eu via o mapa .. funções.. e outras coisas mais , acabei achando interessante eu liberar ele aqui pra vocês Xtibianos... Então chega de papo e vamos ao que Importa.... Baiak 8.60 Usando Crystal server All features, actions, funções 100% Addons 100% Spells 100% Vocações balanceadas. Estabilidade garantida. Serve save sem lag Clean 100% Talkactions GOD, CM, GM 100% MAPA Baiak Yourots Editado por mim. INQ. Quest 100% POI 100% Anihi 100% Areá VIP com Hunts e teleports 100% Sala de teleports Arenas e muito mais... LAST UPDATE VIP 1 - 100% VIP 2 - 100% Adicionado Comando !buyvip por 3kk Adicionado Novos Outfits "Elf e Vampire" Mapa com novo visual npcs concertados e melhorados Novas quests novas hunts novas arenas PRINTS... Trainers Cidade... Addon Elf... Vampire Addon... Templo... Novos Teleports no DP É isso ai galera .. já que viram um pouco do mapa.. irei postar abaixo beleza xD acho que sera util para alguem que esteja a proucura de um baiak estavel.. Se a galera curtir estarei disponibilizando ele na versão 9.44 do Crystal server... ACC GOD = god/god CREDITOS: Tryller - desenvolvedor crystal server. Erimyth - Edição, melhorias e adaptações de novas actions. Equipe Baiak Yourots. DOWNLOAD: LINK ON - >>> Mediafire <<< SCAN: CLICK AQUI - VIRUSTOTAL <- Scan atualizado com a versão 2.01 ponto
-
Extended Opcodes (OtClient)
drakylucas reagiu a BananaFight por um tópico no fórum
Extended opcodes Com esses códigos você pode enviar dados do servidor e receber no client e fazer o contrario também, ou seja posso enviar o numero de um storage por exemplo, só saber usar. Desculpem pela minha tentativa de traduzir o que o BeniS postou meio falha. Extended opcodes, é um sistema que permite a adição de novos opcodes no protocolo de jogo usando apenas scripts em lua tanto no Servidor quando no OtClient. Tornando assim mais fácil de implementar novas funcionalidades tanto no otclient quando no servidor. Apenas um código de operação é suportado, no momento, a 0x01, que é enviado pelo cliente informa a linguagem corrente do jogador. Opcodes novos serão adicionados no futuro, incluindo opcodes para reprodução de sons e novas interfaces. versão em Inglês Extended opcodes is a system to allow adding new opcodes to game protocol using just lua scripts in both client and server sides, thus making easy to implement new client/server side features independently of the game cor made in C++. Just one opcode is supported at the moment, the 0x01 which is sent by the client informing the current player language. New opcodes will be added in the future, including opcodes for playing sounds and new interfaces. Vamos ao Código : protocolgame.h -[Diff] protocolgame.h - Pastebin.com protocolgame.cpp -[Diff] protocolgame.cpp - Pastebin.com const.h -[Diff] const.h - Pastebin.com luascript.cpp -[Diff] luascript.cpp - Pastebin.com player.h -[Diff] player.h - Pastebin.com creatureevent.h -[Diff] creatureevent.h - Pastebin.com creatureevent.cpp -[Diff] creatureevent.cpp - Pastebin.com game.h -[Diff] game.h - Pastebin.com game.cpp -[Diff] game.cpp - Pastebin.com /creaturescripts/creaturescrips.xml -[Diff] creaturescripts.xml - Pastebin.com /creaturescripts/extendedopcode.lua -[Lua] extendedopcode.lua - Pastebin.com Ou baixe um pach dos arquivos aqui : https://github.com/e...dedopcode.patch Creditos: BeniS e EduBarts1 ponto -
E aii galerinha do XTibia beleza ?, Bem venho aqui trazer para vocês uma nova Release de WoDBO ( World of Dragon Ball Online ) espero que gostem, irei postar somente o Servidor e o Cliente, mais para frente eu posto o WebSite ! Sem mais delongas, aqui vai algumas prints do servidor para vocês verem ! 1º Print da Arena ! 2º Print ! Download do servidor. http://www.mediafire.com/download/ll5af41e95763pr/Dragon+Ball+Z+-+%28Server%29.rar Scan Servidor. https://www.virustot...sis/1328974498/ Download Arquivos do cliente. http://www.4shared.c...__Server__.html Scan Cliente. https://www.virustot...sis/1328974178/ Video aula de como por o Servidor Online ! Galera não postei o Scan por que minha net está ruim, mais eu garanto que não á vírus nos arquivos, se alguem poder fazer os scans que Agradeço !1 ponto
-
[Video Aula - Completa] Como Add Novos Pokemons no PDA
Elder Skrill reagiu a Gabrieltxu por um tópico no fórum
Conteudo Retirado.1 ponto -
Testado: Versao: 8.60 ate 9.82 Painel guildshop admin: Adiciona items Remove items Add e Remove guild points Como funciona? É um sistema Guild Points, onde há uma Loja EXCLUSIVA para Guilds no Website, [ModernACC] assim Doadores e Guilds tem seu shop separado. Primeiramente faça o Download: GuildShop Depois de baixados coloque a pasta guildshop no: xampp: c:\xampp\htdocs Linux: /var/www apos feito isso vamos executar as seguintes querys em sua database: ALTER TABLE `accounts` ADD `guild_points` INT( 11 ) NOT NULL DEFAULT '0'; CREATE TABLE IF NOT EXISTS `guild_donation_history` ( `id` int(11) NOT NULL AUTO_INCREMENT, `method` varchar(256) NOT NULL, `receiver` varchar(256) NOT NULL, `buyer` varchar(256) NOT NULL, `account` varchar(256) NOT NULL, `points` int(11) NOT NULL, `date` int(10) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; CREATE TABLE IF NOT EXISTS `guild_history` ( `id` int(11) NOT NULL AUTO_INCREMENT, `product` int(11) NOT NULL, `session` varchar(256) NOT NULL, `player` varchar(256) NOT NULL, `date` int(10) NOT NULL, `processed` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=35 ; CREATE TABLE IF NOT EXISTS `guild_offer` ( `id` int(11) NOT NULL AUTO_INCREMENT, `points` int(11) NOT NULL DEFAULT '0', `category` int(11) NOT NULL DEFAULT '1', `type` int(11) NOT NULL DEFAULT '1', `item` int(11) NOT NULL DEFAULT '0', `count` int(11) NOT NULL DEFAULT '0', `description` text NOT NULL, `name` varchar(256) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=81 ; INSERT INTO `guild_offer` (`id`, `points`, `category`, `type`, `item`, `count`, `description`, `name`) VALUES (3, 5, 1, 1, 0, 15, '', '15 days of VIP'), (6, 3, 2, 5, 2160, 100, '', '100 Crystal Coins'), (7, 2, 2, 5, 8266, 1, 'Protection holy -50%, death +8%.', 'Koshei''s Ancient Amulet'), (8, 4, 2, 5, 11393, 1, 'Increases loot rate by 0.5% while using.', 'Lucky Clover Amulet'), (10, 2, 3, 5, 8871, 1, 'Arm:9, magic level +1.<br>It can only be wielded properly by sorcerers and druids.', 'Focus Cape'), (78, 7, 2, 5, 2366, 1, 'Recupera imediatamente toda sua stamina, pode ser usado uma vez.', 'Sweet Recovery Elixir'), (79, 5, 2, 5, 9693, 1, 'Addon Doll(Escolha o Addon que você quiser). Digite !addon first(ou second) nomedoaddon.', 'Addon Doll 1x'); lembrando execute 1 de cada vez de preferencia para nao ter nenhum bug. logo em seguida vamos criar a page do shop no modernacc entra com sua conta de admin no site entre e administration [Painel Admin] vai em pages e clique em Create Page depois em Page Name coloque guildshop e clica em Create na proxima page adicione: <?php include("guildshop/gifts.php"); ?> e cliqe em Edit Page para salvar, pronto shop system instalado, agora vamos pra parte para entregar o item automaticamente ao player, basta entrar em seu ot na pasta /data/globalevents/scripts crie um arquivo guildshop.lua e adicionar: function onThink(interval, lastExecution, thinkInterval) local result = db.getResult("SELECT * FROM guild_history WHERE `processed` = 0;") if(result:getID() ~= -1) then while(true) do cid = getCreatureByName(tostring(result:getDataString("player"))) product = tonumber(result:getDataInt("product")) itemr = db.getResult("SELECT * FROM guild_offer WHERE `id` = "..product..";") if isPlayer(cid) then local id = tonumber(itemr:getDataInt("item")) local tid = tonumber(result:getDataInt("id")) local count = tonumber(itemr:getDataInt("count")) local tipe = tonumber(itemr:getDataInt("type")) local productn = tostring(itemr:getDataString("name")) if isInArray({5,8},tipe) then if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then if isContainer(getPlayerSlotItem(cid, 3).uid) then received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count) if received then doItemSetAttribute(received, "description", 'Bought by ' .. getCreatureName(cid) .. ' [iD:' .. id .. '].') doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You have received >> "..productn.." << from our guild shop system") db.executeQuery("UPDATE `guild_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Sorry, you don't have enough space on container to receive >> "..productn.." <<") end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Sorry, you don't have a container to receive >> "..productn.." <<") end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Sorry, you don't have enough capacity to receive >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)") end elseif isInArray({6,7},tipe) then if tipe == 6 then bcap = 8 bid = 1987 elseif tipe == 7 then bcap = 20 bid = 1988 end if isItemRune(id) then count = 1 end if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then local bag = doCreateItemEx(bid, 1) for i = 1,bcap do doAddContainerItem(bag, id, count) end received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag) if received == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You have received >> "..productn.." << from our guild shop system") db.executeQuery("UPDATE `guild_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Sorry, you don't have enough space to receive >> "..productn.." <<") end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Sorry, you don't have enough capacity to receive >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)") end end end itemr:free() if not(result:next()) then break end end result:free() end return true end em seguida entre em globalevents.xml e adicione a linha: <globalevent name="guildshop" interval="15000" event="script" value="guildshop.lua"/> e logo em seguida vamo por o talkactions para as guild pegarem seus guild points, entre em /data/talkactions/scripts e crie uma arquivo com nome guildpoints.lua e adicione: local playersNeeded = 8 local ipsNeeded = 6 local minimumLevel = 50 local storageId = 41578 local pointsForPlayer = 20 local function sendPlayersList(cid, list) for i, pid in ipairs(list) do local level = getPlayerLevel(pid) < minimumLevel and " - " .. getPlayerLevel(cid) .. " level " or "" local valid = getCreatureStorage(pid, storageId) > 1 and " - already received!" or "" doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getCreatureName(pid) .. level) end end function onSay(cid, words, param, channel) if(getPlayerGuildLevel(cid) == 3) then local leaderGuild = getPlayerGuildId(cid) local players = getPlayersOnline() local guildMembersValid = {} local guildMembersInvalid = {} for i, pid in ipairs(players) do if(leaderGuild == getPlayerGuildId(pid)) then if(getPlayerLevel(pid) >= minimumLevel and tonumber(getCreatureStorage(pid, storageId)) < 2) then table.insert(guildMembersValid, pid) else table.insert(guildMembersInvalid, pid) end end end if(#guildMembersValid >= playersNeeded) then local IPs = {} for i, pid in ipairs(guildMembersValid) do local ip = getPlayerIp(pid) if(IPs[ip] == nil) then IPs[ip] = ip end end if(#IPs >= ipsNeeded) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Players that received points:") sendPlayersList(cid, guildMembersValid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Players that did not receive points:") sendPlayersList(cid, guildMembersInvalid) local accounts = {} for i, pid in ipairs(guildMembersValid) do table.insert(accounts, getPlayerAccountId(pid)) doCreatureSetStorage(pid, storageId, os.time()) end db.executeQuery("UPDATE `accounts` SET `guild_points` = `guild_points`+" .. pointsForPlayer .. " WHERE `id` IN (" .. table.concat(accounts, ',') .. ");") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, #guildMembersValid .. " players from your guild are valid (" .. playersNeeded .. " required), but you have together only " .. #IPs .. " IPs (" .. ipsNeeded .. " required)") doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Valid players:") sendPlayersList(cid, guildMembersValid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Invalid players:") sendPlayersList(cid, guildMembersInvalid) end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, #guildMembersValid .. " players from your guild are valid, " .. playersNeeded .. " required. Minimum level required is " .. minimumLevel) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Valid players:") sendPlayersList(cid, guildMembersValid) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Invalid players:") sendPlayersList(cid, guildMembersInvalid) end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Only guild leader can request points.") end return true end depois em talkactions.xml adicione a linha: <talkaction log="yes" words="!guildpoints" script="guildpoints.lua" /> e pronto fim do tutorial qualquer duvida so perguntar e nao esqueça de agradecerem Creditos: A mim: Por ter quebrado a cabeça pra editar o shop para postar aqui HastlerHost: Pelo Talkactions1 ponto
-
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 -
Kalima Server - Editado
LipedaRua1 reagiu a Animal Pak por um tópico no fórum
Informações: Mapa Kalima editado; Novos monstros; Novas spells; Novos items; Novos comandos; Novos sistemas; Mage Ring; Donator Coins; Servidor 100% estável; E muito mais! Imagens: Download: http://www.mediafire.com/?kfdbabhaypnvz8j Scan; https://www.virustotal.com/file/6f71cba8a0b2f49f8ebef33ebd9ef9409a8e46ff265f67beba829c25c7a251ec/analysis/1349146912/ Créditos: Kalima Team Iluminatis SmoOkeR1 ponto -
Olá, galerinha do xtibia vi esse sistema em 1 site e eles estavam vendendo por 9,90 então resolvi fazer e postar de graça primeiramente va em data/talkactions/scripts crie um arquivo chamando wand.lua e coloque isso dentro em talkactions.xml <talkaction words="!wand" event="script" value="wand.lua"/> agora em data/weapons/scripts crie um arquivo e renomeie para wand1.lua e adicione isso dentro: em weapons.xml <wand id="xxx" level="50" mana="13" min="0" max="0" type="earth" event="script" value="wand1.lua"> <!-- wand of effects --> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> em items.xml <item id="xxx" article="the" name="nome da sua wand"> <attribute key="description" value="Você pode mudar o elemento da wand digitando !wand elemento desejado." /> <attribute key="weight" value="2300" /> <attribute key="weaponType" value="wand" /> <attribute key="shootType" value="holy" /> <attribute key="range" value="8" /> em data/creaturescripts/scripts login.lua antes do ultimo return true adicione essa linha: if getPlayerStorageValue(cid, 12036) == -1 then setPlayerStorageValue(cid, 12036, 1) end PS : Testado, e funcionando PS2 : Podem postar em outros fórums se colocarem créditos PS3 : Tem que ser o mesmo id em items.xml talkactions.xml e weapons.xml1 ponto
-
TFS 0.4 Com Novidades
brenomapper1251 reagiu a AdilsonHacker por um tópico no fórum
Olá Xtibianos! Vendo Disponibilizar para vocês um "tfs 0.4" com algumas novidades : Versão Do TFS : 0.4 rev 3884 Versão Testada : 8.54 a 8.60 Este tfs ele funcionar nas duas forma como "plain" é "sha1" (Sha1 versão para funcionar só com site) Tfs equipado com "Auto Stacking" "Anti-Lag" é Guild War System. Não Foi Encontrado Nenhum Bug No TFS. Tfs Já vai com as source. Creditos : AdilsonHacker Compilado By Adilson Hacker (Fir3z) Download : Clique Aqui Scan: Clique Aqui Abraços!1 ponto -
• # Lista # Mega Tutoriais De Mapping 5.0 • • RME • » Instalando seu RME - BruMatt » Aprenda a usar o RME - Vilden » Juntando um mapa ao outro - Filippe Ferreira » Criando Casas - Alissow » Importando Mapa - Lordfire » Adicionando NPC's/Monster's no Palette - Vilden » Unsupported Client Version - LuisFelipe » Mudar a Versão do Mapa - Henrique Moura » Modificando Seu RME - DanielZiyak » Mapeando Com Seus Amigos - Pess0a » Trocando Os Itens De Seu Rme - Paraibinha » Como Criar Quest Pelo Rme - Locosporot » Tirando Bugs RME 8.6 - CruelShark » Converta Imagens Para Otbm - Mythusz » [Easy] Remere 3.0 Beta 6 - Left4Dead » Instalando RME 8.70 - Alissow » Descendando o RME - ElderDark » [solução] Remeres Map Editor 8.60 - Felipitovis » Tirando Bugs Map Editor 8.6 Tibia.dat E Msvcrt.dll - CruelShark » {Solução} ~ Remeres Map_Editor (8.60X) - felipitovis » Campo De Visão - EdMignari » [Tutorial] Instalando Rme Map Editor 8.7 - SmileTiger » Apostilas De Mapping [Vital900 & Left4Dead] - Vital900 & Left4Dead » [Tutorial] Mudando a Versão Do Mapa - Stigal » [Tutorial] Adaptando Grounds Para O Auto Border - Openyourmind • Tutoriais Em Geral • » Dicas para Praticar - RenatoRibeiro » Coerência - 4458638 » O Mapa Ideal - RenatoRibeiro » Como Criar Uma Arena - Curruwilliam » Tutorial E Dowload Fasendo Casa No Rme - Extremeots » Algumas Dicas De Mapping - TecBreakerByLipe » [Efeito] Neon Em Quests - TecBreakerByLipe » [Detalhes] Escadas #Basico# - Stigal » [Tutorial] Como Fazer Um Barco - FlaashMan » [Tutorial] Adaptando Grounds Para O Auto Border - Openyourmind » 'reconhecendo' Suas Cidades & Depot - vital900 • Nature • » "Green" Nature Tutorial - Koddy » Guia Para Nature [básico] [Part 1] - DanielZiyak » Guia Para Nature [básico] [Part 2] - DanielZiyak » Temple Com Nature - Anyur » Fazendo Caminhos (Floresta) - Anyur » [basico] Criando A "Naturesa Verde" - Left4Dead » [Nature] Detalhamento e Beleza - DanielZiyak » Fazendo Nature - Anyur » [basico] Arvore Grande - Left4Dead » Nature Básica Para Iniciantes - LordZezim » [Tutorial] Como Organizar A Nature - TecBreakerByLipe » [Tutorial] Como Fazer Uma Ilha - TecBreakerByLipe » Snow - Nature / Montanha - GuizitoG » [Tutorial] Nature - TecBreakerByLipe » Deserto, Parte Nature - GuizitoG » Gramado Verde Escuro - Como Usar? - GuizitoG » [Tutorial] Jungle - VictorFT » [Tutorial] Nature - VictorFT » Jungle - DuMal » Criando House & Nature! - Overllord » Tutorial Swamp - VictorFT • Construções • » Fazendo uma Loja de Arqueiro - Skywar » Como construir uma Loja de Magia - Skywar » Como fazer um Templo - Caspita » Criando um Estádio de Futebol - Blinkrox » Barcos - Sukx » Fazendo Templo 'Stone Age' - anfarosx » Pallyshop - XaPiNhAl » Loja De Speller - Anyur » Loja De Forja - Left4Dead » Sala Do Faraó - Anyur » Depot Cidade Gelada - Anyur » Swamp - Pantano - GuizitoG » Como Criar Loja De Food! - RarTnE » Mappeando Like Vital [Templo] - Vital900 » [Tutorial] Templo - VictorFT » [básico] Pontes - TecBreakerByLipe » [básico] Cachoeira - TecBreakerByLipe » Detalhes Para Uma House! - Overllord » [Tutorial Básico] - House /Detalhamento [Rua] - VictorFT » Desert City House (Estilo Darashia) - Anyur » Criando House & Nature! - Overllord • Montanhas • » Utilizando Auto Border em Montanhas - LuisFelipe » Entrada pela Montanha - RenatoRibeiro » Técnicas para Cachoeiras - RenatoRibeiro » Detalhando Montanhas- RenatoRibeiro » Nature em Montanhas - markimbozi » Nascente D'água - Castiello & LuisFelipe » Detalhando uma Montanha de Terra - Skywar » Como Fazer Uma Cachoeira - TonyHanks » #001 [Kingdom Age] Montanhas - River » [Tutorial] Jungle + Montanha - GuizitoG » [básico] Formato De Montanhas - TecBreakerByLipe » [Tutorial] Montanha + Bordas (Com Autoborder) [+ Video] - GuizitoG » Undead Dragon Area - Anyur » [iniciante] Dicas Para A Elaboração De Montanhas. - Brund • Locais Em Geral • » Dicas para Treiners Naturais - FezZiN » Nightmare estilo Yalahar - RenatoRibeiro » Lizards estilo Zao - RenatoRibeiro » Tutorial de Ruínas - BruMatt » Pirâmides Egípcias - FezZinN » Calabouços - Koddy » Locais Gelados - Anyur » [iniciante] Ice Island - PatrickJean » Casas Em Cidades Geladas - Anyur » [Tutorial] Área De Gelo - Elrien » [intermediário] Sarcófagos - TecBreakerByLipe » Fazendo Praia - Anyur • Extensions • » Aprendendo a modificar Extensions - Koddy » Beige Pavement / "New" Wooden Floor - Koddy » Earth Mountains - Koddy » Extension Stone Floor - Anyur » [Extension] Adicionando Limestone Wall - Anfarosx » [Extension] Folhas No Chão - TecBreakerByLipe » [Pack] Extensions 8.54-8.70-9.60... - Openyourmind » [Rme] Extensões Personalizadas - FlaashMan • Formatos Em Geral • » Formato Continental - Koddy » Fazendo a Superfície do seu Mapa - FezZinN » Formatos #1 - RenatoRibeiro • Cavernas • » Formando Caves - Koddy » Detalhando Caves - Koddy » Caves - XaPiNhAl » Caverna Jungle - Anyur » Caverna Montanhosa de Spider - Anyur » Como Criar Uma Cave De Dragon - TecBreakerByLipe » [Tutorial] Como Criar Cave's - RarTnE » [Mapping] Cave (Básico) - Beto06 » [Tutorial] Criando E Detalhando Caves - VictorFT • Dicas Em Geral • » Efeitos nas Rampas - FezZiN » Passagens Tiles Secretos - itrox » Dicas para Criação de Quests com RPG - Temperance » (Guia) Casas - Marcell » Fazendo Armadilhas - Kerooker » Criando Labirintos - Fozz » Miragem no Deserto - XtiNaino » Colocando Livros em Bookcase e Texto - Kardec » Criando Roofs - felipitovis » Detalhamento De Templos - Flankee » Encaminhamento Alternativo - Anyur » Fazendo Quests No Rme Estilo Annihilation - Pess0a » Descida Secreta - Flankee » Passagem Criativa - Anyur » Templo Medieval - Anyur » Fazendo Passagem De Fogo - TonyHanks » Aldeia De Amazons - Anyur » [Efeito] Neon Em Quests - TecBreakerByLipe » [Tutorial] Area De Spider - TecBreakerByLipe » Construindo Piramides - Vital900 » Como Criar Um Barzinho - Maenilse » [básico] - Telhados - Left4Dead » [básico] Novo Tipo De Rua - Leaft4Dead » • Guia De Cidades - VictorFT » Colocando Passaros Para Voar No Mapa - Overllord » [Tutorial] Como Criar Uma Cidade - FlaashMan • Aulas • » Aulas de Mapping #1 - 4458638 » Aulas de Mapping #2 - 4458638 » Aulas de Mapping #2 - Lopoi2 & BruMatt » Aulas de Mapping Part. 2 - BruMatt & Lopoi2 » [Aula]1. "O Início" - MapperComand » Aula Mechendo Map Editor - Ewerton91 » Aula Mapping - Lição I - Laug » Aula Mapping - Lição II - Laug » Aula Remeres Poke Editor - JVitorPS » [Video-Aula] Como Criar Árvores Gigantes! - RarTnE » [Vídeo] Fazendo Base Com Auto-Border - Anyur » [Vídeo] Distribuindo Árvores E Arbustos - Anyur » [Vídeo - Iniciantes] Fazendo Base De Montanha - Anyur » [Video-Aula] Fazendo Piramides - TecBreakerByLipe » [Video-Aula] Nature Mapping - TecBreakerByLipe » [Video + Download] Instalação Tibia Dat E Spr Rme - Enigman » [Tutorial] Montanha + Bordas (Com Autoborder) [+ Video] - GuizitoG • Peça Um Tutorial De Mapping • » Peça Um Tutorial Aqui • REGRAS DA AREA MAPPING • » [Regras] Pedidos e Duvidas - Pedidos e dúvidas Mapping » [Regras] Concurso De Edição De Mapas - Concursos de Mapping » [Regras] Duelos - Concursos de Mapping » [Regras] Gerais - Show Off (exposição de mapas) » [Regras] Sua última Foto - Show Off (exposição de mapas) Atualizado: 28/12/2012 (20:15)1 ponto
-
PS: Ainda tem Uns Bugs... E Eu sei... tive uma grande ajuda do Gears... e também do DuMal E tem algumas partes incompletas e outras com um pouco da montanha vermelha! Obrigado por verem meu Show off ^^ depois estarei postando mais imagens Abraços.1 ponto
-
Alissow Ots 5.0! - Novas Imagens Na Página 6! (08/12)
Alexandre17 reagiu a Alissow por um tópico no fórum
Essas imagens não eram grandes assim, a droga do Imageshack acabou redimensionando e elas ficaram com essa qualidade horrivel, não vou reupar. --------------- Acharam que se livraram da gente né? Pois é com imenso prazer que eu lhes apresento o Alissow OTS 5.0! Não sei se o pessoal novo conhece o servidor, afinal, já estamos (acho) a mais de um ano sem nenhuma novidade, então tá aí a chance de conhecer. Essa é a entrada da cidade, não quis fazer nada extraordinário, como podem perceber, mas está de acordo com o tema. Uma Hunt aleatória qualquer. Adoro flores Eu. sou. idiota. A cabana. Vou atualizando com novas imagens ao longo do tópico, portanto, se o tópico já estiver com várias páginas podem ir lendo página por página que vocês vão encontrar imagens novas por aí.1 ponto -
Sabe aquele negocio chato de quando vc tem que mudar level ou editar algum char que voçê tem que ir no phpmyadmin etc? poisé isso acabou! :b Crie uma pasta em C:\xampp\htdocs com o nome: adminpro.php e cole isso: <?PHP //README: if nick contain "'" use "\'". For example: nick = The'Knight so use in the form The\'Knight ,,,-WORKS! if($group_id_of_acc_logged >= $config['site']['access_admin_panel']) { $main_content .= 'Welcome to advanced admin panel! Mainly you can edit players. Coded by <a href="http://otland.net/members/turs0n/">turson</a>'; //admin panel menu (player+account) $main_content .= '<br /><br /><div style="width:100%;border:1px solid #c6c6c6;padding:3px 0 3px 0"> <b>EDIT PLAYER -></b> <a href="?subtopic=admin&action=namelock">Name</a> | <a href="?subtopic=admin&action=exp">Experience</a> | <a href="?subtopic=admin&action=level">Level</a> | <a href="?subtopic=admin&action=others">Others</a> | <a href="?subtopic=admin&action=position">Position</a> | <a href="?subtopic=admin&action=delete">Delete</a> <br> <b>EDIT ACCOUNT -></b> <a href="?subtopic=admin&action=acc">Account Number</a> | <a href="?subtopic=admin&action=pass">Password</a> | <a href="?subtopic=admin&action=mail">E-mail</a> | <a href="?subtopic=admin&action=access">Access</a> <br><center><font color="red"><b>PLAYER MUST BE OFFLINE!</b></font></center> </div><br>'; /////////////////////////////////CHARACTER//////////////////////////////////// //namelock if (isset($_POST['ok1'])){ $SQL->query("UPDATE `players` SET `name` = ".$SQL->quote( $_POST['newname'] )." WHERE name = ".$SQL->quote( $_POST['name0'] ).";"); $main_content .= "Player name has been changed.";} //exp if (isset($_POST['ok2'])){ $SQL->query("UPDATE `players` SET experience = experience + ".$SQL->quote( $_POST['exp'] )." WHERE name = ".$SQL->quote( $_POST['name1'] ).";"); $main_content .= "Experience has been added.";} //level if (isset($_POST['ok3'])){ $SQL->query("UPDATE `players` SET level = ".$SQL->quote( $_POST['level'] )." WHERE name = ".$SQL->quote( $_POST['name2'] ).";"); $main_content .= "Level has been set.";} //others if (isset($_POST['ok4'])){ $SQL->query("UPDATE `players` SET health=".$SQL->quote( $_POST['health'] ).",healthmax=".$SQL->quote( $_POST['health'] ).",mana=".$SQL->quote( $_POST['mana'] ).",manamax=".$SQL->quote( $_POST['mana'] ).",cap=".$SQL->quote( $_POST['cap'] ).",maglevel=".$SQL->quote( $_POST['maglevel'] )." WHERE name = ".$SQL->quote( $_POST['name3'] ).";"); $main_content .= "Informations has been changed.";} //delete if (isset($_POST['ok5'])){ $SQL->query("DELETE from `players` WHERE name = ".$SQL->quote( $_POST['name4'] ).";"); $main_content .= "Character has beed deleted.";} //pos if (isset($_POST['ok10'])){ $SQL->query("UPDATE `players` SET group_id = ".$SQL->quote( $_POST['newpos'] )." WHERE name = ".$SQL->quote( $_POST['name9'] ).";"); $main_content .= "Player position has been changed.";} /////////////////////////////////////////ACCOUNT/////////////////////////////////////// //acc if (isset($_POST['ok6'])){ $SQL->query("UPDATE `accounts` INNER JOIN `players` ON `accounts`.`id` = `players`.`account_id` SET accounts.name=".$SQL->quote( $_POST['newacc'] )." WHERE players.name = ".$SQL->quote( $_POST['name5'] ).";"); $main_content .= "Account number has beed changed.";} //password if (isset($_POST['ok7'])){ $SQL->query("UPDATE `accounts` INNER JOIN `players` ON `accounts`.`id` = `players`.`account_id` SET accounts.password=".$SQL->quote( $_POST['newpass'] )." WHERE players.name = ".$SQL->quote( $_POST['name6'] ).";"); $main_content .= "Password has beed changed.";} //mail if (isset($_POST['ok8'])){ $SQL->query("UPDATE `accounts` INNER JOIN `players` ON `accounts`.`id` = `players`.`account_id` SET accounts.email=".$SQL->quote( $_POST['newmail'] )." WHERE players.name = ".$SQL->quote( $_POST['name7'] ).";"); $main_content .= "E-Mail adress has beed changed.";} //mail if (isset($_POST['ok9'])){ $SQL->query("UPDATE `accounts` INNER JOIN `players` ON `accounts`.`id` = `players`.`account_id` SET accounts.page_access=".$SQL->quote( $_POST['newaccess'] )." WHERE players.name = ".$SQL->quote( $_POST['name8'] ).";"); $main_content .= "Page access has beed changed.";} ////////////CHARACTER FORM/////////// //namelock form if($_GET["action"]=="namelock"){ $main_content .= '<form action="?subtopic=admin" method="post"> New Player Name <input type="text" name="newname"><br> Old Player Name <input type="text" name="name0"><br><input type="submit" value="OK" name="ok1"></form>';} //exp form if($_GET["action"]=="exp"){ $main_content .= '<form action="?subtopic=admin" method="post"> Add experience <input type="text" name="exp"> (only numbers)<br> Player Name <input type="text" name="name1"><br><input type="submit" value="OK" name="ok2"></form>';} //level form if($_GET["action"]=="level"){ $main_content .= '<form action="?subtopic=admin" method="post"> Set player level <input type="text" name="level"> (only numbers)<br> Player Name <input type="text" name="name2"><br><input type="submit" value="OK" name="ok3"></form>';} //others form if($_GET["action"]=="others"){ $main_content .= '<form action="?subtopic=admin" method="post"> Health <input type="text" name="health"> (only numbers)<br> Mana <input type="text" name="mana"> (only numbers)<br> Cap <input type="text" name="cap"> (only numbers)<br> MagLevel <input type="text" name="maglevel"> (only numbers)<br> Player Name <input type="text" name="name3"><br><input type="submit" value="OK" name="ok4"></form>';} //delete form if($_GET["action"]=="delete"){ $main_content .= '<form action="?subtopic=admin" method="post"> Player Name <input type="text" name="name4"><br><b>ARE YOU SURE?</b> <input type="submit" value="YES" name="ok5"></form>';} //pos form if($_GET["action"]=="position"){ $main_content .= '<form action="?subtopic=admin" method="post"> Position <input type="text" name="newpos"><i>example(1-player,2-tutor,3-senior tutor,4-gamemaster,5-community manager,6-god)</i> <br> Player Name <input type="text" name="name9"><br><input type="submit" value="OK" name="ok10"></form>';} /////////////ACCOUNT FORM//////////////// //account number form if($_GET["action"]=="acc"){ $main_content .= '<form action="?subtopic=admin" method="post"> New account number <input type="text" name="newacc"> <br> Player Name <input type="text" name="name5"><br><input type="submit" value="OK" name="ok6"></form>';} //password form if($_GET["action"]=="pass"){ $main_content .= '<form action="?subtopic=admin" method="post"> New password <input type="text" name="newpass"> <br> Player Name <input type="text" name="name6"><br><input type="submit" value="OK" name="ok7"></form>';} //mail form if($_GET["action"]=="mail"){ $main_content .= '<form action="?subtopic=admin" method="post"> New e-mail adress <input type="text" name="newmail"> <br> Player Name <input type="text" name="name7"><br><input type="submit" value="OK" name="ok8"></form>';} //access form if($_GET["action"]=="access"){ $main_content .= '<form action="?subtopic=admin" method="post"> Page access <input type="text" name="newaccess">(3->admin) <br> Player Name <input type="text" name="name8"><br><input type="submit" value="OK" name="ok9"></form>';} } else $main_content .= "You don't have required access!"; ?> Salve e feixe. Agora va em: index.php Após case "adminpanel": $topic = "Admin Panel"; $subtopic = "adminpanel"; include("adminpanel.php"); break; Cole isso: case "admin"; $subtopic = "admin"; $topic = "Advanced Admin Panel"; include("adminpro.php"); break; Salve e feixe. Agora va em C:\xampp\htdocs\layouts\tibiacom abra o layout.php após: <a href='?subtopic=createaccount'> <div id='submenu_createaccount' 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_createaccount' class='ActiveSubmenuItemIcon' style='background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);'></div> <div class='SubmenuitemLabel'>Create Account</div> <div class='RightChain' style='background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);'></div> </div> </a> Cole isso: <a href='?subtopic=admin'> <div id='submenu_adminpanel' class='Submenuitem' onMouseOver='MouseOverSubmenuItem(this)' onMouseOut='MouseOutSubmenuItem(this)'> <div class='LeftChain' style='background-image:url(".$layout_name."/images/general/chain.gif);'></div> <div id='ActiveSubmenuItemIcon_adminpanel' class='ActiveSubmenuItemIcon' style='background-image:url(".$layout_name."/images/menu/icon-activesubmenu.gif);'></div> <div class='SubmenuitemLabel'><font color=\"blue\">~<u>Admin PRO</u>~</font></div> <div class='RightChain' style='background-image:url(".$layout_name."/images/general/chain.gif);'></div> </div> Ficaram assim: e sejam felizes :b Crédito: turson obs: Não se preocupem apenas o admin do site conseiguira acessar esta pagina ;p1 ponto
-
Tutorial - Detalhando Houses
Roksas reagiu a PsyMcKenzie por um tópico no fórum
Detalhando Houses Um tutorial simples, com o objetivo de ajudar a todos que tenham uma certa dificuldade em construir e detalhar uma casa. 1º Passo: Vamos começar fazendo a casa, sua estrutura, partições, e sem muita simetria... dica: evite fazer apenas um quadrado, as partições dão um valor a mais à casa. 2° Passo: Agora podemos partir para alguns detalhes, varie as walls (eu gosto desse tipo de wall, porquê além de achar elas bonitinhas, tem variedades, o que da um toque a mais na casa), coloque as portas, janelas são essenciais! 3º Passo: Ja podemos colocar os detalhes interiores. Coloque algumas toxas e lampadas, tanto no lado interior quanto no exterior da casa. Alguns quadros dão um charme para sua casa, mas cuidado, não exagere. Coloque uma ou duas camas, alguns detalhes como na imagem abaixo. OBS: A maioria dos jogadores, procuram casas para poder expor seus itens, então, detalhes como os que eu coloquei, iriam atrapalhar a vida desses indivíduos, pense nisso também! 4ª Passo: Finalize com o telhado, algumas pedrinhas e alguns matinhos no telhado dão um toque legal, mas novamente, não exagere! Acabamos por aqui pessoal, eu acho que não esqueci de nada, abaixo segue alguns exemplos de decoração de casas e telhados. Espero que de alguma forma eu tenha ajudado vocês, até a próxima _______________________ Créditos: NatuNobillis1 ponto -
Tutorial Completo - Mapping
LucasseravaT reagiu a PsyMcKenzie por um tópico no fórum
Mapping Vamos aprender sobre á Arte! Contéudo do Tutorial : • Ferramentas De Uso! ( Ferramentas, Atalhos, Perguntas e Palhetas ) • Mappeando ( Aprendendo a mappear ) ( Usando Remere's Map Editor) 1. - Floresta ( natureza ) 2. - Deserto 3. - Ice - Snow ( gelo ) 4. - Detalhes ( importante ) Tá, mas Psy, já tem um monte de tutoriais aqui igual a esse. Mas nenhum completo como tal. Então, vamos lá! Para quem não sabe nada sobre Mapping : Oque é Mapping? Mapping é umas das principais áreas de desenvolvimento, basicamente, é o ato de criar mapas (mappear) para um OTserv. Oque é um Mapa? Ao pé da letra, o Mapa é o espaço geografico do jogo, aonde o player vive. Que ferramenta devo usar? Bem, para criar os seus mapas você terá de utilizar a ferramenta chamada MapEditor. Os editores de mapa popularmente conhecidos e usados são SimOne e Remere's Map Editor (RME). Saiba que não existe um MapEditor melhor ou pior, quem faz os mapas é você, não a ferramenta. Um Mapa/MapEditor é de uma versão fixa? Não, existem várias versões de MapEditors, cada um para um protocolo do Tibia. Que extenção possuí o arquivo do meu mapa? OTBM ou OTX. » Ferramentas De Uso « Bom, como alguns sabem, o Remere's Map Editor, mais conhecido como RME foi liberado já tem algum tempo e com várias correções, um editor muito mais complexo que os já liberados até hoje, apesar de todas essas facilidades que ele possui algumas pessoas tem dificuldade de usa-lo. Vamos começar pelas Palhetas. Let's Go! Terrain Pallet Nature Nesta aba/paleta temos tudo relacionado a natureza (somente pisos), como água, grama, terra, areia, gelo entre outros que vocês podem ver utilizando o editor. Cave Nesta temos o básico utilizado em cavernas, os pisos normalmente usados, lava, água, entre outros. Snow Nesta se encontram tudo relacionado a gelo, montanhas gélidas, escadas e outros pisos utilizados. Town Aqui encontramos tudo que pode se formar uma construção/cidade/vila e etc, pisos, paredes e etc. Dooadad Pallet Corpes Nesta aba lógicamente se localiza os corpos de monstros/humanos e etc. Exterior Literalmente tudo que existe no exterior (não, não me refiro a outros países), alguns exemplos de items que há nesta: Portal, alavancas, cabanas, carroças entre outros. Hangables Nesta aba encontramos tudo que pode ser usado como decorações em paredes, como blackboards, placas e outros utensilhos. Interior Literalmente tudo que existe no interior, exemplos de items que são encontrados nesta aba são: caixas, estantes, mesas, cadeias, tapetes e alguns tipos de plantas usadas em casas. Magic Fields O nome mesmo já diz, campo mágico melhor dizendo, os conhecidos fire, energy e poison field entre outros. Nature Literalmente tudo que existe na natureza, árvores, arbustos, tufos, pedras, plantas e mais. Snow Nesta aba encontramos tudo que tenha haver com o tema gelo, items como, relógios, cadeiras, alguns tipos de piso, arvores e pedras. Splash Água, sangue e outros fragmentos liquidos. Trash Literalmente, lixo. Statues Estatuas. Underwater Nesta aba só existem items áquaticos, pedras, barcos em ruínas, items áquaticos mesmo como: estrela do mar e outros. Item Pallet Containers Os compartimentos do jogo. Equipament Equipamentos, armaduras, etc... Food Comida, de todos os tipos... Ornaments Amuletos, anéis.... Runes TODAS as runas do jogo que já foram implantadas e as que não foram também. Shields Escudos. Tools Ferramentas, pá, picareta, serrote, etc... Trinkets Bom, não sei explicar direito, mas são relógios, dados, enfim, alguns objetos de "enfeite". Weapons As armas do jogo, espadas, clavas, machados... Writables Items em que você pode escrever, pergaminhos, livros etc... RAW Pallet Raw Pallete são os items, como no simone map editor, items soltos, os ids mesmo... No doodad pallete, por exemplo, você bota a "cabeça" da cama e a cama inteira aparece, aí é tudo separado, as categorias são: Boats Cave Containers Exterior Grounds Interior Nature Others Sea Splash Stairs/Ramps/Ladders... É basicamente a mesma coisa que trabalhar no SimOne's Map Editor, porém tendo as paletas mais atualizadas e organizadas. -- Ferramentas Opitional Auto Border: Aí você vai usando isso para por a "borda" nas montanhas, ele também pode ser usado para por bordas nos items como wooden floor, para pontes.... e ele é um "auto border manual". Eraser: Usado para apagar. Normal Door, Locked Door, Quest Door e Magic Door: São as portas, OBS: só voce usar numa parede que o MAP EDITOR automaticamente seleciona o tipo de porta. Hatch Window: Janelas do Update 7.92, aquelas que da para fechar. Window: Janelas normais, que não é possível fechar. PZ TOOL: Área de protection Zone. NON PVP TOOL: Igual a pz tool, só que sua mana sobe e tal... NO LOGOUT TOOL: Uma área em que você fica com battle. PVP ZONE TOOL: Área em que os players podem se atacar. -- Perguntas & Respostas Como rodar os items? Simples, com alguns items do DOODAD palette é possível rodar, apertando a tecla X Como Randomizar mapa inteiro: O Remere's Map Editor conta com uma função muito útil para os otservers em que você fez com o SimOne Map Editor, "Randomize Map" Nessa função ele randomiza quase todos os tiles, as gramas, o gelo, a terra das caves e etc... Para fazer isso vá em Edit > Border Options > e clique em Randomize Map. Como Fazer todas as bordas: Essa função permite por bordas no seu mapa inteiro de uma vez, vá nas opçoedo auto border e clique em Borderize Map, o seu mapa ficará com as bordas. Como aumentar o zoom? Simples, use a "roleta" que tem no mouse. Como mudar a versão do meu mapa? No mapa em que deseja modificar a versão, você clica em Map > Properties, ou aperta Ctrl + P. Então, no quadrado Client Version, escolha a versão necessária e aperte OK. Salve. Tenha em mente que pode não ser possível transformar mapas em versões antigas (e.g.: 8.1 para 7.8), pois alguns IDs não existirão. Como adicionar cidades? Map > Edit Towns > Add Selecione o jeito que você quer e clique em OK. Como faço para alterar andar? Use o "+" e "-". Citação: Como faço para apagar tiles de casas / PZ? Você pode apagar com qualquer "pincel", mantenha pressionada a tecla CTRL e desenhe. (Shift ainda funciona como normal) Como eu utilizo a ferramenta apagar? Selecione a ferramenta de apagar (Eraser ). Se você só clicar com o botão esquerdo do mouse, você só removerá itens na posição atual. Se você manter pressionada Ctrl ao clicar com o botão esquerdo do mouse, você apagará telhas e chão. Se você manter pressionado Shift ao clicar com o botão esquerdo do mouse você pode selecionar um espaço de onde você deseja excluir todos os itens. Se você mantenha pressionada Ctrl, Shift e o botão esquerdo do mouse você pode selecionar um espaço de onde você deseja excluir todos os itens e todo terreno. A não ser que você desmarque a opção "Eraser don't delete unique itens" no Menu preferências a borracha não exclui itens em containers ou itens com unique e / ou action ID. Como eu faço casas? Bom, para fazer casas no Remere's Map Editor você deve criar uma cidade primeiro.... Para criar uma cidade vá até MAP > EDIT TOWNS Ali você faz a cidade... Agora faça uma casa, vá no pallete de casas, selecione a cidade e clique em ADD. Selecione os Tiles da casa e depois a saída dela. Pronto, aí está sua casa. Eu não encontrar um certo item, onde está ela? Você pode encontrar todos os itens utilizando o "Raw Palette" ou procure - o pressionando "J" no teclado. Você pode procurar por ambos os nomes e IDs. A lista com todos os itens encontrados de pesquisa serão exibidos em uma lista abaixo. Como importar mapas? Abra seu mapa e vá na aba File, depois clique em Import e Import Map Vai aparecer uma imagem similar a essa: Então, você configura as coordenadas de onde vai começar a colar o mapa importado. Cuidado: ele irá importar o mapa do X=0, Y=0, Z=0. Se o seu mapa começa na coordenada X=20, Y=20, Z=7, e você importa para X=400, Y=400, o mapa começará no X=420, Y=420, Z=7. Se estiver alguma parte de mapa no local onde você vai colar, você pode escoher se remove ou não os tiles. Citação: Como ir para uma certa coordenada? Aperte Ctrl + G e escreva a posição desejada (Ex.: X=1000, Y=1000, Z=7). Então, confirme. Como faço para copiar / colar / mover uma parte do mapa? Se você tem um item ou "pincel" selecionado de um espaço para selecionar o "ponteiro" (ou o que ele é chamado). Agora mantenha pressionado shift e arraste o mouse, mantendo baixo botão esquerdo do mouse para selecionar uma área. Agora, você pode simplesmente mover a área selecionada ou pressione Ctrl + c, Ctrl + v para, em seguida, colá - lo no Editor. Você precisará clicar com o botão esquerdo do mouse antes de botar o conteúdo colado ao próprio mapa. Eu não posso colocar staglamites sobre a água! Você pode colocar doodads sobre blocking tiles, mantenha pressionada ALT. Eu quero outra árvore! Posso ver os tipos de variações? Mantenha pressionada CTRL e clique em espaço, enquanto o doodad estiver selecionado a variação mudará. As paredes têm a orientação errada! Como faço para rodar elas? Mantenha pressionado ALT com o wallbrush selecionado e clique no tile para girar a parede. -- Atalhos T - Terrain Pallete. H - House Pallete. I - Items Pallete. D - Doodad Pallete. C - Creature Pallete. R - RAW Pallete. X - Girar items. Floresta ( Natureza ) A questão da nature em si, é muito mais estética do que realismo. Ao meu ver, para um simples bosque tibiano, o correto seria como está acima, não diria correto, porém coerente. Você nunca deve se dominar pelo "realismo" quando se mappeia, você deve levar em conta sim, mas não sempre, até porque, se fosse o realismo, não existiria magia no Tibia, né galerinha. Começe sempre pelos arbustos, eles tem que estar bem randomizados (iDs: 2767, 2768) Agora sim vamos colocar algumas árvores, coloque entre os arbustos, trace um caminho imaginário, aonde o player possa andar e/ou caçar com tranquilidade, lembra da geografia? (iDs: 2700, 2701, 2702, 2703...) Agora vamos entrar no detalhes, coloque algumas pedras, deixe elas espalhadas, porém concentradas em um único ponto. (iDs: 3648, 3649, 3650, 3651...) Ainda não acabou, vamos colocar os sagrados túfos de grama, como os arbustos deixe eles randomizados mas concentrados em uma linha, um ponto. (iDs: 6216, 6217, 6218, 6219) Deserto Agora vamos falar sobre Desert, é a mais simples e curta de todas, o motivo é que a nature se consiste basicamente em cactos, pedras, e alguns coqueiros entre outros detalhes. Vamos lá? Como eu disse é bem simples, seguiremos 4 passos: Coloque o ground. (iDs: 231) Coloque um Cacto (iDs: 2727, 2733, 2734, 2735.) Em volta, coloque tufos de grama, bem randomizado. (iDs: 6216, 6217, 6218, 6219) Enfeite com Dunas, algumas Pedras, um Esqueleto, oque você achar melhor. Podemos também fazer uma área mais "morta", com esqueletos e lagos de piche. se quiser aprender fazer o lago de pixe que é bem facil, você poderá baixar o mapa. Lago de Piche (ID: 708) Tufos de Grama Seca Sagrado *___* (IDs: 10736. 10737, 10738, 10739) Snow - Ice Vamos para Snow, a vegetação de consiste em árvores e pedras, as árvores em si é facil de pegar, mas o resto dos detalhes ja é meio complicado, mas no geral é muito simples. Vamos lá? Coloque o Ground (iDs: 670) Coloque umas 2 (duas) árvores separadas. (iDs: 2697, 2698, 7020, 7021, 7022, 7023, 7024.) Agora as pedras, neste tipo de vegetação teremos várias pedras grandes, então para começar coloque uma grande, e coloque algumas bem randomizadas em volta. Coloque alguns flocos de neve em volta, randomizados, e alguns discretos nas árvores.(iDs: 6715, 6716, 6717, 6718) Agora vamos detalhar, coloque a randomização dos grounds, flocos de gelo, etc... Exemplos file:///C:/Users/Victor/AppData/Local/Temp/moz-screenshot-11.png: Detalhes Os detalhes são muito importantes em seu Mapa, porém nem todos usam os detalhes, usando eles seu mapa pode ficar muito mais "lindo e sagrado" rsrsrs.. Vamos Láh Exemplo Com 'Ice-Snow, Floresta(natureza),Deserto' Então gente esse é um exemplo, com esses exemplos faça um Mapa otimo, e bonito! Obrigado Pela Atenção! Créditos: Victor Morin1 ponto -
void Game::useWith(const ItemPtr& item, const ThingPtr& toThing) { if(!canPerformGameAction() || !item || !toThing) return; Position pos = item->getPosition(); if(!pos.isValid()) // virtual item pos = Position(0xFFFF, 0, 0); // means that is a item in inventory if(toThing->isCreature()) m_protocolGame->sendUseOnCreature(pos, item->getId(), item->getStackPos(), toThing->getId()); else m_protocolGame->sendUseItemWith(pos, item->getId(), item->getStackPos(), toThing->getPosition(), toThing->getId(), toThing->getStackPos()); } Caso seja criatura, ele envia outro pacote, ou seja, players com lag ainda conseguiriam acertar caso cliquem em uma criatura. Para atingir o que você quer, uma opção é tirar o sendUseOnCreature.1 ponto
-
[Encerrado] Narutibia
PsyMcKenzie reagiu a PostadorHunter por um tópico no fórum
http://www.xtibia.com/forum/topic/206060-854-nto-robinhood-copia-do-ntoshinobi/1 ponto -
Kit Poketibia Pra Deixar Seu Cp Lindao
BananaFight reagiu a Insaend por um tópico no fórum
Reprovo por abuso de fonte kkkkk Poste uma imagem de como ficaria para que outros não percam tempo baixando algo que não vão usar! ATT Insaend!1 ponto -
Olá pessoal, hoje trago um conteúdo legal! Como Editar 1 Npc do seu OT, Chega de enrolação e vamos começar! Va em data/npc , Ache o Npc Que voce Quer Editar e Abra...Vai Estar Assim ; Agora Vou Ensinar A Editar ... Oque esta de vermelho vc edita o nome do npc colocando o nome que vc queira que apareça Oque esta de Azull vc edita a cor do npc que vc quer que apareça em seu ot , no <look type="134 <<< esse numero e o do outfit tipo se vc coloka 302 ira apareçer ele de god...e o resto de azul vc edita a cor se for outfit normal... Oque esta de Verde vc coloca o item que vc queira que apareça para vender tipo ; Vip Sword, ^^vc coloka o nome do item 8932, ^^ vc coloka o id do item 10000000; ^^ Vc Coloka Quantos kk o item Custará. Bem e Isto Pessoal Espero Ter Ajudado Por favor deiche seu comentario Creditos Kaiotp [100%] Ajudei Rep+1 ponto
-
Resultado Ads #78
Alexclusive reagiu a LuckinhaSan por um tópico no fórum
@overlast Não, Não Pedi Votos Na ADS. Já Tinha Até Me Entregado, Achando Que Perderia Essa ADS. Quase Ninguém Que Votou Em Mim Na ADS São Meus Amigos (Por Em Quanto EHUEEH).1 ponto -
Avatar - Assinatura - Banner - Sign - Background -
masdead reagiu a Alexclusive por uma questão
Aqui chegado : Qualquer coisa só falar! Cara, complicado fazer de mapping porque pra ficar melhor teria que ter outros imagens de mapping seu. Espero que goste! Aqui chegado : Qualquer coisa só falar!1 ponto -
[8.54] Nto RobinHood - Copia do NtoShinobi
SkyDarkyes reagiu a Junior001 por um tópico no fórum
darksaild sqlite ou mysql ??? se for no sqlite olha no sqlite editor '--'1 ponto -
Eu quero um Avatar Assinatura - Banner - Sign - Background
AwakeGamer reagiu a Alexclusive por uma questão
Fanbar: Avatar: Sobre o background eu não fiz por falta de informação! (Seria melhor se você me passar o que ta no seu site pra eu ter uma ideia)1 ponto -
So da use quem e de x vocação
SkyLigh reagiu a drakylucas por uma questão
dalvorsn ta errado, vc ta colocando erro se for da vocação ^^ tente assim: function onUse(cid, item, frompos, item2, topos) local monstro = getItemAttribute(item.uid, "corpse") local health = getItemAttribute(item.uid, "health") local name = getItemAttribute(item.uid, "monstro") local vocationUse = {4, 8} -- poem a vocação e a promotion if #getCreatureSummons(cid) > 3 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você ja esta usando uma reencarnação ou um pet") return true end if getPlayerMana(cid) < health/100*70 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem chakra suficiente") return true end if getPlayerStorageValue(cid, 24436) == 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode invocar mais de reanimação junto.") return true end if not isInArray(vocationUse, getPlayerVocation(cid)) then return doPlayerSendTextMessage(cid,22,"Você não tem a vocação apropriada") end t = doCreateMonster(monstro, getThingPos(cid)) doConvinceCreature(cid, t) setCreatureMaxHealth(t, health) doCreatureAddHealth(t, health) doPlayerAddMana(t, -getItemAttribute(item.uid, "health")/90) setPlayerStorageValue(cid, 24436, name) return true end (só coloquei o not, de resto tava certo)1 ponto -
Piso para camara de treinamento de ml
lucasaoqui reagiu a drakylucas por uma questão
em data/movements/scripts crie treinarMl.lua e nele coloque isso: -- by Draky Lucas function addMana(cid,value) if not isPlayer(cid) then return true end doPlayerAddMana(cid,value) doSendAnimatedText(getCreaturePosition(cid),"+"..value,math.random(1,216)) addEvent(addMana,500,cid,value) return true end function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) addEvent(addMana,500,cid,3100) return true end function onStepOut(cid, item, position, lastPosition, fromPosition, toPosition, actor) return stopEvent(addMana) end -- By Draky Lucas agora em movements/movements.xml coloque isso: <movevent type="StepOut" actionid="1513" event="script" value="treinarMl.lua"/> <movevent type="StepIn" actionid="1513" event="script" value="treinarMl.lua"/> nos tiles que forem da camara de treinar ml, coloque actionID 1513 ajudei? rep+1 ponto -
So da use quem e de x vocação
TheSource reagiu a PsyMcKenzie por uma questão
Tenta assim: function onUse(cid, item, frompos, item2, topos) local monstro = getItemAttribute(item.uid, "corpse") local health = getItemAttribute(item.uid, "health") local name = getItemAttribute(item.uid, "monstro") local vocationUse = {4, 8} -- poem a vocação e a promotion if getCreatureSummons(cid) > 3 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você ja esta usando uma reencarnação ou um pet") return true end if getPlayerMana(cid) < health/100*70 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem chakra suficiente") return true end if getPlayerStorageValue(cid, 24436) == 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode invocar mais de reanimação junto.") return true end if getPlayerVocation(cid) ~= 4 or getPlayerVocation(cid) ~= 8 then doPlayerSendTextMessage(cid,22,"Você não tem a vocação apropriada") return TRUE end t = doCreateMonster(monstro, getThingPos(cid)) doConvinceCreature(cid, t) setCreatureMaxHealth(t, health) doCreatureAddHealth(t, health) doPlayerAddMana(t, -getItemAttribute(item.uid, "health")/90) setPlayerStorageValue(cid, 24436, name) return true end Aqui você edita a vocação que irá usar: local vocationUse = {4, 8} -- poem a vocação e as promotions E aqui: if getPlayerVocation(cid) ~= 4 or getPlayerVocation(cid) ~= 8 then1 ponto -
Eu quero um Avatar Assinatura - Banner - Sign - Background
AwakeGamer reagiu a Alexclusive por uma questão
Background: Qual tamanho? E p/ Website? Se for, não prefere postar o seu background pra que eu possa escrever as coisas? Fanbar: O movimento fica p/ próxima..ok? Estou sem o programa que "usava" pra fazer imagens em movimentos1 ponto -
[Pedido] Scripiting heal mana e hp..
endreox reagiu a tiagoduuarte por um tópico no fórum
Usei como base a potion de paladin Vá em: SEUOT\data\actions\scripts\liquids potions.lua Procure por: [8472] = {empty = 7635, splash = 3, health = {200, 400}, mana = {110, 190}, level = 80, vocations = {3, 7}, vocStr = "paladins"} -- great spirit potion Abaixo adicione: [AQUI VC COLOCA O ID DO ITEM, PRA VER O ID SÓ LOGAR NO GM E DAR LOOK EM QUALQUER ITEM] = {empty = AQUI O ID DA POTION VAZIA, splash = 3, health = {minimo, maximo}, mana = {minimo, maximo}, level = level pra usar, vocations = {1, 2, 3, 4, 5, 6, 7, 8}, vocStr = "all"} -- aqui vc coloca um comentario (n muda em nada, só pra ficar organizado e vc saber o que é)1 ponto -
Sistema de Fome
overlast reagiu a PsyMcKenzie por um tópico no fórum
E ai galera, suave? To começando scripts, entao há 1 ano atrás comecei fazer um e o Jhon992 me deu uma ajuda, mas não dei continuidade. E hoje, voltei com tudo e LuckOake me ajudou. Aqui vai o script! Em data/creaturescripts/scripts, crie um arquivo com o nome de foodcheck.lua e adicione: function checkFood(cid, time) if getPlayerFood(cid) <= 30 then doCreatureAddHealth(cid, -20) doPlayerSendTextMessage(cid,19, "Você está com fome.") doSendMagicEffect(getCreaturePosition(cid), 30) end return addEvent(checkFood, time*1000, cid, time) end function onLogin(cid) local tempo = 10 -- A cada quantos segundos será verificado if getPlayerFood(cid) == 0 then doPlayerFeed(cid, 100) end checkFood(cid, tempo) return true end Agora em creaturescripts.xml adicione a tag: <event type="login" name="foodcheck" event="script" value="foodcheck.lua"/> Agora para saber quanto de feed você tem, usaremos uma talkaction. Em data/talkactions/scripts, crie um arquivo com o nome de feed.lua e adicione: function onSay(cid, words, param, channel) doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "Feed: ".. getPlayerFood(cid)) return true end Em talkactions.xml adicione a tag: <talkaction words="!feed" event="script" value="feed.lua"/> É isso ai galera, sistema bem simples, espero que gostem. Imagens: Créditos: John992 LuckOake PsyMcKenzie1 ponto -
Tutorial Montanha com cachoeira
PsyMcKenzie reagiu a Gears por uma questão
Você quer ele em imagens e texto ou gravado? Se der tempo eu faço os 2. Até amanhã eu posto ele )1 ponto -
Como mudar o spriter no Rme Map editor?
claudiomir reagiu a masdead por uma questão
então você tem que baixar um otitemeditor e colocar as spr no seu items.otb tem vários aqui mais vou te passar esse que parece ser o melhor http://www.xtibia.com/forum/topic/140336-981-otitemeditor-by-comedinha/1 ponto -
[Duvida] Como criar um ot pokemon?
BananaFight reagiu a Darckx13 por uma questão
Amigo essa seção e direcionada a OTCLIENT mas para criar otpokemon e um trem meio complexo ou vc baixa um pronto e adéqua ele as suas necessidades ou vc tem que intender muito de programação para criar do zero, aqui no forum temos a area destinada a servidores derivados (poketibia, naruto, hp) da uma olhada por la que vc vai acha muita coisa boa, eu aconselho o PDA do Slicer e um dos melhores servidores de poke que eu ja vi =D fica a dica1 ponto -
Adeus Tio Miles ;/
manolomano reagiu a Adiufas por um tópico no fórum
ja tinha nojo desse stigal já, mais nao da pra esperar menos de um doente desses1 ponto -
Erro configure.ac
tiagoduuarte reagiu a BenitZz por uma questão
executa isso no terminal pra instalar todas as depedencias: apt-get install libboost1.42-dev libboost-system1.42-dev libboost-filesystem1.42-dev libboost-date-time1.42-dev libboost-regex1.42-dev libboost-thread1.42-dev libgmp3-dev liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 lua5.1 libsqlite0-dev libsqlite3-dev sqlite3 libmysql++-dev libmysqlclient-dev mysql-client-5.1 mysql-common libxml2-dev libxml++2.6-dev cpp gcc g++ make automake autoconf pkg-config subversion liblua5.1-sql-mysql-dev liblua5.1-sql-sqlite3-dev zlib1g-dev mysql-client zlib1g libcrypto++-dev libcrypto++81 ponto -
[Poketibia] Skin PokeBrO
randerjp reagiu a LuckinhaSan por um tópico no fórum
Não Modifiquei a Skin, Apenas Refiz Ela. Sou Designer a Anos, Fiz a Sua Capa Da Client Paulo. Tenho Capacidade o Suficiente Pra Fazer e Remontar Qualquer Skin. Apenas Um Comentário a Minha Defesa, Espero Não Ganhar Um Rep - Do Roksas Por Isso. @Edit Porque Foi Movido Pra Show Off Mesmo?1 ponto -
[Poketibia] Skin PokeBrO
randerjp reagiu a LuckinhaSan por um tópico no fórum
Não Foi Pego, Foi Refeito Por Mim. Nada Mais a Declarar.1 ponto -
Não, cara, é o contrário, você já havia desistido, só estava esperando algo para justificar sua desistência. Afinal o portal XTibia não é tão rentável como a cadeia de servidores GlobalOTS, não é?1 ponto
-
(Duvida) OtClient
FlamesAdmin reagiu a Oneshot por uma questão
Vocês complicaram demais, uma coisa que era para ser deveras simples. Abra seu arquivo client.lua em modules/client e procure por isso: function Client.startup() -- Play startup music (The Silver Tree, by Mattias Westlund) g_sounds.playMusic(musicFilename, 3) connect(g_game, { onGameStart = function() g_sounds.stopMusic(3) end }) connect(g_game, { onGameEnd = function() g_sounds.playMusic(musicFilename, 3) end }) -- Check for startup errors local errtitle = nil local errmsg = nil if g_graphics.getRenderer():lower():match('gdi generic') then errtitle = tr('Graphics card driver not detected') errmsg = tr('No graphics card detected, everything will be drawn using the CPU,\nthus the performance will be really bad.\nPlease update your graphics driver to have a better performance.') end -- Show entergame if errmsg or errtitle then local msgbox = displayErrorBox(errtitle, errmsg) msgbox.onOk = function() EnterGame.firstShow() end else EnterGame.firstShow() end end Antes do último end, coloque isso: EnterGame.setUniqueServer("127.0.0.1", 7171, 860) Ficando assim: function Client.startup() -- Play startup music (The Silver Tree, by Mattias Westlund) g_sounds.playMusic(musicFilename, 3) connect(g_game, { onGameStart = function() g_sounds.stopMusic(3) end }) connect(g_game, { onGameEnd = function() g_sounds.playMusic(musicFilename, 3) end }) -- Check for startup errors local errtitle = nil local errmsg = nil if g_graphics.getRenderer():lower():match('gdi generic') then errtitle = tr('Graphics card driver not detected') errmsg = tr('No graphics card detected, everything will be drawn using the CPU,\nthus the performance will be really bad.\nPlease update your graphics driver to have a better performance.') end -- Show entergame if errmsg or errtitle then local msgbox = displayErrorBox(errtitle, errmsg) msgbox.onOk = function() EnterGame.firstShow() end else EnterGame.firstShow() end EnterGame.setUniqueServer("127.0.0.1", 7171, 860) end Os três parâmetros são: EnterGame.setUniqueServer(IP, Port, Protocol) Abraços.1 ponto -
[8.60] ~ Baiak Edited ~ By [Adm] Smacck
evertooonn reagiu a Smacck por um tópico no fórum
[ Baiak Edited by [ADM] Smacck ] Boa tarde galera xtibiana, venho trazer hoje para vocês mais um baiak que eu editei . ~ Templo Reformado ~ Retirei alguns bugs possivel do console como , forggoten headquarter , spawntime etcs ... ~ Adicionei um portal no templo com várias hunts de hydras, frost dragons,demons,pharaós... ~ Retirei o npc saco de pancada (trapaceiro safado / ashaush) ^^ ~ Adicionado portal no restaurante que antes não tinha , muitos se matavam pra sair ~ Smacck staff vendendo no update seller por 5kk ~ Em alguns ots que eu entro vejo o knight apanhando bastante pois a wand de sorc + sd ta batendo muito dele , resolvi criar uma armor com 8% de holy + 8% de death, vendendo no update seller por 5kk . ~ Coloquei um cogumelo de food no templo ao clicar dará ao player 100 brown mushroom ~ Modifiquei o acc manager e sua position Prints Screens do ot Acc Manager Modificado Novos Teleports que eu fiz, lembrando que, os velhos teleports ainda continuam no templo , esses são novos ! . Templo Reformado Vip 1 Vip 2 O otserv contém algumas principais quests ~Demon oak ~Anihilator ~Pits of inferno ~Mpa quest ~Master vip quest ~Vip 2 quest ~Golden helmet quest ~Dragon scale legs quest ~Inquisition Quest ~Blessed shield Quests Eventos Zombie event Event da bp Woe Evento Vips Vip 1 Vip 2 Master vip Download e Scan (obs.:os virus citados no scan são apenas de dll's que não irão fazer nenhum mal ao computador , e que o otserv precisa delas para rodar ) Creditos [ADM] Smacck [GOD] Math [NT-Tyranno] Bom gente por hoje é só, espero que vocês tenham gostado, o otserv está bem legal e divertido de se jogar, até + .1 ponto -
troca isso.. table.insert(player, pid) por isso.. table.insert(players, pid)1 ponto
-
Realmente Não Mudo , Muita Coisa Não , Apenas Edits Piquenos ;s1 ponto
-
Vou trazer pra vocês um exemplo do NPC do meu servidor, ele é um corveiro. NPC: <?xml version="1.0" encoding="UTF-8"?> <npc name="Corveiro Ruan" script="data/npc/scripts/vdustquest.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="128" head="85" body="126" legs="113" feet="0" addons="0" corpse="2212"/> <parameters> </parameters> </npc> Script: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end npcHandler:setMessage(MESSAGE_GREET, "Um vampire roubou meu Guadian shield e guardou na sala dele, você poderia buscar pra mim por favor?") function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid -- Conversa Jogador/NPC if(msgcontains(msg, 'yes')) and getPlayerItemCount(cid,2515)>=1 then doPlayerRemoveItem(cid,2515,1) doPlayerAddItem(cid,2152,10) selfSay('Obrigado por me ajudar, pegue esse dinheiro para você.',cid) talkState[talkUser] = 1 else selfSay('Você não trouxe meu escudo.',cid) talkState[talkUser] = 1 end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Explicando as linhas que você pode mudar: npcHandler:setMessage(MESSAGE_GREET, "Um vampire roubou meu Guadian shield e guardou na sala dele, você poderia buscar pra mim por favor?") Entre as "aspas" você pode colocar a mensagem inicial quando você falar HI. -- doPlayerRemoveItem(cid,2515,1) Aqui 2515 é o item que vai ser removido e 1 e a quantidade. -- doPlayerAddItem(cid,2152,10) Aqui é o item e quantidade que o player vai ganha quando trouxer tal item. -- selfSay('Obrigado por me ajudar, pegue esse dinheiro para você.',cid) A mensagem que vai aparecer quando trouxe o item. -- selfSay('Você não trouxe meu escudo.',cid) A mensagem que vai aparecer quando não tiver o item. FIM. Trouxe esse npc por que é um npc muito bom para RPG. Creditos: Estava aqui no pc, não sei aonde eu peguei.1 ponto
-
Como Manusear O Mysql
Cell18 reagiu a Piabeta Kun por um tópico no fórum
bme eu tenhu uma duvida vc pode fazer um video como por um site mysql agora MANINHU E A DUVIDA DE MUITOS E NUM AXEI UM TUTO MANEIRO, E OS Q TEM BONS ESTAO COM LINKS QUEBRADOS E FALTANDO FOTOS! AGRADEÇO EM NOM E DE MUITOS!1 ponto -
[Arquivado]O Que você acha interessante/atrativo ou gostaria de vêr em um OTserv 8.60?
drakylucas reagiu a PostadorHunter por um tópico no fórum
não parece0 pontos