Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 11/16/15 em %

  1. Olá a todos que estão lendo esse tópico Vou posta aqui um pouco do meu projeto do Dragon Ball Z Online quando ele foi criando e quase tudo. HISTORIA da criação e do nome a dado ao servido: Bom o servidor foi criado pelos fãs de dragon ball z, nossa ideia de criar um servido de Dbo deu inicio no dia 10/06/2014 quando o [GOD Z] Valdemir teve vontade de fazer um Dragon Ball diferente dos servidores que tem hoje fomos procura um ot pela net e editar começamos com a versão 8.00 que entro online dia 01/11/2014 com o nome de Dragon Ball Z ultimate tenkaichi, que duro só um mês era por hamachi e pelo pc então decidimos da um update e a versão passo a ser 8.54 que entro online no dia 01/01/2015 com o nome de Supremo Dragon Ball Z Online, duro 3 mês mais ainda a sim só conseguimos 100 players online mais o servido ainda continuava via hamachi e hospedado no meu pc, então decidimos muda a versão e por ip fixo,24 horas online que no caso o server agora tem o nome de Dragon Ball Z Online, mas por Dragon Ball Z Online Por que Z, Bom como z e a ultima letra do alfabeto e seria a ultima versão e servido que damos update então botamos Dragon Ball Z Online para mostra que seira o ultima vez que mudamos o server, Bom essa foi a historia do server. Bom vamos lá servido Dragon Ball Z Online: Sistema de fly 100% 28 personagem free 9 personagem vip Quest vip: Goku ssj5 set, Legendary quest Quest free: Fusion set, Janemba set Sistema Shenlong 1 hunte com acesso a fly Evento invasion diario Otclient Mapa 99% Todos os personagem tem nível God Sistema refinamento Vocation Free: Goku Vegeta Gohan Gotenks Brolly Bardock Cell Freeza Majin Buu Janemba Trunks Uub Tsuful Cooler Kaio C17 C18 C16 Piccolo Dende Krillin Pan Turles Tenshinhan Raditz Jenk Personagem Vip: Bills Tapion Shenron Goku jr Vegetto Mestre kame King vegeta Zaiko Chilled Staff [GOD Z] Valdemir(eu) [ADM] Baile De Favela(Italo Ramon) [ADM] Gabriel(Gabriel Gusmão) [ADM] Zaiko(Luan Santos) vídeo da legendary quest : https://www.youtube.com/watch?v=Z9d9QnbaRsY Alguns print:
    2 pontos
  2. Caronte

    Erro first items

    Tente isto: local firstItems = { [0] = {2173, 2525, 2428, 2124, 2460, 2478, 2643}, [1] = {2173, 2525, 2190, 2124, 2460, 2478, 2643}, [2] = {2173, 2525, 2182, 2124, 2460, 2478, 2643}, [3] = {2173, 2525, 2389, 2124, 2460, 2478, 2643}, [4] = {2173, 2525, 2428, 2124, 2460, 2478, 2643}, } function onLogin(cid) if getPlayerStorageValue(cid, 30001) == -1 then for i = 1, #firstItems[getPlayerVocation(cid)] do doPlayerAddItem(cid, firstItems[getPlayerVocation(cid)][i], 1) end if getPlayerSex(cid) == 0 then doPlayerAddItem(cid, 2465, 1) else doPlayerAddItem(cid, 2465, 1) end local bag = doPlayerAddItem(cid, 10518, 1) doAddContainerItem(bag, 2160, 10) doAddContainerItem(bag, 2554, 1) doAddContainerItem(bag, 2120, 1) doAddContainerItem(bag, 7618, 1) doAddContainerItem(bag, 2383, 1) setPlayerStorageValue(cid, 30001, 1) end return TRUE end
    2 pontos
  3. SkyLigh

    Evento Double Exp

    Fala galera tudo bem? Essa semana teve um membro que pediu um evento de double exp até que consegui fazer usando alguns scripts como base, então vamos ao código. INSTALAÇÃO Vá em data/creaturescripts/scripts e em creaturescripts.xml adicione a seguinte tag. <event type="kill" name="ExpBonus" event="script" value="exp.lua"/> Em data/creaturescripts/scripts crie um arquivo .lua e renomeie para exp.lua e adicione o seguinte código. function onKill(cid, target) if isPlayer(cid) and isMonster(target) then if getGlobalStorageValue(102590) - os.time() >= 1 then local exp = getExperienceStage(getPlayerLevel(cid), getVocationInfo(getPlayerVocation(cid)).experienceMultiplier) local count = ((getMonsterInfo(string.lower(getCreatureName(target))).experience*1.5*exp)/2) doPlayerAddExperience(cid, count) addEvent(doSendAnimatedText, 500, getCreaturePosition(cid), '+'..count, math.random(50,60)) end else return TRUE end return TRUE end Agora no data/creaturescripts/scripts e login.lua adicione a seguinte tag. registerCreatureEvent(cid, "ExpBonus") Agora vá em data/talkactions/scripts talkactions.xml <talkaction words="/doubleexp" access="5" event="script" value="exp.lua"/> Em data/talkactions/scripts crie um arquivo.lua e o renomeio para exp.lua e adicione o seguinte código dentro. function onSay(cid, words, param, channel) local config = { storage = 102590, } if(param == 'cancel') then if getGlobalStorageValue(config.storage) > 0 then setGlobalStorageValue(config.storage, -1) doBroadcastMessage("Double Exp cancelado") end return true end param = tonumber(param) if(not param or param < 0) then doPlayerSendCancel(cid, "Digite por quantas horas o evento ira durar") return true end if getGlobalStorageValue(config.storage) - os.time() <= 0 then setGlobalStorageValue(config.storage, os.time()+param*60*60) doBroadcastMessage("Exp bonus ativado 50% + EXP por "..param.." horas! Aproveite.") end return true end COMO UTILIZAR Para ativar o comando digite /doubleexp Quantidade de horas que vai durar o evento Exemplo /doubleexp 3 o evento ira durar por 3 horas. Para cancelar o evento basta digitar /doubleexp cancel apenas os GOD'S podem utilizar os 2 comandos. Créditos --- Pela postagem do tópico e edição nos códigos. --- Por eu tê pego uma parte de um script dele do creaturescripts. Espero que gostem
    1 ponto
  4. TaaG

    Frag and VIP/FREE look

    O script consiste em quando você der look no player irá aparecer se ele é VIP ou FREE e quantas pessoas ele já matou (frags). SS: lookplayer.lua (data/creaturescripts/scripts) function getPlayerFrags(cid) local time = os.time() local times = {today = (time - 86400), week = (time - (7 * 86400))} local contents, result = {day = {}, week = {}, month = {}}, db.getResult("SELECT `pd`.`date`, `pd`.`level`, `p`.`name` FROM `player_killers` pk LEFT JOIN `killers` k ON `pk`.`kill_id` = `k`.`id` LEFT JOIN `player_deaths` pd ON `k`.`death_id` = `pd`.`id` LEFT JOIN `players` p ON `pd`.`player_id` = `p`.`id` WHERE `pk`.`player_id` = " .. getPlayerGUID(cid) .. " AND `k`.`unjustified` = 1 AND `pd`.`date` >= " .. (time - (30 * 86400)) .. " ORDER BY `pd`.`date` DESC") if(result:getID() ~= -1) then repeat local content = {date = result:getDataInt("date")} if(content.date > times.today) then table.insert(contents.day, content) elseif(content.date > times.week) then table.insert(contents.week, content) else table.insert(contents.month, content) end until not result:next() result:free() end local size = { day = table.maxn(contents.day), week = table.maxn(contents.week), month = table.maxn(contents.month) } return size.day + size.week + size.month end function onLook(cid, thing, position, lookDistance) local string = 'You see yourself.' if isPlayer(thing.uid) and thing.uid ~= cid then if getPlayerPremiumDays(thing.uid) > 0 then doPlayerSetSpecialDescription(thing.uid,'[Frags: '..getPlayerFrags(thing.uid)..'][VIP]') else doPlayerSetSpecialDescription(thing.uid,'[Frags: '..getPlayerFrags(thing.uid)..'][FREE]') end elseif thing.uid == cid then if getPlayerPremiumDays(cid) > 0 then doPlayerSetSpecialDescription(cid,'[Frags: '..getPlayerFrags(cid)..'][VIP]') else doPlayerSetSpecialDescription(cid,'[Frags: '..getPlayerFrags(cid)..'][FREE]') end if getPlayerFlagValue(cid, PLAYERFLAG_SHOWGROUPINSTEADOFVOCATION) then string = string..' You are '.. getPlayerGroupName(cid) ..'.' elseif getPlayerVocation(cid) ~= 0 then string = string..' You are '.. getPlayerVocationName(cid) ..'.' else string = string..' You have no vocation.' end string = string..getPlayerSpecialDescription(cid)..'' if getPlayerNameByGUID(getPlayerPartner(cid), false, false) ~= nil then string = string..' You are '.. (getPlayerSex(cid) == 0 and 'wife' or 'husband') ..' of '.. getPlayerNameByGUID(getPlayerPartner(cid)) ..'.' end if getPlayerGuildId(cid) > 0 then string = string..' You are ' .. (getPlayerGuildRank(cid) == '' and 'a member' or getPlayerGuildRank(cid)) ..' of the '.. getPlayerGuildName(cid) string = getPlayerGuildNick(cid) ~= '' and string..' ('.. getPlayerGuildNick(cid) ..').' or string..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEECREATUREDETAILS) then string = string..'\nHealth: ['.. getCreatureHealth(cid) ..' / '.. getCreatureMaxHealth(cid) ..'], Mana: ['.. getCreatureMana(cid) ..' / '.. getCreatureMaxMana(cid) ..'].' string = string..'\nIP: '.. doConvertIntegerToIp(getPlayerIp(cid)) ..'.' end if getPlayerFlagValue(cid, PLAYERCUSTOMFLAG_CANSEEPOSITION) then string = string..'\nPosition: [X:'.. position.x..'] [Y:'.. position.y..'] [Z:'.. position.z..'].' end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string) return false end return true end creaturescripts.xml <event type="look" name="LookPlayer" event="script" value="lookplayer.lua"/> login.lua (data/creaturescripts) registerCreatureEvent(cid, "LookPlayer") Créditos: Taag - Suicide
    1 ponto
  5. faeleligi

    cidade de pallet sendo desinvolvida

    boa tarde galera to trabalhando um pokemon de gba mais ele n é plataforma gba e sim tibia to criando das estruturas do pokemon gba em breve a primeira cidade stara pronta aki sta pronto lab oak, mart , centro policial e um celeiro estou a faser sprites das casas!!lembrando que sao criaçoes unicas !
    1 ponto
  6. TaaG

    Hunting Arrow/Ballista

    O script consiste em, ao clicar, lançar uma flecha que, ao chegar no target, dará certo dano. Sendo assim, um bom script para Paladino. SS: ballista.lua (data/actions/scripts) local config = { shootRange = 7, damage = {50, 100}, -- dano minimo/maximo shootEffect = CONST_ANI_HUNTINGSPEAR, impactEffect = CONST_ME_HITAREA, exhaustOnUse = 300, -- tempo de recarga em segundos direction = { [5692] = DIRECTION_NORTH, [5701] = DIRECTION_EAST, [5698] = DIRECTION_WEST, [5695] = DIRECTION_SOUTH } } local exhaust = Condition(CONDITION_EXHAUST_WEAPON) exhaust:setParameter(CONDITION_PARAM_TICKS, config.exhaustOnUse) function onUse(player, item, fromPosition, target, toPosition, isHotkey) if player:getCondition(CONDITION_EXHAUST_WEAPON) then player:sendTextMessage(MESSAGE_STATUS_SMALL, Game.getReturnMessage(RETURNVALUE_YOUAREEXHAUSTED)) return true end player:addCondition(exhaust) for i = 1, config.shootRange do local nextPosition = item:getPosition() nextPosition:getNextPosition(config.direction[item.itemid], i) local tile = Tile(nextPosition) if tile then local topCreature = tile:getTopCreature() if topCreature then toPosition:sendDistanceEffect(topCreature:getPosition(), config.shootEffect) doTargetCombatHealth(player, topCreature, COMBAT_PHYSICALDAMAGE, -config.damage[1] * i, -config.damage[2] * i, config.impactEffect) return true end end end local nextPosition = item:getPosition() nextPosition:getNextPosition(config.direction[item.itemid], config.shootRange) toPosition:sendDistanceEffect(nextPosition, config.shootEffect) return true end actions.xml (data/actions) <action itemid="id" event="script" value="ballista.lua"/> Créditos: Printer
    1 ponto
  7. Night Wolf

    BUG Outfit Invisível?

    local LOL = nil local outfit = {lookType = LOL, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookTypeEx = 0, lookAddons = 0} amigo, vc tá setando o lookType pra nil (nulo), se vc quer pegar o looktype faz assim local geral = { speed = 300 } local config = { ["Charmander"] = {level = 1, health = 39, looktype = 369, storage = 857643, speed = 68, evo = "Charmeleon", vocid = 2}, ["Charmeleon"] = {level = 16, health = 58, looktype = 368, storage = 857644, speed = 80, evo = "Charizard", vocid = 3} } function setPokemonClass(cid, monster) doChangeSpeed(cid, -getCreatureSpeed(cid)) doChangeSpeed(cid, geral.speed+config[monster].speed) setCreatureMaxHealth(cid, config[monster].health *10) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) setPlayerStorageValue(cid, config[monster].storage, 1) doPlayerSetVocation(cid, config[monster].vocid) doCreatureChangeOutfit(cid, {lookType = config[monster].looktype}) end
    1 ponto
  8. ShinySprite

    BUG Outfit Invisível?

    local geral = { speed = 300 } local config = { ["Demon"] = {level = 1, health = 39, looktype = 369, storage = 857643, speed = 68, vocid = 2} } local LOL = nil local outfit = {lookType = LOL, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookTypeEx = 0, lookAddons = 0} function setMonsterClass(cid, monster) doChangeSpeed(cid, -getCreatureSpeed(cid)) doChangeSpeed(cid, geral.speed+config[monster].speed) setCreatureMaxHealth(cid, config[monster].health *10) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) setPlayerStorageValue(cid, config[monster].storage, 1) doPlayerSetVocation(cid, config[monster].vocid) doPlayerSetOutfit(cid, outfit=369, head=95,legs=95, feet=95, body=95) end e isso daria?
    1 ponto
  9. Deadpool

    [Tutorial] Mudar miniwidow

    Tem sim haha
    1 ponto
  10. GGgames

    Duvida nas spells e radius

    @@Caronte, Vlw caronte! Ajudou muito, abraçao!
    1 ponto
  11. Ele quer um que sete o level, tipo, se tiver no 1, e ele usar comando, e quiser 100, do 1 vai pro 100, ou se tiver 100, e ela quiser 65, volta pro 65 tendeu? Bem, eu fiz aqui ... se for 0.3.6/0.4, deve funcionar, se n for, posta ai a versão que você n explicou .. mas enfim, vou dormi e n tenho paciencia pra vc responder '-' tenta ai: function onSay(cid, words, param, channel) local str = string.explode(param, ",") local player = getPlayerByNameWildcard(str[1]) local amount = tonumber(str[2]) or 1 if not(player) then return doPlayerSendTextMessage(cid, 27, "Player nao encontrado") elseif not(amount) then return doPlayerSendTextMessage(cid, 27, words .. " personagem, valor.") end doPlayerAddExp(player, getExperienceForLevel(amount) - getPlayerExperience(player)) doCreatureAddMana(player, getCreatureMaxMana(player) - getCreatureMana(player)) doCreatureAddHealth(player, getCreatureMaxHealth(player) - getCreatureHealth(player)) return true end <talkaction log="yes" words="/level" access="5" event="script" value="nomedoarquivo.lua"/> Para usar é simples, /level player, level.. tipo: /level overllord, 100 obs: isso é uma talkaction ..
    1 ponto
  12. Administrador

    Evento Double Exp

    Caramba, parabéns @ Ótimo script
    1 ponto
  13. Caronte

    Duvida nas spells e radius

    local tempo = 60 -- tempo em segundos. local effect = {136} -- effect no player, caso queira apenas 1, basta remover os outros numeros. local ml = 35 -- quantos ira aumentar o skill de ML local skillfist = 35 -- quantos ira aumentar o skill de Fist local skillsword = 35 -- quantos ira aumentar o skill de Sword local skillaxe = 35 -- quantos ira aumentar o skill de Axe local skillclub = 35 -- quantos ira aumentar o skill de Club local skilldistance = 35 -- quantos ira aumentar o skill de Distance local skillshield = 35 -- quantos ira aumentar o skill de Shield local health = 100 -- A cada 1 segundo quantos aumentar de vida local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield) setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_HASTE) setConditionParam(condition, CONDITION_PARAM_SPEED, 250) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local condition = createConditionObject(CONDITION_REGENERATION) setConditionParam(condition, CONDITION_PARAM_SUBID, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health) setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000) setCombatCondition(combat, condition) function magicEffect1(tempo2,tempo3,cid) if (isCreature(cid)) then if getPlayerStorageValue(cid, 102053) > 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then for i=1, #effect do local position = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} doSendMagicEffect(position, effect[i]) end end end end function onCastSpell(cid, var) local position127 = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z} if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(magicEffect1, tempo2, tempo2, tempo*1000, cid) tempo2 = tempo2 + 300 end setPlayerStorageValue(cid, 102053,1) -- storage verifica transformado, quando = 1 player esta transformado. if isPlayer(cid) then doCreatureSay(cid, "Susano", TALKTYPE_MONSTER) end doSendMagicEffect(position127, 110) else doPlayerSendCancel(cid, "Sorry, you are transformed.") end end Pronto. Porque o do player é configurado na própria spell, diferente da dos monstros. você pode configurar ela, ou pegar algumas pré configuradas, olhe: em spells/lib/spells.lua você pode observar isso: --Waves AREA_WAVE4 = { {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 3, 0, 0} } AREA_SQUAREWAVE5 = { {1, 1, 1}, {1, 1, 1}, {1, 1, 1}, {0, 1, 0}, {0, 3, 0} } AREA_WAVE5 = { {0, 1, 1, 1, 0}, {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0}, {0, 0, 1, 0, 0}, {0, 0, 3, 0, 0} } --Diagonal waves AREADIAGONAL_WAVE4 = { {0, 0, 0, 0, 1, 0}, {0, 0, 0, 1, 1, 0}, {0, 0, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 0}, {0, 0, 0, 0, 0, 3} } AREADIAGONAL_SQUAREWAVE5 = { {1, 1, 1, 0, 0}, {1, 1, 1, 0, 0}, {1, 1, 1, 0, 0}, {0, 0, 0, 1, 0}, {0, 0, 0, 0, 3} } AREADIAGONAL_WAVE5 = { {0, 0, 0, 0, 1, 0}, {0, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 0, 0}, {1, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 3} } --Beams AREA_BEAM1 = { {3} } AREA_BEAM5 = { {1}, {1}, {1}, {1}, {1}, {3} } AREA_BEAM7 = { {1}, {1}, {1}, {1}, {1}, {1}, {1}, {3} } --Diagonal Beams AREADIAGONAL_BEAM5 = { {1, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 0}, {0, 0, 1, 0, 0, 0}, {0, 0, 0, 1, 0, 0}, {0, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 3} } AREADIAGONAL_BEAM7 = { {1, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 0}, {0, 0, 0, 0, 0, 0, 0, 3} } --Circles AREA_CIRCLE2X2 = { {0, 1, 1, 1, 0}, {1, 1, 1, 1, 1}, {1, 1, 3, 1, 1}, {1, 1, 1, 1, 1}, {0, 1, 1, 1, 0} } AREA_CIRCLE3X3 = { {0, 0, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 1, 1}, {1, 1, 1, 3, 1, 1, 1}, {1, 1, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 0, 0} } -- Crosses AREA_CROSS1X1 = { {0, 1, 0}, {1, 3, 1}, {0, 1, 0} } AREA_CROSS5X5 = { {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} } AREA_CROSS6X6 = { {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1}, {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}, {0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0} } --Squares AREA_SQUARE1X1 = { {1, 1, 1}, {1, 3, 1}, {1, 1, 1} } -- Walls AREA_WALLFIELD = { {1, 1, 3, 1, 1} } AREADIAGONAL_WALLFIELD = { {0, 0, 0, 0, 1}, {0, 0, 0, 1, 1}, {0, 1, 3, 1, 0}, {1, 1, 0, 0, 0}, {1, 0, 0, 0, 0}, } São áreas pré configuradas, para serem usadas no script. Por exemplo no exori, você observará isto: AREA_SQUARE1X1 , e não vai esta explicita a área, pois ela já foi feita na lib. você pode montar a sua própria área: 0 = onde a spell não alcançará. 1 = onde a spell alcançará. 2 = onde o player estará sem sobreposição de magia. 3 = onde o player estará com sobreposição de magia.
    1 ponto
  14. Primeiro vou explicar cada item pra você criar sua vocação certinha! id = não deve haver nenhuma igual, tente seguir a sequencia para não se perder. name = nome da nova vocação. description = quando der look aparecera esse nome, e caso acc manager também. needpremium = se precisa de premmium para ter essa vocação (0 = não 1 = sim) gaincap = o tanto de cap que vai ganhar quando upar gainhp = o tanto de vida que vai ganhar quando upar gainmana = o tanto de mana que vai ganhar quando upar gainhpticks = o tanto de segundos que demora pra subir a vida gainhpamount = o tanto de vida que vai ganhar a cada ( no nosso exemplo 6 ) segundos gainmanaticks = o tanto de segundos que demora pra subir a mana gainmanaamount = o tanto de mana que vai ganhar a cada ( no nosso exemplo 3 ) segundos manamultiplier = quanto ml vai demorar pra subir, quanto menor mais rápido attackspeed = velocidade do ataque de wands e weapons (quanto menor mais rápido) soulmax = o maximo de soul gainsoulticks = o tanto de segundos que vai demorar pra subir o soul fromvoc = como ele será reconhecido nos scripts ( bote igual o id ) Formulas: meleeDamage = quanto hita com weapons ( exceto wands e rods ) distDamage = quanto hita com ataques a distancia wandDamage = quando hita com wand magDamage = quando hita com magias magHealingDamage = quanto heala com magias de cura, ( tanto exura como exura sio ) defense = quanto defende com escudos armor = quanto defende com armaduras
    1 ponto
  15. Bruninho Santos

    Evento Double Exp

    Top pode ser útil a mim no futuro
    1 ponto
  16. Avuenja

    [8.54] Naruto Atarashi Online V.2

    Naruto Atarashi Online É pessoal depois de quase dois anos, está ai o Nrtao V.2. Agora terá updates frequentes então esse é o começo.... Menu: ├ Informações; ├ Ajustes; ├ Erros; ├ Senha; ├ Prints; ├ Download; ├ Scan; └ Créditos. Informações Nome Do Servidor: Naruto Atarashi Online Max Usuários Online: Quanto seu computador e net aguentarem. Recomendado até 100 (Mapa muito pequeno). Ele Contém:"Mapa Próprio" ; "Jutsus Próprio" / ( Diga "!jutsus" para saber Seu Jutsu) "Transformações" "Quest Própria". Ajustes 0.1 - Modificado Dat e Spr novamente 0.2 - Arrumado Outifts Dos Personagens E Monstros 0.3 - Adicionado mapa novo (Ainda sendo feito) 0.4 - Novos Montros 0.5 - Novos Trainers 0.6 - Novas Houses 0.7 - Criada Uma Arena PvP 0.8 - Arrumado Sistema Ver Jutsus 0.9 - Adicionado 19 vocações todas com transformações 1.0 - Arrumado Jutsus Que Não Funcionavam / Alguns novos Erros 0.1 - Pode Se Levar Debug Em Alguns Montros / (Ainda Um Pouco) 0.2 - Pode se levar debug com o GOD quando dizer "!Justus" 0.3 - Mapa pequeno ainda sendo feito. Obs - Se Achar Mais, Basta Entrar Em Contato Com: teamatrs@gmail.com Senha Senha Para Entrar No Server / (Do GOD): god / god Prints Download's NrtAo V.2 Scan NrtAo V.2 Créditos 97% Eu (Avuenja) - Motivo: "Edição Final / Ajustes Finais / Implementação De Sistemas / E Outros". 3% (Stigal) - Motivo: "Por ainda conter alguns dos seus ajustes".
    1 ponto
  17. Roksas

    Torneio PVP!

    Iaaae galera suave braaits ? Hoje venho trazer para vocês um sistema de Torneio, mas, como funciona? Vários players entram numa sala, falando com o NPC (tem horário configurável para poder falar), e para poder participar deve pagar uma quantia, ao pagar você é teleportado á Arena aonde começa a batalha. O último que sobreviver vence Vamos á instalação? ~~ Vá em data/npc, copie algum arquivo .XML da pasta e cole, renomeie para Tournament, cole isso dentro: Ok, agora vá em data/npc/scripts, copie algum arquivo dessa pasta e cole, renomeie para tournament, cole isso: Configurando: local cfg = { price = 100, -- Money to sign in tournament startPos = {x = 1016, y = 1025, z = 7}, -- Posição central da sala de torneio hour = "18:00:00", -- Hour to start maxhour = "18:15:00" -- Max to start } Price é o preço que paga para entrar no Torneio, startPos é as coordenadas do meio da sala de Torneio, e Hour é a hora do dia que começa, o Torneio no caso é diário, mude o horário de "18:00:00" para o horário desejado, entre aspas e no formato 00:00:00! Já o maxhour determina até quando o NPC vende inscrições, no caso coloquei por 15 minutos. ​ Agora vamos configurar a alavanca e o baú do vencedor! Vá em data/lib, abra o arquivo 050-function.lua ou function.lua, vá até a última linha de todas, pule 2 linhas e cole isso: Essa é a lib que usaremos no nosso Torneio, muito bem, agora vá em data/actions/scripts, copie algum arquivo desta pasta e cole, renomeie para tournament e cole isso dentro: Configurando: local cfg = { salaAward = {x = 1016, y = 1014 , z = 7}, -- Coordenates of the award place } salaAward, coloque as coordenadas da sala de prêmio do vencedor do Torneio! local area = {fromx = 1008, fromy = 1018, fromz = 7, tox = 1025, toy = 1033, toz = 7} fromx - fromy - fromz, coloque as coordenadas (X,Y e Z) do canto superior esquerdo da sala de Torneio, e tox - toy - toz, coloque as coordenadas (X, Y e Z) do canto inferior direito da sala de Torneio. local maxhour = "18:15:00", coloque igual ao script do NPC! Na mesma pasta crie outro arquivo, mas agora com o nome de tournamentchest e adicione isso dentro: ​Configurando: local cfg = { awardId = 2148, -- Item ID of winner prize awardAmount = 100, -- Amount of item ID } awardId coloque o ID do item que vai receber ao ganhar o Torneio, e awardAmount a quantidade! Em actions.xml adicione essas tags: <action actionid="13549" event="script" value="tournament.lua"/> <action uniqueid="5531" event="script" value="tournamentchest.lua"/> Muito bem, dirija-se á data/creaturescripts/scripts, copie algum arquivo da pasta e cole, renomeie para tournamentdeath, e adicione isso dentro: ​Configurando: ​ local cfg = { leftPos = {x = 1008, y = 1018, z = 7}, rightPos = {x = 1025, y = 1033, z = 7}, } leftPos coloque as coordenadas do canto superior esquerdo da Sala de Torneio, e rightPos coloque o canto inferior direito da sala Agora em creaturescripts.xml adicione essa tag: <event type="preparedeath" name="TournamentDeath" event="script" value="tournamentdeath.lua"/> Prontinho galera, agora apenas adicione ACTION ID 13549 na alavanca e UNIQUE ID 5531 no baú do campeão Download Mapa Tournament (Tibia) - 4shared
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...