From c89d1cf072f4ac34cfb35eadd8c9890b3de1b922 Mon Sep 17 00:00:00 2001
From: Perttu Ahola <celeron55@gmail.com>
Date: Sat, 10 Mar 2012 15:56:24 +0200
Subject: [PATCH] Initial directory structure rework

---
 .../client/textures}/fontlucida.png           | Bin
 .../client/textures}/menubg.png               | Bin
 .../client/textures}/menulogo.png             | Bin
 .../client/textures}/smoke_puff.png           | Bin
 .../client/textures}/unknown_block.png        | Bin
 .../client/textures}/unknown_item.png         | Bin
 .../client/textures}/unknown_object.png       | Bin
 {data => share/server}/builtin.lua            |   0
 .../games/mesetint}/mods/bucket/depends.txt   |   0
 .../games/mesetint}/mods/bucket/init.lua      |   0
 .../mesetint}/mods/bucket/textures/bucket.png | Bin
 .../mods/bucket/textures/bucket_lava.png      | Bin
 .../mods/bucket/textures/bucket_water.png     | Bin
 .../games/mesetint}/mods/default/init.lua     |   0
 .../mesetint}/mods/default/textures/crack.png | Bin
 .../mods/default/textures/default_apple.png   | Bin
 .../mods/default/textures/default_book.png    | Bin
 .../default/textures/default_bookshelf.png    | Bin
 .../mods/default/textures/default_brick.png   | Bin
 .../default/textures/default_cactus_side.png  | Bin
 .../default/textures/default_cactus_top.png   | Bin
 .../default/textures/default_chest_front.png  | Bin
 .../default/textures/default_chest_lock.png   | Bin
 .../default/textures/default_chest_side.png   | Bin
 .../default/textures/default_chest_top.png    | Bin
 .../mods/default/textures/default_clay.png    | Bin
 .../default/textures/default_clay_brick.png   | Bin
 .../default/textures/default_clay_lump.png    | Bin
 .../mods/default/textures/default_cloud.png   | Bin
 .../default/textures/default_coal_lump.png    | Bin
 .../mods/default/textures/default_cobble.png  | Bin
 .../mods/default/textures/default_dirt.png    | Bin
 .../mods/default/textures/default_fence.png   | Bin
 .../textures/default_furnace_front.png        | Bin
 .../default/textures/default_furnace_side.png | Bin
 .../mods/default/textures/default_glass.png   | Bin
 .../mods/default/textures/default_grass.png   | Bin
 .../textures/default_grass_footsteps.png      | Bin
 .../default/textures/default_grass_side.png   | Bin
 .../mods/default/textures/default_gravel.png  | Bin
 .../default/textures/default_iron_lump.png    | Bin
 .../default/textures/default_junglegrass.png  | Bin
 .../default/textures/default_jungletree.png   | Bin
 .../textures/default_jungletree_top.png       | Bin
 .../mods/default/textures/default_ladder.png  | Bin
 .../mods/default/textures/default_lava.png    | Bin
 .../mods/default/textures/default_leaves.png  | Bin
 .../mods/default/textures/default_mese.png    | Bin
 .../default/textures/default_mineral_coal.png | Bin
 .../default/textures/default_mineral_iron.png | Bin
 .../default/textures/default_mossycobble.png  | Bin
 .../mods/default/textures/default_nc_back.png | Bin
 .../default/textures/default_nc_front.png     | Bin
 .../mods/default/textures/default_nc_rb.png   | Bin
 .../mods/default/textures/default_nc_side.png | Bin
 .../mods/default/textures/default_paper.png   | Bin
 .../mods/default/textures/default_papyrus.png | Bin
 .../mods/default/textures/default_rail.png    | Bin
 .../textures/default_rail_crossing.png        | Bin
 .../default/textures/default_rail_curved.png  | Bin
 .../textures/default_rail_t_junction.png      | Bin
 .../mods/default/textures/default_sand.png    | Bin
 .../default/textures/default_sandstone.png    | Bin
 .../mods/default/textures/default_sapling.png | Bin
 .../textures/default_scorched_stuff.png       | Bin
 .../mods/default/textures/default_sign.png    | Bin
 .../default/textures/default_sign_back.png    | Bin
 .../default/textures/default_sign_wall.png    | Bin
 .../default/textures/default_steel_block.png  | Bin
 .../default/textures/default_steel_ingot.png  | Bin
 .../mods/default/textures/default_stick.png   | Bin
 .../mods/default/textures/default_stone.png   | Bin
 .../default/textures/default_tnt_bottom.png   | Bin
 .../default/textures/default_tnt_side.png     | Bin
 .../mods/default/textures/default_tnt_top.png | Bin
 .../textures/default_tool_mesepick.png        | Bin
 .../textures/default_tool_steelaxe.png        | Bin
 .../textures/default_tool_steelpick.png       | Bin
 .../textures/default_tool_steelshovel.png     | Bin
 .../textures/default_tool_steelsword.png      | Bin
 .../textures/default_tool_stoneaxe.png        | Bin
 .../textures/default_tool_stonepick.png       | Bin
 .../textures/default_tool_stoneshovel.png     | Bin
 .../textures/default_tool_stonesword.png      | Bin
 .../default/textures/default_tool_woodaxe.png | Bin
 .../textures/default_tool_woodpick.png        | Bin
 .../textures/default_tool_woodshovel.png      | Bin
 .../textures/default_tool_woodsword.png       | Bin
 .../mods/default/textures/default_torch.png   | Bin
 .../textures/default_torch_on_ceiling.png     | Bin
 .../textures/default_torch_on_floor.png       | Bin
 .../mods/default/textures/default_tree.png    | Bin
 .../default/textures/default_tree_top.png     | Bin
 .../mods/default/textures/default_water.png   | Bin
 .../mods/default/textures/default_wood.png    | Bin
 .../mesetint}/mods/default/textures/heart.png | Bin
 .../mods/default/textures/player.png          | Bin
 .../mods/default/textures/player_back.png     | Bin
 .../mods/default/textures/skybox1.png         | Bin
 .../mods/default/textures/skybox1_dawn.png    | Bin
 .../mods/default/textures/skybox1_night.png   | Bin
 .../mods/default/textures/skybox2.png         | Bin
 .../mods/default/textures/skybox2_dawn.png    | Bin
 .../mods/default/textures/skybox2_night.png   | Bin
 .../mods/default/textures/skybox3.png         | Bin
 .../mods/default/textures/skybox3_dawn.png    | Bin
 .../mods/default/textures/skybox3_night.png   | Bin
 .../mods/default/textures/treeprop.png        | Bin
 .../mods/default/textures/wieldhand.png       | Bin
 .../mesetint}/mods/experimental/depends.txt   |   0
 .../mesetint}/mods/experimental/init.lua      |   0
 .../textures/experimental_dummyball.png       | Bin
 .../mods/give_initial_stuff/depends.txt       |   0
 .../mods/give_initial_stuff/init.lua          |   0
 .../games/mesetint}/mods/legacy/depends.txt   |   0
 .../games/mesetint}/mods/legacy/init.lua      |   0
 .../mods/legacy/textures/apple_iron.png       | Bin
 .../mods/legacy/textures/cooked_rat.png       | Bin
 .../mods/legacy/textures/dungeon_master.png   | Bin
 .../mods/legacy/textures/fireball.png         | Bin
 .../mods/legacy/textures/firefly.png          | Bin
 .../mods/legacy/textures/oerkki1.png          | Bin
 .../mods/legacy/textures/oerkki1_damaged.png  | Bin
 .../mesetint}/mods/legacy/textures/rat.png    | Bin
 src/client.cpp                                |   2 +-
 src/game.cpp                                  |   2 +-
 src/guiPauseMenu.cpp                          |   4 +-
 src/main.cpp                                  |  28 +++++---
 src/porting.cpp                               |  61 ++++++++--------
 src/porting.h                                 |   6 +-
 src/server.cpp                                |  65 +++++++++++-------
 src/server.h                                  |  24 +++++--
 src/servermain.cpp                            |  38 +++++-----
 src/tile.cpp                                  |   7 +-
 134 files changed, 136 insertions(+), 101 deletions(-)
 rename {data/clienttextures => share/client/textures}/fontlucida.png (100%)
 rename {data/clienttextures => share/client/textures}/menubg.png (100%)
 rename {data/clienttextures => share/client/textures}/menulogo.png (100%)
 rename {data/clienttextures => share/client/textures}/smoke_puff.png (100%)
 rename {data/clienttextures => share/client/textures}/unknown_block.png (100%)
 rename {data/clienttextures => share/client/textures}/unknown_item.png (100%)
 rename {data/clienttextures => share/client/textures}/unknown_object.png (100%)
 rename {data => share/server}/builtin.lua (100%)
 rename {data => share/server/games/mesetint}/mods/bucket/depends.txt (100%)
 rename {data => share/server/games/mesetint}/mods/bucket/init.lua (100%)
 rename {data => share/server/games/mesetint}/mods/bucket/textures/bucket.png (100%)
 rename {data => share/server/games/mesetint}/mods/bucket/textures/bucket_lava.png (100%)
 rename {data => share/server/games/mesetint}/mods/bucket/textures/bucket_water.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/init.lua (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/crack.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_apple.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_book.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_bookshelf.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_brick.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_cactus_side.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_cactus_top.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_chest_front.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_chest_lock.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_chest_side.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_chest_top.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_clay.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_clay_brick.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_clay_lump.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_cloud.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_coal_lump.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_cobble.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_dirt.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_fence.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_furnace_front.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_furnace_side.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_glass.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_grass.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_grass_footsteps.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_grass_side.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_gravel.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_iron_lump.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_junglegrass.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_jungletree.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_jungletree_top.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_ladder.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_lava.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_leaves.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_mese.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_mineral_coal.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_mineral_iron.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_mossycobble.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_nc_back.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_nc_front.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_nc_rb.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_nc_side.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_paper.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_papyrus.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_rail.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_rail_crossing.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_rail_curved.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_rail_t_junction.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_sand.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_sandstone.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_sapling.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_scorched_stuff.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_sign.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_sign_back.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_sign_wall.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_steel_block.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_steel_ingot.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_stick.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_stone.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tnt_bottom.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tnt_side.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tnt_top.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_mesepick.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_steelaxe.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_steelpick.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_steelshovel.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_steelsword.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_stoneaxe.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_stonepick.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_stoneshovel.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_stonesword.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_woodaxe.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_woodpick.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_woodshovel.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tool_woodsword.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_torch.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_torch_on_ceiling.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_torch_on_floor.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tree.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_tree_top.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_water.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/default_wood.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/heart.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/player.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/player_back.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox1.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox1_dawn.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox1_night.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox2.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox2_dawn.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox2_night.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox3.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox3_dawn.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/skybox3_night.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/treeprop.png (100%)
 rename {data => share/server/games/mesetint}/mods/default/textures/wieldhand.png (100%)
 rename {data => share/server/games/mesetint}/mods/experimental/depends.txt (100%)
 rename {data => share/server/games/mesetint}/mods/experimental/init.lua (100%)
 rename {data => share/server/games/mesetint}/mods/experimental/textures/experimental_dummyball.png (100%)
 rename {data => share/server/games/mesetint}/mods/give_initial_stuff/depends.txt (100%)
 rename {data => share/server/games/mesetint}/mods/give_initial_stuff/init.lua (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/depends.txt (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/init.lua (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/textures/apple_iron.png (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/textures/cooked_rat.png (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/textures/dungeon_master.png (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/textures/fireball.png (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/textures/firefly.png (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/textures/oerkki1.png (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/textures/oerkki1_damaged.png (100%)
 rename {data => share/server/games/mesetint}/mods/legacy/textures/rat.png (100%)

diff --git a/data/clienttextures/fontlucida.png b/share/client/textures/fontlucida.png
similarity index 100%
rename from data/clienttextures/fontlucida.png
rename to share/client/textures/fontlucida.png
diff --git a/data/clienttextures/menubg.png b/share/client/textures/menubg.png
similarity index 100%
rename from data/clienttextures/menubg.png
rename to share/client/textures/menubg.png
diff --git a/data/clienttextures/menulogo.png b/share/client/textures/menulogo.png
similarity index 100%
rename from data/clienttextures/menulogo.png
rename to share/client/textures/menulogo.png
diff --git a/data/clienttextures/smoke_puff.png b/share/client/textures/smoke_puff.png
similarity index 100%
rename from data/clienttextures/smoke_puff.png
rename to share/client/textures/smoke_puff.png
diff --git a/data/clienttextures/unknown_block.png b/share/client/textures/unknown_block.png
similarity index 100%
rename from data/clienttextures/unknown_block.png
rename to share/client/textures/unknown_block.png
diff --git a/data/clienttextures/unknown_item.png b/share/client/textures/unknown_item.png
similarity index 100%
rename from data/clienttextures/unknown_item.png
rename to share/client/textures/unknown_item.png
diff --git a/data/clienttextures/unknown_object.png b/share/client/textures/unknown_object.png
similarity index 100%
rename from data/clienttextures/unknown_object.png
rename to share/client/textures/unknown_object.png
diff --git a/data/builtin.lua b/share/server/builtin.lua
similarity index 100%
rename from data/builtin.lua
rename to share/server/builtin.lua
diff --git a/data/mods/bucket/depends.txt b/share/server/games/mesetint/mods/bucket/depends.txt
similarity index 100%
rename from data/mods/bucket/depends.txt
rename to share/server/games/mesetint/mods/bucket/depends.txt
diff --git a/data/mods/bucket/init.lua b/share/server/games/mesetint/mods/bucket/init.lua
similarity index 100%
rename from data/mods/bucket/init.lua
rename to share/server/games/mesetint/mods/bucket/init.lua
diff --git a/data/mods/bucket/textures/bucket.png b/share/server/games/mesetint/mods/bucket/textures/bucket.png
similarity index 100%
rename from data/mods/bucket/textures/bucket.png
rename to share/server/games/mesetint/mods/bucket/textures/bucket.png
diff --git a/data/mods/bucket/textures/bucket_lava.png b/share/server/games/mesetint/mods/bucket/textures/bucket_lava.png
similarity index 100%
rename from data/mods/bucket/textures/bucket_lava.png
rename to share/server/games/mesetint/mods/bucket/textures/bucket_lava.png
diff --git a/data/mods/bucket/textures/bucket_water.png b/share/server/games/mesetint/mods/bucket/textures/bucket_water.png
similarity index 100%
rename from data/mods/bucket/textures/bucket_water.png
rename to share/server/games/mesetint/mods/bucket/textures/bucket_water.png
diff --git a/data/mods/default/init.lua b/share/server/games/mesetint/mods/default/init.lua
similarity index 100%
rename from data/mods/default/init.lua
rename to share/server/games/mesetint/mods/default/init.lua
diff --git a/data/mods/default/textures/crack.png b/share/server/games/mesetint/mods/default/textures/crack.png
similarity index 100%
rename from data/mods/default/textures/crack.png
rename to share/server/games/mesetint/mods/default/textures/crack.png
diff --git a/data/mods/default/textures/default_apple.png b/share/server/games/mesetint/mods/default/textures/default_apple.png
similarity index 100%
rename from data/mods/default/textures/default_apple.png
rename to share/server/games/mesetint/mods/default/textures/default_apple.png
diff --git a/data/mods/default/textures/default_book.png b/share/server/games/mesetint/mods/default/textures/default_book.png
similarity index 100%
rename from data/mods/default/textures/default_book.png
rename to share/server/games/mesetint/mods/default/textures/default_book.png
diff --git a/data/mods/default/textures/default_bookshelf.png b/share/server/games/mesetint/mods/default/textures/default_bookshelf.png
similarity index 100%
rename from data/mods/default/textures/default_bookshelf.png
rename to share/server/games/mesetint/mods/default/textures/default_bookshelf.png
diff --git a/data/mods/default/textures/default_brick.png b/share/server/games/mesetint/mods/default/textures/default_brick.png
similarity index 100%
rename from data/mods/default/textures/default_brick.png
rename to share/server/games/mesetint/mods/default/textures/default_brick.png
diff --git a/data/mods/default/textures/default_cactus_side.png b/share/server/games/mesetint/mods/default/textures/default_cactus_side.png
similarity index 100%
rename from data/mods/default/textures/default_cactus_side.png
rename to share/server/games/mesetint/mods/default/textures/default_cactus_side.png
diff --git a/data/mods/default/textures/default_cactus_top.png b/share/server/games/mesetint/mods/default/textures/default_cactus_top.png
similarity index 100%
rename from data/mods/default/textures/default_cactus_top.png
rename to share/server/games/mesetint/mods/default/textures/default_cactus_top.png
diff --git a/data/mods/default/textures/default_chest_front.png b/share/server/games/mesetint/mods/default/textures/default_chest_front.png
similarity index 100%
rename from data/mods/default/textures/default_chest_front.png
rename to share/server/games/mesetint/mods/default/textures/default_chest_front.png
diff --git a/data/mods/default/textures/default_chest_lock.png b/share/server/games/mesetint/mods/default/textures/default_chest_lock.png
similarity index 100%
rename from data/mods/default/textures/default_chest_lock.png
rename to share/server/games/mesetint/mods/default/textures/default_chest_lock.png
diff --git a/data/mods/default/textures/default_chest_side.png b/share/server/games/mesetint/mods/default/textures/default_chest_side.png
similarity index 100%
rename from data/mods/default/textures/default_chest_side.png
rename to share/server/games/mesetint/mods/default/textures/default_chest_side.png
diff --git a/data/mods/default/textures/default_chest_top.png b/share/server/games/mesetint/mods/default/textures/default_chest_top.png
similarity index 100%
rename from data/mods/default/textures/default_chest_top.png
rename to share/server/games/mesetint/mods/default/textures/default_chest_top.png
diff --git a/data/mods/default/textures/default_clay.png b/share/server/games/mesetint/mods/default/textures/default_clay.png
similarity index 100%
rename from data/mods/default/textures/default_clay.png
rename to share/server/games/mesetint/mods/default/textures/default_clay.png
diff --git a/data/mods/default/textures/default_clay_brick.png b/share/server/games/mesetint/mods/default/textures/default_clay_brick.png
similarity index 100%
rename from data/mods/default/textures/default_clay_brick.png
rename to share/server/games/mesetint/mods/default/textures/default_clay_brick.png
diff --git a/data/mods/default/textures/default_clay_lump.png b/share/server/games/mesetint/mods/default/textures/default_clay_lump.png
similarity index 100%
rename from data/mods/default/textures/default_clay_lump.png
rename to share/server/games/mesetint/mods/default/textures/default_clay_lump.png
diff --git a/data/mods/default/textures/default_cloud.png b/share/server/games/mesetint/mods/default/textures/default_cloud.png
similarity index 100%
rename from data/mods/default/textures/default_cloud.png
rename to share/server/games/mesetint/mods/default/textures/default_cloud.png
diff --git a/data/mods/default/textures/default_coal_lump.png b/share/server/games/mesetint/mods/default/textures/default_coal_lump.png
similarity index 100%
rename from data/mods/default/textures/default_coal_lump.png
rename to share/server/games/mesetint/mods/default/textures/default_coal_lump.png
diff --git a/data/mods/default/textures/default_cobble.png b/share/server/games/mesetint/mods/default/textures/default_cobble.png
similarity index 100%
rename from data/mods/default/textures/default_cobble.png
rename to share/server/games/mesetint/mods/default/textures/default_cobble.png
diff --git a/data/mods/default/textures/default_dirt.png b/share/server/games/mesetint/mods/default/textures/default_dirt.png
similarity index 100%
rename from data/mods/default/textures/default_dirt.png
rename to share/server/games/mesetint/mods/default/textures/default_dirt.png
diff --git a/data/mods/default/textures/default_fence.png b/share/server/games/mesetint/mods/default/textures/default_fence.png
similarity index 100%
rename from data/mods/default/textures/default_fence.png
rename to share/server/games/mesetint/mods/default/textures/default_fence.png
diff --git a/data/mods/default/textures/default_furnace_front.png b/share/server/games/mesetint/mods/default/textures/default_furnace_front.png
similarity index 100%
rename from data/mods/default/textures/default_furnace_front.png
rename to share/server/games/mesetint/mods/default/textures/default_furnace_front.png
diff --git a/data/mods/default/textures/default_furnace_side.png b/share/server/games/mesetint/mods/default/textures/default_furnace_side.png
similarity index 100%
rename from data/mods/default/textures/default_furnace_side.png
rename to share/server/games/mesetint/mods/default/textures/default_furnace_side.png
diff --git a/data/mods/default/textures/default_glass.png b/share/server/games/mesetint/mods/default/textures/default_glass.png
similarity index 100%
rename from data/mods/default/textures/default_glass.png
rename to share/server/games/mesetint/mods/default/textures/default_glass.png
diff --git a/data/mods/default/textures/default_grass.png b/share/server/games/mesetint/mods/default/textures/default_grass.png
similarity index 100%
rename from data/mods/default/textures/default_grass.png
rename to share/server/games/mesetint/mods/default/textures/default_grass.png
diff --git a/data/mods/default/textures/default_grass_footsteps.png b/share/server/games/mesetint/mods/default/textures/default_grass_footsteps.png
similarity index 100%
rename from data/mods/default/textures/default_grass_footsteps.png
rename to share/server/games/mesetint/mods/default/textures/default_grass_footsteps.png
diff --git a/data/mods/default/textures/default_grass_side.png b/share/server/games/mesetint/mods/default/textures/default_grass_side.png
similarity index 100%
rename from data/mods/default/textures/default_grass_side.png
rename to share/server/games/mesetint/mods/default/textures/default_grass_side.png
diff --git a/data/mods/default/textures/default_gravel.png b/share/server/games/mesetint/mods/default/textures/default_gravel.png
similarity index 100%
rename from data/mods/default/textures/default_gravel.png
rename to share/server/games/mesetint/mods/default/textures/default_gravel.png
diff --git a/data/mods/default/textures/default_iron_lump.png b/share/server/games/mesetint/mods/default/textures/default_iron_lump.png
similarity index 100%
rename from data/mods/default/textures/default_iron_lump.png
rename to share/server/games/mesetint/mods/default/textures/default_iron_lump.png
diff --git a/data/mods/default/textures/default_junglegrass.png b/share/server/games/mesetint/mods/default/textures/default_junglegrass.png
similarity index 100%
rename from data/mods/default/textures/default_junglegrass.png
rename to share/server/games/mesetint/mods/default/textures/default_junglegrass.png
diff --git a/data/mods/default/textures/default_jungletree.png b/share/server/games/mesetint/mods/default/textures/default_jungletree.png
similarity index 100%
rename from data/mods/default/textures/default_jungletree.png
rename to share/server/games/mesetint/mods/default/textures/default_jungletree.png
diff --git a/data/mods/default/textures/default_jungletree_top.png b/share/server/games/mesetint/mods/default/textures/default_jungletree_top.png
similarity index 100%
rename from data/mods/default/textures/default_jungletree_top.png
rename to share/server/games/mesetint/mods/default/textures/default_jungletree_top.png
diff --git a/data/mods/default/textures/default_ladder.png b/share/server/games/mesetint/mods/default/textures/default_ladder.png
similarity index 100%
rename from data/mods/default/textures/default_ladder.png
rename to share/server/games/mesetint/mods/default/textures/default_ladder.png
diff --git a/data/mods/default/textures/default_lava.png b/share/server/games/mesetint/mods/default/textures/default_lava.png
similarity index 100%
rename from data/mods/default/textures/default_lava.png
rename to share/server/games/mesetint/mods/default/textures/default_lava.png
diff --git a/data/mods/default/textures/default_leaves.png b/share/server/games/mesetint/mods/default/textures/default_leaves.png
similarity index 100%
rename from data/mods/default/textures/default_leaves.png
rename to share/server/games/mesetint/mods/default/textures/default_leaves.png
diff --git a/data/mods/default/textures/default_mese.png b/share/server/games/mesetint/mods/default/textures/default_mese.png
similarity index 100%
rename from data/mods/default/textures/default_mese.png
rename to share/server/games/mesetint/mods/default/textures/default_mese.png
diff --git a/data/mods/default/textures/default_mineral_coal.png b/share/server/games/mesetint/mods/default/textures/default_mineral_coal.png
similarity index 100%
rename from data/mods/default/textures/default_mineral_coal.png
rename to share/server/games/mesetint/mods/default/textures/default_mineral_coal.png
diff --git a/data/mods/default/textures/default_mineral_iron.png b/share/server/games/mesetint/mods/default/textures/default_mineral_iron.png
similarity index 100%
rename from data/mods/default/textures/default_mineral_iron.png
rename to share/server/games/mesetint/mods/default/textures/default_mineral_iron.png
diff --git a/data/mods/default/textures/default_mossycobble.png b/share/server/games/mesetint/mods/default/textures/default_mossycobble.png
similarity index 100%
rename from data/mods/default/textures/default_mossycobble.png
rename to share/server/games/mesetint/mods/default/textures/default_mossycobble.png
diff --git a/data/mods/default/textures/default_nc_back.png b/share/server/games/mesetint/mods/default/textures/default_nc_back.png
similarity index 100%
rename from data/mods/default/textures/default_nc_back.png
rename to share/server/games/mesetint/mods/default/textures/default_nc_back.png
diff --git a/data/mods/default/textures/default_nc_front.png b/share/server/games/mesetint/mods/default/textures/default_nc_front.png
similarity index 100%
rename from data/mods/default/textures/default_nc_front.png
rename to share/server/games/mesetint/mods/default/textures/default_nc_front.png
diff --git a/data/mods/default/textures/default_nc_rb.png b/share/server/games/mesetint/mods/default/textures/default_nc_rb.png
similarity index 100%
rename from data/mods/default/textures/default_nc_rb.png
rename to share/server/games/mesetint/mods/default/textures/default_nc_rb.png
diff --git a/data/mods/default/textures/default_nc_side.png b/share/server/games/mesetint/mods/default/textures/default_nc_side.png
similarity index 100%
rename from data/mods/default/textures/default_nc_side.png
rename to share/server/games/mesetint/mods/default/textures/default_nc_side.png
diff --git a/data/mods/default/textures/default_paper.png b/share/server/games/mesetint/mods/default/textures/default_paper.png
similarity index 100%
rename from data/mods/default/textures/default_paper.png
rename to share/server/games/mesetint/mods/default/textures/default_paper.png
diff --git a/data/mods/default/textures/default_papyrus.png b/share/server/games/mesetint/mods/default/textures/default_papyrus.png
similarity index 100%
rename from data/mods/default/textures/default_papyrus.png
rename to share/server/games/mesetint/mods/default/textures/default_papyrus.png
diff --git a/data/mods/default/textures/default_rail.png b/share/server/games/mesetint/mods/default/textures/default_rail.png
similarity index 100%
rename from data/mods/default/textures/default_rail.png
rename to share/server/games/mesetint/mods/default/textures/default_rail.png
diff --git a/data/mods/default/textures/default_rail_crossing.png b/share/server/games/mesetint/mods/default/textures/default_rail_crossing.png
similarity index 100%
rename from data/mods/default/textures/default_rail_crossing.png
rename to share/server/games/mesetint/mods/default/textures/default_rail_crossing.png
diff --git a/data/mods/default/textures/default_rail_curved.png b/share/server/games/mesetint/mods/default/textures/default_rail_curved.png
similarity index 100%
rename from data/mods/default/textures/default_rail_curved.png
rename to share/server/games/mesetint/mods/default/textures/default_rail_curved.png
diff --git a/data/mods/default/textures/default_rail_t_junction.png b/share/server/games/mesetint/mods/default/textures/default_rail_t_junction.png
similarity index 100%
rename from data/mods/default/textures/default_rail_t_junction.png
rename to share/server/games/mesetint/mods/default/textures/default_rail_t_junction.png
diff --git a/data/mods/default/textures/default_sand.png b/share/server/games/mesetint/mods/default/textures/default_sand.png
similarity index 100%
rename from data/mods/default/textures/default_sand.png
rename to share/server/games/mesetint/mods/default/textures/default_sand.png
diff --git a/data/mods/default/textures/default_sandstone.png b/share/server/games/mesetint/mods/default/textures/default_sandstone.png
similarity index 100%
rename from data/mods/default/textures/default_sandstone.png
rename to share/server/games/mesetint/mods/default/textures/default_sandstone.png
diff --git a/data/mods/default/textures/default_sapling.png b/share/server/games/mesetint/mods/default/textures/default_sapling.png
similarity index 100%
rename from data/mods/default/textures/default_sapling.png
rename to share/server/games/mesetint/mods/default/textures/default_sapling.png
diff --git a/data/mods/default/textures/default_scorched_stuff.png b/share/server/games/mesetint/mods/default/textures/default_scorched_stuff.png
similarity index 100%
rename from data/mods/default/textures/default_scorched_stuff.png
rename to share/server/games/mesetint/mods/default/textures/default_scorched_stuff.png
diff --git a/data/mods/default/textures/default_sign.png b/share/server/games/mesetint/mods/default/textures/default_sign.png
similarity index 100%
rename from data/mods/default/textures/default_sign.png
rename to share/server/games/mesetint/mods/default/textures/default_sign.png
diff --git a/data/mods/default/textures/default_sign_back.png b/share/server/games/mesetint/mods/default/textures/default_sign_back.png
similarity index 100%
rename from data/mods/default/textures/default_sign_back.png
rename to share/server/games/mesetint/mods/default/textures/default_sign_back.png
diff --git a/data/mods/default/textures/default_sign_wall.png b/share/server/games/mesetint/mods/default/textures/default_sign_wall.png
similarity index 100%
rename from data/mods/default/textures/default_sign_wall.png
rename to share/server/games/mesetint/mods/default/textures/default_sign_wall.png
diff --git a/data/mods/default/textures/default_steel_block.png b/share/server/games/mesetint/mods/default/textures/default_steel_block.png
similarity index 100%
rename from data/mods/default/textures/default_steel_block.png
rename to share/server/games/mesetint/mods/default/textures/default_steel_block.png
diff --git a/data/mods/default/textures/default_steel_ingot.png b/share/server/games/mesetint/mods/default/textures/default_steel_ingot.png
similarity index 100%
rename from data/mods/default/textures/default_steel_ingot.png
rename to share/server/games/mesetint/mods/default/textures/default_steel_ingot.png
diff --git a/data/mods/default/textures/default_stick.png b/share/server/games/mesetint/mods/default/textures/default_stick.png
similarity index 100%
rename from data/mods/default/textures/default_stick.png
rename to share/server/games/mesetint/mods/default/textures/default_stick.png
diff --git a/data/mods/default/textures/default_stone.png b/share/server/games/mesetint/mods/default/textures/default_stone.png
similarity index 100%
rename from data/mods/default/textures/default_stone.png
rename to share/server/games/mesetint/mods/default/textures/default_stone.png
diff --git a/data/mods/default/textures/default_tnt_bottom.png b/share/server/games/mesetint/mods/default/textures/default_tnt_bottom.png
similarity index 100%
rename from data/mods/default/textures/default_tnt_bottom.png
rename to share/server/games/mesetint/mods/default/textures/default_tnt_bottom.png
diff --git a/data/mods/default/textures/default_tnt_side.png b/share/server/games/mesetint/mods/default/textures/default_tnt_side.png
similarity index 100%
rename from data/mods/default/textures/default_tnt_side.png
rename to share/server/games/mesetint/mods/default/textures/default_tnt_side.png
diff --git a/data/mods/default/textures/default_tnt_top.png b/share/server/games/mesetint/mods/default/textures/default_tnt_top.png
similarity index 100%
rename from data/mods/default/textures/default_tnt_top.png
rename to share/server/games/mesetint/mods/default/textures/default_tnt_top.png
diff --git a/data/mods/default/textures/default_tool_mesepick.png b/share/server/games/mesetint/mods/default/textures/default_tool_mesepick.png
similarity index 100%
rename from data/mods/default/textures/default_tool_mesepick.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_mesepick.png
diff --git a/data/mods/default/textures/default_tool_steelaxe.png b/share/server/games/mesetint/mods/default/textures/default_tool_steelaxe.png
similarity index 100%
rename from data/mods/default/textures/default_tool_steelaxe.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_steelaxe.png
diff --git a/data/mods/default/textures/default_tool_steelpick.png b/share/server/games/mesetint/mods/default/textures/default_tool_steelpick.png
similarity index 100%
rename from data/mods/default/textures/default_tool_steelpick.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_steelpick.png
diff --git a/data/mods/default/textures/default_tool_steelshovel.png b/share/server/games/mesetint/mods/default/textures/default_tool_steelshovel.png
similarity index 100%
rename from data/mods/default/textures/default_tool_steelshovel.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_steelshovel.png
diff --git a/data/mods/default/textures/default_tool_steelsword.png b/share/server/games/mesetint/mods/default/textures/default_tool_steelsword.png
similarity index 100%
rename from data/mods/default/textures/default_tool_steelsword.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_steelsword.png
diff --git a/data/mods/default/textures/default_tool_stoneaxe.png b/share/server/games/mesetint/mods/default/textures/default_tool_stoneaxe.png
similarity index 100%
rename from data/mods/default/textures/default_tool_stoneaxe.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_stoneaxe.png
diff --git a/data/mods/default/textures/default_tool_stonepick.png b/share/server/games/mesetint/mods/default/textures/default_tool_stonepick.png
similarity index 100%
rename from data/mods/default/textures/default_tool_stonepick.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_stonepick.png
diff --git a/data/mods/default/textures/default_tool_stoneshovel.png b/share/server/games/mesetint/mods/default/textures/default_tool_stoneshovel.png
similarity index 100%
rename from data/mods/default/textures/default_tool_stoneshovel.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_stoneshovel.png
diff --git a/data/mods/default/textures/default_tool_stonesword.png b/share/server/games/mesetint/mods/default/textures/default_tool_stonesword.png
similarity index 100%
rename from data/mods/default/textures/default_tool_stonesword.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_stonesword.png
diff --git a/data/mods/default/textures/default_tool_woodaxe.png b/share/server/games/mesetint/mods/default/textures/default_tool_woodaxe.png
similarity index 100%
rename from data/mods/default/textures/default_tool_woodaxe.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_woodaxe.png
diff --git a/data/mods/default/textures/default_tool_woodpick.png b/share/server/games/mesetint/mods/default/textures/default_tool_woodpick.png
similarity index 100%
rename from data/mods/default/textures/default_tool_woodpick.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_woodpick.png
diff --git a/data/mods/default/textures/default_tool_woodshovel.png b/share/server/games/mesetint/mods/default/textures/default_tool_woodshovel.png
similarity index 100%
rename from data/mods/default/textures/default_tool_woodshovel.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_woodshovel.png
diff --git a/data/mods/default/textures/default_tool_woodsword.png b/share/server/games/mesetint/mods/default/textures/default_tool_woodsword.png
similarity index 100%
rename from data/mods/default/textures/default_tool_woodsword.png
rename to share/server/games/mesetint/mods/default/textures/default_tool_woodsword.png
diff --git a/data/mods/default/textures/default_torch.png b/share/server/games/mesetint/mods/default/textures/default_torch.png
similarity index 100%
rename from data/mods/default/textures/default_torch.png
rename to share/server/games/mesetint/mods/default/textures/default_torch.png
diff --git a/data/mods/default/textures/default_torch_on_ceiling.png b/share/server/games/mesetint/mods/default/textures/default_torch_on_ceiling.png
similarity index 100%
rename from data/mods/default/textures/default_torch_on_ceiling.png
rename to share/server/games/mesetint/mods/default/textures/default_torch_on_ceiling.png
diff --git a/data/mods/default/textures/default_torch_on_floor.png b/share/server/games/mesetint/mods/default/textures/default_torch_on_floor.png
similarity index 100%
rename from data/mods/default/textures/default_torch_on_floor.png
rename to share/server/games/mesetint/mods/default/textures/default_torch_on_floor.png
diff --git a/data/mods/default/textures/default_tree.png b/share/server/games/mesetint/mods/default/textures/default_tree.png
similarity index 100%
rename from data/mods/default/textures/default_tree.png
rename to share/server/games/mesetint/mods/default/textures/default_tree.png
diff --git a/data/mods/default/textures/default_tree_top.png b/share/server/games/mesetint/mods/default/textures/default_tree_top.png
similarity index 100%
rename from data/mods/default/textures/default_tree_top.png
rename to share/server/games/mesetint/mods/default/textures/default_tree_top.png
diff --git a/data/mods/default/textures/default_water.png b/share/server/games/mesetint/mods/default/textures/default_water.png
similarity index 100%
rename from data/mods/default/textures/default_water.png
rename to share/server/games/mesetint/mods/default/textures/default_water.png
diff --git a/data/mods/default/textures/default_wood.png b/share/server/games/mesetint/mods/default/textures/default_wood.png
similarity index 100%
rename from data/mods/default/textures/default_wood.png
rename to share/server/games/mesetint/mods/default/textures/default_wood.png
diff --git a/data/mods/default/textures/heart.png b/share/server/games/mesetint/mods/default/textures/heart.png
similarity index 100%
rename from data/mods/default/textures/heart.png
rename to share/server/games/mesetint/mods/default/textures/heart.png
diff --git a/data/mods/default/textures/player.png b/share/server/games/mesetint/mods/default/textures/player.png
similarity index 100%
rename from data/mods/default/textures/player.png
rename to share/server/games/mesetint/mods/default/textures/player.png
diff --git a/data/mods/default/textures/player_back.png b/share/server/games/mesetint/mods/default/textures/player_back.png
similarity index 100%
rename from data/mods/default/textures/player_back.png
rename to share/server/games/mesetint/mods/default/textures/player_back.png
diff --git a/data/mods/default/textures/skybox1.png b/share/server/games/mesetint/mods/default/textures/skybox1.png
similarity index 100%
rename from data/mods/default/textures/skybox1.png
rename to share/server/games/mesetint/mods/default/textures/skybox1.png
diff --git a/data/mods/default/textures/skybox1_dawn.png b/share/server/games/mesetint/mods/default/textures/skybox1_dawn.png
similarity index 100%
rename from data/mods/default/textures/skybox1_dawn.png
rename to share/server/games/mesetint/mods/default/textures/skybox1_dawn.png
diff --git a/data/mods/default/textures/skybox1_night.png b/share/server/games/mesetint/mods/default/textures/skybox1_night.png
similarity index 100%
rename from data/mods/default/textures/skybox1_night.png
rename to share/server/games/mesetint/mods/default/textures/skybox1_night.png
diff --git a/data/mods/default/textures/skybox2.png b/share/server/games/mesetint/mods/default/textures/skybox2.png
similarity index 100%
rename from data/mods/default/textures/skybox2.png
rename to share/server/games/mesetint/mods/default/textures/skybox2.png
diff --git a/data/mods/default/textures/skybox2_dawn.png b/share/server/games/mesetint/mods/default/textures/skybox2_dawn.png
similarity index 100%
rename from data/mods/default/textures/skybox2_dawn.png
rename to share/server/games/mesetint/mods/default/textures/skybox2_dawn.png
diff --git a/data/mods/default/textures/skybox2_night.png b/share/server/games/mesetint/mods/default/textures/skybox2_night.png
similarity index 100%
rename from data/mods/default/textures/skybox2_night.png
rename to share/server/games/mesetint/mods/default/textures/skybox2_night.png
diff --git a/data/mods/default/textures/skybox3.png b/share/server/games/mesetint/mods/default/textures/skybox3.png
similarity index 100%
rename from data/mods/default/textures/skybox3.png
rename to share/server/games/mesetint/mods/default/textures/skybox3.png
diff --git a/data/mods/default/textures/skybox3_dawn.png b/share/server/games/mesetint/mods/default/textures/skybox3_dawn.png
similarity index 100%
rename from data/mods/default/textures/skybox3_dawn.png
rename to share/server/games/mesetint/mods/default/textures/skybox3_dawn.png
diff --git a/data/mods/default/textures/skybox3_night.png b/share/server/games/mesetint/mods/default/textures/skybox3_night.png
similarity index 100%
rename from data/mods/default/textures/skybox3_night.png
rename to share/server/games/mesetint/mods/default/textures/skybox3_night.png
diff --git a/data/mods/default/textures/treeprop.png b/share/server/games/mesetint/mods/default/textures/treeprop.png
similarity index 100%
rename from data/mods/default/textures/treeprop.png
rename to share/server/games/mesetint/mods/default/textures/treeprop.png
diff --git a/data/mods/default/textures/wieldhand.png b/share/server/games/mesetint/mods/default/textures/wieldhand.png
similarity index 100%
rename from data/mods/default/textures/wieldhand.png
rename to share/server/games/mesetint/mods/default/textures/wieldhand.png
diff --git a/data/mods/experimental/depends.txt b/share/server/games/mesetint/mods/experimental/depends.txt
similarity index 100%
rename from data/mods/experimental/depends.txt
rename to share/server/games/mesetint/mods/experimental/depends.txt
diff --git a/data/mods/experimental/init.lua b/share/server/games/mesetint/mods/experimental/init.lua
similarity index 100%
rename from data/mods/experimental/init.lua
rename to share/server/games/mesetint/mods/experimental/init.lua
diff --git a/data/mods/experimental/textures/experimental_dummyball.png b/share/server/games/mesetint/mods/experimental/textures/experimental_dummyball.png
similarity index 100%
rename from data/mods/experimental/textures/experimental_dummyball.png
rename to share/server/games/mesetint/mods/experimental/textures/experimental_dummyball.png
diff --git a/data/mods/give_initial_stuff/depends.txt b/share/server/games/mesetint/mods/give_initial_stuff/depends.txt
similarity index 100%
rename from data/mods/give_initial_stuff/depends.txt
rename to share/server/games/mesetint/mods/give_initial_stuff/depends.txt
diff --git a/data/mods/give_initial_stuff/init.lua b/share/server/games/mesetint/mods/give_initial_stuff/init.lua
similarity index 100%
rename from data/mods/give_initial_stuff/init.lua
rename to share/server/games/mesetint/mods/give_initial_stuff/init.lua
diff --git a/data/mods/legacy/depends.txt b/share/server/games/mesetint/mods/legacy/depends.txt
similarity index 100%
rename from data/mods/legacy/depends.txt
rename to share/server/games/mesetint/mods/legacy/depends.txt
diff --git a/data/mods/legacy/init.lua b/share/server/games/mesetint/mods/legacy/init.lua
similarity index 100%
rename from data/mods/legacy/init.lua
rename to share/server/games/mesetint/mods/legacy/init.lua
diff --git a/data/mods/legacy/textures/apple_iron.png b/share/server/games/mesetint/mods/legacy/textures/apple_iron.png
similarity index 100%
rename from data/mods/legacy/textures/apple_iron.png
rename to share/server/games/mesetint/mods/legacy/textures/apple_iron.png
diff --git a/data/mods/legacy/textures/cooked_rat.png b/share/server/games/mesetint/mods/legacy/textures/cooked_rat.png
similarity index 100%
rename from data/mods/legacy/textures/cooked_rat.png
rename to share/server/games/mesetint/mods/legacy/textures/cooked_rat.png
diff --git a/data/mods/legacy/textures/dungeon_master.png b/share/server/games/mesetint/mods/legacy/textures/dungeon_master.png
similarity index 100%
rename from data/mods/legacy/textures/dungeon_master.png
rename to share/server/games/mesetint/mods/legacy/textures/dungeon_master.png
diff --git a/data/mods/legacy/textures/fireball.png b/share/server/games/mesetint/mods/legacy/textures/fireball.png
similarity index 100%
rename from data/mods/legacy/textures/fireball.png
rename to share/server/games/mesetint/mods/legacy/textures/fireball.png
diff --git a/data/mods/legacy/textures/firefly.png b/share/server/games/mesetint/mods/legacy/textures/firefly.png
similarity index 100%
rename from data/mods/legacy/textures/firefly.png
rename to share/server/games/mesetint/mods/legacy/textures/firefly.png
diff --git a/data/mods/legacy/textures/oerkki1.png b/share/server/games/mesetint/mods/legacy/textures/oerkki1.png
similarity index 100%
rename from data/mods/legacy/textures/oerkki1.png
rename to share/server/games/mesetint/mods/legacy/textures/oerkki1.png
diff --git a/data/mods/legacy/textures/oerkki1_damaged.png b/share/server/games/mesetint/mods/legacy/textures/oerkki1_damaged.png
similarity index 100%
rename from data/mods/legacy/textures/oerkki1_damaged.png
rename to share/server/games/mesetint/mods/legacy/textures/oerkki1_damaged.png
diff --git a/data/mods/legacy/textures/rat.png b/share/server/games/mesetint/mods/legacy/textures/rat.png
similarity index 100%
rename from data/mods/legacy/textures/rat.png
rename to share/server/games/mesetint/mods/legacy/textures/rat.png
diff --git a/src/client.cpp b/src/client.cpp
index bc303bc4b..72cd28b18 100644
--- a/src/client.cpp
+++ b/src/client.cpp
@@ -40,7 +40,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 
 static std::string getTextureCacheDir()
 {
-	return porting::path_userdata + DIR_DELIM + "cache" + DIR_DELIM + "texture";
+	return porting::path_user + DIR_DELIM + "cache" + DIR_DELIM + "textures";
 }
 
 struct TextureRequest
diff --git a/src/game.cpp b/src/game.cpp
index a69942e61..0d09e335e 100644
--- a/src/game.cpp
+++ b/src/game.cpp
@@ -726,7 +726,7 @@ void the_game(
 	if(address == ""){
 		draw_load_screen(L"Creating server...", driver, font);
 		infostream<<"Creating server"<<std::endl;
-		server = new Server(map_dir, configpath);
+		server = new Server(map_dir, configpath, "mesetint");
 		server->start(port);
 	}
 
diff --git a/src/guiPauseMenu.cpp b/src/guiPauseMenu.cpp
index 3cd572387..3b1861b3d 100644
--- a/src/guiPauseMenu.cpp
+++ b/src/guiPauseMenu.cpp
@@ -174,7 +174,7 @@ void GUIPauseMenu::regenerateGui(v2u32 screensize)
 				SWPRINTF_CHARSTRING
 				,
 				BUILD_INFO,
-				porting::path_userdata.c_str()
+				porting::path_user.c_str()
 		);*/
 
 		std::ostringstream os;
@@ -182,7 +182,7 @@ void GUIPauseMenu::regenerateGui(v2u32 screensize)
 		os<<"by Perttu Ahola and contributors\n";
 		os<<"celeron55@gmail.com\n";
 		os<<BUILD_INFO<<"\n";
-		os<<"ud_path = "<<wrap_rows(porting::path_userdata, 20)<<"\n";
+		os<<"path_user = "<<wrap_rows(porting::path_user, 20)<<"\n";
 	
 		Environment->addStaticText(narrow_to_wide(os.str()).c_str(), rect, false, true, this, 259);
 	}
diff --git a/src/main.cpp b/src/main.cpp
index ec999c530..322d84e9e 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1157,19 +1157,18 @@ int main(int argc, char *argv[])
 	porting::signal_handler_init();
 	bool &kill = *porting::signal_handler_killstatus();
 	
-	// Initialize porting::path_data and porting::path_userdata
 	porting::initializePaths();
 
 	// Create user data directory
-	fs::CreateDir(porting::path_userdata);
+	fs::CreateDir(porting::path_user);
 
-	init_gettext((porting::path_data+DIR_DELIM+".."+DIR_DELIM+"locale").c_str());
+	init_gettext((porting::path_share+DIR_DELIM+".."+DIR_DELIM+"locale").c_str());
 	
 	// Initialize debug streams
 #ifdef RUN_IN_PLACE
 	std::string debugfile = DEBUGFILE;
 #else
-	std::string debugfile = porting::path_userdata+DIR_DELIM+DEBUGFILE;
+	std::string debugfile = porting::path_user+DIR_DELIM+DEBUGFILE;
 #endif
 	debugstreams_init(disable_stderr, debugfile.c_str());
 	// Initialize debug stacks
@@ -1221,10 +1220,12 @@ int main(int argc, char *argv[])
 	else
 	{
 		core::array<std::string> filenames;
-		filenames.push_back(porting::path_userdata +
+		filenames.push_back(porting::path_user +
 				DIR_DELIM + "minetest.conf");
 #ifdef RUN_IN_PLACE
-		filenames.push_back(porting::path_userdata +
+		// Try also from a lower level (to aid having the same configuration
+		// for many RUN_IN_PLACE installs)
+		filenames.push_back(porting::path_user +
 				DIR_DELIM + ".." + DIR_DELIM + "minetest.conf");
 #endif
 
@@ -1278,11 +1279,22 @@ int main(int argc, char *argv[])
 		port = 30000;
 	
 	// Map directory
-	std::string map_dir = porting::path_userdata+DIR_DELIM+"world";
+	std::string map_dir = porting::path_user + DIR_DELIM + "server" + DIR_DELIM + "worlds" + DIR_DELIM + "world";
 	if(cmd_args.exists("map-dir"))
 		map_dir = cmd_args.get("map-dir");
 	else if(g_settings->exists("map-dir"))
 		map_dir = g_settings->get("map-dir");
+	else{
+		// No map-dir option was specified.
+		// Check if the world is found from the default directory, and if
+		// not, see if the legacy world directory exists.
+		std::string legacy_map_dir = porting::path_user+DIR_DELIM+".."+DIR_DELIM+"world";
+		if(!fs::PathExists(map_dir) && fs::PathExists(legacy_map_dir)){
+			errorstream<<"Warning: Using legacy world directory \""
+					<<legacy_map_dir<<"\""<<std::endl;
+			map_dir = legacy_map_dir;
+		}
+	}
 	
 	// Run dedicated server if asked to
 	if(cmd_args.getFlag("server"))
@@ -1293,7 +1305,7 @@ int main(int argc, char *argv[])
 		g_timegetter = new SimpleTimeGetter();
 		
 		// Create server
-		Server server(map_dir.c_str(), configpath);
+		Server server(map_dir, configpath, "mesetint");
 		server.start(port);
 		
 		// Run server
diff --git a/src/porting.cpp b/src/porting.cpp
index 0adc955a9..edf950635 100644
--- a/src/porting.cpp
+++ b/src/porting.cpp
@@ -124,12 +124,12 @@ void signal_handler_init(void)
 	Path mangler
 */
 
-std::string path_data = ".." DIR_DELIM "data";
-std::string path_userdata = "..";
+std::string path_share = ".." DIR_DELIM "share";
+std::string path_user = ".." DIR_DELIM "user";
 
 std::string getDataPath(const char *subpath)
 {
-	return path_data + DIR_DELIM + subpath;
+	return path_share + DIR_DELIM + subpath;
 }
 
 void pathRemoveFile(char *path, char delim)
@@ -163,16 +163,13 @@ void initializePaths()
 	char buf[buflen];
 	DWORD len;
 	
-	// Find path of executable and set path_data relative to it
+	// Find path of executable and set path_share relative to it
 	len = GetModuleFileName(GetModuleHandle(NULL), buf, buflen);
 	assert(len < buflen);
 	pathRemoveFile(buf, '\\');
 
-	// Use "./bin/../data"
-	path_data = std::string(buf) + DIR_DELIM ".." DIR_DELIM "data";
-		
-	// Use "./bin/.."
-	path_userdata = std::string(buf) + DIR_DELIM "..";
+	path_share = std::string(buf) + "\\..\\share";
+	path_user = std::string(buf) + "\\..\\user";
 
 	/*
 		Linux
@@ -187,11 +184,8 @@ void initializePaths()
 	
 	pathRemoveFile(buf, '/');
 
-	// Use "./bin/../data"
-	path_data = std::string(buf) + "/../data";
-		
-	// Use "./bin/../"
-	path_userdata = std::string(buf) + "/..";
+	path_share = std::string(buf) + "/../share";
+	path_user = std::string(buf) + "/../user";
 	
 	/*
 		OS X
@@ -201,8 +195,8 @@ void initializePaths()
 	//TODO: Get path of executable. This assumes working directory is bin/
 	dstream<<"WARNING: Relative path not properly supported on OS X and FreeBSD"
 			<<std::endl;
-	path_data = std::string("../data");
-	path_userdata = std::string("..");
+	path_share = std::string("../share");
+	path_user = std::string("../user");
 
 	#endif
 
@@ -224,19 +218,18 @@ void initializePaths()
 	char buf[buflen];
 	DWORD len;
 	
-	// Find path of executable and set path_data relative to it
+	// Find path of executable and set path_share relative to it
 	len = GetModuleFileName(GetModuleHandle(NULL), buf, buflen);
 	assert(len < buflen);
 	pathRemoveFile(buf, '\\');
 	
-	// Use "./bin/../data"
-	path_data = std::string(buf) + DIR_DELIM ".." DIR_DELIM "data";
-	//path_data = std::string(buf) + "/../share/" + PROJECT_NAME;
+	// Use ".\bin\..\share"
+	path_share = std::string(buf) + "\\..\\share";
 		
 	// Use "C:\Documents and Settings\user\Application Data\<PROJECT_NAME>"
 	len = GetEnvironmentVariable("APPDATA", buf, buflen);
 	assert(len < buflen);
-	path_userdata = std::string(buf) + DIR_DELIM + PROJECT_NAME;
+	path_user = std::string(buf) + DIR_DELIM + PROJECT_NAME;
 
 	/*
 		Linux
@@ -251,15 +244,15 @@ void initializePaths()
 	
 	pathRemoveFile(buf, '/');
 
-	path_data = std::string(buf) + "/../share/" + PROJECT_NAME;
-	//path_data = std::string(INSTALL_PREFIX) + "/share/" + PROJECT_NAME;
-	if (!fs::PathExists(path_data)) {
-		dstream<<"WARNING: data path " << path_data << " not found!";
-		path_data = std::string(buf) + "/../data";
-		dstream<<" Trying " << path_data << std::endl;
+	path_share = std::string(buf) + "/../share/" + PROJECT_NAME;
+	//path_share = std::string(INSTALL_PREFIX) + "/share/" + PROJECT_NAME;
+	if (!fs::PathExists(path_share)) {
+		dstream<<"WARNING: data path " << path_share << " not found!";
+		path_share = std::string(buf) + "/../data";
+		dstream<<" Trying " << path_share << std::endl;
 	}
 	
-	path_userdata = std::string(getenv("HOME")) + "/." + PROJECT_NAME;
+	path_user = std::string(getenv("HOME")) + "/." + PROJECT_NAME;
 
 	/*
 		OS X
@@ -276,7 +269,7 @@ void initializePaths()
 	{
 		dstream<<"Bundle resource path: "<<path<<std::endl;
 		//chdir(path);
-		path_data = std::string(path) + "/data";
+		path_share = std::string(path) + "/share";
 	}
 	else
     {
@@ -285,19 +278,19 @@ void initializePaths()
     }
     CFRelease(resources_url);
 	
-	path_userdata = std::string(getenv("HOME")) + "/Library/Application Support/" + PROJECT_NAME;
+	path_user = std::string(getenv("HOME")) + "/Library/Application Support/" + PROJECT_NAME;
 
 	#elif defined(__FreeBSD__)
 
-	path_data = std::string(INSTALL_PREFIX) + "/share/" + PROJECT_NAME;
-	path_userdata = std::string(getenv("HOME")) + "/." + PROJECT_NAME;
+	path_share = std::string(INSTALL_PREFIX) + "/share/" + PROJECT_NAME;
+	path_user = std::string(getenv("HOME")) + "/." + PROJECT_NAME;
     
 	#endif
 
 #endif // RUN_IN_PLACE
 
-	dstream<<"path_data = "<<path_data<<std::endl;
-	dstream<<"path_userdata = "<<path_userdata<<std::endl;
+	dstream<<"path_share = "<<path_share<<std::endl;
+	dstream<<"path_user = "<<path_user<<std::endl;
 }
 
 } //namespace porting
diff --git a/src/porting.h b/src/porting.h
index 4970a8478..05a6ae0c4 100644
--- a/src/porting.h
+++ b/src/porting.h
@@ -59,7 +59,7 @@ bool * signal_handler_killstatus(void);
 /*
 	Path of static data directory.
 */
-extern std::string path_data;
+extern std::string path_share;
 
 /*
 	Directory for storing user data. Examples:
@@ -67,7 +67,7 @@ extern std::string path_data;
 	Linux: "~/.<PROJECT_NAME>"
 	Mac: "~/Library/Application Support/<PROJECT_NAME>"
 */
-extern std::string path_userdata;
+extern std::string path_user;
 
 /*
 	Get full path of stuff in data directory.
@@ -76,7 +76,7 @@ extern std::string path_userdata;
 std::string getDataPath(const char *subpath);
 
 /*
-	Initialize path_data and path_userdata.
+	Initialize path_share and path_user.
 */
 void initializePaths();
 
diff --git a/src/server.cpp b/src/server.cpp
index 899624633..69f655e6a 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -843,13 +843,17 @@ u32 PIChecksum(core::list<PlayerInfo> &l)
 */
 
 Server::Server(
-		std::string mapsavedir,
-		std::string configpath
+		std::string path_world,
+		std::string path_config,
+		std::string gamename
 	):
+	m_gamename(gamename),
+	m_path_world(path_world),
+	m_path_config(path_config),
 	m_env(NULL),
 	m_con(PROTOCOL_ID, 512, CONNECTION_TIMEOUT, this),
-	m_authmanager(mapsavedir+DIR_DELIM+"auth.txt"),
-	m_banmanager(mapsavedir+DIR_DELIM+"ipban.txt"),
+	m_authmanager(path_world+DIR_DELIM+"auth.txt"),
+	m_banmanager(path_world+DIR_DELIM+"ipban.txt"),
 	m_lua(NULL),
 	m_itemdef(createItemDefManager()),
 	m_nodedef(createNodeDefManager()),
@@ -859,12 +863,15 @@ Server::Server(
 	m_time_counter(0),
 	m_time_of_day_send_timer(0),
 	m_uptime(0),
-	m_mapsavedir(mapsavedir),
-	m_configpath(configpath),
 	m_shutdown_requested(false),
 	m_ignore_map_edit_events(false),
 	m_ignore_map_edit_events_peer_id(0)
 {
+	infostream<<"Server created."<<std::endl;
+	infostream<<"- path_world  = "<<path_world<<std::endl;
+	infostream<<"- path_config = "<<path_config<<std::endl;
+	infostream<<"- gamename    = "<<gamename<<std::endl;
+
 	m_liquid_transform_timer = 0.0;
 	m_print_info_timer = 0.0;
 	m_objectdata_timer = 0.0;
@@ -876,27 +883,35 @@ Server::Server(
 	m_step_dtime_mutex.Init();
 	m_step_dtime = 0.0;
 
-	JMutexAutoLock envlock(m_env_mutex);
-	JMutexAutoLock conlock(m_con_mutex);
+	// Figure out some paths
+	m_path_share = porting::path_share + DIR_DELIM + "server";
+	m_path_game = m_path_share + DIR_DELIM + "games" + DIR_DELIM + m_gamename;
 
 	// Path to builtin.lua
-	std::string builtinpath = porting::path_data + DIR_DELIM + "builtin.lua";
+	std::string builtinpath = m_path_share + DIR_DELIM + "builtin.lua";
 
 	// Add default global mod search path
-	m_modspaths.push_front(porting::path_data + DIR_DELIM + "mods");
+	m_modspaths.push_front(m_path_game + DIR_DELIM "mods");
 	// Add world mod search path
-	m_modspaths.push_front(mapsavedir + DIR_DELIM + "worldmods");
-	// Add user mod search path
-	m_modspaths.push_front(porting::path_userdata + DIR_DELIM + "usermods");
+	m_modspaths.push_front(m_path_world + DIR_DELIM + "worldmods");
+	// Add addon mod search path
+	for(std::set<std::string>::const_iterator i = m_path_addons.begin();
+			i != m_path_addons.end(); i++){
+		m_modspaths.push_front((*i) + DIR_DELIM + "mods");
+	}
 	
 	// Print out mod search paths
-	infostream<<"Mod search paths:"<<std::endl;
+	infostream<<"- mod search paths:"<<std::endl;
 	for(core::list<std::string>::Iterator i = m_modspaths.begin();
 			i != m_modspaths.end(); i++){
 		std::string modspath = *i;
 		infostream<<"    "<<modspath<<std::endl;
 	}
 	
+	// Lock environment
+	JMutexAutoLock envlock(m_env_mutex);
+	JMutexAutoLock conlock(m_con_mutex);
+
 	// Initialize scripting
 	
 	infostream<<"Server: Initializing scripting"<<std::endl;
@@ -936,7 +951,7 @@ Server::Server(
 
 	// Initialize Environment
 	
-	m_env = new ServerEnvironment(new ServerMap(mapsavedir, this), m_lua,
+	m_env = new ServerEnvironment(new ServerMap(path_world, this), m_lua,
 			this, this);
 
 	// Give environment reference to scripting api
@@ -946,15 +961,15 @@ Server::Server(
 	m_env->getMap().addEventReceiver(this);
 
 	// If file exists, load environment metadata
-	if(fs::PathExists(m_mapsavedir+DIR_DELIM+"env_meta.txt"))
+	if(fs::PathExists(m_path_world+DIR_DELIM+"env_meta.txt"))
 	{
 		infostream<<"Server: Loading environment metadata"<<std::endl;
-		m_env->loadMeta(m_mapsavedir);
+		m_env->loadMeta(m_path_world);
 	}
 
 	// Load players
 	infostream<<"Server: Loading players"<<std::endl;
-	m_env->deSerializePlayers(m_mapsavedir);
+	m_env->deSerializePlayers(m_path_world);
 
 	/*
 		Add some test ActiveBlockModifiers to environment
@@ -1002,13 +1017,13 @@ Server::~Server()
 			Save players
 		*/
 		infostream<<"Server: Saving players"<<std::endl;
-		m_env->serializePlayers(m_mapsavedir);
+		m_env->serializePlayers(m_path_world);
 
 		/*
 			Save environment metadata
 		*/
 		infostream<<"Server: Saving environment metadata"<<std::endl;
-		m_env->saveMeta(m_mapsavedir);
+		m_env->saveMeta(m_path_world);
 	}
 		
 	/*
@@ -1065,7 +1080,7 @@ void Server::start(unsigned short port)
 	m_thread.setRun(true);
 	m_thread.Start();
 	
-	infostream<<"Server: Started on port "<<port<<std::endl;
+	infostream<<"Server started on port "<<port<<"."<<std::endl;
 }
 
 void Server::stop()
@@ -1803,10 +1818,10 @@ void Server::AsyncRunStep()
 			m_env->getMap().save(MOD_STATE_WRITE_NEEDED);
 
 			// Save players
-			m_env->serializePlayers(m_mapsavedir);
+			m_env->serializePlayers(m_path_world);
 			
 			// Save environment metadata
-			m_env->saveMeta(m_mapsavedir);
+			m_env->saveMeta(m_path_world);
 		}
 	}
 }
@@ -4110,8 +4125,8 @@ void Server::setPlayerPassword(const std::string &name, const std::wstring &pass
 // Saves g_settings to configpath given at initialization
 void Server::saveConfig()
 {
-	if(m_configpath != "")
-		g_settings->updateConfigFile(m_configpath.c_str());
+	if(m_path_config != "")
+		g_settings->updateConfigFile(m_path_config.c_str());
 }
 
 void Server::notifyPlayer(const char *name, const std::wstring msg)
diff --git a/src/server.h b/src/server.h
index 04bd61a87..50cd5b285 100644
--- a/src/server.h
+++ b/src/server.h
@@ -392,6 +392,7 @@ class Server : public con::PeerHandler, public MapEventReceiver,
 	*/
 
 	Server(
+		std::string gamename,
 		std::string mapsavedir,
 		std::string configpath
 	);
@@ -526,7 +527,7 @@ class Server : public con::PeerHandler, public MapEventReceiver,
 
 	const ModSpec* getModSpec(const std::string &modname);
 	
-	std::string getWorldPath(){ return m_mapsavedir; }
+	std::string getWorldPath(){ return m_path_world; }
 
 private:
 
@@ -631,6 +632,21 @@ class Server : public con::PeerHandler, public MapEventReceiver,
 		Variables
 	*/
 	
+	// Game name
+	std::string m_gamename;
+	// World directory
+	std::string m_path_world;
+	// Path to user's configuration file ("" = no configuration file)
+	std::string m_path_config;
+
+	// Equivalent of /usr/share/minetest/server
+	std::string m_path_share;
+	// Equivalent of /usr/share/minetest/server/games/gamename
+	std::string m_path_game;
+	// Equivalent of /usr/share/minetest/server/addons/gamename
+	// and ~/.minetest/server/addons/gamename
+	std::set<std::string> m_path_addons;
+	
 	// Some timers
 	float m_liquid_transform_timer;
 	float m_print_info_timer;
@@ -724,12 +740,6 @@ class Server : public con::PeerHandler, public MapEventReceiver,
 	/*
 		Random stuff
 	*/
-
-	// Map directory
-	std::string m_mapsavedir;
-
-	// Configuration path ("" = no configuration file)
-	std::string m_configpath;
 	
 	// Mod parent directory paths
 	core::list<std::string> m_modspaths;
diff --git a/src/servermain.cpp b/src/servermain.cpp
index 4194faaaa..5eb5162ae 100644
--- a/src/servermain.cpp
+++ b/src/servermain.cpp
@@ -163,17 +163,16 @@ int main(int argc, char *argv[])
 	porting::signal_handler_init();
 	bool &kill = *porting::signal_handler_killstatus();
 	
-	// Initialize porting::path_data and porting::path_userdata
 	porting::initializePaths();
 
 	// Create user data directory
-	fs::CreateDir(porting::path_userdata);
+	fs::CreateDir(porting::path_user);
 	
 	// Initialize debug streams
 #ifdef RUN_IN_PLACE
 	std::string debugfile = DEBUGFILE;
 #else
-	std::string debugfile = porting::path_userdata+DIR_DELIM+DEBUGFILE;
+	std::string debugfile = porting::path_user+DIR_DELIM+DEBUGFILE;
 #endif
 	debugstreams_init(disable_stderr, debugfile.c_str());
 	// Initialize debug stacks
@@ -283,10 +282,12 @@ int main(int argc, char *argv[])
 	else
 	{
 		core::array<std::string> filenames;
-		filenames.push_back(porting::path_userdata +
+		filenames.push_back(porting::path_user +
 				DIR_DELIM + "minetest.conf");
 #ifdef RUN_IN_PLACE
-		filenames.push_back(porting::path_userdata +
+		// Try also from a lower level (to aid having the same configuration
+		// for many RUN_IN_PLACE installs)
+		filenames.push_back(porting::path_user +
 				DIR_DELIM + ".." + DIR_DELIM + "minetest.conf");
 #endif
 
@@ -334,28 +335,31 @@ int main(int argc, char *argv[])
 	// Port?
 	u16 port = 30000;
 	if(cmd_args.exists("port") && cmd_args.getU16("port") != 0)
-	{
 		port = cmd_args.getU16("port");
-	}
 	else if(g_settings->exists("port") && g_settings->getU16("port") != 0)
-	{
 		port = g_settings->getU16("port");
-	}
-	else
-	{
-		dstream<<"Please specify port (in config or on command line)"
-				<<std::endl;
-	}
 	
-	// Figure out path to map
-	std::string map_dir = porting::path_userdata+DIR_DELIM+"world";
+	// Map directory
+	std::string map_dir = porting::path_user + DIR_DELIM + "server" + DIR_DELIM + "worlds" + DIR_DELIM + "world";
 	if(cmd_args.exists("map-dir"))
 		map_dir = cmd_args.get("map-dir");
 	else if(g_settings->exists("map-dir"))
 		map_dir = g_settings->get("map-dir");
+	else{
+		// No map-dir option was specified.
+		// Check if the world is found from the default directory, and if
+		// not, see if the legacy world directory exists.
+		std::string legacy_map_dir = porting::path_user+DIR_DELIM+".."+DIR_DELIM+"world";
+		if(!fs::PathExists(map_dir) && fs::PathExists(legacy_map_dir)){
+			errorstream<<"Warning: Using legacy world directory \""
+					<<legacy_map_dir<<"\""<<std::endl;
+			map_dir = legacy_map_dir;
+		}
+	}
+	
 	
 	// Create server
-	Server server(map_dir.c_str(), configpath);
+	Server server(map_dir, configpath, "mesetint");
 	server.start(port);
 
 	// Run server
diff --git a/src/tile.cpp b/src/tile.cpp
index c39a65511..5ef469944 100644
--- a/src/tile.cpp
+++ b/src/tile.cpp
@@ -132,8 +132,9 @@ std::string getTexturePath(const std::string &filename)
 	*/
 	if(fullpath == "")
 	{
-		std::string rel_path = std::string("clienttextures")+DIR_DELIM+filename;
-		std::string testpath = porting::path_data + DIR_DELIM + rel_path;
+		std::string rel_path = std::string("client")
+				+ DIR_DELIM + "textures" + DIR_DELIM + filename;
+		std::string testpath = porting::path_share + DIR_DELIM + rel_path;
 		// Check all filename extensions. Returns "" if not found.
 		fullpath = getImagePath(testpath);
 	}
@@ -997,7 +998,7 @@ void TextureSource::buildMainAtlas(class IGameDef *gamedef)
 	/*
 		Write image to file so that it can be inspected
 	*/
-	/*std::string atlaspath = porting::path_userdata
+	/*std::string atlaspath = porting::path_user
 			+ DIR_DELIM + "generated_texture_atlas.png";
 	infostream<<"Removing and writing texture atlas for inspection to "
 			<<atlaspath<<std::endl;
-- 
GitLab