Inactive [MECH] FishPeople v1.7.1 - Gold Helmet = Infinite Air While Swimming [1.2.3-R0.2]

Discussion in 'Inactive/Unsupported Plugins' started by Richard Robertson, Mar 4, 2011.

  1. FishPeople - Infinite air underwater:
    Version: v1.7.1

    This plugin is for servers that focus more on creative rather than survival. It makes building underwater infinitely safer because you no longer drown. The only downside is that people who are underwater can no longer speak. Instead there is a comical [glub glub glub] accompanying any underwater chat messages.

    Features:
    • Infinite air while wearing gold helmet (or configured item)
    • Garbled underwater chat (if configured)
    • Permissions support!
    • Now swim in lava! (if configured)
    • Supports item names as well as ID numbers
    Download http://dl.dropbox.com/u/22618541/Bukkit/FishPeople.jar
    Also available here http://dev.bukkit.org/server-mods/fishpeople/files/3-v1-7-1/

    Configuration:
    File located at /plugins/FishPeople/config.yml
    This file will be created if it does not exist and will contain these default settings.
    These default settings will also be used if a value is not set.

    Permissions
    • fishpeople.infiniteair
      Gives the player infinite air while wearing the helmet (overrides extended air)
    • fishpeople.extendedair
      Gives the player more air while wearing the helmet
    • fishpeople.cantalkunderwater
      Lets the player talk underwater and bypass the filter
    • fishpeople.invinciblehelmet
      Prevents the player's helmet from taking damage if damage is configured
    • fishpeople.lavasafe
      Allows the player to swim in lava (no burning damage)
    • fishpeople.config
      Allows the player to call /fishpeople
    • fishpeople.*
      Emulates having infinite air, invincible helmet, lava safe, config, and chat filter bypass

    Commands:
    • /fishpeople help
      Lists all commands available
    • /fishpeople help <command>
      Gives help on the command given
    • /fishpeople reload
      Reloads the configuration from the hard disk
    • /fishpeople enable
      Enables the infinite air and chat filter
    • /fishpeople disable
      Disables the infinite air and chat filter
    • /fishpeople helmet-type <id>
      Sets the item id for the head item that gives infinite air
    • /fishpeople chat-filter true
      Replaces chat messages when players are underwater
    • /fishpeople chat-filter false
      Allows users to talk normally underwater
    • /fishpeople underwater-chat <message>
      Sets the message that appears when someone talks underwater
    • /fishpeople air-multiplier <number>
      Extends the amount of air players have
      "/fishpeople air-multiplier 2.5" would mean they have two and a half times as much air
    • /fishpeople helmet-damage <amount>
      Every second a player is underwater and wearing the special helmet it will take the damage specified
    • /fishpeople helmet-replacement <id>
      Sets the item id for the head item that will be set when a helmet is destroyed
    • /fishpeople low-air-warning <seconds>
      When a player has only <seconds> left of air, they get a warning
      Set negative to not give a warning
    • /fishpeople low-air-message <message>
      Sets the message to be displayed when a person hits the low-air-warning mark

    Changelog:
    Version 1.7.1
    • Fixed null pointer exception occurring on Minecraft 1.2 and higher
    Version 1.7
    • Removed defunct Permissions 3 support
    • Fixed helmet damage
    • Updated to match Bukkit's new event handling system.
    Version 1.6
    • Compiled for Permissions 3 support
    Version 1.5
    • Bug fixes: falling damage while in lava, and race condition when loading Permissions plugin
    Version 1.4
    • Bug fix: replaced player.getLocation() with player.getEyeLocation() so effects only happen when the player's head is underwater
    Version 1.3
    • Changed event registration to match Craftbukkit 600+
    Version 1.2
    • Permissions support
    • Can have extended air instead of only infinite air
    • Can configure a message to appear warning those with extended air that they will drown soon (since the client bubbles are wrong)
    • Can configure helmet to take damage while being worn
    • Can replace the helmet when something else when it is "destroyed" from being used. You could use this to say, turn your gold helmet to a leather helmet when the magic runs out
    • Added the ability to swim in lava
    • Fixed problem where some servers would not restore air
    Version 1.1
    • Helmet type configurable
    • Underwater chat message configurable
    • Underwater chat message disable-able
    • Can limit to ops only
    • Can adjust all options at runtime
    Version 1.0
    • Initial release

    Known issues:
    • Client side remaining air bubbles still disappear; I cannot do anything about this.
    [​IMG]
     
  2. I've considered JSON but want to stay away from it because it's almost as awkward as YAML.

    I appreciate the suggestion though.
     
  3. Offline

    Ratchet

  4. seems to work well with b928.
    thanx for the work, btw :)
     
  5. Offline

    Ratchet

    it's not my plugin, I just use both on my server and it seems like the features could really be combined into one plugin!

    thanks anywho
     
  6. I didn't pay attention to the author. My bad.

    It makes more sense to me to remain two separate plugins because they have wholly unrelated consequences.
     
  7. and what about swimfin with gold boot ? :cool:
     
  8. Not sure what you mean by "swimfin". If you care to explain I may consider it.
     
  9. sorry, english is not my native langage, so may be that is not the exact term, as i've been using wiki-translate for this :

    http://en.wikipedia.org/wiki/Swimfin
     
  10. Ok, I know what that is, but I don't know what you mean in relation to Minecraft. There's no simple way to increase swimming speed and it's not like the player can't swim already.
     
  11. oh ok, i wasn't aware of that.

    thx anyway for responding :)
     
  12. Offline

    srs008

    you know fishpeople ain't starting correctly?
    i've seen a few posts, and it seems the config ain't being read...
    when run my server (1person, just easier for lan parties :) )
    it of course loads all the plugins i got. of course
    fishpeople says it starts up...
    but when you swim underwater. you still drown. i checked the config. it says i should have gold as a helmet type to prevent drowning... (which is what i tried using)
    but if i type /fishpeople helmet-replacement 20 (does not have to be glass, anything)
    and go under water. it works...
    it does not seem to read the config file...
    for your info. i'm running a server without security (why should I, i know who comes onto it anyway...) so no awkward permissions...
    so nothing should interfere with it.
    anyway. at least now you know where the "plugin not working" problem is...
    good luck. and love the plugin, now if it did not need to be started manually :)

    (done the edit, second line.)
     
  13. The helmet is not hard coded. I'd even suggest you read the code but you don't appear to be code-savvy.

    What I believe you are experiencing is a problem with Bukkit. They added a new "load time" feature which I haven't found any documentation on yet.
     
  14. Offline

    srs008

    i forgot i left that "hardcoded" comment in, oops forgot about it, as further in it says it does not seem to read the config for whatever reason. (i'll edit the last post now...) (i have a bad habit of writing a message, then editing the message, and posting, rather then reading it after the edit...)

    and the "load feature" is it in Craftbukkit 928 (is that right? i'm getting info from the server startup... (b928jnks?) ) (it's either that or it's git-bukkit-889)


    no i'm not familiar with any coding really, most advanced i got was with the old BASIC (dos) language, and even that was not very advanced... mind you i should view the code, since i plan to try learn java later...
     
  15. It does read the config file. The problem is that Bukkit isn't loading the plugin until you call it. I'm trying to figure out how to get my plugin loaded at startup.
     
  16. Offline

    srs008

    hmm i read somewhere today about that... but i think it was about "broken" plugins since last release. i'll see what i can dig up... if it's reading material for a non-developer that is...
    and you mentioned source code. do i have to use a decompiler. or you got it on github or something? if so can you link it. i'd like to look and see what i can learn from it (since i know it IS working :)
     
  17. Yeah, you read the same thing I did.

    The source is available in the download jar file. Just open it as if it were a zip file and you can read the Java source files.
     
  18. Offline

    srs008

    oh so it WAS this plugin with the included source... lol, thanks i thought it must've been another one. i've been busy reading the plugins last few hours... thanks again... and sorry i did not re-read the posts...
     
  19. Offline

    khamseen_air

    @Richard Robertson Btw, just thought I should mention, this is working well in 953... Totally forgot to let you know so you can update the title. :)
     
  20. Offline

    tigge112

    [creeper]LOVE YOUR PLUGIN!!!!![creeper]
     
  21. Thanks. I just haven't had the time to even look at Minecraft in the last two weeks.
     
  22. Offline

    Edvardas96

    Does this still work on 1000?
     
  23. Offline

    khamseen_air

    Yep. :)
     
  24. Yes it does. I have actually been using it. I forgot to update the title, thanks.
     
  25. Offline

    Edvardas96

    Great, will have a try now and comment on it later.

    EDIT: Great plugin, works perfect loving it.
     
  26. Offline

    Sinazok

    Fantastic job and excellent idea. I did some testing on helmet-damage with interesting results. Using leather helmet as the object, I used "helmet-damage: 1". This resulted in the helmet repairing itself until it had no damage, then crashing the client and deleting the helmet. Next, I tried "helmet-damage: -1", which looked more promising as damage to the helmet occurred while underwater. However, the helmet did not break when it received sufficient damage. It will continue to accumulate damage well past its durability while underwater but will only break when you take damage by other means (tested with falling). Gold helmet has the same results as the leather helmet.

    I would love if you could fix the helmet not breaking. Additionally, if you would be willing to include an option for how quickly the damage is applied and/or an option to only apply damage to the helmet if the player has been underwater long enough to have run out of air (essentially having the helmet take damage instead of the player), that would be fantastic.

    FishPeople: v1.6
    Bukkit: 1000
     
  27. Yeah I'm sorry about the helmet damage. I still haven't figured out what's wrong with it.

    By what you're saying, I may have misunderstood durability though. I thought that it would start at a positive number and then have durability removed until it hits 0, in which case it should be destroyed. That's how my code is written anyway. Since you are now adding to the value (by subtracting a negative from the durability) the point at which it is destroyed must be some positive number.

    If I can figure out how to read the "max" durability for an item to know when to destroy it, I can fix it.
     
  28. Offline

    Sinazok

    helmet.getMaxDurability() is what your looking for.

    If you need more testing or help with the plugin, I am at your service. I have experience in java, but none in minecraft or bukkit modding.
     
  29. So getMaxDurability is the point at which the item should break?

    Alright. Now that I know the direction the damage goes, I can fix it. Expect an update along with Superperms support soon.
     
  30. Offline

    Sinazok

Share This Page