Spells & Shields
Rewrite for Data Packs
This mod is currently being rewritten to be fully data driven, so you will also be able to make your own spells with json files. For development updates join the discord.
To not confuse people, the in-dev BETA v2 versions are kept exclusively on modrinth and the feature-rich v1 versions are exclusively kept on curseforge. This will change once v2 is fully released. Then you will find both major versions on both platforms.
The rewrite is actually already done when it comes to all the mechanics running in the background. The full release of v2 is basically going to happen once all features of v1 are re-added using the new data driven system.
To check out the in-dev BETA v2 version, check out the modrinth page:
To get the feature-rich v1 version, you are at the right place (curseforge).
Discord
Join my Discord server to get frequent updates about the mod. This is a direct channel to me for feedback & suggestions.
Features
- A new mana system that works similarly to the health bar.
- Numerous spells which can be learned by exploring different spell trees.
- New potions, enchantments and effects to properly embed the new features into vanilla Minecraft.
- The physical aspect of PvP is still very strong, viable and deadly against magic.
- Different configs and commands to allow proper customization for players and servers.
- Every new feature and mechanic is well thought through to try and not make any vanilla aspect obsolete.
Addons
- Spells & Shields: The Power of Origins (Origins integration: Adding origin requirements to spell progression trees.)
- Spells & Shields: Magicians' Tinkering (Tinkers' Construct integration: New mana modifiers for tools, weapons and armor.)
Compatibility & Integrations
- Compatible with Quark and Quark Oddities.
- Compatible with Apotheosis
- Integrated into Neko's Enchanted Books
- Integrated into JEI (Potion recipes, etc.)
- Integrated into JEI Enchantment Info
- Integrated into Just Enough Effect Descriptions (JEED)
Design Plan
This is the current design plan. This contains a very simple form to suggest spells, if you are interested in contributing:
Spells
Spells can be equipped in spell trees after learning them. You have 5 spell slots available in total. Each spell slot can be equipped individually with a spell. To fire that spell you use the key binding associated with the slot the spell is in. You can always view your equipped spells in your survival inventory. Spells typically just consume mana as a cost to fire them, but it can differ for each spell.
Spell Trees
You gain access to your available spells and spell trees in the Enchanting Table (yes, the vanilla one). Similar to enchantments, you unlock spells by consuming experience levels. The cost for each spell can differ. The spells and spell trees you can interact with on an Enchanting Table are dependent on the amount of bookshelves placed around it (maximum amount is 32). This means that you can not equip or learn certain spells and spell trees if the surrounding enchanting power (bookshelves) is too low (they will not show up at all).
Spells are forgotten on death (by default, this is configurable) meaning that you have to re-learn them (eg. invest XP) but they are still visible in their respective spell trees.
Mana
Mana is the source of energy to perform spells. The mana regeneration is always static at 1 full mana unit per 5 seconds (you can hold up to 10 mana units by default). Of course, your current mana can be influenced by different potions and effects. The mana bar is shown in blue, unless the Leaking effect is applied to you, in which case the colour turns into a slight green. Additionally, there is extra mana which is shown in pourple. Extra mana works just like the absorption effect works in terms of health: Whenever you burn mana while having extra mana it is burned from the extra mana resource. Extra mana is given in certain occasions or by certain effects and does not regenerate once burned. There is also a mana boost effect that may affect your maximum mana.
Effects
- Mana Boost: Works similar to the existing Health Boost effect: Modifies your maximum mana.
- Extra Mana: Works similar to the existing Absorption effect (yellow hearts): Increases your maximum mana with extra units that can not be regenerated.
- Silence: You can not activate any spells actively while this effect is active.
- Magic Immune: You are immune to any magic damage that does not ignore invulnerability (eg. falling out of the world).
- Some more effects which are available for potion brewing (see Potions below).
Potions
There are new potions which interact with your new mana resource. They mirror those potions that interact with your health in time and amplification:
- Potion of Instant Mana = Awkward Potion + Lapis Lazuli: Instantly restores mana, similar to the Potion of Healing.
- Potion of Mana Bomb = Potion of Instant Mana + Fermented Spider Eye: Instantly burns mana, similar to the Potion of Harming.
- Potion of Replenishment = Awkward Potion + Tube Coral Fan: Restores mana over time, similar to the Potion of Regeneration.
- Potion of Leaking = Awkward Potion + Dead Tube Coral Fan: Burns mana over time, similar to the Potion of Poison.
Enchantments
- Magic Protection: Applied to armour. Works similar to existing Protection enchantments (eg. Protection, Projectile Projection, ...): Protects twice as well against magic damage as the Protection enchantment does but is incompatible with other Protection enchantments.
- Mana Blade: Works similar to existing damage enchantments (eg. Sharpness, Bane of Arthropods, ...): Consumes mana on hit to increase damage but is incompatible with other damage-increase enchantments.
- Mana Shield: TODO This does nothing as of now. I recommend NOT using this as compatibilities might change.
- Mana Regeneration: Increases your mana regeneration: Wearing a full set of armor with the maximum level of this enchantment applied effectively doubles your mana regeneration. Chestplate and Leggings give more than Helmet and Boots. Incompatible with "Maximum Mana".
- Maximum Mana: Increases your maximum mana: Wearing a full set of armor with the maximum level of this enchantment applied effectively doubles your maximum mana. Chestplate and Leggings give more than Helmet and Boots. Incompatible with "Mana Regeneration".
Attributes
- Maximum Mana: Min Value: 0, Max Value: 1024, Default Value: 20, ID:
spells_and_shields:generic.max_mana
- Mana Regeneration: Min Value: 0, Max Value: 50, Default Value: 1, ID:
spells_and_shields:generic.mana_regeneration
Commands
/spells progression learn (targets) (spell)
: Makes a target learn a specific spell./spells progression learn (targets) all
: Makes a target learn all spells./spells progression forget (targets) (spell)
: Makes a target forget a specific spell (a forgotten spell can still be seen in spell trees but must be re-learned)./spells progression forget (targets) all
: Makes a target forget all spells (a forgotten spell can still be seen in spell trees but must be re-learned)./spells progression reset (targets)
: Resets spell progression for all targets to start (full wipe)./spells slots set (targets) (slot) (spell)
: Sets a spell in a spell slot (0-4) for all targets./spells slots remove (targets) (slot)
: Clears a spell slot (0-4) for all targets./spells slots clear (targets)
: Clears all spell slots for all targets.
Configuration Files
- You can configure both basic client side (eg. where to put the Mana Bar) and server side settings.
- Every spell is individually configurable, including their mana costs, consumed items when firing them or their individual effects (eg. damage of a Fire Ball spell).
- Spell trees can be redesigned, removed or added to your liking. Every from spells to required bookshelves is customizable.
- Configuration files do not need to be synchronized from the server to the client. The server can keep exact spells settings and their spell trees secret with the information only being revealed on players' discovery.
- All configuration files are inside the
.minecraft/config/spells_and_shields
folder.
client.toml and server.toml
Contains very basic settings. Everything is explained inside said configuration files. Most values can be changed while the game is open.
spell_trees Folder
Every available spell tree is loaded from in here. As explained, you can add, remove or edit any file in here. Every .json file is seen as potential spell tree and parsed (the file name does not matter). If a file is of invalid format it will not be loaded and an error is dispatched in the log file (the game continues and does not crash).
spells Folder
Most spells are configurable and their config files are in here. Only ever edit the values of these files - do not add, remove or rename any file in here as the game would simple ignore them or recreate them in their default setting.
I take no damage when I use this mod.. Most likely a conflict with another mod.
In reply to AhDeh:
Yes. Definitely another mod at fault.
我发现使用闪电魔法时,向空中施放法术没有效果,但物品和法力被扣除,你能解决吗?谢谢。
I tried using it with the spells and shields mod on 1.19.2 but apparently those two arent compatible since the button to open the artifacts slots closes the spells slots
In reply to alaia_w:
I think you meant to comment somewhere else...
Is there a way to increase the ghast spell blast radius and damage? I looked through the config and there was no option to do so with the ghast spell only the mana cost and number of required fire charges.
In reply to d1x13n0rm0u5:
No. Not in v1. The spell fires the same entity as ghasts and as such is predefined. V2 will allow you to change it.
In reply to CAS_ual_TY:
Ah I see thanks I look forward to V2 and great job on the mod so far!
may I suggest a way to move the abilities from inventory to the right side via config? there's quite a lot of stuff going on... lol
i use 1.18
Is there a way to make passive spell effects?
In reply to jankoneria:
Like, right now or in v2?
In reply to CAS_ual_TY:
Didn't even see there was a v2, I guess either one is fine.
In reply to jankoneria:
https://github.com/CAS-ual-TY/Spells-And-Shields/wiki/3.-Home-(1.9.2-Legacy)#make-effect-spells-permanent
Do you give permission for someone to port it to fabric?
Could you add more abilities to skill trees like summoning evoker fangs(use xp, lapis and mana), covert friendly allay into vexes that attack hostile mobs temporary(at the cost of emeralds and mana (i dunno might be unbalanced), use prismarine shards to slowly charge and fire guardian lasers(at the cost of mana) and finally my most stupid idea: a kamikaze attack that mimics a creepers explosion(an audible hissing noise) that costs tnt, mana and the life of the player in a massive, high damage explosion that does not destroy blocks.
I think that most of this isn't balanced but I would like to know what you think.
I was thinking of a warden's sonic boom at the cost of echo shards, mana and xp and 50% of the player's health
Some damages dealt by spells seems to not be "dealt" by players (so mobs don't drop xp). Is it intended?
Also love the removal of passive mob effects and instead you get 20 seconds by consuming mana.
Also I don't know if it's intended but mana is consumed when not in range (e.g. lightning spell, if too far away mana and copper are consumed but no lightning strike)
In reply to Insane96MCP:
Thank you for the first report about the xp. I will look into that.
2nd: Yes intended. You pay for attempt, not the execution.
is it possible to make spells consume durability for an item but not the entire item itself? if not can you make that so? im attempting to make some spells require using a staff and i dont want staffs to be infinite but dont want them to be consumed either
related question: is it possible to make multiple items valid for using a specific spell?
In reply to Internextion:
About the first question: This is a good idea. I will write that down for v2.
Second question: You can make multiple items be required right now, but not eg. add different alternatives. This is also something vor v2.
Unfortunately, these things are not possible as of right now.
This is the best Spell Mod I've ever seen. The mana system balances the fire spell perfectly, and creates a cool down effect for the spell. For future spells, (to keep them balanced and minimal as a vanilla type addon) the future combat spells should deal low but fair damage. This way, melee combat is not completely useless. I'm still play testing this mod with Better Combat, but so far everything is balanced.
One addition that would be really nice to spice up combat in general, would be to add a simple healing spell that a player can shoot another player with. Maybe it heals 2 hearts, and costs 5 mana. Not a healing spell that can be cast on the self, but one that gives a player an element of teamwork to provide to another player.
Props to the way you made the spells easy to navigate for the display in the game. Its simple, effective, and not overly complicated to implement. I'll keep play testing this mod. Love to see future updates. Thank you for your hard work on this.