Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 03/05/16 em %

  1. EdMignari

    Aumentando o Limite de Sprites

    Clientes com versões anteriores à 9.60 têm um limite de sprites de 65.535. Parece muito, mas logo esse limite é atingido e ficamos impossibilitados de adicionar novos objetos para o servidor/cliente a não ser substituindo alguns sprites. Esse tutorial pretende ensinar como configurar as principais ferramentas para aumentar o limite. A versão utilizada no tutorial foi a 8.60. Conhecimentos Necessários: Básico nas ferramentas utilizadas. Ferramentas Utilizadas: Object Builder (edita os arquivos dat e spr do cliente) ItemEditor (edita o arquivo otb, que contém os itens usados no servidor) OTClient 0.6.5 Remere's Map Editor Um programa para abrir arquivos LUA. Compilando os Arquivos Estendidos: 1.Abra seus arquivos spr e dat no Object Builder. 2.Compile os arquivos com a opção extended selecionada. Obs: Uma vez compilado estendido, a opção extended deverá estar sempre selecionada tanto ao abrir, quanto ao compilar. Configurando o ItemEditor: 1. Abra a janela preferences no menu File > Preferences ou pelo atalho Crtl + P 2. Selecione a opção extended e a pasta do cliente. Pode ser preciso reiniciar o aplicativo. Configurando OTClient: 1. Abra o arquivo things.lua encontrado em modules/game_things 2. Adicione esta linha de código na função load: function load() local version = g_game.getClientVersion() g_game.enableFeature(GameSpritesU32) -- Linha Adicionada local datPath, sprPath . . . 3.Adicione uma cópia dos arquivos dat e spr estendidos na pasta data/things. Remere's Map Editor : Abra a janela de preferências no menu File > Preferences e selecione a aba Client Version. 1 - Selecione a versão do cliente que será usada como padrão. 2 - Selecione a opção extended. 3 - Selecione a pasta onde se encontram os arquivos do cliente. OBS.: Quando a opção extended está selecionada, ocorrerá um erro se tentar abrir arquivos não estendidos ( arquivos com versão menores que 9.60) Perguntas Frequentes: P: Qual o novo limite de sprites após ser estendido? R: 4.294.967.295 P: Depois que compilar estendido, pode ser usando no cliente da Cip? R: Não! Seria preciso modificar o cliente para que consiga ler os arquivos. P: Posso usar o dat editor para modificar os arquivos depois? R: O ObjectBuilder é um dat/spr editor, mas se você quer usar outro editor, é pouco provável que funcione. Não custa tentar. Créditos: EdMignari (edmignari@xtibia.com)
    1 ponto
  2. O Servidor O Village ATS é um projeto RPG diferente de qualquer outro servidor, com um mapa totalmente customizado, vocações poderosas e equilibradas, equipamentos nunca visto antes, montarias inovadoras e muito mais. Estamos usando o protocolo 10.41, pois é uma ótima versão para customizações em geral. Vocações Magician Descrição: São magos com magias de ataques poderosos, Equipam: Wands Evoluções: Magician -> Dark Wizard -> Evil Archimage HP por level: 5 MP por level: 35 Druid Descrição: São magos com magias brancas, ou seja, magias mais ligadas a cura. Equipam: Rods Evoluções: Druid -> Holy Priest -> Sacred Monk HP por level: 5 MP por level: 35 Archer Descrição: São peritos em combate-a-distancia, usando armas de duas mãos. Equipam: Bows/Crossbows Evoluções: Archer -> Sniper Minstrel -> Shooter Ranger HP por level: 10 MP por level: 20 Atalant Descrição: São peritos em combate-a-distancia, usando armas de uma mão e escudos. Equipam: Spears/Stars Evoluções: Atalant -> Accurate Hunter ->Elite Sentinel HP por level: 15 MP por level: 10 Warrior Descrição: São ótimos para causar fortes danos corpo-a-corpo e para defender criaturas poderosas. Equipam: Axes/Swords/Clubs Evoluções: Warrior -> Blade Knight -> Templar Fighter HP por level: 15 MP por level: 10 Thief Descrição: São muito velozes, causando danos corpo-a-corpo muito rápido. Equipam: Daggers/Knifes Evoluções: Thief -> Swift Rogue -> Crude Mercenary HP por level: 10 MP por level: 15 Teasers Temple of Estimar Depot of Natua Desert Cave Dunas Tomb Cyclops Mountain Dragons Cave Rotworm Queen Quest Amazon Camp Dwarves Mine Outlaws Camp Banshee Quest Por enquanto é isso pessoal! Estarei sempre postando novidades do projeto, e assim que possível abrindo um test server para jogadores interessados! Aguardo comentarios sobre o projeto. Atenciosamente, leocurvelo
    1 ponto
  3. Use este script e me diga se funcionou: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 -------------------------- ----PARTE CONFIGURAVEL---- -------------------------- local itensMsg = "crystal coin, gold coin, two handed sword" --isso aqui é a lista de itens que o npc irá falar local itens = {"crystal coin", "gold coin", "two handed sword"} --isso aqui são os itens que o npc irá aceitar local config = { --aqui vc vai configurar o item, o monstro e a posição ["crystal coin"] = {monster="demon", pos={x=32374, y=32215,z=7}}, ["gold coins"] = {monster='demon', pos={x=32374, y=32215,z=7}}, ["two handed sword"] = {monster="demon", pos={x=32374, y=32215,z=7}}, } ----------------------------- --FIM DA PARTE CONFIGURAVEL-- ----------------------------- function greetCallback(cid) npcHandler:say('Hello, '..getCreatureName(cid)..'. You brought something of my interest?', cid) npcHandler:addFocus(cid) return false end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end for k, v in pairs(itens) do if(msgcontains(msg, "yes")) then npcHandler:say('So, what did you bring? Remember: I\'m interested in {'..itensMsg..'}.', cid) elseif msgcontains(msg, v) then if getPlayerItemCount(cid, getItemIdByName((v))) > 0 then npcHandler:say('Get out of here! Go face your destiny!', cid) doPlayerRemoveItem(cid, getItemIdByName((v)), 1) doSummonCreature(config[v].monster, config[v].pos) else npcHandler:say('YOU ARE A LIAR! You don\'t have SHIT!', cid) end end return false end return true end npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
    1 ponto
  4. Hm... Que estranho... Essas functions são de tfs 0.3/.04... Fiz um ngc meio nas carrera... Mas ele faz exatamente o que vc descreveu até agr... O player chega pro npc, fala com ele e ele sumona um monstro ao custo de um item X pra o monstro X. script.lua: ATENÇÃO NESSA PARTE! Aqui vc deve deixar essas 3 areas em concordancia: script.xml: <?xml version="1.0" encoding="UTF-8"?> <npc name="NpcTalk" script="data/npc/scripts/SCRIPT.lua" walkinterval="1500" speed="100" walkradius="2" floorchange="0"> <health max="100" now="100"/> <look type="130" head="0" body="64" legs="67" feet="114" addons="1" mount="0"/> </npc>
    1 ponto
  5. zipter98

    Erro System Aura

    Abaixo de: function sendGemEffect(cid, storage, interval) coloque: if not isPlayer(cid) then return true end
    1 ponto
  6. MarcosFraga

    [Encerrado] Account

    MySql? Se for: DELETE FROM `DBNAME`.`accounts` WHERE `accounts`.`id` > 1; DBNAME = nome da sua database. Coloquei > 1 pois 1 normalmente é account mananger e as samples accounts.
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...