• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

Lua TFS 1.0 -> Saveplayer 30 seconds and GlobalSave 2 hours

zetibia

Member
Joined
Jun 23, 2013
Messages
110
Reaction score
11
Please Script of Saveplayer 30 seconds and GlobalSave 2 hours compatible with TFS 1.0

Trank's
 
Code:
<globalevent name="Server Save" time="01:55:00" script="serversave.lua" />
Code:
local shutdownAtServerSave = true
local cleanMapAtServerSave = false
local function serverSave()
if shutdownAtServerSave then
Game.setGameState(GAME_STATE_SHUTDOWN)
else
Game.setGameState(GAME_STATE_CLOSED)
if cleanMapAtServerSave then
cleanMap()
end
Game.setGameState(GAME_STATE_NORMAL)
end
end
local function secondServerSaveWarning()
broadcastMessage("Server is saving game in one minute. Please logout.", MESSAGE_STATUS_WARNING)
addEvent(serverSave, 60000)
end
local function firstServerSaveWarning()
broadcastMessage("Server is saving game in 3 minutes. Please logout.", MESSAGE_STATUS_WARNING)
addEvent(secondServerSaveWarning, 120000)
end
function onTime(interval)
broadcastMessage("Server is saving game in 5 minutes. Please logout.", MESSAGE_STATUS_WARNING)
Game.setGameState(GAME_STATE_STARTUP)
addEvent(firstServerSaveWarning, 120000)
return not shutdownAtServerSave
end
 
Code:
<globalevent name="Server Save" time="01:55:00" script="serversave.lua" />
Code:
local shutdownAtServerSave = true
local cleanMapAtServerSave = false
local function serverSave()
if shutdownAtServerSave then
Game.setGameState(GAME_STATE_SHUTDOWN)
else
Game.setGameState(GAME_STATE_CLOSED)
if cleanMapAtServerSave then
cleanMap()
end
Game.setGameState(GAME_STATE_NORMAL)
end
end
local function secondServerSaveWarning()
broadcastMessage("Server is saving game in one minute. Please logout.", MESSAGE_STATUS_WARNING)
addEvent(serverSave, 60000)
end
local function firstServerSaveWarning()
broadcastMessage("Server is saving game in 3 minutes. Please logout.", MESSAGE_STATUS_WARNING)
addEvent(secondServerSaveWarning, 120000)
end
function onTime(interval)
broadcastMessage("Server is saving game in 5 minutes. Please logout.", MESSAGE_STATUS_WARNING)
Game.setGameState(GAME_STATE_STARTUP)
addEvent(firstServerSaveWarning, 120000)
return not shutdownAtServerSave
end


no Man, no is Saveserver,

is playersave to each 30 seconds and globalsave to each 2 hours
 
Here you go (untested)
Code:
function savePlayers()
  local players = Game.getPlayers()
  for i = 0, #players do
    players[i]:save()
  end

  addEvent(savePlayers, 30 * 1000)
end

function saveServer()
  saveServer()
  addEvent(saveServer, 2 * 60 * 60 * 1000)
end


function onStartup()
  addEvent(savePlayers, 30 * 1000)
  addEvent(saveServer, 2 * 60 * 60 * 1000)
end
 
Back
Top