diff options
author | Jeija <norrepli@gmail.com> | 2016-02-19 12:11:38 +0100 |
---|---|---|
committer | Jeija <norrepli@gmail.com> | 2016-02-19 12:11:38 +0100 |
commit | cfd4f7c287543f7f14d05e90c106fc14a4be8666 (patch) | |
tree | 3f922f979bea4daa8c13a5d91e59199c43811984 /mesecons/actionqueue.lua | |
parent | f099b43e1127c46df0e7e4655ddefd8910c570ef (diff) | |
download | mesecons-cfd4f7c287543f7f14d05e90c106fc14a4be8666.tar mesecons-cfd4f7c287543f7f14d05e90c106fc14a4be8666.tar.gz mesecons-cfd4f7c287543f7f14d05e90c106fc14a4be8666.tar.bz2 mesecons-cfd4f7c287543f7f14d05e90c106fc14a4be8666.tar.xz mesecons-cfd4f7c287543f7f14d05e90c106fc14a4be8666.zip |
Force-load areas with mesecon usage
This is a major speedup for large mesecon machines / structures.
Force-loaded areas are stored in a file to be persistent over server
reboots. By default, areas are unloaded after 10 minutes (600s) without
usage, this can be customized with the mesecon.forceload_timeout
setting. Please turn max_forceloaded_blocks up for better performance.
Diffstat (limited to 'mesecons/actionqueue.lua')
-rw-r--r-- | mesecons/actionqueue.lua | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/mesecons/actionqueue.lua b/mesecons/actionqueue.lua index a773008..e300ea7 100644 --- a/mesecons/actionqueue.lua +++ b/mesecons/actionqueue.lua @@ -94,25 +94,8 @@ end -- Store and read the ActionQueue to / from a file -- so that upcoming actions are remembered when the game -- is restarted - -local wpath = minetest.get_worldpath() -local function file2table(filename) - local f = io.open(filename, "r") - if f==nil then return {} end - local t = f:read("*all") - f:close() - if t=="" or t==nil then return {} end - return minetest.deserialize(t) -end - -local function table2file(filename, table) - local f = io.open(filename, "w") - f:write(minetest.serialize(table)) - f:close() -end - -mesecon.queue.actions = file2table(wpath.."/mesecon_actionqueue") +mesecon.queue.actions = mesecon.file2table("mesecon_actionqueue") minetest.register_on_shutdown(function() - mesecon.queue.actions = table2file(wpath.."/mesecon_actionqueue", mesecon.queue.actions) + mesecon.table2file("mesecon_actionqueue", mesecon.queue.actions) end) |