a data collecting environment for project DISCUTER
- Malmo Installation (SERVER)
- Using Malmo Builder (SERVER)
- Using Malmo Builder (remote player)
- Adding ability to fly in the mission
How to install on ubuntu 18.04.6 LTS for other ways to install look at https://github.com/Microsoft/malmo/
-
Install the latest version of Malmo from https://github.com/Microsoft/malmo/releases
-
Install dependencies available from the standard repositories:
sudo apt-get install libboost-all-dev libpython3.5 openjdk-8-jdk ffmpeg python-tk python-imaging-tk
sudo update-ca-certificates
pip install Pillownotice: if you have more than one version of java then you must select openjdk version "1.8.0_362" or launching will fail
### List all java versions:
update-java-alternatives --list
### Set java version as default (needs root permissions):
sudo update-java-alternatives --set /path/to/java/version
### where /path/to/java/version is one of those listed by the previous command (e.g. /usr/lib/jvm/java-1.8.0-openjdk-amd64).-
export malmo schemas Add
export MALMO_XSD_PATH=~/MalmoPlatform/Schemas(or your Schemas location) to your~/.bashrcand thensource ~/.bashrc -
launch
cd Minecraft
./launchClient.sh notice: if you have a problem with opengl then you may try:
- restarting your device
- clean gradle
- Launch an agent: Running a Python agent:
cd Python_Examples
python3 run_mission.py-
clone the project in the MalmoPlatform repository
-
navigate to Malmo_Builder
-
run malmo_builder in the terminal
In config.json file change the number of distant clients in the agents section and change the IP address of the server if needed
0 : for two local players
1 : for one local player and one remote player (same LAN network)
2 : for two remote players (same LAN network)
```sh
"agents": {
"num_distant_agents": 1
}./malmo_builder_run.sh num_of_clientsin which num_of_clients is the number of clients you want to run
1 (default) for the server
2 for the server and one local player
3 for the server and two local players
- run one client
cd ../Minecraft
./launchClient.sh- run the python script
python3 main.py- run two clients
cd ../Minecraft
./launchClient.sh- We need to make the port 10000 our last opened window so we can easily find our log file
To do so change the last opened client which will be at 10001 to port 10000 and the first one to 10002 using GUI
- First change the client 10000 to 10001 on minecraft GUI (malmo wont like it but will change it later)
In the Minecraft window of port 10000:
ESC > mods > malmo > settings > port >change 0 to 10001 > done - Then change the client 10002 to 10000 on minecraft GUI
In the Minecraft window of port 10001:
ESC > mods > malmo > settings > port > change 0 to 10000 > done - now to solve malmo problem with first change, 10001 to 0
In the Minecraft window of step 1:
ESC > mods > malmo > settings > port > 0 > done
- run the main python file in the malmo_builder directory
python3 main.pynotice: if for some reason malmo is not running after launching the client you can try resetting Minecraft folder
- install forge 1.11.2 of minecraft launcher
- copy the malmo jar file (can be found in the
Modfolder of Malmo Releases) to the.minecraft/mods/(create the foldermodsif does not exist) - launch Minecraft forge 1.11.2 and you should be seeing the LAN connection of the running server in Multiplayer
- install minecraft mod simply hax (https://www.curseforge.com/minecraft/mc-mods/simply-hax/files?version=1.11.2)
- add the mod to the
MalmoPlatform/Minecraft/run/modsfolder in the server - add the mod to the
.minecraft/mods/(create the foldermodsif does not exist) in the remote player device - When you run the mission you should be able to fly by pressing the
spacekey twice and then pressingspaceandshiftto go up and down
notice: if you have a problem with launching minecraft forge 1.11.2 you should consider restarting your device