Inactive [FUN] MagicSpells - Add magic to your server

Discussion in 'Inactive/Unsupported Plugins' started by nisovin, May 8, 2011.

  1. Offline

    nisovin

    MagicSpells - Add magic to your server!

    View the plugin on BukkitDev!

    MagicSpells is a plugin that creates 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. Each spell can be assigned customized reagent (item) costs, cooldowns. durations, ranges, and so on. Spells can be cast by using the /cast command, swinging a wand, or both. It's all customizable.

    Download

    Important: Read before downloading! There is a lot of information in this post. I know, it's a lot to read. However, I spent quite a while writing it all in what I hope is a clear, informative, and understandable manner. So, please, read the entire post before asking a question. Chances are, the answer is already here. I also suggest taking a nice look through the configuration file. Is it a massive file? Yes, it is. But if your question is "can I do this?" then a look through the configuration options would be a good idea.
    Plugin Manual

    There is a lot of useful information in the plugin manual, which can be found here:

    MagicSpells Plugin Manual

    Usage

    Spells can be cast either by using the /cast command or by using a wand item. To cast a spell, a player must first know the spell. Server operators know all spells by default. They can teach spells to other players by using the teach spell. For example, to teach bob the blink spell, an operator would type: /cast teach bob blink.

    Bob can now use 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.

    Spells

    View Spell List

    Configuration

    The zip file contains a config.yml file that should go into the MagicSpells folder within your plugins directory. The default configuration has appropriate spell costs, durations, and messages for each spell. However, you will most likely want to customize this to fit your server.

    You can modify the config.yml file directly, or you can choose to leave it intact and instead create an alternate config file, by default altConfig.yml. Any configuration values in this alternate file will override the values in the main config file.

    There are some general configuration options that apply to all spells, as well as options for each individual spell. Important: The default configuration file does NOT contain all config options, it is just an example. Just because a config option isn't in the default doesn't mean it is not available. For example, it's possible to add a duration to any buff spell, even though the default configuration file does not have a duration on all buff spells.

    To reload the configuration, simply cast the fake reload spell (/cast reload). Only server operators can do this (it can also be done from the command line).

    Please see the plugin manual for information about all of the various configuration options.

    Frequently Asked Questions

    Help me! Why isn't it working?
    If - after reading through this entire post - you can't figure out why it isn't working, please take the time to submit a proper help request. You can post your request either on in this thread or in the MagicSpells forum. You should provide the following information:
    • The CraftBukkit build you're using.
    • The MagicSpells version you're using.
    • Which permissions plugin (if any) you are using.
    • The error in the console, if there is one.
    • Your config file(s). Please don't post them directly , use a service like http://pastebin.com and just post the link.
    It says I need reagents whenever I cast a spell! Where do I get reagents?
    One of the main ideas behind this plugin is to give players cool abilities, but with a cost. The reagents are the spell's cost. This can be configured in the config.yml file individually for every spell. The config option name is "cost". You can also add your name to the list of exceptions in the general.cast-for-free option.

    Can I unbind spells from items?
    Yes. Simply use the bind spell to bind the spell to your empty hand, and it will no longer be bound to any item.

    Why can't my players cast spells?
    Why does it say "You cannot cast that spell right now" when I try to cast any spell?
    If you're using Permissions, please make sure your permissions are all set up correctly. Look in the Configuration: Permissions section for more information. Also double check and make sure your use-permissions config option is set to true.

    What are the Permissions nodes?
    The nodes are listed on the permissions information page in the plugin manual.

    I can't get my Permissions working! Can you help me?
    Remember that all nodes use the "real" spell name, rather than the name you define with the "name" option. If you cannot get your permissions working, feel free to ask for help. Make sure you specify which permissions plugin you are using, and all of the items from the "Help Me!" question above.

    Will you add iConomy (or another economy plugin) support?
    With the addition of the 'tome' and 'scroll' spells, I currently have no plans to add special support for an economy plugin. You should be able to create tomes and scrolls and sell them using any plugin that allows you to sell items, thus allowing you to sell spells.

    I have a great spell idea! Will you add it?
    Please tell me about it by submitting a ticket! I can't guarantee that I'll make it, but if it's a feasible idea, I'll definitely consider it. I'm always looking for new spell ideas. Note that I may not respond directly to your idea, but I always read the suggestions.

    I've found a bug! What do I do?
    Please submit a ticket! Please include your CraftBukkit build number, any error in the console, the situation that caused the error (if known), and if you think it's applicable, the list of plugins you use.

    Change Log

    View full change log



    Donate: Always gotta have a donate link for those who love their plugin authors.
     
  2. Offline

    Kainzo

    My god - it's been a long time @nisovin
     
  3. Offline

    Allen Buckman

    Awesome plugin, cant wait for more spells :D
     
  4. Offline

    Joy

    Good to see you back nisovin!

    Running into trouble:
    http://pastie.org/1909637

    That one is on "/cast spellbook mark 1" targetting a bookshelf.

    Also errors on:
    - /cast help
    - /cast spellbook
    - /cast teach

    With no arguments given. Also "/cast help recall" just shows "recall -"

    When I do "/cast list" it properly shows I have all spells.

    Permissions support is enabled.
     
  5. Offline

    karmacopious

    Great plugin and we are starting use on my server.
    It looks like you are not checking "cast-for-free" when casting a spell. No matter who or how I put a name in the config for this property it will still notify me that cannot cast due to missing reagents.
     
  6. Offline

    LastShenanigan

    Is it possible to to tweak it so you can set right clicking to casts a spell? So I can assign certain spells items usually used for bashing things?
     
  7. Offline

    Eymas

    I cannot target players with this?
    I am an OP on my own server and with entomb I can nicely jail em for some time
    But why cant i target em? Checked properties and nothing out of it.

    Can this be made possible?
     
  8. Offline

    Windwaker

    Suggestion:

    Freeze-Ray - Freeze targeted players by canceling the targets onPlayerMove(); for a certain amount of time. Also sending a message to the frozen letting them know its not a glitch :p

    He forgot to add the target-players: true/false to the config. You can add it yourself and it will work.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 16, 2016
  9. Offline

    nisovin

    Sadly, this isn't possible. Perhaps someday.
    This looks more like a problem with Residence not checking for nulls, but I'll look into what I can do.
    A simple damage spell seems kind of boring, but I'll add it to my list. Also, a freeze spell with ice and suffocation damage is already on my list. :)
    I've been trying to figure this out but haven't found anything that might cause this. So, a few questions:
    Are you using all of the spells? Is there any spell that you don't use?
    Are you keeping cooldowns or are you going for more of a chaos feel (like that video I posted)?
    You might also try disabling certain spells to see if it helps. In particular, I wonder if the explode spell causes problems.
    Thanks for the bug reports, I think I've fixed them all so it should be all good in the next version. The /cast help recall thing seems to be a config issue though, are you missing the "description" and "str-cost" values for the recall spell?
    It seems to work ok when I've tested it. Maybe I fixed it after this release though. Can I see your config file? (pastebin it)
    What kind of items are you wanting to use that can't be used by left clicking?
    This is a good idea.
     
  10. Offline

    nesskid5454

    Well I'm pretty much using all of the spells, I avoid explode because of what it does to the ground but I use a lot of blink, entomb, lightning, and forcepush. I removed the cooldowns because the mods were complaining about blinks cooldown, and I prefer it without them. But maybe thats the problem :/ I feel like it happens when people cast quickly, but this didn't seem to be a problem in the spells/wand plugin by NathanWolf. I prefer yours though, sticking true to the original. I hope any of this info helped.
    Also do you think blink will ever be more knowledgeable of where to put a player? It seems to put people in front of the block they are shooting for which can cause them to fall and die a lot, and will it ever be able to go up/down/sideways through small amounts of blocks? Just some random questions I've had xD Love the work you've done though.
     
  11. Offline

    Owenfitz

    how can i make it so more than three of us can use all spells for free. under the config it has three spaces. i added two for the other two admins and it screwed up. also how do i set it so instead of /cast blink. users can type /blink. (for faster spell usage)
     
  12. Offline

    bcwebster123

    its not letting me use the explode spell. WHY?
     
  13. Offline

    VRYUKI

    OMG's!!! I've been waiting so long for this!!! TY
     
  14. Offline

    nisovin

    Updated to version 0.3. For those upgrading, you will want to copy the config sections for the new spells into your config file. You may also want to add some config options that were missing, such as 'target-players' under several spells, and 'str-cast-self' under the spellbook spell. The 'str-on-cooldown' option has also been updated to allow the use of %c for remaining seconds.
    Well, see if this update fixes anything, and let me know. I'll continue to look into it. Also, the blink functionality is done on purpose. Perhaps I'll add a config option to make it work like the WorldEdit compass. However, I like it this way, for one specific reason. Have you ever used the compass to teleport underground, only to find yourself suddenly on the surface because there was no place to stand where you targeted? The way blink works, that would never happen.
    What do you mean by "screwed up"? Adding additional names there should work fine. Also, I don't really plan on allowing you to use /blink instead of /cast blink. If you want to cast fast, use the cast-item (wand) feature.
    I'm guessing you have the configuration set up incorrectly?
     
  15. Offline

    kahlilnc

    Can you add permissions for certain spells.
     
  16. Offline

    nesskid5454

    I understand about blink, I'm just used to more accessibility with it. But so far with the update I love the new spells and haven't experienced any crash problems! This is awesome thank you. and quick question, is there any way to remove a spell from a bookshelf? I can't seem to figure out how.
     
  17. Offline

    nisovin

    The permissions system is all or nothing, please see the information under "Permissions" for instructions.
    Good to hear that the crashes are gone. If an op destroys a spellbook-bookshelf, it should be deleted. I should probably add a better way to do this though.
     
  18. Offline

    kahlilnc

    mmmkay.
     
  19. Offline

    nesskid5454

    just crashed again, sorry for the false info earlier but it hadnt happened yet :/ and im the admin but i cant destroy the bookshelf it says "you can not destroy a bookshelf that has a spell on it"
     
  20. Offline

    kahlilnc

    Oh I fail I see you can set certain permissions for spells. Thanks.
     
  21. Offline

    placeboing

  22. Offline

    KuroSnow

    I love this plug in, but can I make a request? Turn off the "ops get all spells" function? =/ I want even my ops to experience the joy of learning new spells =)

    Edit: I would also like to be able to "create" higher level versions of spells (that last longer or do more damage) so I can "level up" my players spells =)

    Even if it just calls the same spell with different parameters. You know?
     
  23. Offline

    airsoftinva

    2 questions.
    1. Can you make it so we can turn up the damage count on explode?
    2. Can you enable entomb to target players. Thank you.

    Ha Never mind!
     
  24. Offline

    Joy

    Thanks for the update!

    I can't find information on "use-health-bars: false", and I have failed to guess what it would do :p

    ===
    Edit:

    I did not see Lifewalk on your TODO list yet, would be great to get back, same for Purge :)

    Also, a config reload command would be great, as I tend to tweak spell costs often, but not too critical :p
     
  25. Offline

    nisovin

    I suppose I could add a list of players to get all spells rather than just using ops. Or just add an option I guess. Also, what you're asking is already possible, I just haven't written up how to do it yet, because it's hard to explain. Maybe I'll figure that out later today.
    The use-health-bars thing is a side project I've been playing with. Leave it false for now. :) The config reload is /cast reload, only usable by ops. Guess I forgot to mention that too...
     
  26. Offline

    Joy

    MySQL support one day, would be awesome btw, get chills from the spellbooks folder with thousand+ flat files <_<
     
  27. Offline

    monkeymii

    an admin on my server edited the entomb code so blocks appear above and below(if necassary) but when running the plugin it says in the console:

    Code:
    23:43:14 [SEVERE] com/nisovin/MagicSpells/Spells/EntombSpell (wrong name: Spells
    /EntombSpell) loading MagicSpells v0.2 (Is it up to date?)
    java.lang.NoClassDefFoundError: com/nisovin/MagicSpells/Spells/EntombSpell (wron
    g name: Spells/EntombSpell)
            at java.lang.ClassLoader.defineClass1(Native Method)
            at java.lang.ClassLoader.defineClassCond(Unknown Source)
            at java.lang.ClassLoader.defineClass(Unknown Source)
            at java.security.SecureClassLoader.defineClass(Unknown Source)
            at java.net.URLClassLoader.defineClass(Unknown Source)
            at java.net.URLClassLoader.access$000(Unknown Source)
            at java.net.URLClassLoader$1.run(Unknown Source)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(Unknown Source)
            at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.
    java:36)
            at org.bukkit.plugin.java.JavaPluginLoader.getClassByName(JavaPluginLoad
    er.java:182)
            at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.
    java:32)
            at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.
    java:24)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at com.nisovin.MagicSpells.MagicSpells.load(MagicSpells.java:84)
            at com.nisovin.MagicSpells.MagicSpells.onEnable(MagicSpells.java:39)
            at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:127)
            at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader
    .java:632)
            at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManage
    r.java:218)
            at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:116)
            at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:94)
            at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:217)
            at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:204)
            at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:144)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:259)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    we couldnt find the problem as it was clearly called 'EntombSpell'
    he also posted his code on your googlecode as an issue
     
  28. Offline

    Joy

    Ooh another one I am missing nisovin: Stonevision! Was a huge hit on hMod, please bring it back if possible :D
     
  29. Offline

    monkeymii

    what was that? sounds like x-ray and if so then.. maybe not..



    OH and niso i cant seem to get the copies working:

    Code:
        zap:
            description: Notch deletes the block you are looking at.
            cast-item: 280
            cooldown: 0
            disallowed-blocks: 0,7
            range: 15
            cost:
                - 331 10
            str-cost: 10 redstone dust
            str-cast-self: You blow the block up.
            str-cant-zap: Notch doesnt want you to cheat.
        netherhole:
            description: Tear a hole in reality causing a large number of blocks to be sucked in (explosion at target).
            cast-item: 280
            cooldown: 2
            range: 25
            explosion-size: 10
            backfire-chance: 3
            cost:
                - 331 20
                - 289 10
            str-cost: 20 redstone dust and 3 gunpowder
            str-no-target: You cannot create an explosion there.
            str-cast-self: WTF! BOOOOOOOOOOOOOM!
            str-cast-others: "%a Channels their energy into 1 point, disrupting the rules of physics and destroying blocks!!"
    spellcopies:
        - netherhole=explosion
     
  30. Offline

    nisovin

    The original spell name is "explode" not "explosion". I'm just going to pretend I wrote the instructions correctly in the first place...
     
  31. Offline

    monkeymii

    Lol i see. thanks for spotting that XD i guess its partly my fault for copying it straight from there

    did you check my friends edit on the entomb code?
     

Share This Page