This tutorial is set by the author to use the CC By-NC-SA protocol.
Gendustry (gene industry) custom bee tutorial
As the expansion module of Forestry (forestry), the biggest difference between other extension modules (such as Binnie's Mods) is its custom bee and custom hive function.This tutorial will focus on the content of custom bee.
If you want to add a custom bee, you need to do a few steps:
Create configuration file
Add custom branch
Add custom honeycomb or honey droplets
Add custom -defined honey acquisition object
Add custom bee
Customly add a hybrid route to your bee
Add a centrifugal formula
Add a juicer formula
Add localized content
Here are the official instance configuration files and localized files for the Minecraft version 1.7.10 and an official instance configuration file and localized files for the Minecraft version 1.10.2 (and above).When you watch the tutorial below, it is recommended to check with an example file.
1. Create configuration files
Before forming a custom bee, you need to create a configuration file ({Minecraft}/config/gendustry/{name} .cfg).Open {name} .cfg and enter it:
If HaveForestrymodule Bees << >>
After all, all content needs to be added in << >>.
2. Add custom branch
The branch here is actually a customized genus. If you add custom bees to existing subordinates, you can skip this step.
The grammar is as follows:
CFG Branches {cfg {name} {// Although the name is not used, it must be the unique uid = {string} // new branch UID, which must be unique, the format should be "geneustry. {name} "Parent = APIDAE // UID of the parent branch, as a bee, should be" APIDAE "scientific = {string} //, which will display some places in the game}
The following is an example:
CFG Branches {cfg test {uID = "Gendustry.test" // This branch uid is gendustry.test paint = apidae scientific = testis //3. Add custom honeycomb or honey droplets
If your bee products are existing honeycomb or honey droplets, you can skip this step.
The grammar is as follows:
CFG Honeycombs {cfg {name} {// The names used in localization, custom items (introduced in the following) names = {number} // as metadata, must be the only primaryColor = {coloror} // Main color, expressed the color with hexadecimal numbers, can also use the value between 0-1 to represent RGB, such as RGB colors "142,165,68" to write "0x8ea544" or "142/255, 165/255,68/255 "SecondaryColor = {color} // secondary color}} cfg Honeydrops {// The above cfg {name} {id = {number} primaryColor = {color} SecondaryColor = {color}}}The following is aexample:CFG Honeycombs {cfg test {// its localized name is genes .honeycomb.test.name ID = 13337 // Its metadata is 13337 PrimaryColor = 0xff0000 // The main color is red (255, 0, 0) SecondaryColor =0x0000ff // The secondary color is blue (0, 0, 255)}} cfg Honeydrops {cfg test {// its localization name is gendustry.honeydrop.test.name ID = 13337 primaryColor = 0x FF0000 SecondaryColor = 0x0000ff}}Custom honeycomb and honey droplets can be used as customized items below:1.7.10 version under version:
S: Gendustry: "Honeycomb. {Name}" - Honeycomb
S: Gendustry: "Honeydrop. {Name}" - honey droplets
1.10.2 version next:
Honeycomb: {name} - honeycomb
Honeydrop: {name} - honey droplets
4. Add custom -defined honey acquisition objects
If your bee's honey picking objects are existing honey -seeking objects, then you can skip this step.
The grammar is as follows:
Flowerallele {name} {// UID of the honey object, for example: If {name} is Goldblocks, its uid is gendustry.flowersgoldblocks (note the appointment) {string} // {string} For DOMINANTSex) or Recessive.: {blockName} [@{meta}] ", if it is a mineral dictionary block, it is" OD: {Odict} ".Dictionary SPREAD {blockref} {weitht} // with a certain right to randomly spread a block}Flowerallele Goldblocks {// The uid of the honey 采 采 采 采 采 采 <<<<<<<<<<<<<<<<. // The mineral dictionary is "Blockgold" and "BlockIRON"Blocks can be used as" flower "SPREAD OD: Oregold 1.0 // Randomly spreading mineral dictionary with a weight of 1.0 as" Oregold "}5. Add custom bee
The grammar is as follows:
cfg Bees {cfg {name} {// as part of the UID of bee types, the complete UID is "geneustry.bee. {name}", which will be used to add hybrid routes and other places dominant = {boolean}.// {Boolean} is yes or no, determine whether the species is an allele is explicit glowing = {boolean} // Determine whether the icon is glowing primaryColor = {color} // determine the outline color of the icon.The internal color of the icon Secret = {Boolean} // If it is yes, the bee will not appear in the NEI or JEI or creative items, and at the same time, the total number of humidity = {ValidValue} // {ValidValue} is Arid.(Drought), normal (ordinary) or DAMP (humid) temperature = {value} // {value {value} is iv(Hell) NOCTURNAL = {Boolean} // If it is yes, the bee works only at night binominal = {string} // for the name of some gui.In GUI, it should be your name Branch = "{String}" //Example (suitable for versions of 1.10.2 and above, version 1.7.10 needs to be adjusted slightly according to the above grammar):{CHANCE}%{stackref} // {stackref} If it is an item, it is "i [{modid}]: {blockName} [@{meta}]", if it is a block, it is "B [{modididididid}]: {blockName} [@{meta}] ", for example, 10%I: Diamond is a 10%chance to generate diamonds, 50%B: Forestry: Resources@1 is a 50%chance of generating a copper mines for forestry; ifIf you do n’t write things in parentheses, you do n’t produce items) Specialty = DropslistDumPalleles "can export all {Allele UID} (equal gene uid) base =" {allele uid} "// must be filled in. Fill in the bee type of UID to replicate the character from this kind of bee.
Choose the proper type of bee can reduce the workload to a great extent. You can delete the characteristics of no modification in the following character only retain certain shapes that need to be modified to modify the speySpeed Lifespan = "{Allele UID}" // Describes the life of bees. // Describes the temperature adaptability of the bee nOCTURNAL = "{{Allele uid} "// (suitable for Minecraft version 1.7.10) Describes the night moving of the bee's night moving NEVER_SLEEPS =" {Allele UID} "// Humidity_tolerance = "{Allele UID} "// Describe the humidity adaptability of bees toLerant_flyer =" {Allele UID} "// Describes the rain -resistant flying_dwelling =" {allele uid} "of the bee. Flower_provider = "{Allele UID} "// Describes the honey picking object of the bee Flowering =" {Allele
uID} "// Describe the pollination speed of bees. Territory =" {Allele UID} "// Describes the range of bees' activity scope =" {allele uid} "// Description of the special effect of the bees}}
CFG BeEes {cfg test {// The uid of this kind of bee is gendustry.bee.test dominant = yes // The equal position of this species is alignment.The color is red (255, 0, 0) secondaryColor = 0x0000FF // The internal color is blue (0, 0, 255) secret = no // without hiding this kind of bee humidity = normal // humidity = normal //The temperature is ordinary nocturnal = no // not just working at night binominal = test // species named test authority = bdew // The author named bdew Branch = "Gendustry.test" // From the self -defined Gendustry.TEST belongs to products = Dropslist (// 30%of the probability to generate previously customized honeycomb TEST honeycomb 30%Honeycomb: Test) Specialty = Dropslist () // No exclusive product6. Add a hybrid route to your custom beeCFG Traits {Base = "Forestry.species Forest" // Copy the characteristics of the forest bee and modify the NEVER_SLEEPS = "Forestry.booltrue" based on this. WER_PROVIDER = "Gendustry.flowersgoldblocks"// Use the previously customized honey picking object Goldblocks as the honey}}}
The grammar is as follows:
[Secret] Mutation: {CHANCE}%{Parent}+{Parent} => {Child} {Requirements}The neutral brackets in grammar only represent omitted, and it does not mean that this grammar must carry the neutral brackets
If this hybrid route is specified as "Secret", this hybrid route will not appear in any GUI
{Parent} and {Child} UID for bee species
{Requirements} can be not filled or as follows:
REQ TEMPERATUR
Req Humidity {Arid | NORMAL | DAMP} (humidity requirements)
REQ BIOME {biomename}
REQ BLOCK B [: {modid}]: {blockName} [ @{meta}] (block need)
Here are some examples:
Mutation: 10%"Forestry.Speciesindustrious"+"Forestry.SpeciesDILIGENT" => "Gendustry.bee.test" REQ TEMPERATURE // Realing bee and diligent bees at hot temperatures 10%of the probability hybridization is customizedTest bee Mutation: 10%"Forestry.speciesindustrious"+"Forestry.Speciescommon" => "Gendustry.bee.test" Req Biome Hell // Revoic bees and ordinary bees have 1 under the hell biology group. The probability of 0%comes fromThe defined Test bee Mutation: 10%"Forestry.Speciesindustrious"+"Forestry.Speciescommon" => "Gendustry.Bee.test" REQ BLOCK B: Wool@1 // There are orange wool around10%of the probability hybridization of customized bees7. Add a centrifugal machine formulaThe grammar is as follows:
Center: {stackref}, {num} cycls => [{chance}%] {stackref}The neutral brackets in grammar only represent omitted, and it does not mean that this grammar must carry the neutral brackets
If omitted {CHANCE}%, the default is 100%default
The following is an example:
Center: Honeycomb: test, 10 cycls => {// Input Test honeycomb, 10 working cycles, 100%of the previously customized test honey droplets, 30%produce honey droplets, 50%produce beesy waxing100%Honeydrop: Test 30%I: Forestry: Honeydrop 50%I: Forestry: Beeswax}8. Add a juicer formula
The grammar is as follows:
Squeeezer: {stackref}, {num} cycls => {Fluidname} {millibuckets} mb [+[{chance}%] {stackref}]You can use instructions "/dumpregization" to query all registered fluids
The neutral brackets in grammar only represent omitted, and it does not mean that this grammar must carry the neutral brackets
If omitted {CHANCE}% {stackref}, it means no by -product
If omitted {CHANCE}%, the default is 100% default
The following is an example:
Squeeezer: I: Gendustry: Genesample, 1 CyCles => liquiddna 50 MB+90%I: Generationry: GeneSampleBlank9. Add localized contentThe localized content added should be at least localized in English (the United States).You can also add localization of other languages.
Localized content should be in {minecraft}/config/gendustry/{name}. {Code} .lang.{code} is the same as the localization of Minecraft, English (US) is "EN_US" and so on.{name} can be anything, but for convenience, the name of the configuration file of the custom content should be matched.
Localization content follows the format of {key} = {value}, the specific {key} is as follows:
geneustry.honeycomb. {name} .name - honeycomb name
Gendustry.honeydrop. {name} .name - honey drip name
geneustry.bees.species. {name} - Bee name
Gendustry.bees.species. {name} .descripting -bee description (displayed in a seal analyzer)
Gendustry.allele.flowers. {name} - The name of the honey acquisition object
The following is an example:
Gendustry.bees.species.test = testgendustry.species.test.descripting = a Curious Species of Bees, Used to Demonstrate The Config System Gendustry.honeycomb.test.name = test combgedustry.honeydrop.test.name = testHoney DropGendustry.allele.flowers.goldblocks = Gold BocksThe localization of Chinese is relatively special. It needs to be encoded (old -fashioned things) with Unicode. Specific implementation can go to my github to check the instance.
Summarize
Although Gendustry is slightly unbalanced compared to some similar modules, it is still used by popular integration such as FTB Infinity Evolved because of its strong custom bee function.It is hoped that the authors of the integrated package can flexibly use custom bee functions and become unbalanced into balance. I also hope that this tutorial can truly help you.If there are any unclear places in the article, welcome to comment below and make a modification opinion. If you do n’t understand anywhere, you can also comment on the following comments. I will do my best to answer.