2014-09-19 19:38:20 +03:00
|
|
|
Buildat - A minecraftlike with vast extendability.
|
|
|
|
==================================================
|
|
|
|
|
|
|
|
Buildat doesn't actually even implement a minecraftlike by default. It just
|
|
|
|
provides a lot of useful machinery for doing just that, with immense modding
|
|
|
|
capabilities.
|
|
|
|
|
2014-09-22 14:43:48 +03:00
|
|
|
It wraps a safe subset of Urho3D's Lua API in a whitelisting Lua sandbox on
|
2014-09-19 20:57:00 +03:00
|
|
|
the client side and runs runtime-compiled C++ modules on the server side.
|
|
|
|
|
2014-09-19 19:38:20 +03:00
|
|
|
Go ahead and write some modules and extensions, maybe the minecraftlike will
|
|
|
|
exist in the near future!
|
|
|
|
|
2014-09-20 19:05:30 +03:00
|
|
|
Further reading: design.txt, conventions.txt
|
|
|
|
|
2014-09-19 19:38:20 +03:00
|
|
|
Buildat Linux How-To
|
|
|
|
====================
|
|
|
|
|
2014-09-22 14:43:48 +03:00
|
|
|
Install dependencies
|
|
|
|
----------------------
|
2014-09-19 19:38:20 +03:00
|
|
|
|
2014-09-24 01:39:40 +03:00
|
|
|
$ # Dependencies for Urho3D
|
|
|
|
$ sudo apt-get install libx11-dev libxrandr-dev libasound2-dev
|
|
|
|
$ sudo yum install libX11-devel libXrandr-devel alsa-lib-devel
|
2014-09-19 19:38:20 +03:00
|
|
|
|
2014-09-22 14:43:48 +03:00
|
|
|
Get and build Urho3D
|
|
|
|
----------------------
|
2014-09-19 19:38:20 +03:00
|
|
|
|
2014-09-24 01:39:40 +03:00
|
|
|
$ git clone https://github.com/urho3d/Urho3D.git
|
|
|
|
$ cd Urho3D
|
2014-09-24 02:13:19 +03:00
|
|
|
$ ./cmake_gcc.sh -DURHO3D_LUA=true -DURHO3D_SAFE_LUA=true # Add -DURHO3D_64BIT=true on 64-bit systems
|
2014-09-24 01:39:40 +03:00
|
|
|
$ cd Build
|
|
|
|
$ make -j4
|
2014-09-22 16:27:02 +03:00
|
|
|
|
2014-09-24 10:58:46 +03:00
|
|
|
`-DURHO3D_SAFE_LUA=true` helps debugging issues in Lua.
|
|
|
|
|
2014-09-22 16:27:02 +03:00
|
|
|
Take note whether you build a 32 or a 64 bit version and use the same option in
|
|
|
|
Buildat's CMake configuration.
|
2014-09-20 14:46:43 +03:00
|
|
|
|
2014-09-19 19:38:20 +03:00
|
|
|
Build Buildat
|
|
|
|
---------------
|
|
|
|
|
2014-09-22 14:43:48 +03:00
|
|
|
$ export URHO3D_HOME=/path/to/urho3d
|
|
|
|
$ cd $wherever_buildat_is
|
2014-09-19 19:38:20 +03:00
|
|
|
$ mkdir Build # Capital B is a good idea so it stays out of the way in tabcomplete
|
|
|
|
$ cd Build
|
2014-09-22 16:27:02 +03:00
|
|
|
$ cmake .. -DCMAKE_BUILD_TYPE=Debug # Add -DURHO3D_64BIT=true on 64-bit systems
|
2014-09-19 19:38:20 +03:00
|
|
|
$ make -j4
|
|
|
|
|
2014-09-21 13:12:48 +03:00
|
|
|
You can use -DBUILD_SERVER=false or -DBUILD_CLIENT=false if you don't need the
|
2014-09-22 14:43:48 +03:00
|
|
|
server or the client, respectively.
|
2014-09-21 13:12:48 +03:00
|
|
|
|
2014-09-19 19:38:20 +03:00
|
|
|
Run Buildat
|
|
|
|
-------------
|
|
|
|
|
|
|
|
Terminal 1:
|
|
|
|
|
|
|
|
$ $wherever_buildat_is/Build
|
|
|
|
$ bin/buildat_server -m ../test/testmodules
|
|
|
|
|
|
|
|
Terminal 2:
|
|
|
|
|
|
|
|
$ $wherever_buildat_is/Build
|
2014-09-24 01:22:48 +03:00
|
|
|
$ bin/buildat_client -s localhost -U $URHO3D_HOME
|
2014-09-19 19:38:20 +03:00
|
|
|
|
|
|
|
Modify something and see stuff happen
|
|
|
|
---------------------------------------
|
|
|
|
|
|
|
|
Edit something and then restart the client (CTRL+C in terminal 2):
|
|
|
|
|
|
|
|
$ cd $wherever_buildat_is
|
2014-09-20 01:37:37 +03:00
|
|
|
$ vim test/testmodules/minigame/client_lua/init.lua
|
|
|
|
$ vim test/testmodules/minigame/minigame.cppp
|
2014-09-19 19:38:20 +03:00
|
|
|
$ vim builtin/network/network.cpp
|
|
|
|
|
2014-09-20 03:20:53 +03:00
|
|
|
Buildat Windows How-To
|
|
|
|
======================
|
|
|
|
|
|
|
|
Umm... well, you need to first port some stuff. Try building it and see what
|
|
|
|
happens. Then fix it and make a pull request.
|
|
|
|
|
2014-09-20 10:04:28 +03:00
|
|
|
You probably want to use MinGW or Clang in order to bundle the compiler with the
|
|
|
|
end result.
|
|
|
|
|