5e3578ae00
This prevents a crash when running in map-maker mode, as base.lua (which is unnecessarily dofile'd) contains code which re-defines `ctf.get_spawn` |
||
---|---|---|
.. | ||
maps@a793a9b73d | ||
textures | ||
barrier.lua | ||
base.lua | ||
chest.lua | ||
emerge.lua | ||
give_initial_stuff.lua | ||
init.lua | ||
map_maker.lua | ||
maps_catalog.lua | ||
mod.conf | ||
nodes.lua | ||
README.md | ||
schem_map.lua |
CTF Map
This mod handles creating and loading maps.
Attributions
- Indestructible nodes adapted from various mods in
minetest_game
.
Creating a new map
1. Dependencies
- Minetest 0.4.16 or later.
- Mods
- ctf_map (by copying the folder from this game to
minetest/mods
) - worldedit and worldedit_commands.
- ctf_map (by copying the folder from this game to
2. Find an area
- Can use Minetest Game and any mapgen.
- It must be a cube, and the barrier will be in the exact center.
- It should be around 230x230 in surface area, but this can vary.
- Feel free to modify the area to your needs.
3. Select the area
There are multiple ways do this, this is the simplist in most cases.
- If you haven't modified the map at all, do the following to speed up barrier placement:
- Stop Minetest.
- Open up the world's world.mt
- Set backend to "dummy".
- Save.
- Using worldedit, select the area.
- Type /gui, and click "From WE" then "To WE".
- Check that the center location is the right place for the barrier to go.
- Check that the bounds extend far enough.
4. Place barriers
- Set the middle barrier direction. The barrier is a plane defined by a co-ordinate = 0. If the barrier is X=0, then it will placed with every node of the barrier having X=0. If the barrier is Z=0, then it will placed with every node of the barrier having Z=0.
- Click "place barrier". Note that this command does not have an undo.
5. Meta data
- Set the meta data
6. Export
- Click export, and wait until completion.
- Copy the two files from
worlddir/schems/
toctf_map/maps/
. - Rename the files so the two prefixed numbers are consistent to existing maps.
- Profit!
Documentation
Map meta
Each map's metadata is stored in an accompanying .conf file containing the following data:
name
: Name of map.author
: Author of the map.hint
: [Optional] Helpful hint or tip for unique maps, to help players understand the map.rotation
: Rotation of the schem. [x
|z
]schematic
: Name of the map's schematic.initial_stuff
: [Optional] Comma-separated list of itemstacks to be given to the player on join and on respawn.treasures
: [Optional] List of treasures to be registered for the map, in a serialized format. Refer to thetreasures
sub-section for more details.r
: Radius of the map.h
: Height of the map.team.i
: Name of teami
.team.i.color
: Color of teami
.team.i.pos
: Position of teami
's flag, relative to center of schem.chests.i.from
,chests.i.to
: [Optional] Positions of diagonal corners of custom chest zonei
, relative to the center of the schem.chests.i.n
: [Optional] Number of chests to place in custom chest zonei
.
treasures
treasures
is a list of treasures to be registered for this map in serialized format.
An example treasures
value that registers steel pick, shotgun, and grenade:
treasures = default:pick_steel,0.5,5,1,10;shooter:shotgun,0.04,2,1;shooter:grenade,0.08,2,1
(See here to understand the magic numbers)
Indestructible nodes
-
ctf_map
provides indestructible nodes for most nodes from default, and all nodes from stairs. -
All indestructible nodes have the same item name with the mod prefix being
ctf_map:
instead of their original prefixes (e.g.default:stone
->ctf_map:stone
andstairs:stair_stone
->ctf_map:stair_stone
) with the exception of wool, whose indestructible nodes have slightly different names from the original node names -ctf_map:wool_<color>
. This is because the original nomenclature becomes meaningless if the modname prefix is changed.