Ir para conteúdo
US
Blazera 8.60
blazera.net
SOBRE O BLAZERA
Um fresh start em um servidor 8.6 clássico, com real map, focado na experiência raiz do Tibia. | Classic Real Map • Fresh Start • Client 8.6 • Old School Gameplay • Active Community
Inicia em: --
Participar

Bruno Minervino

Membro
  • Registro em

  • Última visita

Tudo que Bruno Minervino postou

  1. Meu caro, aconselho você usar linux. No caso, aqui no fórum possui vários tutoriais que ensinam como fazer este procedimento. Eu particularmente nunca vi um serviço VPS oferecer Windows XP.
  2. Obrigado por testar cara E vlw pela rep rsrs Abraço!
  3. Vlw man Obrigado. não testei se quiser testar e deixar um feedback agradeço
  4. Cara, eu aconselho você atualizar seu site. uma dica: http://www.tibiaking.com/forum/topic/44980-gesioracc-2012-modificado-o-melhor/ Caso quiser continuar com seu atual, peço gentilmente que crie um tópico com o seu problema, para não continuar com suas dúvidas no tópico de outro usuário, até porque este aqui já está resolvido. Abraço!
  5. Sem problemas, foi até bom que fez eu conferir novamente kkkkk Abraço!
  6. Fala galera, Um membro fez um pedido, e achei que deveria compartilhar com vocês, algo simples porém útil. Principalmente em OT's do estilo Baiak. O que o script faz ? Ele simplesmente manda um efeito para o Top Level caso ele estiver online. Instalação: Em data/creaturescripts/creaturescripts.xml adicione: <event type="login" name="TopEffect" event="script" value="topeffect.lua"/> <event type="advance" name="CheckTop" event="script" value="topeffect.lua"/> Agora crie um arquivo em data/creaturescripts/scripts com o nome topeffect.lua e adicione: --[[ Script by Bruno Minervino para o Tibia King Caso for postar, colocar os créditos ]] local config = { tempo = 10, --tempo em segundos mensagem = { texto = "[TOP]", --não use mais de 9 caracteres efeito = TEXTCOLOR_LIGHTBLUE --efeito para a função doSendAnimatedText }, efeito = 30, --efeito da função doSendMagicEffect globalstr = 5687 -- uma global storage qualquer q esteje vazia } --[[ Não mexa em nada abaixo ]] local topPlayer = getGlobalStorageValue(config.globalstr) > 0 and getGlobalStorageValue(config.globalstr) or 0 function onLogin(cid) local query = db.getResult("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1") if (query:getID() ~= -1) then local pid = query:getDataString("id") local name = query:getDataString("name") if getPlayerName(cid) == name then if topPlayer ~= getPlayerID(cid) then topPlayer = getPlayerID(cid) end setGlobalStorageValue(config.globalstr, pid) TopEffect(cid) end end registerCreatureEvent(cid, "CheckTop") return true end function onAdvance(cid, skill, oldlevel, newlevel) if skill == 8 then local query = db.getResult("SELECT `id`, `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1") if (query:getID() ~= -1) then local level = tonumber(query:getDataString("level")) if level < newlevel and topPlayer ~= getPlayerID(cid) then doBroadcastMessage("O jogador " .. getPlayerName(cid) .. " tornou-se o novo Top Level. Parabens!", 22) topPlayer = getPlayerID(cid) doSaveServer() setGlobalStorageValue(config.globalstr, getPlayerID(cid)) TopEffect(cid) end end end return true end function TopEffect(cid) if not isPlayer(cid) then return true end if topPlayer == getPlayerID(cid) then doSendAnimatedText(getCreaturePosition(cid), config.mensagem.texto, config.mensagem.efeito) doSendMagicEffect(getCreaturePosition(cid), config.efeito) addEvent(TopEffect, config.tempo * 1000, cid) end end function getPlayerNameById(id) local query = db.getResult("SELECT `name` FROM `players` WHERE `id` = " .. db.escapeString(id)) if query:getID() ~= -1 then return query:getDataString("name") end return 0 end function getPlayerIdByName(name) local query = db.getResult("SELECT `id` FROM `players` WHERE `name` = " .. db.escapeString(name)) if query:getID() ~= -1 then return tonumber(query:getDataString("id")) end return 0 end function getPlayerID(cid) return getPlayerIdByName(getPlayerName(cid)) end Espero ajudar!
  7. Dentro da pasta images crie uma pasta chamada items e coloque todos as imagens lá. E tente usar esse shopsystem:
  8. Em data/creaturescripts/creaturescripts.xml adicione: <event type="login" name="TopEffect" event="script" value="topeffect.lua"/> Em data/creaturescripts/scripts/login.lua adicione no fim: registerCreatureEvent(cid, "TopEffect") Agora crie um arquivo em data/creaturescripts/scripts com o nome topeffect.lua e adicione: local tempo = 10 --tempo em segundos function onLogin(cid) query = db.getResult("SELECT `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1") if (query:getID() ~= -1) then name = query:getDataString("name") if getPlayerName(cid) == name then TopEffect(cid) end end return true end function TopEffect(cid) if isPlayer(cid) then doSendAnimatedText(getCreaturePosition(cid), "[TOP]", TEXTCOLOR_LIGHTBLUE) doSendMagicEffect(getCreaturePosition(cid), 30) addEvent(TopEffect, tempo*1000, cid) end return true end Altere apenas a primeira linha de acordo com sua necessidade. Espero ter ajudado! EDIT: Coloquei um outro efeito também rsrs
  9. Poderia ser mais específico ? Só entendi a parte do script, mais o resto não rsrs
  10. Bruno Minervino postou uma resposta no tópico em Playground (Off-topic)
    Meio difícil de se dizer, pois o ano começou tem 10 dias kkkk Mais até agora está sendo muito bom!
  11. --[[Script made 100% by Nogard and Night Wolf. You can feel free to edit anything you want, but don't remove the credits]] local config = { minlevel = 500, --- level inical para resetar price = 0, --- preço inicial para resetar newlevel = 20, --- level após reset priceByReset = 0, --- preço acrescentado por reset percent = 100, ---- porcentagem da vida/mana que você terá ao resetar (em relação à sua antiga vida total) maxresets = 50, levelbyreset = 0 --- quanto de level vai precisar a mais no próximo reset } --- end config function getResets(uid) resets = getPlayerStorageValue(uid, 378378) if resets < 0 then resets = 0 end return resets end 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 function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid function addReset(cid) if(npcHandler:isFocused(cid)) then npcHandler:releaseFocus(cid) end talkState[talkUser] = 0 resets = getResets(cid) setPlayerStorageValue(cid, 378378, resets+1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) local hp = getCreatureMaxHealth(cid) local resethp = hp*(config.percent/100) setCreatureMaxHealth(cid, resethp) local differencehp = (hp - resethp) doCreatureAddHealth(cid, -differencehp) local mana = getCreatureMaxMana(cid) local resetmana = mana*(config.percent/100) setCreatureMaxMana(cid, resetmana) local differencemana = (mana - resetmana) doCreatureAddMana(cid, -differencemana) doRemoveCreature(cid) local description = resets+1 db.executeQuery("UPDATE `players` SET `description` = ' [Reset: "..description.."]' WHERE `players`.`id`= ".. playerid .."") db.executeQuery("UPDATE `players` SET `level`="..config.newlevel..",`experience`= 0 WHERE `players`.`id`= ".. playerid .."") return true end local newPrice = config.price + (getResets(cid) * config.priceByReset) local newminlevel = config.minlevel + (getResets(cid) * config.levelbyreset) if msgcontains(msg, 'reset') then if getResets(cid) < config.maxresets then selfSay('You want to reset your character? It will cost '..newPrice..' gp\'s!', cid) talkState[talkUser] = 1 else selfSay('You already reached the maximum reset level!', cid) end elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if getPlayerMoney(cid) < newPrice then selfSay('Its necessary to have at least '..newPrice..' gp\'s for reseting!', cid) elseif getPlayerLevel(cid) < newminlevel then selfSay('The minimum level for reseting is '..newminlevel..'!', cid) else doPlayerRemoveMoney(cid,newPrice) playerid = getPlayerGUID(cid) addEvent(function() if isPlayer(cid) then addReset(cid) doPlayerAddItem(cid,2235,100) doPlayerAddItem(cid,192,100) end end, 3000) local number = getResets(cid)+1 local msg ="---[Reset: "..number.."]-- You have reseted! You'll be disconnected in 3 seconds." doPlayerPopupFYI(cid, msg) talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'no')) and isInArray({1}, talkState[talkUser]) == TRUE then talkState[talkUser] = 0 npcHandler:releaseFocus(cid) selfSay('Ok.', cid) elseif msgcontains(msg, 'quantity') then selfSay('You have a total of '..getResets(cid)..' reset(s).', cid) talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Editei para seus items.
  12. Em data/actions/actions.xml <action itemid="3965" event="script" value="changekunai.lua"/>Em data/actions/scripts/changekunai.lua function onUse(cid, item, fromPosition, itemEx, toPosition) if doPlayerRemoveItem(cid, 3965, 100) then doPlayerAddItem(cid, 7838, 20) doSendAnimatedText(fromPosition, "Efeito!!!", TEXTCOLOR_LIGHTBLUE) end return true endEstou sem recursos nenhum aqui, fiz de cabeça por isso ficou bem simples, porém o importante é funcionar
  13. Olha cara, esses são os mesmos links que estão apontados para default do gesior, eu pelo menos testei e funcionou. Mais de qualquer forma, os mirrors estão ai para isso Abraço! EDIT: Acesse o site sem os parâmetros http://item-images.ots.me/ e você verá os arquivos .zip EDIT2: Por esse motivo que foi criado o tópico também, lembra rsrs? Lá no começo eu especifico que brasileiros estão com problemas em acessar o ots.me...
  14. Amigo, certifique-se de que todos os items estão na pasta item_images/itemID.gif Caso você não tenha a pasta de items, você pode dar uma lida neste tópico: http://www.tibiaking.com/forum/topic/49296-gesior2012-tenha-outfitsitemscountry-flags-em-seu-hosting-recomendado
  15. Vlw man Meu caro, todos os links estão funcionando perfeitamente
  16. Fala galera, hoje eu vendo aqui trazer um tutorial muito útil para quem utiliza o Gesior 2012. Muitos servidores brasileiros estão com dificuldades no sistema de outfits, items e country flags quando estão apontados para o http://item-images.ots.me/. Solução: Você pode deixar esses sistemas em sua própria hospedagem. 1. Como configurar o gesior? - Abra o arquivo config/confg.php e edite as seguintes linhas: $config['site']['outfit_images_url'] = 'http://outfit-images.ots.me/outfit.php'; $config['site']['item_images_url'] = 'http://item-images.ots.me/960/'; $config['site']['item_images_extension'] = '.gif'; $config['site']['flag_images_url'] = 'http://flag-images.ots.me/'; $config['site']['flag_images_extension'] = '.png'; 2. Onde posso obter as imagens dos items?Faça o download da versão correspondente ao seu servidor e extraia o arquivo.zip em sua hospedagem. - Imagem dos Items 8.60 Download: http://item-images.ots.me/items_images_860.zip Mirror: https://mega.co.nz/#!81RGWZSK!p1UkoABfmuiOBpCbFboKdJzumtJUbEtGPGoUbe562-8 9.60 Download: http://item-images.ots.me/items_images_960.zip Mirror: https://mega.co.nz/#!F4ZnzIhR!3tMeBKmeHPSFXYoc94jnKB-X6TpLGa3MSymzjF6iir8 10.30 Download: http://item-images.ots.me/items_images_1030.zip Mirror: https://mega.co.nz/#!40B1wDZB!3JGH4yXqyr2PxuFK0-btII6WD0HrOTlh0WqaVdlrXSI 10.76 Download: http://item-images.ots.me/items_images_1076.zip Mirror: https://mega.co.nz/#!xx5XwIzY!Lc9UqIhz73RbcKieiwAaihHZGWu8eaps5EhJfWbcnsQ - Imagem das Flags Download: http://flag-images.ots.me/flag-images.zip Mirror: https://mega.co.nz/#!Y4JAFBJB!Njot6VnJ_SZtfCyOucx6DrL3oIP4cnOdTbcHlZOGECE - Outfit images generator (requer o módulo GD2 ativo no PHP para gerar as imagens) 9.60 (animação + php script) Download: http://outfit-images.ots.me/outfit-images_960.zip Mirror: https://mega.co.nz/#!MhZGwQhS!08ucrrW1un35TnrZrfbl9_JFBU9Rd72Sv_Kq8DD8shw 10.76 (sem animação + php script) Download: http://outfit-images.ots.me/outfit-images.zip Mirror: https://mega.co.nz/#!skInDS4Y!Hj-KO82x875NxeamYj6rWR6WjF4fwoEZI1Zq1onRmb4 10.76 (animação + php script) Download: https://mega.co.nz/#!NwY3wbgD!pahoOkCksYgbf8_v4Q3DchNAnqjMjOp-e-Gqg-JHWxs 3. O registro das accounts está demorando e todos os players estão com o flag 'unknown'? Faça o download do country-flags.zip e extraia na pasta cache/flags. Download: http://country-flags.ots.me/country-flags.zip Mirror: https://mega.co.nz/#!8hxDGRKb!24HkxX4OYokZuxZbRnIWE_Vyqa-drLKydmPeX14i0SE Bom galera, espero ter ajudado. Qualquer dúvida só postar que estou disponível para suporte. Créditos: - Gesior.pl
  17. Foi como eu te expliquei, você tem que estar usando o sistema Vip que eu usei como exemplo para funcionar, caso seja outro, me passe qual.
  18. Nubisse minha, perdão, é o costume de mexer com C#, PHP acabei fazer o ternário da mesma forma kkkk Corrigido. OBS: Você usa este sistema de VIP? Caso não usar, passa qual é o seu.
  19. @Tuka, function onSay(cid, words, param) local level = getPlayerLevel(cid) local vocation = getPlayerVocationName(cid) local status = (vip.hasVip(cid) == FALSE) and "Free Account" or "VIP Acccount" local health, maxhealth = getCreatureHealth(cid), getCreatureMaxHealth(cid) local mana, maxmana = getCreatureMana(cid), getCreatureMaxMana(cid) local fist, club, sword, axe = getPlayerSkillLevel(cid, 0), getPlayerSkillLevel(cid, 1), getPlayerSkillLevel(cid, 2), getPlayerSkillLevel(cid, 3) local distance, shield, fishing, magic = getPlayerSkillLevel(cid, 4), getPlayerSkillLevel(cid, 5), getPlayerSkillLevel(cid, 6), getPlayerMagLevel(cid) local cap = getPlayerFreeCap(cid) local function getResets(cid) resets = getPlayerStorageValue(cid, 2310) if resets < 0 then resets = 0 end return resets end 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 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 total = { day = table.maxn(contents.day), week = table.maxn(contents.week), month = table.maxn(contents.month) } local text = "Vocation: "..vocation.."\nLevel: ".. level .."\nHP: ".. health .."/".. maxhealth .."\nMP: ".. mana .."/".. maxmana .."\nReset(s): "..getResets(cid).."\nCapacity: ".. cap .."\nAccount Status: ".. status .."\n\nMagic Level: ".. magic .."\n\nFist: ".. fist .."\nClub: ".. club .."\nSword: ".. sword .."\nAxe: ".. axe .."\nDistance: ".. distance .."\nShield: ".. shield .."\nFishing: ".. fishing .."\n\nFrags\nToday: " .. total.day .. "\nThis week: " .. total.week .. " This month: " .. total.month .."" doShowTextDialog(cid, 5808, text) return true end Usei como exemplo deste sistema VIP: http://www.tibiaking.com/forum/topic/20589-vip-system-by-mock-100/
  20. Teste assim: CREATE TABLE IF NOT EXISTS `server_config` ( `config` varchar(50) NOT NULL, `value` varchar(256) NOT NULL DEFAULT '', PRIMARY KEY `config` (`config`) ) ENGINE=InnoDB; E depois execute esse: INSERT INTO `server_config` (`config`, `value`) VALUES ('db_version', '18'), ('motd_hash', ''), ('motd_num', '0'), ('players_record', '0');
  21. @xWhiteWolf, Eu tinha visto isso, primeiro coloquei a versão funcionando para ele ver o resultado... Depois ensinei ele a pegar a versão do servidor dele pra ver qual a função correta que pega o valor do Health... @Rikikajimo, Uma forma mais fácil, você baixou esse servidor aqui no TK ? Se sim, aponte-nos o tópico. Abraço!
  22. Bruno Minervino postou uma resposta no tópico em Suporte Tibia OTServer
    Me desculpe, mais não é baseando-se apenas na memória do host que você define quantos players ele suporta. Processamento e Link também contam.
  23. Cara, acabei de chegar em casa e testei: data/talkactions/talkactions.xml <talkaction words="!status" event="script" value="status.lua"/> data/talkactions/scripts/status.lua function onSay(cid, words, param) local level = getPlayerLevel(cid) local voc = getPlayerVocationName(cid) local health, healthmax = getCreatureHealth(cid), getCreatureMaxHealth(cid) local mana, manamax = getCreatureMana(cid), getCreatureMaxMana(cid) local fist, club, sword, axe, distance, shield, fishing, mlvl = getPlayerSkillLevel(cid, 0), getPlayerSkillLevel(cid, 1), getPlayerSkillLevel(cid, 2), getPlayerSkillLevel(cid, 3), getPlayerSkillLevel(cid, 4), getPlayerSkillLevel(cid, 5), getPlayerSkillLevel(cid, 6), getPlayerMagLevel(cid) local resets = getResets(cid) local result = "Level: "..level.."\nResets: "..resets.."\nVocation: ".. voc .."\nHealth: ".. health .."/".. healthmax .."\nMana: ".. mana .."/".. manamax .."\n\nSkills:\nMagic: ".. mlvl .."\nFist: ".. fist .."\nClub: ".. club .."\nSword: ".. sword .."\nAxe: ".. axe .."\nDistance: ".. distance .."\nShielding: ".. shield .."\nFishing: ".. fishing.."" doPlayerPopupFYI(cid, result) return true end Resultado: Ache a versão do seu servidor: 1º: Vá até o executável que você usa para colocar o OT online 2º: Clique com o botão direito do mouse em cima do executável e vá na opção Propriedades 3º: Vá até a aba Detalhes e tira um print (foto) Exemplo:

Informação Importante

Confirmação de Termo