# Configuration file

##########################################################################################################
# client
#--------------------------------------------------------------------------------------------------------#
# Client-side settings that only affect the local minecraft game. If this file is on a dedicated server, these settings will have no effect; in multiplayer, each player obeys their own settings.
##########################################################################################################

client {
    # Whether you can switch between spells on a wand by scrolling with the mouse wheel while sneaking. Note that this will only affect you; other players connected to the same server obey their own settings.
    B:shiftScrolling=true

    # The scroll direction used to switch between spells on a wand while sneaking.
    B:reverseScrollDirection=false

    # The position of the spell HUD.
    S:spellHUDPosition=Bottom left

    # The skin used for the spell HUD.
    S:spellHUDSkin=default

    # When set to true, sections of The Wizard's Handbook are unlocked when a player gains the advancement that triggers them, and are hidden otherwise. When set to false, the entire handbook is readable regardless of advancement progress.
    B:handbookProgression=true

    # Whether opening any of wizardry's books pauses the game in singleplayer. Has no effect on servers or LAN worlds.
    B:booksPauseGame=true

    # Whether to show summoned creatures' names and owners above their heads.
    B:summonedCreatureNames=true

    # Whether to use custom shaders for certain spells. These use the vanilla shader system (like mob spectating shaders) and shouldn't have much of an effect on performance in most cases, but they may conflict with other shaders.
    B:useShaders=true

    # Whether to use the screen shake effect for certain spells.
    B:screenShake=true

    # Whether to use the screen blink effect for teleportation spells.
    B:blinkEffect=true
}


##########################################################################################################
# commands
#--------------------------------------------------------------------------------------------------------#
# Settings for the commands added by Wizardry. In multiplayer, the server/LAN host settings will apply.
##########################################################################################################

commands {
    # Upper limit for the multipliers passed into the /cast command. This is here to stop players from accidentally breaking a world/server. Large blast mutipliers can cause extreme lag - you have been warned!
    D:castCommandMultiplierLimit=20.0

    # The name of the /cast command. This is what you type directly after the /; for example if this was set to 'magic' then instead of typing /cast you would type /magic instead.
    S:castCommandName=cast

    # The name of the /discoverspell command. This is what you type directly after the /; for example if this was set to 'magic' then instead of typing /discoverspell you would type /magic instead.
    S:discoverspellCommandName=discoverspell

    # The name of the /ally command. This is what you type directly after the /; for example if this was set to 'magic' then instead of typing /ally you would type /magic instead.
    S:allyCommandName=ally

    # The name of the /allies command. This is what you type directly after the /; for example if this was set to 'magic' then instead of typing /allies you would type /magic instead.
    S:alliesCommandName=allies
}


##########################################################################################################
# compatibility
#--------------------------------------------------------------------------------------------------------#
# Settings that affect how wizardry interacts with other mods. In multiplayer, the server/LAN host settings will apply.
##########################################################################################################

compatibility {
    # List of damage source string identifiers to be ignored when re-applying damage. Case-sensitive. A message will be logged if wizardry detects a damage source that should be added to this list. Otherwise, don't change unless instructed to do so.
    S:damageSourceBlacklist <
     >

    # Whether to print compatibility warnings to the console. Set to false if excessive messages are being printed.
    B:compatibilityWarnings=true

    # If Baubles is installed, controls whether Baubles integration features are enabled. If this is disabled, wizardry will always behave as if Baubles is not installed.
    B:baublesIntegration=true

    # If Antique Atlas is installed, controls whether Antique Atlas integration features are enabled. If this is disabled, wizardry will always behave as if Antique Atlas is not installed.
    B:antiqueAtlasIntegration=true

    # Controls whether wizardry automatically places antique atlas markers at the locations of wizard towers.
    B:autoPlaceTowerMarkers=true

    # Controls whether wizardry automatically places antique atlas markers at the locations of obelisks.
    B:autoPlaceObeliskMarkers=true

    # Controls whether wizardry automatically places antique atlas markers at the locations of shrines.
    B:autoPlaceShrineMarkers=true
}


##########################################################################################################
# gameplay
#--------------------------------------------------------------------------------------------------------#
# Global settings that affect game mechanics. In multiplayer, the server/LAN host settings will apply. Please note that changing some of these settings may make the mod very difficult to play.
##########################################################################################################

gameplay {
    # For those who like a sense of mystery! When set to true, spells you haven't cast yet will be unreadable until you cast them (on a per-world basis). Has no effect when in creative mode. Spells of identification will be unobtainable in survival mode if this is false.
    B:discoveryMode=true

    # Controls whether wands are required to gain progression before they can be upgraded to the next tier. Enable this option to revert to the pre-4.2 system, which only requires tomes of arcana. Wands will still gain progression even when this is enabled, so if you go back to the new system you won't lose any progress.
    B:legacyWandLevelling=false

    # Controls which creatures may be damaged by your magic when allied to you. Your spells will not target your allies or creatures summoned/owned by them regardless of this setting, but this setting prevents all magic damage to allies.
    S:friendlyFire=All

    # Whether summoned creatures can revenge attack their owner if their owner attacks them.
    B:minionRevengeTargeting=true

    # Whether to allow players to move other players around using magic.
    B:playersMoveEachOther=true

    # Whether spells cast by players can destroy blocks in the world. Set to false to prevent griefing. To prevent non-players from destroying blocks with magic, use the mobGriefing gamerule.
    B:playerBlockDamage=true

    # Whether to allow players to disarm other players using the telekinesis spell. Set to false to prevent stealing of items.
    B:telekineticDisarmament=true

    # Whether players are allowed to teleport through unbreakable blocks (e.g. bedrock) using the phase step spell.
    B:teleportThroughUnbreakableBlocks=false

    # Whether players are allowed to change the world time with the speed time spell. If this is false, the speed time spell will not change the world time but will still speed up nearby block, entity and tile entity ticks.
    B:worldTimeManipulation=true

    # Whether to replace Minecraft's own fireballs with wizardry fireballs. If this is disabled, only wizardry spells will use the custom fireballs.
    B:replaceVanillaFireballs=true

    # Whether to replace Minecraft's distance-based fall damage calculation with an equivalent, velocity-based one. This is done such that mobs in freefall will take exactly the same damage as normal, so it will not break falling-based mob farms. Disable this if you experience falling-related weirdness! If this is disabled, some spells will use a more simplistic method of resetting the player's fall damage in certain cases.
    B:replaceVanillaFallDamage=true

    # Whether any player in creative mode can bypass arcane-locked blocks. If this is false, players must also be op in order to do so.
    B:creativeBypassesArcaneLock=true

    # Whether players are slowed when another nearby player uses the slow time spell. If this is false, mobs and projectiles will still be affected but players will move at normal speed.
    B:slowTimeAffectsPlayers=true

    # Whether using bonemeal on grass blocks has a chance to grow crystal flowers.
    B:bonemealGrowsCrystalFlowers=true

    # Whitelist for loot tables to inject additional mob drops (as specified in loot_tables/entities/mob_additions.json) into. Wizardry makes a best guess as to which loot tables belong to hostile mobs, but this may not always be correct or appropriate; add loot table locations (not entity IDs) to this list to manually include them.
    S:mobLootTableWhitelist <
     >

    # Blacklist for loot tables to inject additional mob drops (as specified in loot_tables/entities/mob_additions.json) into. Wizardry makes a best guess as to which loot tables belong to hostile mobs, but this may not always be correct or appropriate; add loot table locations (not entity IDs) to this list to manually exclude them.
    S:mobLootTableBlacklist <
        entities/vex
        entities/ender_dragon
        entities/wither
        ebwizardry:entities/evil_wizard
     >

    # List of dimension ids in which wizardry's hostile mobs can spawn.
    I:mobSpawnDimensions <
        0
        10
     >

    # List of names of biomes in which wizardry's hostile mobs cannot spawn. Biome names are not case-sensitive. For mod biomes, prefix with the mod ID (e.g. biomesoplenty:mystic_grove).
    S:mobSpawnBiomeBlacklist <
        mushroom_island
        mushroom_island_shore
     >

    # Spawn rate for naturally-spawned evil wizards; higher numbers mean more evil wizards will spawn. 5 is equivalent to witches, 100 is equivalent to zombies, skeletons and creepers. Set to 0 to disable evil wizard spawning entirely.
    I:evilWizardSpawnRate=3

    # Spawn rate for naturally-spawned ice wraiths; higher numbers mean more ice wraiths will spawn. 5 is equivalent to witches, 100 is equivalent to zombies, skeletons and creepers. Set to 0 to disable ice wraith spawning entirely.
    I:iceWraithSpawnRate=3

    # Spawn rate for naturally-spawned lightning wraiths; higher numbers mean more lightning wraiths will spawn. 5 is equivalent to witches, 100 is equivalent to zombies, skeletons and creepers. Set to 0 to disable lightning wraith spawning entirely.
    I:lightningWraithSpawnRate=1

    # The chance to 'misread' an undiscovered spell and trigger a forfeit instead. Setting this to 0 effectively disables the forfeit mechanic. Has no effect if discovery mode is disabled.
    D:forfeitChance=0.2

    # Global damage scaling factor for the damage dealt by players casting spells, relative to 1.
    D:playerDamageScaling=1.0

    # Global damage scaling factor for the damage dealt by NPCs casting spells, relative to 1.
    D:npcDamageScaling=1.0

    # List of names of entities which summoned creatures and wizards are allowed to attack, in addition to the defaults. Add mod creatures to this list if you want summoned creatures to attack them and they aren't already doing so. SoundLoopSpellEntity names are not case sensitive. For mod entities, prefix with the mod ID (e.g. ebwizardry:wizard).
    S:summonedCreatureTargetsWhitelist <
     >

    # List of names of entities which summoned creatures and wizards are specifically not allowed to attack, overriding the defaults and the whitelist. Add creatures to this list if allowing them to be attacked causes problems or is too destructive (removing creepers from this list is done at your own risk!). SoundLoopSpellEntity names are not case sensitive. For mod entities, prefix with the mod ID (e.g. ebwizardry:wizard).
    S:summonedCreatureTargetsBlacklist <
        ebwizardry:storm_elemental
        ebwizardry:shadow_wraith
        ebwizardry:ice_giant
        ebwizardry:phoenix
        ebwizardry:wizard_evil
     >

    # List of names of entities which cannot be mind controlled, in addition to the defaults. Add creatures to this list if allowing them to be mind-controlled causes problems or could be exploited. SoundLoopSpellEntity names are not case sensitive. For mod entities, prefix with the mod ID (e.g. ebwizardry:wizard).
    S:mindControlTargetsBlacklist <
     >

    # List of registry names of blocks or items which cannot be smelted by the pocket furnace spell, in addition to armour, tools and weapons. Block/item names are not case sensitive. For mod items, prefix with the mod ID (e.g. ebwizardry:crystal_ore).
    S:pocketFurnaceItemBlacklist <
        cobblestone
        netherrack
     >

    # List of registry names of ore blocks which can be detected by the divination spell. Block names are not case sensitive. For mod blocks, prefix with the mod ID (e.g. ebwizardry:crystal_ore).
    S:divinationOreWhitelist <
     >

    # List of registry names of items which should count as swords for imbuement spells. Most swords should work automatically, but those that don't can be added manually here. Item names are not case sensitive. For mod items, prefix with the mod ID (e.g. tconstruct:broadsword).
    S:swordItemWhitelist <
     >

    # List of registry names of items which should count as bows for imbuement spells. Most bows should work automatically, but those that don't can be added manually here. Item names are not case sensitive. For mod items, prefix with the mod ID (e.g. tconstruct:shortbow).
    S:bowItemWhitelist <
     >

    # List of registry names of items which wizard trades can use as currency (in the first slot; the second slot is unaffected). Each entry in this list should consist of an item registry name, followed by a single space, then an integer which defines the 'value' of the item. Higher values mean fewer of that currency item are required for a given trade.
    S:currencyItems <
        gold_ingot 3
        emerald 6
     >

    # List of registry names of blocks which can be overwritten by wizardry's structure generators, affecting both fast and fancy structure generation. Most tree blocks and other foliage should work automatically, but those that don't can be added manually here. Block names are not case sensitive. For mod blocks, prefix with the mod ID (e.g. dynamictrees:oakbranch).
    S:treeBlocks <
        dynamictrees:oakbranch
        dynamictrees:sprucebranch
        dynamictrees:birchbranch
        dynamictrees:junglebranch
        dynamictrees:darkoakbranch
        dynamictrees:acaciabranch
        dynamictrees:cactusbranch
        dynamictrees:leaves0
        dynamictrees:leaves1
     >
}


##########################################################################################################
# resistances
#--------------------------------------------------------------------------------------------------------#
# Settings which allow entities to be made immune to certain types of magic. In multiplayer, the server/LAN host settings will apply.
##########################################################################################################

resistances {
    # List of names of entities that are immune to fire, in addition to the defaults. Add mod creatures to this list if you want them to be immune to fire magic and they aren't already. SoundLoopSpellEntity names are not case sensitive. For mod entities, prefix with the mod ID (e.g. ebwizardry:wizard).
    S:mobsImmuneToFire <
     >

    # List of names of entities that are immune to ice, in addition to the defaults. Add mod creatures to this list if you want them to be immune to ice magic and they aren't already. SoundLoopSpellEntity names are not case sensitive. For mod entities, prefix with the mod ID (e.g. ebwizardry:wizard).
    S:mobsImmuneToIce <
     >

    # List of names of entities that are immune to lightning, in addition to the defaults. Add mod creatures to this list if you want them to be immune to lightning magic and they aren't already. SoundLoopSpellEntity names are not case sensitive. For mod entities, prefix with the mod ID (e.g. ebwizardry:wizard).
    S:mobsImmuneToLightning <
     >

    # List of names of entities that are immune to wither effects, in addition to the defaults. Add mod creatures to this list if you want them to be immune to withering magic and they aren't already. SoundLoopSpellEntity names are not case sensitive. For mod entities, prefix with the mod ID (e.g. ebwizardry:wizard).
    S:mobsImmuneToWither <
     >

    # List of names of entities that are immune to poison, in addition to the defaults. Add mod creatures to this list if you want them to be immune to poison magic and they aren't already. SoundLoopSpellEntity names are not case sensitive. For mod entities, prefix with the mod ID (e.g. ebwizardry:wizard).
    S:mobsImmuneToPoison <
     >
}


##########################################################################################################
# spells
#--------------------------------------------------------------------------------------------------------#
# Set a spell to false to disable it. Disabled spells will still have their associated spell book (mainly so the spell books don't all change) and can still be bound to wands, but cannot be cast in game, will not appear in any subsequently generated chests or wizard trades and will not drop from mobs. Disable a spell if it is causing problems, conflicts with another mod or creates an unintended exploit.
##########################################################################################################

spells {
    # Grants the caster faster movement speed and greater jump height for 30 seconds.
    B:"ebwizardry:agility"=true

    # Fires a spark of lightning at the target.
    B:"ebwizardry:arc"=true

    # Prevents the target from using magic for 15 seconds.
    B:"ebwizardry:arcane_jammer"=true

    # Creates an impenetrable barrier of force around a container, protecting it from being opened or destroyed. The caster and their allies may still open it, however.
    B:"ebwizardry:arcane_lock"=true

    # "Archers, fire!"
    B:"ebwizardry:arrow_rain"=true

    # Teleports the target against its will to a random location within a certain range.
    B:"ebwizardry:banish"=true

    # Tear reality asunder.
    B:"ebwizardry:black_hole"=true

    # Teleports the caster over a short distance to where they are pointing.
    B:"ebwizardry:blink"=true

    # Creates a zone of swirling icy wind which slows and continually damages anything trapped inside. The caster is immune to the damage but is still slowed.
    B:"ebwizardry:blizzard"=true

    # Fires a jet of bubbles which causes anything it hits to float upwards helplessly. The target will fall after a certain time or if it is damaged.
    B:"ebwizardry:bubble"=true

    # Fires a spark of lightning at the target, which then chains to additional targets up to twice.
    B:"ebwizardry:chain_lightning"=true

    # Causes the caster to charge rapidly in the direction they are looking, damaging and knocking back anything in their path.
    B:"ebwizardry:charge"=true

    # Reveals the path to a remembered location. With this spell selected, sneak-right-click on a block to set the location. Cast this spell normally to reveal the path. The path will fade after 90 seconds.
    B:"ebwizardry:clairvoyance"=true

    # Creates cobwebs where you are pointing, which greatly hamper the movement of any creatures caught amongst them. The cobwebs will vanish after 20 seconds or if broken.
    B:"ebwizardry:cobwebs"=true

    # Places a magical landmine on the ground where you are pointing, which explodes when stepped upon.
    B:"ebwizardry:combustion_rune"=true

    # Creates spectral armor around the caster which offers protection equal to that of iron armor. The armor lasts for 60 seconds. The caster must have an empty armor slot.
    B:"ebwizardry:conjure_armour"=true

    # Conjures a spectral block where you are pointing. The spectral block disappears after 45 seconds, or you can dispel it by casting this spell at it again.
    B:"ebwizardry:conjure_block"=true

    # Creates a spectral bow with unlimited arrows that lasts for 30 seconds.
    B:"ebwizardry:conjure_bow"=true

    # Creates a spectral pickaxe of equal strength to an iron pickaxe that lasts for 30 seconds.
    B:"ebwizardry:conjure_pickaxe"=true

    # Creates a spectral sword of equal strength to an iron sword that lasts for 30 seconds.
    B:"ebwizardry:conjure_sword"=true

    # Contains the target to within a short distance of its current position for 20 seconds.
    B:"ebwizardry:containment"=true

    # Removes all potion effects currently affecting the caster, good or bad.
    B:"ebwizardry:cure_effects"=true

    # "He was suddenly weakened, as if the life had been wrenched from within him." - Testimony of the only person known to have encountered a member of the soulwalker cult and survived.
    B:"ebwizardry:curse_of_enfeeblement"=true

    # Causes the target's soul to be inextricably bound to that of the caster, meaning all damage dealt to the caster is also dealt to the victim. Lasts until either the victim or the caster dies.
    B:"ebwizardry:curse_of_soulbinding"=true

    # Curses the target with undeath, causing it to burn in sunlight, like zombies and skeletons. Lasts until the victim dies. Has no effect on undead creatures.
    B:"ebwizardry:curse_of_undeath"=true

    # Fires a slow moving bolt of dark energy in the direction you are pointing, which withers whatever it hits.
    B:"ebwizardry:darkness_orb"=true

    # Grants the caster night vision for 45 seconds.
    B:"ebwizardry:darkvision"=true

    # Fires a dart in the direction you are pointing which damages and weakens its target.
    B:"ebwizardry:dart"=true

    # Creates a patch of decay on the ground which infects any creature that touches it, causing lingering damage over time and spreading more decay wherever it walks.
    B:"ebwizardry:decay"=true

    # Creates an illusory clone of the caster which tricks mobs into attacking it instead. The decoy will vanish after 30 seconds.
    B:"ebwizardry:decoy"=true

    # Causes an explosion where you are pointing, damaging all nearby creatures - including the caster, if they are too close.
    B:"ebwizardry:detonate"=true

    # "Your arrows are no match for me!"
    B:"ebwizardry:diamondflesh"=true

    # Shoots a powerful bolt of flame a short distance in front of you which causes targets to explode into burning embers when killed. Creatures that step on the embers will be set on fire.
    B:"ebwizardry:disintegration"=true

    # Guides the caster to nearby ores and resources. Potency will increase the chance of finding more valuable ores.
    B:"ebwizardry:divination"=true

    # Launches an enderdragon fireball in the direction you are pointing, which releases lingering poisonous clouds on impact.
    B:"ebwizardry:dragon_fireball"=true

    # A true master of earth magic can move mountains.
    B:"ebwizardry:earthquake"=true

    # Grants the caster and nearby allies increased magic damage for 30 seconds.
    B:"ebwizardry:empowering_presence"=true

    # Traps the target in a sphere of darkness which pulls it helplessly upwards and continually damages it.
    B:"ebwizardry:entrapment"=true

    # Causes the caster to quickly jump sideways to dodge incoming attacks.
    B:"ebwizardry:evade"=true

    # "I am the dragon."
    B:"ebwizardry:fire_breath"=true

    # Grants the caster fire resistance for 30 seconds.
    B:"ebwizardry:fire_resistance"=true

    # Places a magical fire trap on the ground which damages and sets on fire the creature that triggers it.
    B:"ebwizardry:fire_sigil"=true

    # Launches a fireball in the direction you are pointing.
    B:"ebwizardry:fireball"=true

    # Shoots a jet of fire a short distance in front of you.
    B:"ebwizardry:firebolt"=true

    # Lanches a firebomb in the direction you are pointing which explodes on impact, setting targets on fire.
    B:"ebwizardry:firebomb"=true

    # Cloaks the caster in flames for 30 seconds, causing anything that attacks them to catch fire.
    B:"ebwizardry:fireskin"=true

    # Creates a stream of flames in the direction you are pointing which sets on fire and continually damages targets.
    B:"ebwizardry:flame_ray"=true

    # Creates a flaming axe which sets enemies on fire when hit. Lasts for 30 seconds.
    B:"ebwizardry:flaming_axe"=true

    # Temporarily imbues the first weapon on the caster's hotbar with the power of flame, causing it to set fire to its victims. The magic wears off after 45 seconds.
    B:"ebwizardry:flaming_weapon"=true

    # Soar like an eagle.
    B:"ebwizardry:flight"=true

    # "We were filled with an intense magical energy appearing to emanate from the centre of the..." - Extract from the journal of a forgotten mage; the rest of the page has been burnt away.
    B:"ebwizardry:font_of_mana"=true

    # It feels amazing.
    B:"ebwizardry:font_of_vitality"=true

    # Shoots an arrow of force in the direction you are pointing.
    B:"ebwizardry:force_arrow"=true

    # Launches a sphere of force which damages and repels nearby creatures on impact.
    B:"ebwizardry:force_orb"=true

    # Creates a forcefield around the caster which repels creatures and deflects projectiles.
    B:"ebwizardry:forcefield"=true

    # Amidst the wood lies a hidden glade,
    # In the glade a wizard performs,
    # Magical arts of an order untold,
    # Deep within the forest of thorns.
    B:"ebwizardry:forest_of_thorns"=true

    # "How dare you enter my forest!"
    B:"ebwizardry:forests_curse"=true

    # Freezes the target for 10 seconds. Will also freeze water and create snow on the ground.
    B:"ebwizardry:freeze"=true

    # Temporarily imbues the first weapon on the caster's hotbar with the power of frost, causing it to freeze its victims. The magic wears off after 45 seconds.
    B:"ebwizardry:freezing_weapon"=true

    # Creates a frozen axe which freezes enemies when hit. Lasts for 30 seconds.
    B:"ebwizardry:frost_axe"=true

    # Creates a stream of frost in the direction you are pointing which slows and continually damages targets.
    B:"ebwizardry:frost_ray"=true

    # Places a magical ice trap on the ground which damages and freezes the creature that triggers it.
    B:"ebwizardry:frost_sigil"=true

    # Allows the caster to freeze water as they walk for 30 seconds.
    B:"ebwizardry:frost_step"=true

    # Allows the caster to glide downwards while in the air and holding the use item button.
    B:"ebwizardry:glide"=true

    # Shoots a magical vine which allows the caster to grapple towards blocks or reel in entities. Release the use item button to let go of the block or entity.
    B:"ebwizardry:grapple"=true

    # Launches a large fireball in the direction you are pointing which explodes on impact.
    B:"ebwizardry:greater_fireball"=true

    # Heals the caster by 4 hearts.
    B:"ebwizardry:greater_heal"=true

    # Allows the caster to pick up a block or creature and hold it in the air for as long as the use item button is pressed. Sneaking whilst holding a block or creature will throw it a short distance.
    B:"ebwizardry:greater_telekinesis"=true

    # Grants the caster a strong shielding effect that greatly reduces incoming magic damage for 30 seconds.
    B:"ebwizardry:greater_ward"=true

    # Heals the caster and all nearby allies and summoned creatures by 3 hearts.
    B:"ebwizardry:group_heal"=true

    # Grows all crops near the caster. Also grows tall grass and flowers on grass.
    B:"ebwizardry:growth_aura"=true

    # It was during the great winter of the third age that the ice mages discovered their true power.
    B:"ebwizardry:hailstorm"=true

    # Heals the caster by 2 hearts.
    B:"ebwizardry:heal"=true

    # Heals the target by 2 and a half hearts.
    B:"ebwizardry:heal_ally"=true

    # Creates a zone of healing energy which regenerates the health of any ally inside it. Any undead inside the healing aura will slowly take damage.
    B:"ebwizardry:healing_aura"=true

    # Creates a floating spark which moves towards enemies.
    B:"ebwizardry:homing_spark"=true

    # "You shall be frozen for an eternity!"
    B:"ebwizardry:ice_age"=true

    # Launches an ice charge which explodes on impact, freezing nearby creatures and releasing shards in all directions.
    B:"ebwizardry:ice_charge"=true

    # Fires a great spear of ice in the direction you are pointing which overpenetrates targets, damaging and freezing them in the process.
    B:"ebwizardry:ice_lance"=true

    # Fires a shard of ice in the direction you are pointing which damages and slows targets when hit.
    B:"ebwizardry:ice_shard"=true

    # Creates a shroud of cold around the caster for 30 seconds, causing anything that attacks them to be frozen.
    B:"ebwizardry:ice_shroud"=true

    # Causes razor-sharp ice spikes to rise from the ground where you are pointing, skewering any creatures caught amongst them.
    B:"ebwizardry:ice_spikes"=true

    # Freezes the target solid for 20 seconds or until broken out. The target cannot move or do anything while frozen but is also impervious to all damage.
    B:"ebwizardry:ice_statue"=true

    # Launches an iceball in the direction you are pointing.
    B:"ebwizardry:iceball"=true

    # Sets the target on fire for 10 seconds. Also works like a flint and steel.
    B:"ebwizardry:ignite"=true

    # Temporarily imbues the first weapon on the caster's hotbar with magic, rendering it more effective. The magic wears off after 45 seconds.
    B:"ebwizardry:imbue_weapon"=true

    # Emits an intimidating growl which causes nearby creatures to run away in fear. Fear stricken creatures will recover after 30 seconds.
    B:"ebwizardry:intimidate"=true

    # Grants the caster and all nearby allies increased strength for 45 seconds.
    B:"ebwizardry:invigorating_presence"=true

    # Makes the caster invisible for 30 seconds.
    B:"ebwizardry:invisibility"=true

    # Changes the weather in the world.
    B:"ebwizardry:invoke_weather"=true

    # Greatly improves the caster's damage resistance for 30 seconds.
    B:"ebwizardry:ironflesh"=true

    # Causes the caster to jump upwards several blocks and slightly forward.
    B:"ebwizardry:leap"=true

    # Raises the caster upwards while the use item button is held. Will also negate fall damage if used before hitting the ground.
    B:"ebwizardry:levitation"=true

    # Creates a stream of withering energy in the direction you are pointing which drains the life of the target and uses it to gradually regenerate your health.
    B:"ebwizardry:life_drain"=true

    # Creates a magical point of light which illuminates the surrounding area. Lasts for 30 seconds.
    B:"ebwizardry:light"=true

    # Shoots an arrow of lightning in the direction you are pointing.
    B:"ebwizardry:lightning_arrow"=true

    # Causes lightning to strike where you are pointing.
    B:"ebwizardry:lightning_bolt"=true

    # Sends a disk of lightning flying off in the direction you are pointing, which seeks targets.
    B:"ebwizardry:lightning_disc"=true

    # "I smite you by the wrath of the heavens!"
    B:"ebwizardry:lightning_hammer"=true

    # Charges the ground around the caster with lightning, damaging and repelling nearby creatures.
    B:"ebwizardry:lightning_pulse"=true

    # Creates a stream of lightning in the direction you are pointing which continually damages targets.
    B:"ebwizardry:lightning_ray"=true

    # Places a magical lightning trap on the ground which damages the creature that triggers it and chains lightning to other nearby creatures.
    B:"ebwizardry:lightning_sigil"=true

    # "Focus. Channel the storm in your mind through your wand and unleash its fury."
    B:"ebwizardry:lightning_web"=true

    # Fires a bolt of magical energy in the direction you are pointing.
    B:"ebwizardry:magic_missile"=true

    # Changes the target into another form. Only works on some creatures.
    B:"ebwizardry:metamorphosis"=true

    # Some wizards just want to see the world burn...
    B:"ebwizardry:meteor"=true

    # Takes control of the target's mind for 30 seconds, causing it switch sides and fight for the caster instead. Will not work on creatures that are too strong-willed.
    B:"ebwizardry:mind_control"=true

    # Confuses and disorients the target for 15 seconds, rendering it unable to attack effectively. The effect will be dispelled if the target takes damage.
    B:"ebwizardry:mind_trick"=true

    # Breaks the block the caster is looking at. Potency will allow harder blocks to be broken.
    B:"ebwizardry:mine"=true

    # Silences any sounds made by the caster for 30 seconds. When muffled, mobs can only detect you when looking towards you.
    B:"ebwizardry:muffle"=true

    # Improves the caster's damage resistance for 30 seconds.
    B:"ebwizardry:oakflesh"=true

    # Delivers a powerful lightning bolt that paralyses targets for 5 seconds. Paralysed creatures cannot move and will still take damage - but too much will snap the creature out of paralysis.
    B:"ebwizardry:paralysis"=true

    # Turns the target to stone until broken out, with a chance for it to break out when it is dark. The target cannot move or do anything while petrified but is also impervious to all damage.
    B:"ebwizardry:petrify"=true

    # Teleports the caster a short distance in front of them, including through walls. Range upgrades will increase the wall thickness you can teleport through.
    B:"ebwizardry:phase_step"=true

    # The darkness will consume them all...
    B:"ebwizardry:plague_of_darkness"=true

    # Smelts up to 5 smeltable items in the caster's inventory. Items on the hotbar will be smelted first.
    B:"ebwizardry:pocket_furnace"=true

    # Allows the caster to craft items as if they were at a crafting table.
    B:"ebwizardry:pocket_workbench"=true

    # Fires poison in the direction you are pointing.
    B:"ebwizardry:poison"=true

    # Lanches a poison bomb in the direction you are pointing which explodes on impact, poisoning nearby creatures.
    B:"ebwizardry:poison_bomb"=true

    # "Become thy enemy."
    B:"ebwizardry:possession"=true

    # Emits a ray of blinding light that damages and blinds its targets. Undead creatures take double damage and are set on fire.
    B:"ebwizardry:ray_of_purification"=true

    # Removes any curse currently affecting the caster.
    B:"ebwizardry:remove_curse"=true

    # Replenishes the caster's food level by 3 hunger points.
    B:"ebwizardry:replenish_hunger"=true

    # With a master healer by your side, being dead is... optional.
    B:"ebwizardry:resurrection"=true

    # Removes a random negative potion effect and inflicts it upon the target, which will suffer that effect for the remaining duration. Potency increases the number of effects that are reversed.
    B:"ebwizardry:reversal"=true

    # Creates a ring of fire around the caster, damaging all nearby enemies and setting them on fire.
    B:"ebwizardry:ring_of_fire"=true

    # Replenishes the caster's food level by 8 hunger points.
    B:"ebwizardry:satiety"=true

    # Creates a wall of darkness in front of the caster which causes half of all incoming damage to be inflicted upon the attacker instead.
    B:"ebwizardry:shadow_ward"=true

    # Creates a protective barrier of force that blocks projectiles and magic. Also grants the caster a weak resistance effect.
    B:"ebwizardry:shield"=true

    # Boom.
    B:"ebwizardry:shockwave"=true

    # Shoots a shulker bullet which seeks targets and causes them to levitate when hit.
    B:"ebwizardry:shulker_bullet"=true

    # "Ahhhh! They're MULTIPLYING!"
    B:"ebwizardry:silverfish_swarm"=true

    # Allows the caster to sense the locations of nearby creatures, even through walls, for 20 seconds.
    B:"ebwizardry:sixth_sense"=true

    # Engulfs the target in slime which slows and continually damages it. The slime bursts after 10 seconds.
    B:"ebwizardry:slime"=true

    # Chronomancy is the art of manipulating time itself to fit one's needs. It was widely believed to be lost in the past... until now.
    B:"ebwizardry:slow_time"=true

    # Launches a smoke bomb in the direction you are pointing which explodes on impact, releasing smoke and blinding nearby creatures for a short time.
    B:"ebwizardry:smoke_bomb"=true

    # Sets a trap on the ground which damages and briefly slows the creature that triggers it.
    B:"ebwizardry:snare"=true

    # Launches a snowball in the direction you are pointing.
    B:"ebwizardry:snowball"=true

    # Launches a shock charge in the direction you are pointing which releases sparks at nearby enemies on impact.
    B:"ebwizardry:spark_bomb"=true

    # Creates an indestructible magical bridge in front of you which extends for 15 blocks. The bridge vanishes after 60 seconds.
    B:"ebwizardry:spectral_pathway"=true

    # ...day, night, dawn, dusk, sunrise and sunset: thus is the passage of time, which traps us in an endless cycle of...
    B:"ebwizardry:speed_time"=true

    # Summons a swarm of venomous spiders to fight for you. The spiders will disappear after 30 seconds or if they are killed.
    B:"ebwizardry:spider_swarm"=true

    # Surrounds the caster with lightning for 30 seconds, firing a spark of lightning at anything that hits them.
    B:"ebwizardry:static_aura"=true

    # Summons a blaze to fight for you. The blaze will disappear after 30 seconds or if it is killed.
    B:"ebwizardry:summon_blaze"=true

    # "Smash them!"
    B:"ebwizardry:summon_ice_giant"=true

    # Summons an ice wraith to fight for you. The ice wraith will disappear after 30 seconds or if it is killed.
    B:"ebwizardry:summon_ice_wraith"=true

    # Automatic automated autonomous automaton.
    B:"ebwizardry:summon_iron_golem"=true

    # Summons a lightning wraith to fight for you. The lightning wraith will disappear after 30 seconds or if it is killed.
    B:"ebwizardry:summon_lightning_wraith"=true

    # From the ashes...
    B:"ebwizardry:summon_phoenix"=true

    # Summons a shadow wraith to fight for you.
    B:"ebwizardry:summon_shadow_wraith"=true

    # Summons a skeleton to fight for you. The skeleton will disappear after 30 seconds or if it is killed.
    B:"ebwizardry:summon_skeleton"=true

    # "Rise, undead army!"
    B:"ebwizardry:summon_skeleton_legion"=true

    # Creates a snow golem to fight for you. Lasts until the snow golem dies.
    B:"ebwizardry:summon_snow_golem"=true

    # Summons a spirit horse for you to ride. The spirit horse will vanish a short while after it is dismounted, or you can dismiss it by shift-right-clicking on it with any wand.
    B:"ebwizardry:summon_spirit_horse"=true

    # Summons a spirit wolf companion to fight for you. The spirit wolf will only disappear if it is killed, or you can dismiss it by shift-right-clicking on it with any wand.
    B:"ebwizardry:summon_spirit_wolf"=true

    # "Storm Elemental: An ancient manifestation of the elements, it can hardly contain the raw power churning within it." - The Wizard's Guide to Arcane Beings, Volume II
    B:"ebwizardry:summon_storm_elemental"=true

    # Summons a wither skeleton to fight for you. The wither skeleton will disappear after 30 seconds or if it is killed.
    B:"ebwizardry:summon_wither_skeleton"=true

    # Summons a zombie to fight for you. The zombie will disappear after 30 seconds or if it is killed.
    B:"ebwizardry:summon_zombie"=true

    # Moves an item or other small object towards you, or right-clicks the block you are looking at. Can also be used to disarm players.
    B:"ebwizardry:telekinesis"=true

    # Shoots a bolt of thunder which knocks back targets.
    B:"ebwizardry:thunderbolt"=true

    # "Mwahahahahahaha!"
    B:"ebwizardry:thunderstorm"=true

    # Unleashes a tornado in the direction you are pointing which hurls anything in its path skywards.
    B:"ebwizardry:tornado"=true

    # Makes the caster transient for 20 seconds. The caster is immune to all damage while transient but cannot break or place blocks or cause any damage.
    B:"ebwizardry:transience"=true

    # Transports the caster to their remembered stone circle. To use this spell, make a circle of stones of transportation, then right click it with a wand.
    B:"ebwizardry:transportation"=true

    # Grants the caster access to their ender chest storage.
    B:"ebwizardry:vanishing_box"=true

    # Summons a swarm of flying vexes to fight for you. The vexes will disappear after 30 seconds or if they are killed.
    B:"ebwizardry:vex_swarm"=true

    # Winter at your fingertips.
    B:"ebwizardry:wall_of_frost"=true

    # Grants the caster a shielding effect that reduces incoming magic damage for 30 seconds.
    B:"ebwizardry:ward"=true

    # Allows the caster to breathe underwater for 60 seconds.
    B:"ebwizardry:water_breathing"=true

    # Causes the target to be blown upwards and away from you at speed.
    B:"ebwizardry:whirlwind"=true

    # Fires a ray of darkness which withers anything it touches.
    B:"ebwizardry:wither"=true

    # Launches a wither skull in the direction you are pointing.
    B:"ebwizardry:wither_skull"=true

    # Conjures a localized toxic rainstorm where you are pointing, continually damaging anything caught within it.
    B:"tfspellpack:acid_rain"=true

    # "The talisman felt incredibly dense in one's hand, and seemed to be made of some otherworldly substance that allowed it to vaporize matter itself."
    B:"tfspellpack:annihilation"=true

    # "Baaaaaaahhhhh"
    B:"tfspellpack:call_of_the_horn"=true

    # "Mixing redstone and borer essence with a ghast tear in just the right quantities creates a highly reactive substance known as carminite, with some rather curious properties."
    B:"tfspellpack:carminite_singularity"=true

    # Atop a glacier, in a shimmering tower,
    # An evil sorceress guards her throne.
    # Blessed with frost, immense in power,
    # Yet cursed to eternity alone.
    B:"tfspellpack:chariot_of_ice"=true

    # Conjures a cloud of burning cinders where you are pointing, which damages and sets fire to anything caught within it.
    B:"tfspellpack:cinder_cloud"=true

    # Shoots a death tome page in the direction you are pointing.
    B:"tfspellpack:death_page"=true

    # Shoots a druid bolt in the direction you are pointing.
    B:"tfspellpack:druid_hex"=true

    # "The explorer's notebook contained just three words of advice: 'watch your step'."
    B:"tfspellpack:fire_jets"=true

    # Conjures 5 magical shields which protect you from incoming attacks. Each shield will last 12 seconds or until it is destroyed.
    B:"tfspellpack:fortification"=true

    # Blasts icy winter wolf breath in the direction you are pointing, which damages and freezes targets.
    B:"tfspellpack:frost_breath"=true

    # "Fly, my minions!"
    B:"tfspellpack:ghast_trap"=true

    # Launches an explosive hydra mortar in the direction you are pointing.
    B:"tfspellpack:hydra_bomb"=true

    # "...for they had slain the mighty hydra, and like kings they dined upon its life-giving flesh, afore a dusky sky awash with stars."
    B:"tfspellpack:hydras_vigour"=true

    # Launches a lingering ice bomb in the direction you are pointing.
    B:"tfspellpack:ice_bomb"=true

    # Grants the caster improved natural regeneration for 30 seconds.
    B:"tfspellpack:ironwood_heart"=true

    # Heals the caster to 4 hearts and grants regeneration for 10 seconds.
    B:"tfspellpack:life_charm"=true

    # Causes the caster to disappear in the dark, like a mist wolf, for 30 seconds.
    B:"tfspellpack:mist_cloak"=true

    # Shoots a moonworm in the direction you are pointing, lighting up the area where it lands.
    B:"tfspellpack:moonworm"=true

    # The uncrafting table is a strange and rare artifact of goblin origin. What's even stranger is how they managed to fit one inside this book...
    B:"tfspellpack:pocket_tinkerer"=true

    # "Don't make me throw a tantrum."
    B:"tfspellpack:rain_of_tears"=true

    # "The souls of ill-fated wanderers, possessed by the snow queen, roam the halls tirelessly, as if looking for something. What are they searching for? We may never know."
    B:"tfspellpack:snow_guardian_horde"=true

    # The dark forest is no place for the faint-hearted.
    B:"tfspellpack:suffocating_mist"=true

    # Summons a cave troll to fight for you. The cave troll will disappear after 30 seconds or if it is killed.
    B:"tfspellpack:summon_cave_troll"=true

    # Summons a fire beetle to fight for you. The fire beetle will disappear after 30 seconds or if it is killed.
    B:"tfspellpack:summon_fire_beetle"=true

    # Summons a redcap goblin to fight for you. The goblin will disappear after 30 seconds or if it is killed.
    B:"tfspellpack:summon_goblin"=true

    # Summons an ice core to fight for you. The ice core will disappear after 30 seconds or if it is killed.
    B:"tfspellpack:summon_ice_core"=true

    # Summons a skeleton druid to fight for you. The skeleton druid will disappear after 30 seconds or if it is killed.
    B:"tfspellpack:summon_skeleton_druid"=true

    # Summons a slime beetle to fight for you. The slime beetle will disappear after 30 seconds or if it is killed.
    B:"tfspellpack:summon_slime_beetle"=true

    # Summons a twilight wraith to fight for you. The twilight wraith will disappear after 30 seconds or if it is killed.
    B:"tfspellpack:summon_twilight_wraith"=true

    # Transforms the target into its twilight forest counterpart, and vice versa.
    B:"tfspellpack:transformation"=true

    # Ignites twilight forest portals.
    B:"tfspellpack:twilight_catalyst"=true

    # Shoots a twilight orb in the direction you are pointing.
    B:"tfspellpack:twilight_orb"=true
}


##########################################################################################################
# worldgen
#--------------------------------------------------------------------------------------------------------#
# Settings that affect world generation. In multiplayer, the server/LAN host settings will apply.
##########################################################################################################

worldgen {
    # Whether to use faster worldgen at the cost of 'seamlessness'. Enabling this option removes the checks for steep slopes and cleanup of floating trees that improve the look of worldgen. Performance improvement will vary depending on your setup. This option will affect randomisation; for any given seed, structures will not be the same as when it is turned off.
    B:fastWorldgen=false

    # List of dimension ids in which wizard towers will generate. Remove all dimensions to disable wizard towers completely.
    I:towerDimensions <
        0
     >

    # Rarity of wizard towers. 1 in this many chunks will contain a wizard tower, meaning higher numbers are rarer.
    I:towerRarity=900

    # The chance for wizard towers to generate with an evil wizard and chest inside, instead of a friendly wizard.
    D:evilWizardChance=0.2

    # List of structure file locations for wizard towers without loot chests. One of these files will be randomly selected each time a wizard tower is generated. File locations are of the format [mod id]:[filename], which refers to the file assets/[mod id]/structures/[filename].nbt. Duplicate entries are permitted, allowing for simple weighting without duplicating the structure files themselves. This list should not be empty; to disable wizard towers, use the tower dimensions setting.
    S:towerFiles <
        ebwizardry:wizard_tower_0
        ebwizardry:wizard_tower_1
        ebwizardry:wizard_tower_2
        ebwizardry:wizard_tower_3
     >

    # List of structure file locations for wizard towers with loot chests. One of these files will be randomly selected each time a wizard tower is generated. File locations are of the format [mod id]:[filename], which refers to the file assets/[mod id]/structures/[filename].nbt. Duplicate entries are permitted, allowing for simple weighting without duplicating the structure files themselves. This list should not be empty; to disable wizard towers, use the tower dimensions setting.
    S:towerWithChestFiles <
        ebwizardry:wizard_tower_chest_0
        ebwizardry:wizard_tower_chest_1
        ebwizardry:wizard_tower_chest_2
        ebwizardry:wizard_tower_chest_3
     >

    # List of dimension ids in which obelisks will generate. Remove all dimensions to disable obelisks completely.
    I:obeliskDimensions <
        0
        -1
     >

    # Rarity of obelisks. 1 in this many chunks will contain an obelisk, meaning higher numbers are rarer.
    I:obeliskRarity=800

    # List of structure file locations for obelisks. One of these files will be randomly selected each time an obelisk is generated. File locations are of the format [mod id]:[filename], which refers to the file assets/[mod id]/structures/[filename].nbt. Duplicate entries are permitted, allowing for simple weighting without duplicating the structure files themselves. This list should not be empty; to disable obelisks, use the obelisk dimensions setting.
    S:obeliskFiles <
        ebwizardry:obelisk_0
        ebwizardry:obelisk_1
        ebwizardry:obelisk_2
        ebwizardry:obelisk_3
        ebwizardry:obelisk_4
     >

    # List of dimension ids in which shrines will generate. Remove all dimensions to disable shrines completely.
    I:shrineDimensions <
        0
        -1
     >

    # Rarity of shrines. 1 in this many chunks will contain a shrine, meaning higher numbers are rarer.
    I:shrineRarity=1500

    # List of structure file locations for shrines. One of these files will be randomly selected each time a shrine is generated. File locations are of the format [mod id]:[filename], which refers to the file assets/[mod id]/structures/[filename].nbt. Duplicate entries are permitted, allowing for simple weighting without duplicating the structure files themselves. This list should not be empty; to disable shrines, use the shrine dimensions setting.
    S:shrineFiles <
        ebwizardry:shrine_0
        ebwizardry:shrine_1
        ebwizardry:shrine_2
        ebwizardry:shrine_3
        ebwizardry:shrine_4
        ebwizardry:shrine_5
        ebwizardry:shrine_6
        ebwizardry:shrine_7
     >

    # List of dimension ids in which crystal ore will generate. Note that removing the overworld (id 0) from this list will make the mod VERY difficult to play!
    I:oreDimensions <
        0
     >

    # List of dimension ids in which crystal flowers will generate.
    I:flowerDimensions <
        0
     >

    # List of loot tables to inject wizardry loot (as specified in loot_tables/chests/dungeon_additions.json) into.
    S:lootInjectionLocations <
        minecraft:chests/simple_dungeon
        minecraft:chests/abandoned_mineshaft
        minecraft:chests/desert_pyramid
        minecraft:chests/jungle_temple
        minecraft:chests/stronghold_corridor
        minecraft:chests/stronghold_crossing
        minecraft:chests/stronghold_library
        minecraft:chests/igloo_chest
        minecraft:chests/woodland_mansion
        minecraft:chests/end_city_treasure
     >
}


