|
| 1 | +=================================================================== |
| 2 | +Documentation for "map_content.txt" and "mcl2_map_content.txt": |
| 3 | +=================================================================== |
| 4 | + |
| 5 | + Documentation originally derived from: https://github.com/dgm3333/mcblocks/blob/master/map_content.txt |
| 6 | + Updated by MysticTempest |
| 7 | +-------------------------------------- |
| 8 | + The format of this file is: |
| 9 | +MCID data modname:blockname param2 |
| 10 | +17 0 mcblocks:Oak_Wood 4 //U |
| 11 | + |
| 12 | + or with optional preprocessor commands |
| 13 | +#if MORETREES |
| 14 | + 18 4,12 default:leaves 1 |
| 15 | +#else |
| 16 | + 17 default:tree // TODO: Trunk orientation |
| 17 | +#endif |
| 18 | + |
| 19 | + !!!! WHITESPACE TYPE (space or tab) IS CRITICAL:- !!!! |
| 20 | + |
| 21 | + ({tab})MCID({space}MCData1(,MCData2(...))){tab}MTnodename({space}param2){tab}<==Everything beyond this tab is ignored. |
| 22 | +Tab characters at the beginning of the line are ignored. |
| 23 | +It is critical that tabs and spaces not be mixed up or the line won't be recognised correctly, |
| 24 | +and the parsing may fail to progress beyond that point. |
| 25 | + |
| 26 | + MCID and MCData must be separated by a space/s. |
| 27 | + MCData1,2,etc must be separated by commas but no spaces. |
| 28 | + There must also be no spaces before MCID or between MCData and the following tab. |
| 29 | + MCData must not be >=16, or the remainder of the file will be totally ignored. |
| 30 | + MCID/Data and MTnodename are separated by tabs. |
| 31 | + MTnodename and param2 are separated by a space/s. |
| 32 | +If MCData1 is omitted, the line will match MCIDs with MCData values from 0-15 (and any subsequent entries will be ignored) |
| 33 | + Any data following '//' is parsed and not processed |
| 34 | + preprocessor commands #if {NAME}, #else and #endif are recognised and intervening lines will be parsed |
| 35 | + out or retained dependant on flags in the content.read_content call |
| 36 | + |
| 37 | + Extra reference documentation: |
| 38 | +https://github.com/minetest/minetest/blob/2992b774fe65410a8acd3d06ae82dcd1eb260413/doc/lua_api.txt#L905 |
| 39 | +http://dev.minetest.net/minetest.dir_to_wallmounted |
| 40 | +http://dev.minetest.net/minetest.dir_to_facedir |
| 41 | +=============================================================================== |
| 42 | + Minetest uses these values for Wall-Mounted nodes(eg. torches, vines, etc..). |
| 43 | + Note that for Y values; it equates to which half of an air node it's in. |
| 44 | + Example: |
| 45 | + Ladders attached to the bottom of blocks are in the upper half of an air node. Hence are, 0. |
| 46 | + Ladders attached to the top of blocks are in the lower half of an air node. Hence are, 1. |
| 47 | +param2 direction |
| 48 | +0 //U +Y |
| 49 | +1 //D -Y |
| 50 | +4 //N +Z |
| 51 | +2 //E +x |
| 52 | +5 //S -Z |
| 53 | +3 //W -X |
| 54 | + |
| 55 | + |
| 56 | +-------------------------------------------------------------------------------- |
| 57 | + Minetest uses these values for nodebox face directions(eg. chests, Jack O'Lanterns, etc..). |
| 58 | + Values range from 0-23, and involve multiple vectors/rotations. |
| 59 | + A node's param2 value direction is dependent on a player's face direction. |
| 60 | + (ie. A player faces North, but a Jack O'Lantern faces South towards the player with a param2 value of '0'.) |
| 61 | +Default values for a node; vector pointing upwards: |
| 62 | +param2 direction |
| 63 | +0 //N |
| 64 | +1 //E |
| 65 | +2 //S |
| 66 | +3 //W |
| 67 | + |
| 68 | +------------------------ |
| 69 | +Vectors: |
| 70 | +------------------------ |
| 71 | +Vector points Up; rotation is around the North/South/East/West faces. |
| 72 | +0,1,2,3 |
| 73 | +Vector points North; rotation is around the East/West/Up/Down faces. |
| 74 | +4,5,6,7 |
| 75 | +Vector points South; rotation is around the East/West/Up/Down faces. |
| 76 | +8,9,10,11 |
| 77 | +Vector points East; rotation is around the North/South/Up/Down faces. |
| 78 | +12,13,14,15 |
| 79 | +Vector points West; rotation is around the North/South/Up/Down faces. |
| 80 | +16,17,18,19 |
| 81 | +Vector points Down; rotation is around the North/South/East/West faces. |
| 82 | +20,21,22,23 |
| 83 | +------------------------ |
| 84 | +Faces: |
| 85 | +------------------------ |
| 86 | +Player faces Down, node(eg. Jack O'Lantern) faces Upwards. |
| 87 | +0 degree: 4 |
| 88 | +90 degree: 13 |
| 89 | +180 degree: 10 |
| 90 | +270 degree: 19 |
| 91 | + |
| 92 | +Player faces Up, Jack O'Lantern faces Downwards. |
| 93 | +0 degree: 8 |
| 94 | +90 degree: 15 |
| 95 | +180 degree: 6 |
| 96 | +270 degree: 17 |
| 97 | + |
| 98 | +Player faces North, Jack O'Lantern faces South. |
| 99 | +0 degree: 0 |
| 100 | +90 degree: 12 |
| 101 | +180 degree: 20 |
| 102 | +270 degree: 16 |
| 103 | + |
| 104 | +Player faces East, Jack O'Lantern faces West. |
| 105 | +0 degree: 1 |
| 106 | +90 degree: 9 |
| 107 | +180 degree: 23 |
| 108 | +270 degree: 5 |
| 109 | + |
| 110 | +Player faces South, Jack O'Lantern faces North. |
| 111 | +0 degree: 2 |
| 112 | +90 degree: 18 |
| 113 | +180 degree: 22 |
| 114 | +270 degree: 14 |
| 115 | + |
| 116 | +Player faces West, Jack O'Lantern faces East. |
| 117 | +0 degree: 3 |
| 118 | +90 degree: 7 |
| 119 | +180 degree: 21 |
| 120 | +270 degree: 11 |
| 121 | + |
| 122 | + |
| 123 | +-------------------------------------------------------------------------------- |
| 124 | +Lastly, it appears some Minecraft Blockstates can be converted to data values. |
| 125 | +At least blockstates for axes(eg. Purpur Pillar, Bone Block, etc..). |
| 126 | +Example: |
| 127 | +Purpur pillar; default & on its side facing N,E,S,W; blockstate translation for X,Y,Z axes. |
| 128 | +202 0 mcl_end:purpur_pillar //Default, vector pointing upward, with a MC blockstate for Y |
| 129 | +202 4 mcl_end:purpur_pillar 12 //East,West pointing vectors with a MC blockstate for X |
| 130 | +202 8 mcl_end:purpur_pillar 6 //North,South pointing vectors with a MC blockstate for Z |
| 131 | + |
| 132 | +===================================================================================== |
0 commit comments