diff --git a/entities.lua b/entities.lua
new file mode 100644
index 0000000000000000000000000000000000000000..c7a2f55aaab765d1467a8ab95f7e100555e769b1
--- /dev/null
+++ b/entities.lua
@@ -0,0 +1,62 @@
+minetest.register_entity("illuna:rulehint", {
+    visual = "sprite",
+    visual_size = {x=3,y=3},
+    collisionbox = {0},
+    physical = false,
+    glow = 10,
+    textures = {"illuna_rulehint.png"},
+})
+
+minetest.register_entity("illuna:travelcenter_ne", {
+    visual = "sprite",
+    visual_size = {x=2.5,y=2.5},
+    collisionbox = {0},
+    physical = false,
+    glow = 10,
+    textures = {"illuna_travelcenter_ne.png"},
+})
+
+minetest.register_entity("illuna:travelcenter_nw", {
+    visual = "sprite",
+    visual_size = {x=2.5,y=2.5},
+    collisionbox = {0},
+    physical = false,
+    glow = 10,
+    textures = {"illuna_travelcenter_nw.png"},
+})
+
+minetest.register_entity("illuna:travelcenter_se", {
+    visual = "sprite",
+    visual_size = {x=2.5,y=2.5},
+    collisionbox = {0},
+    physical = false,
+    glow = 10,
+    textures = {"illuna_travelcenter_se.png"},
+})
+
+minetest.register_entity("illuna:travelcenter_sw", {
+    visual = "sprite",
+    visual_size = {x=2.5,y=2.5},
+    collisionbox = {0},
+    physical = false,
+    glow = 10,
+    textures = {"illuna_travelcenter_sw.png"},
+})
+
+minetest.register_entity("illuna:kingdom_entrance", {
+    visual = "sprite",
+    visual_size = {x=2.5,y=2.5},
+    collisionbox = {0},
+    physical = false,
+    glow = 10,
+    textures = {"illuna_kingdom_entrance.png"},
+})
+
+minetest.register_entity("illuna:market", {
+    visual = "sprite",
+    visual_size = {x=2.5,y=2.5},
+    collisionbox = {0},
+    physical = false,
+    glow = 10,
+    textures = {"illuna_market.png"},
+})
diff --git a/init.lua b/init.lua
index 6ac39a72787032ed62c99190166f3f5c935edb71..c850717837d99ec19ee97bd6d0904837d942dc1a 100644
--- a/init.lua
+++ b/init.lua
@@ -1,6 +1,7 @@
 illuna = {}
 
 dofile(minetest.get_modpath("illuna").."/nodes.lua")
+dofile(minetest.get_modpath("illuna").."/entities.lua")
 dofile(minetest.get_modpath("illuna").."/moreblocks.lua")
 dofile(minetest.get_modpath("illuna").."/crafting.lua")
 dofile(minetest.get_modpath("illuna").."/commands.lua")
diff --git a/nodes.lua b/nodes.lua
index 76f3717e314d268c0501700b50c58771ad78baff..96e66d86ace3eb1fcd749d3bfa90b50657da24f1 100644
--- a/nodes.lua
+++ b/nodes.lua
@@ -403,69 +403,6 @@ if minetest.get_modpath("ethereal") then
     })
 end
 
-minetest.register_entity("illuna:rulehint", {
-    visual = "sprite",
-    visual_size = {x=3,y=3},
-    collisionbox = {0},
-    physical = false,
-    glow = 10,
-    textures = {"illuna_rulehint.png"},
-})
-
-minetest.register_entity("illuna:travelcenter_ne", {
-    visual = "sprite",
-    visual_size = {x=2.5,y=2.5},
-    collisionbox = {0},
-    physical = false,
-    glow = 10,
-    textures = {"illuna_travelcenter_ne.png"},
-})
-
-minetest.register_entity("illuna:travelcenter_nw", {
-    visual = "sprite",
-    visual_size = {x=2.5,y=2.5},
-    collisionbox = {0},
-    physical = false,
-    glow = 10,
-    textures = {"illuna_travelcenter_nw.png"},
-})
-
-minetest.register_entity("illuna:travelcenter_se", {
-    visual = "sprite",
-    visual_size = {x=2.5,y=2.5},
-    collisionbox = {0},
-    physical = false,
-    glow = 10,
-    textures = {"illuna_travelcenter_se.png"},
-})
-
-minetest.register_entity("illuna:travelcenter_sw", {
-    visual = "sprite",
-    visual_size = {x=2.5,y=2.5},
-    collisionbox = {0},
-    physical = false,
-    glow = 10,
-    textures = {"illuna_travelcenter_sw.png"},
-})
-
-minetest.register_entity("illuna:kingdom_entrance", {
-    visual = "sprite",
-    visual_size = {x=2.5,y=2.5},
-    collisionbox = {0},
-    physical = false,
-    glow = 10,
-    textures = {"illuna_kingdom_entrance.png"},
-})
-
-minetest.register_entity("illuna:market", {
-    visual = "sprite",
-    visual_size = {x=2.5,y=2.5},
-    collisionbox = {0},
-    physical = false,
-    glow = 10,
-    textures = {"illuna_market.png"},
-})
-
 function illuna.node_sound_wool(table)
     table = table or {}
     table.footstep = table.footstep or