Jump to content

A16 to A17 conversion question.


Recommended Posts

I apologize for the complete noobishness of this inquiry, but I have 0 knowledge of how the back end of all this works.


Here is the scenario:


I built several structures on a previous server in A16.

I saved the structures using an export tool and have the files.

Is there a a simple way to convert these structures to A17? (program I can install, open the prefab and hit a convert button.)


I have been reading forum posts and beginner prefab guides and it is all greek to me. I am only doing this because the structures (ex. paintball arena) were large builds that my community of players really enjoyed and miss.


Again, any leads would be appreciated (where to download the right tools). I am definitely in over my head, just trying to create the best player experience for people on my server.


Again, thank you for this and all the hard work all you coders and modders do to make this game so feature rich for us players.

Link to comment
Share on other sites

  • 2 weeks later...

There is a built in function for this already.


The file is called blocksA16PrefabConversion.xml


Now if you have custom blocks, make sure to add that to the end of the file so that it can convert those as well. I ran this on about 55 of my prefabs and works great!! You may need to retweek some of the prefabs if they use custom blocks, or have grass as those blocks have changed.


The instructions are in the file itself and posted below.



This file is the conversion table for loading A16 prefabs into the A17 editor.

An A16 prefab cannot be loaded normally because it has no .blocks.nim file.

If you look in there you'll see that this is the table that matches the numeric block ID used in the prefab... to a block NAME.

So every A17 prefab is saved essentially with block names and we are finally independent of numeric IDs.

As a result prefabs can be shared far more easily... provided the user is smart enough to have required

block mods installed first so that these block names are present.


1) If you are converting a prefab REQUIRING CUSTOM BLOCKS then you need to load

YOUR modded A16 blocks.xml first:

In the game's console execute:

prefabupdater loadxml data/config/myBlocksA16.xml

(needed only once, case sensitive)

2) REGARDLESS OF 1) you have to be ingame (local / single player) and

load the A16 vanilla block conversion table:

(that means do both, not one or the other!)

prefabupdater loadxml data/config/blocksA16PrefabConversion.xml

(needed only once, case sensitive)

3) Now ingame (local / single player) you can convert an A16 prefab with:

prefabupdater createmapping {insert file name from the prefabs folder}

as in

prefabupdater createmapping apartment_brick_6_flr

The file name accepts wildcards (*) so

prefabupdater createmapping *

will map ALL prefabs in the folder.

Now the prefab should load as an A17 prefab.

What could go wrong?

If you get an error saying that a certain block is missing then

your modded blocks.xml had custom blocks that DO NOT EXIST in the game's current config/blocks.xml.

Or YOUR conversion table (myBlocksA16.xml) used a block name that is not an exact match with the A17 block name.

The createmapping command does not judge. If you tell it to write a block name into the .blocks.nim file, it will.

The prefab cannot load until that block actually exists in the A17 game.


Link to comment
Share on other sites


This topic is now archived and is closed to further replies.

  • Create New...