Central de Desenvolvimento TFS

everything_you_need

action.lua
local myAction = Action()

function myAction.onUse(player, item, fromPosition,
    target, toPosition, isHotkey)
    
    player:sendTextMessage(MESSAGE_INFO_DESCR, 
        "Welcome to TFS Development!")
    
    return true
end

myAction:id(2000)
myAction:register()

complete_tfs_dev_suite

everything_you_need

available_now

Gerador de Scripts

Gere scripts TFS personalizados com descrições detalhadas em segundos. Suporta actions, movements, events e mais.

ai_powered_generation
multiple_tfs_versions
Gerar Script
available_now

Analisador de Scripts

Faça upload de seus scripts para análise com AI, obtenha recomendações de otimização e detecção de erros.

file_explorer_integration
enhanced_error_detection
Analisar Script
Em Breve

Editor de Dados

Edite arquivos XML, definições de monstros, atributos de itens e mais com uma interface intuitiva assistida por IA.

Em Breve

Documentação TFS

Documentação abrangente e pesquisável para todas as versões do TFS, com exemplos e melhores práticas.

Tipos de Módulos TFS

Explore os vários módulos de script disponíveis no The Forgotten Server

RevScriptSys Format
local doorAction = Action()

function doorAction.onUse(player, item, fromPosition, target, toPosition, isHotkey)
    -- Check if player has key
    if player:getItemCount(2086) > 0 then
        -- Open the door
        item:transform(item:getId() + 1)
        item:decay()
        return true
    end
    
    player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You need a key to open this door.")
    return false
end

doorAction:id(5000)
doorAction:register()

Actions

Scripts de action são acionados quando um jogador usa um item no jogo. Podem ser anexados a IDs de itens específicos ou IDs de action.

Manipulação de interação com itens
Desenvolvimento de mecânicas personalizadas
Suporte para ID de item e ID de action
Gerar Actions
RevScriptSys Format
local teleport = MoveEvent()

function teleport.onStepIn(creature, item, position, fromPosition)
    local player = creature:getPlayer()
    if not player then
        return false
    end
    
    -- Teleport player to destination
    local destination = Position(100, 100, 7)
    player:teleportTo(destination)
    position:sendMagicEffect(CONST_ME_TELEPORT)
    destination:sendMagicEffect(CONST_ME_TELEPORT)
    
    return true
end

teleport:aid(2000)
teleport:register()

Movements

Scripts de movimento são acionados quando uma criatura pisa em um tile ou move um item. São essenciais para teleportes, áreas de quest e mais.

Sistemas de teleporte
Controle de restrição de área
Controle de movimento de itens
Gerar Movements
RevScriptSys Format
local creatureEvent = CreatureEvent("PlayerLogin")

function creatureEvent.onLogin(player)
    -- Send welcome message
    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, "Welcome to the server " .. player:getName() .. "!")
    
    -- Give daily reward if eligible
    local lastLogin = player:getStorageValue(40001)
    local currentTime = os.time()
    
    if lastLogin < os.time() - 86400 then
        player:addItem(2160, 1) -- Give 1 crystal coin
        player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You received your daily reward!")
        player:setStorageValue(40001, currentTime)
    end
    
    return true
end

creatureEvent:register()

Creature Events

Scripts de eventos de criatura lidam com eventos relacionados a criaturas como login/logout de jogadores, morte, avanço e mais.

Controle de login/logout
Rastreadores de morte e kill
Recompensas por avanço de nível
Gerar Creature Events
RevScriptSys Format
local talkAction = TalkAction("/heal")

function talkAction.onSay(player, words, param)
    if not player:isPremium() then
        player:sendTextMessage(MESSAGE_STATUS_SMALL, "You need a premium account to use this command.")
        return false
    end
    
    -- Set player health and mana to maximum
    player:addHealth(player:getMaxHealth() - player:getHealth())
    player:addMana(player:getMaxMana() - player:getMana())
    
    -- Send magic effect
    player:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE)
    player:sendTextMessage(MESSAGE_INFO_DESCR, "You have been healed.")
    
    return false
end

talkAction:separator(" ")
talkAction:register()

Talk Actions

Scripts de talk action processam comandos de chat dos jogadores, permitindo funcionalidades personalizadas através de entrada de texto.

Comandos personalizados para jogadores
Ferramentas para admins e staff
Processamento de parâmetros
Gerar Talk Actions
RevScriptSys Format
local globalEvent = GlobalEvent("ServerSave")

function globalEvent.onTime()
    -- Announce the server save
    Game.broadcastMessage("Server save will occur in 5 minutes. Please logout to ensure your progress is saved.", MESSAGE_STATUS_WARNING)
    
    -- Schedule the server save
    addEvent(function()
        Game.broadcastMessage("Server save in progress...", MESSAGE_STATUS_WARNING)
        -- Save all players
        for _, player in ipairs(Game.getPlayers()) do
            player:save()
        end
        Game.broadcastMessage("Server save completed. Thank you for your patience.", MESSAGE_STATUS_WARNING)
    end, 5 * 60 * 1000) -- 5 minutes
    
    return true
end

globalEvent:time("12:00")
globalEvent:register()

Global Events

Scripts de eventos globais lidam com eventos de todo o servidor como inicialização, desligamento, recorde de jogadores online e eventos programados.

Eventos temporizados do servidor
Procedimentos de inicialização do servidor
Atividades globais recorrentes
Gerar Global Events

tfs_development_stats

tfs_stats_description

539
Scripts Gerados
63
tfs_scripts_analyzed
0
Versões TFS Suportadas

Pronto para transformar seu desenvolvimento TFS?

Gere seu primeiro script com AI e experimente o futuro do desenvolvimento de servidores Tibia

Comece a Criar Agora