Welcome to Roots 3.1! There are some significant differences between the last release of 3.0 (3.0.35) and the first release of (3.1.0), starting in September of 2019, and culminating in two solid years of on & off-again work.
The majority of changes involve quality of life improvements and configurability, including an extensive system for adjusting all associated values with spells and rituals, a completely overhauled Patchouli guide, an improved modifier system which allows every spell to be significantly changed in at least 10 different ways, as well as an improved interface for interacting with your staffs & known spells.
In addition to Roots 3.1.0, you will also need the latest versions of MysticalLib (1.12.2-1.11.0) and Mystical World (1.12.2-1.10.0). These contain all the required features to make Roots 3.1 function properly.
Conversions from Roots 3.0.35 should be smooth, but please make a back-up before hand. If you are running a version of Roots earlier than 3.0.35, I'd recommend first upgrading your world to 3.0.35 before upgrading to 3.1.0.
There are some specific things that should be noted:
- Active rituals will cease to be active, but should retain information about the ritual and the relevant ingredients. You should be able to re-start or re-fill as before.
- Incese burners have been removed.
- Pouches (apothecary pouch and component pouch) contents will be converted to a new, safer system without losing their contents.
- Imbuers can now only have spells imbued into a gramary. Any staff in an imbuer can be removed, but cannot be re-inserted.
- All previously created spell dusts that were not imbued into a staff will become invalid. (Recommend imbuing before upgrading.)
- All staffs with spells in them will be converted to the new format.
- If a staff has a spell in it that was removed and converted into a modifier, that new spell will be placed in that staff, with the relevant modifier applied & enabled. (See "Removed Spells" for more information.)
- Offering plates are now called catalyst plates, but should retain their contents.
- The Wildwood Rune is now purely decorative and no longer has an associated block entity.
- Druid villagers are now known as wild mage villagers.
The guide is no longer locked behind advancements (although each herb entry is a "challenge" with an associated advancement), and every entry is available from the start. Each entry now describes the functionality as well as how to oobtain the item (or the recipe for the spell, or the ingredients required for a ritual).
Each section now has an Introduction (with the Spells section containing various Introductions for the spell library, modifiers, imposing and imbuing) that covers the basics.
In addition, there are now a number of link-types, including a way to directly open a list of recipes in JEI.
Significant thanks to GentlemanGnu for editing the guidebook.
The system of imbuing spells into staffs has been replaced by imbuing spells into a gramary -- a physical object that represents your "spell library". This library contains every spell you know, and every modifier that you have applied to a spell (via the imposer).
Via the spell library interface (default keybind 'K') while holding a staff, you can select spells from the library pane (on the right) and then click on the staff (displayed on the left) to insert that spell into the staff. You can also hold 'alt' while clicking on a staff slot you adjust modifiers. You can also use this interface to adjust the order of spells.
If you open a pre-existing staff with spells and modifiers that you don't know, you will then have these added to your library.
In addition to each ritual having its own icon, every spell now has its own icon, thanks to the work of Coda!
In order to diversify the availability of modifiers, some spells have been converted into modifiers. Additionally, some other spells were modified significantly to become thematically more interesting.
- Aqua Bubble (an absorption shield that reduces lava damage to nothing and fire damage significantly)
- Augment (gives night vision and other augmentations with modifiers)
- Chrysopoeia (uses a recipe system to convert items held in the off-hand into a new item, has no modifiers)
- Desaturate (converts food items in your inventory directly, with a lower percentage, into saturation & shanks)
- Nature's Scythe (requires modifiers to function, breaks leaves, grass, flowers, etc, in a radius around you)
- Saturate (converts shanks and saturation directly into healing, with a lower percentage)
- Storm Cloud (creates a bubbling storm cloud above you that provides bonuses)
- Iced Touch (functionality merged into Storm Cloud)
- Light Drifter (functionality merged into Augment)
- Magnetism (functionality merged into Augment)
- Rampant Growth (functionality merged into Growth Infusion)
- Sense Animals (functionality merged into Extension)
- Sense Danger (functionality merged into Extension)
By placing a staff with spells selected into an imposer and then right-clicking the imposer with a knife, you can then select one of the spells and view the modifier interface. From here, you can insert the relevant herb associated with the modifier.
Unlocking ("applying") a modifier to a spell applies it to your spell library, meaning that all other instances of that spell will have the modifier available when you open the spell library, and all new staffs that you put the spell into will have the modifier applied/unlocked.
Once applied, modifiers can be enabled on a staff-by-staff basis, meaning that you have the ability to have multiple copies of the same spell in a staff, each with different modifiers applied (and thus different functions).
Enabled modifiers add an additional cost (consisting of the herb that is associated with them) to the spell, meaning you will also need that type of herb in your component pouch.
Sneak-right-clicking a pyre with ingredients for a ritual or a previous ritual, a green box showing the bounds of the ritual will be displayed. It will decay after a few minutes, or you can sneak-right-click with a knife again to remove it.
While there is no way to remove the Untrue Pacifist advancement, it is now possible to obtain fish from water source blocks using the Animal Harvest ritual.
Many recipes have been adjusted to make them slightly easier to obtain. Additional Transmutation recipes have been added to the Transmutation ritual which also makes obtaining difficult ingredients easier.
The Fire Storm ritual now places fey fire instead of normal fire. Entities killed by fey fire are treated as though they were killed by a player with the Looting II enchantment.
Fey fire can also be placed by the Wildfire spell with the relevant modifier.
Combining runestone with obsidian creates runed obsidian. These blocks can be used to create standing stones required for rituals, as well as allowing you to reinforce catalyst plates and pyres to create wither-proof (and ender-dragon-proof) rituals.
Terrastone tools are diamond-level, repairing tools (like living tools) that have special functionality (each described in the tooltip).
Runed tools are AoE variant tools. The runed plough hoes ground in a 3x3, the runed smasher digs in a 3x3, etc.
There are two new pouches available:
- The Herb Pouch, which contains 9 herb-only slots and no inventory slots.
- The Fey Leather Pouch, which contains 12 herb-only slots and 6 inventory slots.
Each pouch can be dyed, including the fey leather pouch (although this only dyes the string).
Pouch content is now stored in the world saved data, and all bugs involving herb/item stacks not properly saving have been completely resolved.
Finally, all pouches will be searched for herbs when casting a spell, instead of just the first pouch in your inventory (or Baubles slot).
Automatically generated from the Animal Harvest ritual list, or created via CraftTweaker, sneak-right-clicking an entity with runic shears will give you a life essence with a short durability. This can be used on a catalyst plate instead of the ingredients required for the Summon Creatures ritual.
The following objects now have dispenser behaviours, meaning they can be used with Vanilla redstone for automation:
- Knives for scraping terra moss
- Knives for activating a fey crafter or runic crafter
- Pestles for activating mortar recipes
- Runic shears for scraping terra moss in a radius
- Runic shears for shearing sheep and other shearable entities
- Runic shears for performing fey-reaching on eligible entities
In addition, runic shears can now be used to harvest terra moss in a radius of blocks.
The runic crafter is an automated version of a fey crafter that draws ingredients from a chest beneath it, if those ingredients match the "ingredient" item placed on the pedestal by right-clicking.
Mortars, fey crafters and runic crafters now give a redstone comparator output depending on if they are empty, if they are full, or if they are full and have a valid recipe.
Almost every interaction in Roots is now available to view in JEI. This includes:
- Runic shears (including blocks & entities)
- Bark carving (breaking blocks with knives)
- Ritual crafting (of herbs, food, etc)
- Mortar and pestle recipes
- Ritual ingredient recipes
- Fey crafting recipes
- Visual hints for producing variants of elemental soil
- Spell costs
- Terra moss harvesting
- Recipes used for the Summon Creatures ritual
- Recipes used in the Chrysopoeia spell
- Transmutation rituals, with visualisations
- Runed wood carving
- Loot bag contents & chances
- Block interactions (including grass-breaking)
- Methods for lighting Pyres
- Ritual visualisation
- Spell imbuing
- Imposing modifiers into spells
Mystical World and Roots now have full integration with Thaumcraft, specifically including aspects pre-calculated and determined for every item, block and entity.
Asides from the aforementioned pouches, there are a number of new items & blocks.
- Fire starter (a simple way of lighting fires & pyres): a single-use item that is channeled to create a fire or start a pyre, crafted using sticks.
- Glass eye: an alternative to spider's eyes in some recipes and spell recipes that is crafted using glass and torches.
- Salmon of Knowledge: an item that transfers advancements known by one player (the person who crafted it) to the person who eats it.
- Wooden shears: a simple, low-durability pair of shears that you can make earlier than iron for obtaining grass & leaves.
- Loot bags: the reliquary and spirit pouch are two drops from the Harvest spell, although they can be obtained in other manners, which give items when right-clicked based on a specified loot table.
Grove stones will now send leaves towards nearby fey crafters and runic crafters.
Standing stones will now send leaves towards nearby pyres.
Almost every spell now has a sound (apart from those channeled spells), with significant work done by ScrewyMacGyver to create the originals using existing Minecraft sounds.
Additional sounds were by KitzahTheNarrator and Lich.
The fey and runic crafters now have a leaf-particle whirlwind visual (instead of fire) and a sound of rushing leaves (instead of chimes).
Many textures have been adjusted and updated by Androsa. Coda provided icons for individual spells.
Ridanisaurus provided the gorgeous new guidebook texture & layout.
The primary method for adjusting spells and rituals is through CraftTweaker. The full documentation can be found at the CraftTweaker website. You will also wish to reference the Roots commands found on the Roots GitHub wiki.
Each ritual and spell have various properties. For most rituals, these include radius_x
, radius_y
and radius_z
(or radius
). For most spells, this includes cooldown
and often damage
. To see a complete listing of every property for every spell & ritual, you can utilise the /roots
command. /roots rituals
and /roots spells
will output a complete table of spells (or rituals) along with their properties, property names, property types and a description, to roots.log
(found in the main directory of your modpack).
Spell Example Output:
Spell: spell_geas
Property: extension
Default: 600
Description: additional duration in ticks to be added to the base duration
Type: Integer
Value: 600
Property: weakness_amplifier
Default: 0
Description: the amplifier to be applied to the weakness effect
Type: Integer
Value: 0
Property: physical_damage
Default: 2.5
Description: the amount of physical damage creatures should take after the geas ends
Type: Float
Value: 2.5
For spells, herbname_additional_cost
can be ignored as these are set directly using setModifierCost
.
Ritual Example Output
Ritual: ritual_heavy_storms
Property: duration
Default: 2400
Description: the duration in ticks of the ritual/spell
Type: Integer
Value: 2400
Property: lightning_chance
Default: 0.1
Description: Chance (per interval of 1 second) of the ritual duration for lightning to strike in the ritual area
Type: Float
Value: 0.1
Property: lightning_interval
Default: 10
Description: Maximum number of lightning strikes that can happen per ritual. (Set to -1 for infinite)
Type: Integer
Value: 10
Property: radius_z
Default: 15
Description: Radius on the Z Axis of the cube in which the ritual takes place
Type: Integer
Value: 15
Property: radius_y
Default: 15
Description: Radius on the Y Axis of the cube in which the ritual takes place
Type: Integer
Value: 15
Property: radius_x
Default: 15
Description: Radius on the X Axis of the cube in which the ritual takes place
Type: Integer
Value: 15
Each of these properties can be adjusted using CraftTweaker.
Ritual Example
Modifying the Animal Harvest ritual.
import mods.roots.Rituals;
import mods.roots.Ritual;
var animal_harvest = Rituals.getRitual("animal_harvest") as Ritual; // If not placed at the beginning, "ritual_" will be automatically added.
animal_harvest.setInteger("count", 10); // Sets the "count" property to 10 from the default of 5, meaning that 10 harvesting operations will be completed every interval
animal_harvest.setInteger("interval", 220); // Sets the "interval" in ticks to double the default of 110, meaning the ritual now fires less often but does double the number of harvests
animal_harvest.setFloat("looting_chance", 1); // Sets the chance of looting being applied to 100% from the default of 0.16 (16%)
animal_harvest.setInteger("radius_x", 30);
animal_harvest.setInteger("radius_z", 30);
animal_harvest.setInteger("radius_y", 30); // Set each radius to 30, doubling the default horizontal radius of 15, and increasing the y radius to 30 from 10.
Spell Example
Modifying the Harvest spell.
import mods.roots.Spells;
import mods.roots.Spell;
import mods.roots.Costs;
import mods.roots.Herbs;
var harvest = Spells.getSpell("harvest") as Spell; // If not placed at the beginning, "spell_" will be automatically added.
harvest.setCooldown(800); // Sets the cooldown of the Harvest spell to 40 seconds.
harvest.setCost(Herbs.wildewheet, 1.25); // Increases the wildewheet cost of Harvest from the default of 0.55 to 1.25
harvest.setModifierCost(Costs.additional_cost, Herbs.wildroot, 0.9); // Increases the cost of the wildroot-related modifier's additional cost from the default of 0.125 to 0.9
harvest.setInteger("radius_x", 20);
harvest.setInteger("radius_z", 20);
harvest.setInteger("radius_y", 20); // Increases the size of the base Harvest radius to 20 blocks in all directions.
Each of the property values is generally displayed in the relevant Patchouli guidebook entry, under Spell Configuration or Ritual Configuration.
Changes:
- Elemental soil can now directly replace farmland or other elemental soil types by right clicking on the block or the crop above it.
- A large number of additional fey crafting recipes have been created for certain resources.
- Compat has been added with Cooking For Blockheads.
- Fluid types for the unending bowl can now be specified.
- Water types for converting ice->water and water->ice can now be specified.
- Water types for adjacency for terra moss & the Overgrowth ritual can now be specified.
- It is now possible to intercept tool creation in order to inject modified tools via API.
- You can now make a delicious wildroot stew when desperate for food.
- Runestone can now be crafted with a number of precious gems and dusts.
- Entities affected by the Animal Harvest and created by Summon Creatures glow for a short duration.
- Many recipes that used specific items now use the ore dictionary.
- Untrue Pacifist is no longer awarded if you kill the chicken that a baby zombie is riding.
- Item transforms can now be used with CraftTweaker integration.
- More detailed information is given when a ritual cannot be started.
- So many more!
Bug fixes:
- Almost every offset-issue (i.e., sure-footed stone) involving blocks has been fixed.
- Fire Storm now functions underground.
- Dispensers will now properly fire living arrows.
- Spell recipes are now disabled when a spell is disabled in the configuration.
- Quantity of Wild Mage villages has now been reduced.
- The Gathering ritual no longer duplicates items.
- Rituals no longer consume double when refilling from a chest below.
- Ritual crafting no longer deletes items from chests below.
- Wildwood fence gate now has a recipe.
- Sorting containers with Quark should no longer cause crashes.
- Wildwood leaves no longer decay when placed by a player.
- Items that were missing ore dictionary tags should now have them.
- Hopefully everything!