### IMPORTANT NOTE
7.0 Represents a major change for Magic "under the hood", and is hopefully the beginning of a more flexible framework for the future.
However, this means that the initial release of 7.0 could potentially have issues and should be considered semi-experimental.
I've tried my best to test it as much as I could, but with a plugin as configurable as Magic there is always the possibility
that I've missed some use-case or that it won't work quite right with your configs.
So please, if at all possible, when upgrading to 7.0 do some testing with your configs in a controlled environment, or at least
make sure to backup MC player data and Magic player data first. Note that without backups it will be *very difficult* to
downgrade from 7.0, as wand data will migrate to player data, and older versions won't know what to do with it.
If you are using completely customized configs there shouldn't be much change, I'm hoping everything will work the same as before.
If you are using the default configs or inheriting from them, everything should *appear* the same as before. However, things
are going to work a little differently behind the scenes.
Magic is evolving past a custom items and spells plugin, and hopefully will become more like the RPG framework that, I think,
many users have always wanted it to be.
For now what this mainly means is that you can configure how data is stored, instead of it always being stored on the wand items.
The default wands are now set up to store mana, spells and a few other attributes to the owning player. This means that
player progression is now tied to the player, not the wand.
If a player were to craft a new wand, they will see it has their mana and spells on it.
Mana and spells are shared between the Wand, Master Sword and Spell Book, so players are free to mix and match and choose
their own play style without having to re-earn the same spells over and over.
The war configs also make use of this new setup, allowing players to increase their "skill" with certain weapons.
Potter and stars configs have not yet been converted, but they will be, probably in the next release.
Mana and spells will be stored in separate classes, so that configs can still be mixed together and make sense.
In the future I hope to expand on all of this with a class system in the new "rpg" configs. This isn't ready yet, however,
but I have been working on these changes for so long, now that they seem functional and stable I wanted to get them out there.
I hope you enjoy! Please let me know if you run into any issues.
### General Changes
- War configs: some weapon skills now upgrade with use
- Add protection option for magic mobs, warlocks no longer take fall damage
- The ModifyMana action now acts on the target rather than caster
- Check for lore as well when comparing crafting ingredients
- Color and word wrap support for recall icon descriptions
- Fix right-click behaviors with skull wands
### Player Data and Classes
- Add /mage configure, upgrade and describe commands for dealing with Mage data
- Add /mage add and remove commands for dealing with Mage spells and brushes
- Add /mage reset (class) option, for resetting a class progress on a player
- Add /mage activate and unlock commands, for manipulating mage classes
- Add classes config file, defaults have a basic setup in each example config. Generally:
- Spells and mana are held by a base class that may be shared (like by the Master Sword, Wand and Spellbook)
- Progression path is stored on sub-classes
- All other properties are still tied to the wand items
- Add support for magic items as crafting recipe ingredients. Only display names are checked!
- Add support for "\n" to make multiple lines in wand and spell "description" fields.
- Catch the BlockFadeEvent for undo purposes, fixes path blocks not restoring properly when covered by magic blocks
- Fix gravity's affect on a projectile's speed. In particular fixes odd behavior with projectiles shot straight up.
- Fix an issue where blocks undoing after a piston has extended into their space would break the piston
- Fix a potential for a stashed wand (e.g. air glider) to disappear when using with a wand inventory open
- Some fixes to the Tag spell
- Cooldown and "not enough mana" sounds are only heard by the caster.
- Fix strange undo behavior when players' undo queues are full.
- Entities are now modified prior to being spawned. This fixes some issues, such as not being able to take weapons
away from pig zombies or vexes.
- Fix an exploit that may allow players to put spells in chests and duplicate them
- Fix some undo issues involving overlapping casts that remove sand blocks
- Optimize large numbers of Magic NPCs
- Fix an error in the /magic list entities command
- Fix a potential error when a player logs out while a spell is being cast on them
- Fix some potential spell exploit issues revolving around Disarm
- Add "bind_on_give" config property, if you want wands to bind when given with /mgive or /wand
- Fix ability to sneak a wand into a check with "wand_undroppable: true" via hotbar buttons
- Fix issues with item frames and block-creating spells
- Fix an issue with the wand sometimes not saving to item when unequipping
- Fix wands breaking blocks like tools even if cancel_interact_on_cast was true
- Fix double-cast bugs: return click_cooldown to previous default value
- Allow &4-style color codes in wand descriptions
- Warlocks no longer cast spells after being disarmed
- Fix minor block exploit when breaking a block that has been modified by spells more than once before undo
- Wands now use right-click instead of drop by default!
- Some technical changes for performance and anti-glitching:
- Remove several calls to Player.updateInventory
- Remove unnecessary wand data saving, reducing item bobbing
- Change casting to use animate event rather than interact event
- Wand inventory, hotbar and brush instructions will now change to reflect wand controls
- Fix tile entity support ("log spam") in 1.12.1
- Add new Snake automata
- Defenders are a 50% reflective
- Add max_velocity config option, defaults to 10 but if you're running Paper you may need to change it to 4.
- Fix more glitches with undoing changes to doors (grrrr doors)
- Fix spells in inventory (as items) disappearing when opening/closing wand
- No longer have hearts, will lose blocks as they are destroyed and eventually die
- Can't be spawned from command blocks, will erase any old command blocks from previous automata
- Added some more name suffixes and prefixes
- Increase spell attack range
- Add support for setting permission nodes on shop items
- Blast and Sticky Bomb use block cracking effects
- Fix hollow Cylinder and Disc casts at larger radii
- Add Ring action (hollow Disc)
- Fix Blink looking broken when casting into the air or out of range
- More Automata changes:
- Automata no longer use command blocks
- Automata are reflective, except for the redstone
- Re-balance automata drops and resurrection costs to avoid abuse
- Removed automata.yml, automata now just despawn on chunk onload and server restart
- Defenders use a different heart (lapis block)
- Blast and Collapse are now projectiles
- SP Earn Bonus (Mana Talisman) will work on SP item pickups
- Mana Talisman set to keep on death
- Fix Recall warmup FX
- Add "/mconfig clean" command, for cleaning up configs that have had the defaults copy+pasted into them
- Add Vault integration support for MagicArenas
- Implement faster block changes, currently in limited use (MagicWorlds, maybe Automata)
- Add SP potion (potion_sp100 wand)
- Add enable_map_animations config option for turning off GIF maps for whatever reason
- Add different colored blasters to star configs
- Fix Projector spell, giphy doesn't like my direct-linking anymore.
- Don't allow placing wands in furnaces
- Removed TNT and creeper auto-rollback from war configs
- Fix SuperAlter
- Fix issue with Blast + Push leaving behind permanent blocks
- Fix Magic Missile glitching out and duping doors
- Add ModifyGameMode action
- Automata changes:
- Drop SP and gold as well as hearts, drop less XP
- Fix targeting, worms no longer run away
- Will clean up after themselves (WIP)
- Improved aim, rebalanced to use more powerful spells, but may be easier to kill
- Naturally spawned automata can use restricted materials