Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''TFS''.



Mais opções de pesquisa

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • A Cidade OTBR
    • OTServ Brasil
    • Atendimento
    • Clubes
    • Calabouço
  • OTServ - Áreas Comuns
    • Notícias e Discussões
    • Suporte - Dúvidas, Bugs, Erros
    • Downloads
    • Tutoriais
    • Show-Off
    • Divulgação de Servidores
    • Projetos e Formações de Equipes
  • Outros
    • Design

Encontrado 12 registros

  1. 10.x [10.76] Real Map Datapack

    O usuário Printer da OTLand mantém em um repositório no github, sempre sendo atualizado, um datapack para Global. Hoje o repositório é atualizado por um time, que também se mantém muito ativo: datapack: https://github.com/orts/server mapa: https://github.com/orts/world Atenção, o executável não está incluído, é necessário compilar as sources do TFS mais atualizado. Elas podem ser encontradas em: https://github.com/otland/forgottenserver Features: Nova Ab'Dendriel! Nova Venore! Nova Derfia! Nova Roshamuul! Todas as cidades, incluindo Zao, Gray Beach and the Gnome Base! Todos NPCs! 100% quests com missões: Annihilator, Demon Helmet, Pits of Inferno, Hot Cuisine, The Queen Of Banshee Quest, The Inquisition Quest, In Service of Yalahar, Isle of Evil, The Djinn War, The Ancient Tombs, Dreamer's Challenge, Bright Sword, The Unnatural Selection quest, Banshee Quest, Demon Oak, Svargrond Arena e muitas outras.! Razachai & Quirefang. Killing in the Name of quest (tasks) Gnomish Warzones Todas novas spells 100% Boats, Carpets e etc Offline training Tame System Kazordoon Wagons System Bank System Entre outras Thread na OTLand: http://otland.net/threads/best-released-rlmap-10-41-based-1-0-new-roshamuul-new-quests-optimized-bug-fixing-open-source.204514/ Qualquer dúvida em relação ao servidor sinta-se livre para postar aqui. Dúvidas em relação a programação e scripting, por favor poste na área de Dúvidas, se necessário me mande PM. Este post foi promovido a um artigo
  2. Em talkactions/scripts crie um arquivo chamado set_actionid.lua com o seguinte código: function onSay(cid, words, param) local player = Player(cid) if not player then return false end if not player:getGroup():getAccess() then return true end if not tonumber(param) then player:sendCancelMessage("Need a number param.") return false end local position = player:getPosition() position:getNextPosition(player:getDirection()) local tile = Tile(position) if not tile then player:sendCancelMessage("Object not found.") return false end local thing = tile:getTopVisibleThing(player) if not thing then player:sendCancelMessage("Thing not found.") return false end if thing:isCreature() then player:sendCancelMessage("You can't give an action id to a creature.") elseif thing:isItem() then local actionid = tonumber(param) if actionid <= 0 then thing:removeAttribute(ITEM_ATTRIBUTE_ACTIONID) else thing:setActionId(actionid) end end position:sendMagicEffect(CONST_ME_MAGIC_RED) return false end E em talkactions.xml ponha a seguinte tag: <talkaction words="/aid" separator=" " script="set_actionid.lua" /> Para utilizar, ponha o item no chão na sua frente e escreva /aid action_id, sendo action_id um umero
  3. [Exclusivo] Forsaken Server

    Forsaken Server Akira Introdução E ai, galera. Venho aqui apresentar a vocês uma nova distro. Exclusiva da OTBr, que está sendo mantida atualmente por mim e pelo Lordfire. Essa distro é um fork do TFS, e é atualizado junto a ele, então todas atualizações do TFS serão passadas para o Forsaken Server. (GitHub) (Detalhe: O Forsaken Server é totalmente compatível com o TFS, se você usa o TFS mais novo e quer passar pro Forsaken Server e tiver alguma dúvida, é só me mandar PM ou criar um tópico que ajudarei assim que ver!) Atualmente o Forsaken conta com as seguintes features exclusivas: Features Exlusivas Event Monster:onSpawnEste evento é chamado todas as vezes que um monstro nascer, seja ele summon, criado por script ou spawn normal. Fica em events/scripts/monster.lua Para habilitar basta por enabled="1" em events.xml, onde tem method="onSpawn" Creature Event onMoveEste evento é chamado toda vez que uma criatura se mover. Lembrando que o evento tem que estar propriamente registrado usando creature:registerEvent Tem que ser definido em creaturescripts/creaturescripts.xml o event type é "move" Dual WieldingEsta feature permite que players usem duas armas ao mesmo tempo, dê dano com as duas, treine as duas e ganhe attackspeed quando usando duas armas ao mesmo tempo. O dano causado por dual wielding é modificado por tantos % do dano original, isso é configurável no config.lua As skills são treinadas da seguinte forma: Primeiro turno 1 hit da mão direita, 1 hit da esquerda, treinará skill das duas armas, mesmo que sejam diferentes (axe e sword). Segundo turno não treina skill. E vai alterando assim, dessa forma fica equilibrado AttackSpeed bonus também é configurável no config.lua, recomendamos usar 2x para manter a proporção de treino de skills e pessoas com dual wielding não tenha vantagem em treino. As variaveis no config.lua são: Além de por allowDualWielding como true, deve por também classicEquipmentSlots como true Monster Drop em LuaEsta feature permite total customização de como você irá lidar com o drop de loot de todos os monstros. Por exemplo, se você quiser que certos players tenham um loot rate maior. Torna mais fácil a implementação do Reward Chest. Loot ChannelExiste um canal específico para mensagens de loot! Funciona também em party. Equipar item por hotkeyTotalmente fiel a implementação feita pela CipSoft Sem bugs Implementações Futuras em Andamento Reward Chest Experience on Hit (Aberto pra discussão) Além dessas implementações, nós estamos abertos a sugestões! Considerações Finais O Forsaken Server está atualmente na versão Akira (1.0) e será atualizado constantemente. Ele será usado para fazer o custom da OTBr, o Forgotten Lands. É possível encontrar as sources do Forsaken Server no github, neste link: https://github.com/otbr/forsaken Changelog Este post foi promovido a um artigo
  4. Crie um arquivo em talkactions/scripts chamado storage.lua e ponha o seguinte código: function onSay(cid, words, param, type) local player = Player(cid) if not player or not player:getGroup():getAccess() then return true end if player:getAccountType() < ACCOUNT_TYPE_GAMEMASTER then return false end -- Extract the specified parameters. local parameters = param:split(",") if words == "/getstorage" and parameters[2] == nil then player:sendCancelMessage("Insufficient parameters, usage: !getstorage playerName, key") return false end if words == "/setstorage" and parameters[3] == nil then player:sendCancelMessage("Insufficient parameters, usage: !setstorage playerName, key, value") return false end -- Remove trailing/leading white spaces from parameters. local playerName = (parameters[1] or ""):trim() local storageKey = tonumber(parameters[2]) or 0 -- Get meta player. local checkedPlayer = Player(playerName) if not checkedPlayer then player:sendCancelMessage(string.format("Could not find player '%s'.", playerName)) player:getPosition():sendMagicEffect(CONST_ME_BUBBLES) return false end local storageValue = tonumber(parameters[3]) or checkedPlayer:getStorageValue(storageKey) local msg = string.format("Storage key '%s' %s set to '%d' for player '%s'.", storageKey, "%s", storageValue, checkedPlayer:getName()) if words == "/setstorage" then -- Set specified storage value on player. checkedPlayer:setStorageValue(storageKey, storageValue) msg = string.format(msg, "is now") else -- Get specified storage value from player. msg = string.format(msg, "is currently") end -- Print the message in Local Chat in orange (only self can see). player:sendTextMessage(MESSAGE_EVENT_ORANGE, msg) player:getPosition():sendMagicEffect(CONST_ME_BUBBLES) end Em talkactions.xml ponha as seguintes tags: <talkaction words="/getstorage" separator=" " script="storage.lua"/> <talkaction words="/setstorage" separator=" " script="storage.lua"/>
  5. TFS 1.0 Skill Point System

    Opa galera, eu vi esse script em outro fórum e trouxe aqui para compartilhar com vocês porque achei a ideia bacana. O script é uma forma de customizar seu personagem à medida que ele vai avançando de level. O avanço de level dá ao jogador "pontos", os quais podem ser utilizados para comprar HP, MP e niveis de skills. O grande benefício desse sistema é que jogadores de um mesmo level podem ser radicalmente diferentes e podem se especializar, como no caso de uma equipe/time (um druida com pontos pode se especializar em HP e MP e virar o healer do time, enquanto um knight pode se especializar somente skills para ser o atacante e outro em HP para ser o tank e bloquer) Algumas imagens do funcionamento (retiradas do outro tópico original): Agora que já se interessou pelo sistema, vamos aplicá-lo em nosso servidor! Em /creaturescripts/scripts/skillpoints.lua local SkillPoints = { [1] = 1, [2] = 1, [3] = 1, [4] = 1, [5] = 1, [6] = 1, [7] = 1, [8] = 1, } function onAdvance(cid, skill, oldlevel, newlevel) if not (SkillPoints[getPlayerVocation(cid)]) then return true end if (skill == 8) then if (getPlayerStorageValue(cid, 14573) < newlevel) then if (getPlayerStorageValue(cid, 14574) < 0) then setPlayerStorageValue(cid, 14574, 0) setPlayerStorageValue(cid, 14573, 0) end setPlayerStorageValue(cid, 14573, newlevel) setPlayerStorageValue(cid, 14574, getPlayerStorageValue(cid, 14574) + (newlevel - oldlevel) * (SkillPoints[getPlayerVocation(cid)])) doCreatureSay(cid, '+1 Skill Point!', TALKTYPE_ORANGE_1) end end return true endEm /creaturescripts/scripts/login.lua, adicione player:registerEvent("SkillPointSystem")Em /creaturescripts/creaturescripts.xml, adicione <event type="advance" name="SkillPointSystem" script="skillpoints.lua"/>Em /talkactions/scripts/skillpoints.lua local SkillPoints = { [1] = 1, [2] = 1, [3] = 1, [4] = 1, [5] = 1, [6] = 1, [7] = 1, [8] = 1, } function onSay(cid, words, param) local player = Player(cid) local vocation = Player(cid) if not (SkillPoints[getPlayerVocation(cid)]) then return false end local param = param:lower() local p2 = param:split(",") if (getPlayerStorageValue(cid, 14574) < 0) then setPlayerStorageValue(cid, 14574, 0) end local skillids = { ["shielding"] = 5, ["sword"] = 2, ["axe"] = 3, ["club"] = 1, ["fist"] = 0, ["distance"] = 4 } local attributes = { ["health"] = {np = 1, vl = 2, skn = "Hit Points"}, ["energy"] = {np = 1, vl = 2, skn = "Mana Points"}, ["magic"] = {np = 15, vl = 1, skn = "Magic Level"}, ["shielding"] = {np = 15, vl = 1, skn = "Shielding Skill"}, ["sword"] = {np = 15, vl = 1, skn = "Sword Skill"}, ["axe"] = {np = 15, vl = 1, skn = "Axe Skill"}, ["club"] = {np = 15, vl = 1, skn = "Club Skill"}, ["fist"] = {np = 15, vl = 1, skn = "Fist Skill"}, ["distance"] = {np = 15, vl = 1, skn = "Distance Skill"}, } if (param == "check") then doPlayerPopupFYI(cid, "<<<<< Skill Points >>>>> \n\nPoints Available: ".. getPlayerStorageValue(cid, 14574) .."\nPoints Per Level: ".. SkillPoints[getPlayerVocation(cid)]) elseif (p2[1] and p2[1] == "add") and (attributes[p2[2]]) and (tonumber(p2[3])) then local creature = Creature(cid) local cpos = creature:getPosition() if (getPlayerStorageValue(cid, 14574) < tonumber(p2[3]) * attributes[p2[2]].np) then doPlayerSendCancel(cid, "you need more skill points go hunt!") return cpos:sendMagicEffect(CONST_ME_POFF) end if (p2[2] == "health") then player:setMaxHealth(player:getMaxHealth() + attributes[p2[2]].vl * tonumber(p2[3])) player:addHealth(attributes[p2[2]].vl * tonumber(p2[3])) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You have been rewarded with ".. tonumber(p2[3]) * attributes[p2[2]].vl .. "Hit Points") elseif (p2[2] == "energy") then player:setMaxMana(player:getMaxMana() + attributes[p2[2]].vl * tonumber(p2[3])) player:addMana(attributes[p2[2]].vl * tonumber(p2[3])) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You have been rewarded with ".. tonumber(p2[3]) * attributes[p2[2]].vl .. "Mana Points") elseif (p2[2] == "magic") then player:addManaSpent(math.ceil((Vocation(getPlayerVocation(cid)):getRequiredManaSpent(player:getBaseMagicLevel() + 1) - player:getManaSpent()) / configManager.getNumber(configKeys.RATE_MAGIC))) ---Player receives message on Skill Advance elseif(skillids[p2[2]]) then for a = 1, tonumber(p2[3]) do player:addSkillTries(skillids[p2[2]], player:getVocation():getRequiredSkillTries(skillids[p2[2]], player:getSkillLevel(skillids[p2[2]]) + 1) - player:getSkillTries(skillids[p2[2]])) --Player receives message on Level Advance end end setPlayerStorageValue(cid, 14574, getPlayerStorageValue(cid, 14574) - tonumber(p2[3]) * attributes[p2[2]].np) else local msgx = "" for i, v in pairs(attributes) do local add = (v.np > 1) and "s" or "" msgx = msgx .. string.upper(i:sub(1,1)) .. i:sub(2, #i) .. " - ".. v.np .. " points".. add .. " = " .. v.vl .. " ".. v.skn .. "\n" end doPlayerPopupFYI(cid, " <<<<<<<< Add Skill Points >>>>>>>> \n\n Skill Points are used to customize your character\n\n".. msgx .. "\nExample of Use: ".. words .." add,health, 1\n\nPoints available: ".. getPlayerStorageValue(cid, 14574)) end return true endEm /talkactions/talkactions.xml, adicione <talkaction words="!points" separator=" " script="skillpoints.lua"/>Se gostou, poste!<Não testei o script, embora tenham garantido no outro fórum que está funcionando... se não funcionar, poste no próprio tópico os erros relacionados a esse script ou então em nossa seção de dúvidas de scripting (http://forums.otserv.com.br/index.php/forum/170-dúvidas/)>
  6. [vídeo] Compilar TFS no Ubuntu/Debian

    Este post foi promovido a um artigo
  7. linux Signals é seu amigo <3

    Eai, beleza? Recentemente passeando pelo Github, encontrei uma Issue do The Forgotten Server perguntando quais eram os sinais do processo do TFS. Então vamos lá, Para fechar um OTServ, você ocasionalmente utiliza killall -9 theforgottenserver Mas você sabe o que significa esse -9? Bom, ele significa que você vai mandar um sinal 9 para o processo em questão. Para sabermos quais os sinais que o Linux permite, basta executar kill -l Então o sinal 9 na verdade se chama SIGKILL. O significado do sinal KILL é o seguinte: Resumidamente, ele força que o processo pare de executar imediatamente. Então vamos aprender o modo correto de fechar o TFS. A Issue que eu encontrei é essa: https://github.com/otland/forgottenserver/issues/770 Onde Colaborador @dominique120 diz todos os signals e seus efeitos em um link no Pastebin. Para garantir que o Pastebin não delete o arquivo, eu salvei ele no meu gist: https://gist.github.com/gpedro/7f7160a90ced2fe24eec Então vamos entender como funciona: Para encerrar um processo, agora nós iremos consultar a tabela de signals e ver qual operação você quer fazer. Exemplo: eu quero fechar o meu TFS de forma segura. Para fecha com segurança, primeiro salvamos o servidor e depois fechamos, logo, o sinal correspondente a essa opção é o QUIT, então: killall -SIGQUIT theforgottenserver ou killall -3 theforgottenserver Então é isso. Obrigado <3 - - - - Referências https://github.com/otland/forgottenserver/issues/770 http://www.linux.org/threads/kill-commands-and-signals.4423/ não esqueça de curtir aqui em baixo
  8. Expprox

    ~~ Informações do Script ~~ Criado por : xS0NYx Versão Testada : 8.54 (TFS 0.3.6) Descrição : Calcula a experiência que falta para o level desejado. (mais explicações no video) ~~ Instalação ~~ Crie um arquivo chamado expprox.lua na pasta data/talkactions/script esse código: function onSay(cid, words, param)[size=3][font=arial] [/font][/size]local p = string.explode(param, " ") local exp = (getExperienceForLevel(getPlayerLevel(cid)+p[1]) - getPlayerExperience(cid)) local level = getPlayerLevel(cid)+p[1] doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You need: "..exp.." of experience for level: "..level) end Depois de criar o arquivo, vá na pasta data/talkactions e adicione isto no talksactions.xml: <talkaction words="!expprox" event="script" value="expprox.lua"/> ~~ Video de demonstração ~~
  9. Apresentando o novo Eclipse Server

    Olá, Sou o dono do Eclipse War Server ou o antigo Eclipse OT. Depois de quase 1 ano que ficou Online, por problemas de equipe e eu devido trabalhar na rl depender de pessoas como GM, CM amigos para me comunicar falhas e problemas decorrentes do servidor tomei prejuizos. Atualmente o Eclipse conta com a versão 8.70 do tibia tendo e mente ótimas novidades para o futuro do servidor e bem estar dos players. Sobre o Server: Server conta com com areas de bastante RPG mais também conta com areas de WAR. Sobre o Mapa: O Eclipse conta com um mapa exclusivo onde o intitulei de " Mini Global Map " que nada mais é doque todas as areas do mapa global, porem otimizadas e algumas areas retiradas. Algumas cidades com Teleports para as hunts, cidades como Thais e Carlin foram desenvolvidas para futuras ótimas Wars que venham a ocorrer. Ampla area vip e sem exagero. A Equipe : Atualmente eu mesmo faço todas as funções do servidor. Desde proteção a implantação de scripts. Conto com um CM no qual me auxilia in-game. Algumas features do Servidor e espero que dêem uma opinião quanto a elas : Sistema de Montaria by Talkaction Sistema único de montaria semelhante ao servidor global (Montarias por itens) Entrando no site do servidor fiz uma pagina especifica disso onde coloquei os comandos necessários para cada montaria bem como de quais bixos dropam. Sistema de Skills e ML por Estagios Consiste em ganhar Skills e Magic Level por estágios evitando assim que botters tenham destaque sobre os outros. Obs: A stage do Skill e ML não é por level e sim por quantidade de skills - Exemplo : do Skill 0 a 10 - tantos x, dos skill 11 ao 20 - tantos x e assim vai Sistema de VIP = Premium Account Menos sucetivel a bugs em relação a sistema de VIP Account. Sistema de Addons Igual o global, precisando de itens para fazer cada addon sendo um em especial feito por mim para o addon do Yalaharian NPCs Otimizados De mais de 500 Npcs que existem nos mapas globais, o Eclipse conta com cerca de 100 Npcs padronizados, cada NPC em cada cidade faz ou vende algo especifico. Isso foi feito para otimizar logicamente a quantidade de scripts bugados que tinha. Treiners Yalahar e Carlin tem treiners distintos com 3 andares cada. Carlin com teleports para o templo e Yalahar com Food a vontade para os players. War System + Castle War War System com Shields semelhante ao global e sistema de War em castelos, muito bom. Uptime Servidor reinicia a cada 24 horas. Melhorando ainda mais a estabilidade. Quests As principais quests do Global incluindo modificações feitas por mim para incrementar o jogo Info Geral + Detalhes Experience Stages: 1 - 50 = 250x 51 - 70 = 200x 71 - 100 = 100x 101 - 120 = 75x 121 - 150 = 65x 151 - 180 = 55x 181 - 200 = 45x 201 - 250 = 30x 251 - 300 = 15x 301 - 350 = 5x 351 = 2x Skill: 50x Magic: 25x Loot: 2.5x Obrigado desde já a todos as opniões dadas !!!
  10. Lista de Efects

    Vim aqui pra posta uma lista de Effects do FTS 8.22, não sei se vai ajudar, mas pelo menos eu n preciso fica entrando no tibia e digita "/z 1" assim é muito mas rapido=D. O download se alguém quiser: >aki<[/url] o scan: >aki< uma SS:
  11. BUGs em The Forgotten Server (TFS)

    Olá, não sei se estou na área correta, mas andei vendo que o TFS (cryingdamson6pl1-console, o mais atual da versão 8.54~8.57) tem alguns bugs ainda, outros bem sérios e fáceis de resolver. O que eu reparei ontem foram os monsters/bosses, uns com loots errados (totalmente) e outros com erro de Corpse. Daí fui comparar com o RealServer 1.7 (o que é 90% global), e esse sim o loot estava correto, e não estava faltando monstros. Será que seria bom copiar a pasta Monsters do RealServer e colar no do TFS? (OBS: Não, não to querendo tirar dúvida, então não mova para Sessão de Suportte). Verei agora se no TFS para Tibia 8.6 está mais correto, e já edito aqui. O RealServer e o The Forgotten Server pra mim são os servidores mais completos que tem, acho que deveria abrir uma área aqui no OtServ.com.br para escrever e reportar Bug's do The Forgotten Server, e um mediador que tenha conta no OTLands reporte no tópico de Bugs do TFS/RealServer. Afinal, com todo mundo testando e reportando, a existência de Bugs fica bem menor, certo? :fail: Valeu. EDIT: A Versão 8.6 do TFS (TFS0.4.0a1) está UM POUCO mais completa, apenas adicionou alguns monstros, mas o loot de muitos ainda está errado.
  12. Pesquisei em alguns fóruns, mas como as informações eram muitas eu decidi perguntar pra vocês aqui da OTNET, pois ando pensando qual sistema é mais estável e por quê? Pretendo me especializar em um deles, agora eu gostaria de saber qual tem menos bugs, qual trava menos e qual dos dois tem mais ferramentas e conteúdo. Sugestões são aceitas... Muito obrigado. --Edit Não se esqueça de postar a versão na sua resposta e comentar sobre por quê você acha ela melhor.
×