Modding Key Terms
This page is a list of key terms that are used often in modding pages. This page will be edited as more values appear.
Contents
Collection Types
Blob
In terms of Staxel, "blob" is a generic term for anything that contains a number of properties. Blobs are always contained between { }
. Every single new file you create is actually known as a blob, as each file will always start with {
and end with }
otherwise it would not work.
In terms of what this means when modding. A blob is just a collection of properties that can be edited. Whenever this term comes up, just know that it will make use of { }
.
List
When writing files, you'll occasionally be asked to make a list of items. What this means is that you can specify multiple things that will generally all act the same. This comes up most times whenever a file can do multiple things. Files such as Treasures make use of this type heavily.
When making lists you will need to do the following;
"propertyName" : [ item1, item2 ]
All lists start with a property name as usual. This is followed up by the opening square bracket. Square brackets always denote a list. With that you can now add items. In a lot of cases this will be #Strings that are seperated by commas. Each comma is needed to specify a new item will follow afterwards. (Though it is fine to have a final comma with no item.) After all of this, you can follow up with the closing square bracket to finish the list off.
An example of this would be;
"particles" : [ "staxel.particle.dirt.Dirt", "staxel.particle.dirt.Dirt2" ],
Variable Types
String
A string is anything that is a collection of letters. Strings can take any valid string characters, with only a couple exceptions. A string will always be encased in quotation marks. An example is provided below;
"propertyName" : "This is a string. It allows anything that is normal text. Even, The quick brown fox jumped over the lazy dog."
Bool
A Bool only has two values. These values are "True" or "False". These values, when used, are often used as toggles for certain features. When placed in a file they will look like;
"thisIsATrueProperty" : true, "thisIsAFalseProperty" : false
As a note both True and true work, the same goes with False and false.
Integer
An integer is a number that has no decimal part, otherwise known as a whole number. These will look like the following;
"propertyName" : 1,
Note that when a integer is specified, you cannot have decimal numbers. This is not the same in reverse (e.g. An integer can be used in #Float)
Float
An float is a number that has decimal part, otherwise known as a decimal number. These will look like the following;
"propertyName" : 1.5,
Note that there is a maximum precision to a float, which is roughly 7 digits of precision. Also note that convention means that integer numbers will still have .0
afterwards to make sure that it is clear.
For more information on what a Float actually is, look up scientific notation. Floats are the computer equivalent to scientific notation.
Double
An double is exactly the same as a #Float but with one change. A Double has about 16 digits of precision, which is much more than float's roughly 7 digits of precision.
Vector 3
A Vector 3, is a mathematical term for an object that has 3 numbers. Vectors are used most often when specifying a location in Staxel's world. All Vector 3's come in the following form;
"propertyName" : { "x": 0.0, "y": 0.0, "z": 0.0 }
Note that the numbers can change depending on the type. They can be Integers, Floats or Doubles. Each of these are just slightly different from each other.