MagicSpells
Note: MagicSpells is being maintained on this GitHub fork and you can find help at the official Discord.
Info
MagicSpells is a Minecraft Bukkit plugin that creates magic spells your players can use. Its main purpose is to give your players access to certain abilities that you might not want to give them unlimited access to. However, instead of just giving them access to boring commands, they instead get more interesting spells. Each spell can be configured in many ways:
- Reagent costs (the cost of using the spell, including items, mana, health, hunger, experience, and item durability)
- Cooldowns (the amount of time a player must wait between uses)
- Durations (how long certain effects last)
- Ranges (how far away spells can be used from their target)
- Many more options, depending on the spell
Spells can be cast by using the /cast command, swinging a configurable wand item, or both. It's also possible to have them triggered from other actions the player may take. It's all customizable.
Usage
Before a player can cast a spell, they must already know it. There are several ways a player can learn a spell:
- Taught with the teach spell
- Learned from a spellbook
- Learned from a tome
- Gained from a grant permission
- Purchased from a shop
- Being a server op (they know all spells) For example, a server op can teach Bob the blink spell by typing: ''/cast teach bob blink''.
Once a spell is learned, it can be cast either by using the ''/cast'' command or by using a wand item. Now that Bob knows the blink spell, he can either cast it by command, by typing ''/cast blink'', or he can cast it with a wand item. To select the spell, he holds the wand in his hand and right clicks. Right clicking will cycle through any spells assigned to the item he is holding. When he has the one he wants, he left clicks to cast.
If Bob does not have the required reagents for the spell, or if he has cast it recently and it is still on cooldown, he will not be able to cast the spell and will instead receive an error message.
If mana is enabled, a player can use the ''/mana'' command to see how much mana they currently have. Mana can also be configured so it is displayed on the experience bar.
Useful Links
Videos
-
View User Profile
-
Send Message
Posted May 24, 2012@gh000st8
Make sure the config file is saved as something like UTF-8.
-
View User Profile
-
Send Message
Posted May 23, 2012@gh000st8 make sure you only change the text in the config of those that begin with "str"
-
View User Profile
-
Send Message
Posted May 22, 2012Hi,
I wanna tranlaste spell in french,how can i do that.When i try to change it,the plugin isn't working :)
-
View User Profile
-
Send Message
Posted May 21, 2012@Killer2demon
Thanks. I didn't read that I needed BookWorm, thank you. :)
-
View User Profile
-
Send Message
Posted May 20, 2012@MedlarGW
For Tomes apparently you need the BookWorm plugin installed and enable set to true in the config...this is the only way I can get them working.
-
View User Profile
-
Send Message
Posted May 20, 2012Really, an incredible plugin. Thank you so much for sharing this with the community.
Whilst I'm here - I receive an error message when trying to create a spell-tome. I type /cast tome blink (or leap, or lightning etc.) and just get an error, the tome isn't created. Any immediate ideas as to what I might've done to cause this?
-
View User Profile
-
Send Message
Posted May 16, 2012@woodendinosaur
Sure, I can explain :) I still need to try what you said about using a specific spell node instead of the wildcard one, but I can still explain.
I'm using a region protection called 'Regios' that allows you to temporarily assign nodes to players as long as they are in a region. It can also remove nodes too. So what I want to do is give players magicspells.cast.* as the default. Then when they walk into the city, it will remove that so they don't go crazy casting at town members. THEN (here's where it gets fun) I built a Hogwarts on my server and I when they walk into certain areas of it, I'd like to give them select spell nodes so that they can use spells to complete challenges I set up. So an overview: Walk into city, spells disabled, walk into area in Hogwarts, certain spells enabled. :)
-
View User Profile
-
Send Message
Posted May 15, 2012@TheSilentStapler
Sorry, I hope you did not misunderstand. I am not saying it is a bpermissions problem. I was only suggesting that as something to try. It only seems like I read somewhere that with the implementation of Superperms that the wildcard is handled differently from one perm plugin to the next. I could be mistaken here though. If anyone can debunk me on this, please do! Also, can you clearly state exactly what you are trying to do in this specific situation? Clarifying will help to solve any concrete issues, instead of chasing potentially abstract problems. Hope you get it worked out!
-
View User Profile
-
Send Message
Posted May 15, 2012@woodendinosaur
I'll try that and see if it makes a difference. However, I even tried removing essentials.me and doing the negative version and copied the groups.yml to both the global files section and the world section. I just wish PEX would change to allow tmeporary nodes. I've been using PEX for the longest time, so I wasn't too happy about the change to begin with. But since this is now a bPermissions issue and my MagicSpells issue has been fixed (thank you!) I'll move along to the bPermissions page :)
-
View User Profile
-
Send Message
Posted May 15, 2012@TheSilentStapler
Could it have to do with the way that the wildcard character is parsed via bpermissions? You could maybe try to single out a single spell and negate it to see if it acts any differently.
-
View User Profile
-
Send Message
Posted May 15, 2012@woodendinosaur
Thank you! That got me on the right track... Now I'm having a problem where bPermissions is ignoring any changes I make to the permissions -_- I can remove magicspells.cast.* or even make the negative version, reload the plugin, and the player can still cast. But if I use the feature in Regios to temporarily remove a permission node, removing magicspells.cast.* works. idk -_- This whole idea of setting which regions you can cast in and which spells seemed like a nightmare already. Now with all these problems I'm running into, it's hell :X
-
View User Profile
-
Send Message
Posted May 15, 2012@TheSilentStapler
I am using permissionsbukkit and have "default-all-perms-false: false" and it works where players only get spells they have been given permissions for. You might try to toggle that field.
-
View User Profile
-
Send Message
Posted May 15, 2012This is a question for any who can help :)
I just went through the trouble of changing from PEX to bPermissions so I could do the temporary nodes per region, but I ran into a problem. I have " default-all-perms-false: true" and my players in the default group (no inheritance) can still cast spells even though they don't have the "magicspells.cast.*" or any specific spell permission node. I'm able to disable spell casting by adding the negative magicspells.cast node, but this won't work for what I need to do. I have a feeling there's simply something I'm not doing correctly, but I've no idea what. Any help from anyone would be highly appreciated as this is a gigantic block in the progress of making my server live to the public :'(
-
View User Profile
-
Send Message
Posted May 14, 2012Is it possible to cancel out buffspells when entering a no magic zone? I'm having an issue with player activating the spell then teleporting just outside the region and walking in with the spell active.
-
View User Profile
-
Send Message
Posted May 14, 2012@nisovin
Ah thanks!
Also, I noticed on your latest dev build when someone is killed with the Armor spell on the armor drops and persists.
-
View User Profile
-
Send Message
Posted May 14, 2012@Killer2demon
/cast forget player *
-
View User Profile
-
Send Message
Posted May 14, 2012@Krevex
It's a bug, I'll get it fixed.
@woodendinosaur
I dug around in the snapshot code a bit when it came out. It seems to be using a system similar to enchantments to differentiate written books. At this point it's still too early to tell if I'll be able to use them as cast items or not.
@DocHarley
I'm guessing this is caused by when a player activates the spell while in the middle of a fall. That fall distance doesn't get reset, so when the spell deactivates it's as if they just resumed that fall from before. I'll make it so it resets their fall distance.
-
View User Profile
-
Send Message
Posted May 14, 2012@nisovin
Hello, is there currently any way to have the spellbooks folder wiped and reloaded with a command?
such as /forget all
Edit: I'm trying to make class changes viable on my server but having the spellbook folder not being able to update is problematic because players are able to keep their spells from their previous class.
-
View User Profile
-
Send Message
Posted May 14, 2012Hello. I've been using this plugin on my server for a couple of weeks and we've run into some minor issues. Most of them I was able to work out by tweaking the config, but I've run into a brick wall with the Windwalk spell.
Once in a while, a player will be very close to the ground (within five blocks), the spell appears to cancel, they fall (less than five blocks) and die. I witnessed this myself with one player hovering about three blocks above the ground in front of me. The next thing I saw was his stuff on the ground and a death message in chat.
As far as I can tell, it's a Heisenbug with no way to reproduce it. It happens or it doesn't. That said, it's hit enough of my players that they don't feel the spell is safe enough to use.
Any way to fix this?
-
View User Profile
-
Send Message
Posted May 13, 2012Heyas! In theory... will it be possible to (once it goes live) to have unique spell tomes as wands relative to the new book-scribe system? i.e Necronomicon, Enchiridion, and so forth. And still maintain the ability to use your Bookworm plugin. If you had to speculate, that is. :) Or has any information related to the final item id of an authored book been released to give a clue as to the possibility of such a feat?
-thanks
You are among the best out there, Nisovin. Keep it goin!