Page 1 of 1

Server minimal

PostPosted: Tue Apr 16, 2013 22:35
by 12Me22
Can anyone tell me how you specify the world that gets used when you create your own server? Mine ended up being minimal and I would prefer it to be common. Thanks.

PostPosted: Tue Apr 16, 2013 22:55
by VanessaE
That's what --worldname (to specify the actual world) and --gameid (to specify which type of game to use) are for, though I don't know if you can refer to "common" as a game in that regard.

PostPosted: Tue Apr 16, 2013 22:59
by 12Me22
I start minetest with this and it appears to be running gameid minimal:

sudo nohup minetest --server --config /home/12Me22/.minetest/minetest.conf



Should I try sudo nohup minetest --server --common --config /home/12Me22/.minetest/minetest.conf

PostPosted: Tue Apr 16, 2013 23:12
by VanessaE
No, you have to specify it like so:

Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
minetest --server --config  /home/12Me22/.minetest/minetest.conf  --gameid xxxx --worldname yyyy


(or minetestserver instead of 'minetest --server')

Where xxxx and yyyy are your game and world ID's, respectively. In my server, the command is, in part:

Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
/usr/local/bin/minetestserver --config /home/minetest/.minetest/minetest-server.conf --world /home/minetest/.minetest/worlds/VanessaE_World --gameid vanessae_game

PostPosted: Tue Apr 16, 2013 23:20
by 12Me22
So the world and gamed get created by running that or do you have to create and populate some folder structure on the server first?

Mine is running world = minetest and gameid= minimal

I think my map is missing elements because of the minimal designation. From what I have read, once the world is created you can't add in those missing elements without creating a new world.

I guess at this point I am not sure how I ended up with a minimal gameid and if I am missing elements because of it.

PostPosted: Sat Apr 20, 2013 03:15
by dslynx
12Me22 wrote:I start minetest with this and it appears to be running gameid minimal:

sudo nohup minetest --server --config /home/12Me22/.minetest/minetest.conf



Should I try sudo nohup minetest --server --common --config /home/12Me22/.minetest/minetest.conf


You don't need to be root to run a minetest server.. And it's actually bad practice to run things as root that don't need to be root. It opens a huge security hole.

Anyway, guessing how you setup your server, do you have "common" or "minetest_game" in your "games" folder?

PostPosted: Sun Apr 21, 2013 17:01
by 12Me22
dslynx wrote:
12Me22 wrote:I start minetest with this and it appears to be running gameid minimal:

sudo nohup minetest --server --config /home/12Me22/.minetest/minetest.conf



Should I try sudo nohup minetest --server --common --config /home/12Me22/.minetest/minetest.conf


You don't need to be root to run a minetest server.. And it's actually bad practice to run things as root that don't need to be root. It opens a huge security hole.

Anyway, guessing how you setup your server, do you have "common" or "minetest_game" in your "games" folder?



If i do not run with sudo, i get this:

Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
***@12Me21:~$ minetest --server --config /home/***/.minetest/minetest.conf  Automatically selecting world at [/home/***/.minetest/worlds/world]
[OK] Mesecons
09:57:08: ACTION[main]: [MOD]craft_guide -- loaded from /home/***/.minetest/mods/minetest/craft_guide
09:57:08: ACTION[main]:         .__               __                   __
09:57:08: ACTION[main]:   _____ |__| ____   _____/  |_  ____   _______/  |_
09:57:08: ACTION[main]:  /     \|  |/    \_/ __ \   __\/ __ \ /  ___/\   __\
09:57:08: ACTION[main]: |  Y Y  \  |   |  \  ___/|  | \  ___/ \___ \  |  |
09:57:08: ACTION[main]: |__|_|  /__|___|  /\___  >__|  \___  >____  > |__|
09:57:08: ACTION[main]:       \/        \/     \/          \/     \/
09:57:08: ACTION[main]: World at [/home/***/.minetest/worlds/world]
09:57:08: ACTION[main]: Server for gameid="minetest" listening on port 30000.
creative inventory size: 230
09:57:18: ACTION[ServerThread]: *** joins game. List of players: ***
09:57:24: ERROR[ServerThread]: ERROR: An unhandled exception occurred: Cannot open chunk metadata

In thread 7f0055591700:
/build/buildd/minetestc55-0.4.6/src/server.cpp:104: virtual void* ServerThread::Thread(): Assertion '0' failed.
Debug stacks:
DEBUG STACK FOR THREAD 7f0054d90700:
#0  virtual void* EmergeThread::Thread()
(Leftover data: #1  MapBlock* ServerMap::loadBlock(v3s16))
(Leftover data: #2  void ServerMap::loadBlock(std::string*, v3s16, MapSector*, bool))
(Leftover data: #3  void ItemStack::deSerialize(std::istream&, IItemDefManager*))
DEBUG STACK FOR THREAD 7f0055591700:
#0  virtual void* ServerThread::Thread()
(Leftover data: #1  void Server::AsyncRunStep())
(Leftover data: #2  virtual void ServerMap::save(ModifiedState))
(Leftover data: #3  void ServerMap::saveMapMeta())
(Leftover data: #4  void ItemStack::serialize(std::ostream&) const)
(Leftover data: #5  void ItemStack::deSerialize(std::istream&, IItemDefManager*))
DEBUG STACK FOR THREAD 7f0056466780:
#0  int main(int, char**)
#1  Dedicated server branch
#2  void dedicated_server_loop(Server&, bool&)
(Leftover data: #3  void Server::step(float))
Aborted
***@12Me21:~$


And yes, I have 3 folders in \games
common
minetest_game
minimal

PostPosted: Sun Apr 21, 2013 17:11
by 12Me21
12Me22 wrote:Can anyone tell me how you specify the world that gets used when you create your own server? Mine ended up being minimal and I would prefer it to be common. Thanks.

common is not a game, common is just the mods that the other games all have (except minimal, i think)

P.S. your username is VERY uncreative.

PostPosted: Sun Apr 21, 2013 18:36
by dslynx
Hmm, I don't know how you compiled it but this reference is probably owned by root:

/build/buildd/minetestc55-0.4.6/src/server.cpp:104: virtual void* ServerThread::Thread(): Assertion '0' failed.

I followed the README.txt file and didn't have any problems at all on Mint 13. Everything worked fine with default settings running under my user account. The only thing that needed root was installing the dependencies.

So, to recap:

download minetest, common, and minetest_game, extract into appropriate directories, run 'cmake . -DRUN_IN_PLACE=1' and 'make -j2'.

Then just run bin/minetestserver and you should be set.

PostPosted: Sun Apr 21, 2013 19:38
by 12Me22
dslynx wrote:Hmm, I don't know how you compiled it but this reference is probably owned by root:

/build/buildd/minetestc55-0.4.6/src/server.cpp:104: virtual void* ServerThread::Thread(): Assertion '0' failed.

I followed the README.txt file and didn't have any problems at all on Mint 13. Everything worked fine with default settings running under my user account. The only thing that needed root was installing the dependencies.

So, to recap:

download minetest, common, and minetest_game, extract into appropriate directories, run 'cmake . -DRUN_IN_PLACE=1' and 'make -j2'.

Then just run bin/minetestserver and you should be set.


Here is what I did
Ubuntu 12.04 server

logged in as Me:
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:minetestdevs/stable
sudo apt-get update
sudo apt-get install minetestc55
sudo nohup minetest --server

If I wanted to try the method you used, is it possible to move my current world and user to it?

PostPosted: Mon Apr 22, 2013 15:25
by dslynx
NOTE: This post is MUCH more ugly than I intended.. but this forum is setup to only allow one link.. so.. yeah..

Sorry for the delay. Yes, you can move the world folder to the new build without issues. Here are the steps for building it on Precise (12.04):

So, from the beginning, so you can do it again for the next release.

1) Go to the main site and select Downloads

2) Under Linux, select Ubuntu/Mint

3) Now, this part may seem confusing, but they are named after the release of Ubuntu. So, in your case, 12.04 is called "Precise Pangolin" so you will want to click on the "~precise1" version.

4) Download the .tar.gz : https://code.launchpad.net/~minetestdevs/+archive/stable/+files/minetestc55_0.4.6-0ppa1%7Eprecise1.tar.gz

Now, this is the only step you need to use sudo for:

5) sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng12-dev libjpeg8-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev

This will install the development environment needed to compile the game.

6) tar -xvzf minetestc55_0.4.6-0ppa1%7Eprecise1.tar.gz

This step is optional, but how I have mine. This renames the folder to minetest in your home directory:

7) mv recipe-0.4.6-0ppa1 ~/minetest

8) cd ~/minetest

Taken from the README.txt with a minor edit (removed cd.. and cd games):

8A)
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
Download common (needed for minetest_game and some others)
$ cd games/
$ wget [b]LINK FROM README.txt[/b]
$ tar xf common.tar.gz
$ mv minetest-common-* common

Download minetest_game (otherwise only the "Minimal development test" game is available)

$ wget [b]LINK FROM README.txt[/b]
$ tar xf minetest_game.tar.gz
$ mv minetest-minetest_game-* minetest_game
$ cd ..

9) cmake . -DRUN_IN_PLACE=1

10) make -j2

Once that is complete, you can do:

11) bin/minetest

and you should be all set. If you need additional help, I can meet you on IRC to walk you through it.

PostPosted: Fri May 03, 2013 21:40
by 12Me22
Thx. I am going to rebuild this weekend. Based on how I previously installed, how should I uninstall my current minetest? Is it as simple as deleting the .minetest and /usr/share/minetest folders?

PostPosted: Fri May 03, 2013 22:06
by dslynx
Yes, but if you plan to run it under a user account, I'd suggest /home/account/minetest. That way you don't have to worry about permission issues, as the account it is running under will have full rights to it's home directory.

PostPosted: Sat May 04, 2013 13:24
by Traxie21
If you're in a root-owned directory, you have to sudo all commands that modify it.

PostPosted: Sat May 04, 2013 13:29
by 12Me22
my bad
i was logged in as root when i made the directory

so i went back a few steps and made the directory under my user
now at step 7
i am not getting the recipe extracted to ~/minetest

PostPosted: Sat May 04, 2013 13:34
by 12Me22
ok move the files from recipe to ~/minetest and completed the other steps

PostPosted: Sat May 04, 2013 13:44
by 12Me22
appears to be done. My old server had this: /home/12Me22/.minetest/worlds/world
Where in the new folder structure do I place the /worlds folder?

there is not currently a worlds folder in my new ~/mintest directory

PostPosted: Sat May 04, 2013 14:43
by 12Me22
OK, so i created a /worlds folder and i am able to access my old world!

now i need to get my mods working
i moved my old mods folders to /home/12Me22/minetest/mods/minetest/ but they are not working

PostPosted: Sat May 04, 2013 15:11
by 12Me22
OK, i got the mods to work by placing them here:
/home/12Me22/minetest/worlds/world/worldmods