Editing the Name Map - APlusMalware/minecraft-to-fortresscraft GitHub Wiki

Minecraft Names to FortressCraft Names

The name map is contained within the file "MCNamesToFCENames.xml". Mappings are stored in XML format.

The root node must be "Blocks". Every child node of this node must be "Block". An example is shown below:

<Block>
  <MCName>Grass</MCName>
  <MCValue>
    <Value>-1</Value>
    <FCEName>Grass</FCEName>
    <FCEData>0</FCEData>
  </MCValue>
</Block>

The MCName is the Minecraft name of the block. Alternatively you can use MCId to specify the block ID instead, in case the name isn't recognized. Every MCValue node represents one or more Minecraft data values. For example, a value of -1 will indicate that all of these blocks should be converted into the same FortressCraft block regardless of data. A value of 0 however will convert only those Minecraft blocks that have the data value of 0. An example mapping for Minecraft colored wool into FortressCraft paintable canvas is shown below:

<Block>
  <MCName>Wool</MCName>
  <MCValue>
    <Value>0</Value>
    <FCEName>White Canvas</FCEName>
    <FCEData>DDD</FCEData>
  </MCValue>
  <MCValue>
    <Value>1</Value>
    <FCEName>White Canvas</FCEName>
    <FCEData>D73</FCEData>
  </MCValue>
</Block>

"FCEName" is a FortressCraft Evolved cube name found in TerrainData.xml. FCEData is a 1-4 digit hex value accompanying a block as it's data value. Most cubes don't use data, however cubes considered paintable or colorised use the last 3 digits to determine their RGB color. Each color channel uses 4 bits, allowing 16 different strengths for each channel, or 4096 colors total. Pure red would be F00, green 0F0, and blue 00F.

It is possible to assign multiple data values of a Minecraft block to the same cube in FortressCraft by using multiple "Value" nodes. Using a Minecraft Leaves block as an example:

<Block>
  <MCName>Leaves</MCName>
  <MCValue>
    <Value>3</Value>
    <Value>7</Value>
    <Value>11</Value>
    <Value>15</Value>
    <FCEName>Rainforest</FCEName>
    <FCEData>391</FCEData>
  </MCValue>
</Block>

Each Minecraft value represents different states of a jungle leaf, states that don't matter in FortressCraft. We are therefore able to map all four variations of leaves to a single FortressCraft Rainforest cube.

Orientation

Some blocks in FortressCraft have orientation consisting of the direction the block is pointing, i.e. (N)orth, (S)outh, (E)ast, (W)est, (A)bove, or (B)elow, and the rotation of the block around that axis. For example, the following mapping orients all Minecraft signs to FortressCraft signs pointing N (north) rotated around the axis 0 * 90 = 0 degrees so that the sign is upright and not sideways or upside down.

<Block>
  <MCName>Wall Sign</MCName>
  <MCValue>
    <Value>5</Value>
    <FCEName>Sign</FCEName>
    <FCEData>0</FCEData>
   <Orientation>NO</Orientation>
  </MCValue>
</Block>

Detail Blocks

You can of course map to detail blocks as well, with the ability to orient them too. This is handy for blocks that aren't in FortressCraft, such as stairs, but are needed for aesthetic reasons. Since detail blocks don't have names, we instead must use their type ids as shown below:

<Block>
  <MCName>Wooden Stairs</MCName>
  <MCValue>
    <Value>1</Value>
    <FCEId>32512</FCEId>
    <FCEData>0</FCEData>
    <Orientation>A3</Orientation>
  </MCValue>
</Block>

This will convert all wooden stairs to the very first detail block (ID numbers start at 32512) which can then be created in game. By using detail blocks, practically every Minecraft block can be converted into a similar looking FortressCraft equivalent.

⚠️ **GitHub.com Fallback** ⚠️