#!/usr/bin/env lua5.1 local server = require("server") local srv, err = server.create(assert(arg[1])) if err then if err == "save_corrupted" then print("[standalone_server] savefile corrupted (try restoring backup?)") elseif err == "save_write_failed" then print("[standalone_server] failed to open savefile for writing") else print(err) end os.exit(1) end local function server_loop() local started = false while true do server.update(srv) local status, invite = server.match_status(srv) if status == "fail" then print("[standalone_server] failed to register match (match server down?)") return false elseif status == "active" and not started then started = true print("[standalone_server] invite: " .. invite) end end end local _, success = xpcall(server_loop, function(err) if err:find("interrupted!") then return true end print(debug.traceback(err, 2)) return false end, srv) print("[standalone_server] shutting down") server.close(srv) if not success then os.exit(1) end