Filled FFA (Free For All)

Discussion in 'Plugin Requests' started by Music4lity, Jan 26, 2017.

Thread Status:
Not open for further replies.
  1. Offline

    Music4lity

    Free For All PvP


    Plugin category: Fun

    Suggested name: FFA Reloaded

    What I want: I'm searching for an FFA plugin that allows you to set an area as an FFA arena where players can join and battle without losing faction power when they die (MassiveFactions). This plugin should allow up to 10 spawn points throughout the arena and there should be the ability to set a kit that is automatically given to the player when they log in. When the player gets kills, they gain new items depending on how many kills they have.

    For instance, Steve joins the arena using /ffa and is automatically fitted with iron armor and is given a stack of steak and an iron sword. When he kills two people, he gets a diamond sword. after five, he gets a bow and 16 arrows. (This goes on as he gets more kills.) When he dies, he is teleported to the place where he issued the /ffa command. He can simply start over again by typing /ffa.

    There should be a customizable broadcast that is sent globally when he begins a killstreak and should broadcast for every extra 5 he makes. When someone ends his killstreak, a message along the lines of "[FFA] Alex ended Steve's killstreak of 13!"

    If one of them leaves the arena, there should be another broadcast.

    FFA should also not have a start or end time, but should be continuously running.

    Ideas for commands:
    • /ffa - Join the FFA arena
    • /ffa leave - Leave the arena (teleports player back to their last location)
    • /ffa create - Uses worldedit to create the arena at the selected area.
    • /ffa setspawn <number> - Set's one of the 10 random spawns in the arena
    • /ffa activate - Enables the FFA arena
    • /ffa deactivate - Disables the FFA arena

    Ideas for permissions:
    • ffa.create
    • ffa.setspawn
    • ffa.activate
    • ffa.deactivate

    When I'd like it by: Literally as soon as humanly possible.
     
    Last edited: Jan 27, 2017
  2. Offline

    htmlman1

    Cool idea. I can start on this immediately (though as I'll be quite busy in the coming days, "as soon as humanly possible" might not be as close by as you and I would like ;)).
     
  3. Offline

    Music4lity

    That would be great. Thank you.
     
  4. Offline

    Music4lity

  5. Offline

    htmlman1

    This plugin is currently in progress; the only aspect remaining is the item reward system for kill count. Everything else is done - sorry for the delay!
     
  6. Offline

    Music4lity

    Awesome! Thank you so much!
     
  7. Offline

    htmlman1

    Okay, I've finished the first build of the plugin. Here's the link:

    Configuration instructions can be found in the config.yml that the plugin will generate. I added the commands and permissions you asked for, and also added an extra subset - /ffa items - to manage the rewards players get when they reach a certain killcount. To use it, a user must have the permission ffa.items, or be opped. The uses for this command are as follows:

    /ffa items clear <#> - Clear the rewards for a killcount of <#>.
    /ffa items get <#> - Set your inventory to the rewards a player will get with at a killcount of <#>.
    /ffa items set <#> - Set the rewards for a killcount of <#> to the contents of your inventory.
    /ffa items togglereplace <#> - Set whether or not a player's inventory will be replaced by the rewards at killcount <#>.

    Aside from that, command usage should be pretty self-explanatory. Hope this works for you - enjoy the plugin, and tell me if you come across any errors or have any questions!
     
  8. Offline

    Music4lity

    Thank you very much! Although, I'm a but confused about the difference between items get and items set? Also, the /ffa command is returning to default users that they need to wait until bounds have been set, but they already have been.
     
    Last edited: Feb 5, 2017
  9. Offline

    htmlman1

    I'll look into the bug regarding /ffa usage and bounds. Sorry about that.

    In the meantime, regarding items get and items set: the first will replace your inventory with the rewards for a certain killcount, and the second will set the reward for that killcount to match the contents of your inventory. For example, let's say you set the reward for a killcount of 5 to be an iron helmet and a golden apple. Typing /ffa items get 5 will set your inventory to contain an iron helmet and a golden apple. If you then pick up a diamond pickaxe and type /ffa items set 5, the rewards for a killcount of 5 will now be an iron helmet, a golden apple, and a diamond pickaxe. I added these commands to make it easier to modify existing rewards.
    [​IMG]
    EDIT: I believe I've found the reason for the bug regarding default users and bounds - please run this version and tell me if it's still there:

     
    Last edited: Feb 5, 2017
  10. Offline

    Music4lity

    Works like a charm! Thank you so much!
     
    Last edited by a moderator: Feb 5, 2017
  11. Offline

    Binner_Done

  12. Offline

    htmlman1

    No problem! Thanks for the idea - this was a fun plugin to make.
     
  13. Offline

    Music4lity

    @htmlman1 Can you remove the warp timer so that it can be used with portals?
     
  14. Offline

    htmlman1

  15. Offline

    Music4lity

    @htmlman1 I'm getting this error when I start my server.
    Code:
    [18:49:32] [Server thread/INFO]: [FFA_Reloaded] Enabling FFA_Reloaded v0.0.1-STABLE
    [18:49:32] [Server thread/WARN]: [FFA_Reloaded] Could not save arena.yml to plugins/FFA_Reloaded/arena.yml because arena.yml already exists.
    [18:49:32] [Server thread/WARN]: [FFA_Reloaded] Could not save states.yml to plugins/FFA_Reloaded/states.yml because states.yml already exists.
    [18:49:32] [Server thread/INFO]: [FFA_Reloaded] Detected and linked to WorldEdit successfully.
    [18:49:32] [Server thread/ERROR]: Error occurred while enabling FFA_Reloaded v0.0.1-STABLE (Is it up to date?)
    java.lang.IllegalArgumentException: unknown world
        at org.bukkit.Location.deserialize(Location.java:595) ~[PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at com.htmlman1.ffa.arena.Arena.init(Arena.java:96) ~[?:?]
        at com.htmlman1.ffa.FFA.onEnable(FFA.java:41) ~[?:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:271) ~[PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:316) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:407) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at org.bukkit.craftbukkit.v1_11_R1.CraftServer.enablePlugin(CraftServer.java:378) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at org.bukkit.craftbukkit.v1_11_R1.CraftServer.enablePlugins(CraftServer.java:328) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at net.minecraft.server.v1_11_R1.MinecraftServer.t(MinecraftServer.java:437) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at net.minecraft.server.v1_11_R1.MinecraftServer.l(MinecraftServer.java:398) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at net.minecraft.server.v1_11_R1.MinecraftServer.a(MinecraftServer.java:336) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at net.minecraft.server.v1_11_R1.DedicatedServer.init(DedicatedServer.java:276) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:603) [PaperSpigot-1.11.2-b1062.jar:git-Paper-1062]
        at java.lang.Thread.run(Thread.java:745) [?:1.8.0_121]
    [18:49:32] [Server thread/INFO]: [FFA_Reloaded] Disabling FFA_Reloaded v0.0.1-STABLE
     
  16. Offline

    htmlman1

    Did you change the name of a world at any time? That would seem to be the reason for your error - try going through the arenas.yml file in the /plugins folder and changing all occurrences of your previous world's name to the new one.
     
Thread Status:
Not open for further replies.

Share This Page