Inactive [MECH] IntelliDoors v1.1.11 - Open and close doors with ease. [1.1-R4]

Discussion in 'Inactive/Unsupported Plugins' started by moltendorf, Jun 9, 2011.

  1. Offline

    moltendorf

    IntelliDoors - Open and close doors with ease.
    Current Version: 1.1.11

    Make your doors easier to manage! No more complicated redstone systems required to control double doors with redstone. Never close a door you just opened again. Stop doors from slamming on your face when you press a button or step on a pressure plate to open them. Need to keep that door open instead of closed? Power it with redstone!

    I was originally inspired to write this as a replacement by Yurij's SelfClosingDoors plugin. However, later I found FrozenBrain's replacement for it, Self-Closing Doors, and then added more functionality based on some of the goals of his plugin. This plugin does not contain any original code from either plugin but I will admit to snagging the idea of using bit manipulation from FrozenBrain's source code. [​IMG]

    Current Features:
    • Inverts the response to redstone on the right door in a double door set.
    • Holds doors open for two seconds after they lose redstone power.
    • Keeps double doors in sync by mimicing your actions on either door to the other door.
      This includes redstone controlling one door causing the other to respond.
    • Individual reverse iron doors retain old functionality.
      This means it closes them when powered, and it opens them when not powered.
      Additionally, instead of delaying their response when losing power: it delays their response when receiving power.
    • Prevents you from accidentally shutting a door after opening it, or opening it after shutting it.
    • Resets all wooden and trap doors to their original power state after five seconds.

    Download IntelliDoors v1.1.11 at moltendorf.com/download/IntelliDoors.jar
    Now on BukkitDev at dev.bukkit.org/server-mods/moltendorf-intellidoors

    Previous Releases:Get the source code on GitHub at github.com/moltendorf/IntelliDoors
    You can also find it in IntelliDoors.jar itself. Just open it as a zip file.

    Known Issues:
    • Monsters don't seem know how to pass through doors opened with redstone.
      In another sense, wouldn't this actually be considered a feature?
    • Opening and shutting a door with redstone does not respect protection plugins.
    • It is only possible to break a door by breaking the block under it.

    Planned Features:
    • Close doors when you walk away from them instead of after a set time (planned for branch 1.2.x).
    • Add configuration file (planned for branch 1.2.x).
    • Add in any additional fixes for security plugins (planned for branch 1.3.x).

    Changes:
    Version 1.1.11
    • Added in support for Fence Gates.
    • Updated ignored blocks in door orientation detection.
    Version 1.1.10
    • Fixed powered wooden doors resetting too quickly after being shut by clicking.
    Version 1.1.9
    • Fixed cancelling of an event pertaining to a door not being respected.
    • Fixed door sound not being played to other users when interacting with a door.
    Older Changes (open)
    Version 1.1.8
    • Fixed placed doors not responding properly without a server restart.
    • Fixed the ability to dynamically change a doors orientation.
    • Improved synchronized code even more.
    Version 1.1.7
    • Improved handling of combinations of manual triggering and redstone triggering of doors.
    • Now prevents you from flipping a door by clicking it shortly after it is opened or shut by redstone.
    • Standard auto-close reduced from 10 seconds to 5 seconds.
    • Redstone hold delay reduced from 2.25 seconds to 2 seconds.
    • Minimum manual flipping delay reduced from 0.5 seconds to 0.25 seconds.
    • Fixed a large number of issues caused by doors being added and removed.
    • Fixed some rare issues with doors being grouped together when they should not be.
    • Moved the sound played to the center of the door set from the left one.
    • Completely reworked the synchronized code, as the amount of synchronization going on was superfluous.
    • Completely rewrote the library.
      • Replaced deprecated code with new code.
      • More garbage collection friendly.
      • More initial memory use.
      • Less memory use per door.
      • Doors are now grouped, improving seek time for active sets.
    Version 1.1.6
    • More major reworks of logic.
    • Fixed doors staying locked open when there is redstone power provided.
    • Fixed doors not shutting in a timely manner when open and shut before removing power from them.
    • Fixed some issues with events being cancelled by protection plugins not being respected.
    Version 1.1.5
    • Major rework of logic for slight change in how redstone triggers occur.
      This fixes my plugin for build (approximately) 953 and later.
      It, however, retains backward compatibility with previous builds.
    • Reverse iron doors that are not in a set now respond opposite to how reverse wooden doors respond to redstone.
    • Doors now orient themselves to their proper power state after being placed.
    • Door sets will no longer form when either door can belong to more than one door set.
    • Bukkit fixed trap doors not staying open after losing redstone power.
    Version 1.1.4
    • Wooden and trap doors now restore themselves to their power state rather than closing when clicked.
      This means you can keep doors open by powering them with redstone power.
    • Fixed reverse door switching with redstone.
    Version 1.1.3
    • Doors now take two extra seconds to close after redstone power is shut off.
      Trap doors do not feature this currently.
    • Fixed an issue with opening or closing doors manually while redstone is powering them.
    Version 1.1.2
    • Fixed a very rare server-crashing infinite loop caused by a race condition.
    • Got really mad at race conditions and fixed every feasibly possible one even if CraftBukkit does not have the possibility of triggering them.
    • Now including the current release in the previous releases list to allow people who use plugin updaters to get the latest version and prevent it from auto-updating.
    Version 1.1.1
    • Fixed an issue with input being ignored to one door in some cases.
    • Fixed an issue with doors that are open on plugin load not responding to redstone until closed for at least ten seconds.
    • Added lots of comments to the main functions triggered by events.
    Version 1.1.0
    • Inverts the redstone power to the second door in a set.
    • Redstone now powers both doors in a set rather than just one door.
    Version 1.0.18
    • Now works with trap doors.
    • Does not consider adjacent trap doors as door sets.
    Version 1.0.17
    • Sounds now only play once per door set rather than for each door.
    Version 1.0.16
    • Added sounds to any automated effects with doors. Thanks to SpaceManiac.
    • Added a period to my topic title.
    Version 1.0.15
    • You can build again with this plugin installed.
    Version 1.0.14
    • Broke the ability to build. Oops.
    • Another nearly complete rewrite of the code; retains all previous features.
    • Fixed several theoretically possible bugs that should otherwise never occur in a single-thread setup.
    Version 1.0.13
    • Fixed a possible race condition.
    • Fixed an issue with doors that are open on plugin load being unable to close unless left closed for at least ten seconds before opening them again.
    Version 1.0.12
    • Introduced a race condition.
    • Now prevents you from accidentally opening or shutting a door (set) right after you did the opposite by cancelling any attempts to open or shut a door (set) within half a second of opening or shutting it.
    Version 1.0.11
    • Improved handling of sync delayed tasks. Now cancels the previous one and creates a new one rather than just creating a new one but telling the old one to do nothing when it's run. It feels like a much cleaner way to handle things.
    Version 1.0.10
    • Checks against more blocks than air to determine the proper closed state.
    • Now only pairs doors together if they are a matching set.
    Version 1.0.9
    • Now detects whether or not your doors match the orientation they were originally set to before closing them.
    Version 1.0.8
    • Fixed an issue with the surrounding block detection resulting in false positives in very rare block placements.
      It now follows my rules no matter what.
    Version 1.0.7
    • Now detects surrounding blocks to determine the proper closed state of a door.
    • Changed the set detection to ignore doors at different elevations to the door clicked.
    • Cleaned up the constructor of the IntelliDoorsDoor class.
    Version 1.0.6
    • Original intended state of the 1.0.4 release.
    Version 1.0.5
    • Instead of misplacing the left or only door in three of the four possible facings, I broke it. Double oops.
    Version 1.0.4
    • Misplaced the left or only door in three of the four possible facings. Oops.
    • Fixed some minor issues with placing other blocks before the automatic closing occurs.
    Version 1.0.3
    • Fixed an issue with the doors always closing ten seconds after every time you clicked.
      They will now only close ten seconds after you last clicked.
    • Completely rewrote code to contain significantly less duplication.
    • Fixed some theoretically possible bugs (theoretically).
    Version 1.0.2
    • Fixed an issue with door protections causing the second door in a set to be opened when the original one was not opened successfully. Thanks to Sleaker, and SpaceManiac.
    Version 1.0.1
    • Fixed an uncaught exception that was pointless to fix other than to prevent server log spam and server administrator heart attacks.
    Version 1.0.0
    • Initial release.
     
    Jimmylobo, Cenarius and olimoli123 like this.
  2. Offline

    Sparky20

    Nice, iron doors soon?
     
  3. Offline

    morizuki

    Code:
    2011-06-23 14:50:32 [WARNING] Task of 'IntelliDoors' generated an exception
    java.lang.NoClassDefFoundError: org/bukkit/Effect
        at com.moltendorf.bukkit.intellidoors.Door.setState(Door.java:244)
        at com.moltendorf.bukkit.intellidoors.Door.setStates(Door.java:263)
        at com.moltendorf.bukkit.intellidoors.Door.closeDoors(Door.java:107)
        at com.moltendorf.bukkit.intellidoors.Door.run(Door.java:94)
        at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:138)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:388)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:311)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    Caused by: java.lang.ClassNotFoundException: org.bukkit.Effect
        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.PluginClassLoader.findClass(PluginClassLoader.java:24)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 8 more
    1.0.18.. giving an error..
     
  4. Offline

    moltendorf

    You must be running CraftBukkit build 851 or later to use IntelliDoors 1.0.16 or later.
     
  5. Offline

    morizuki

    aw.. okok.. i guess i have to download your older version :)
     
  6. Offline

    moltendorf

    I know you all are gonna love this one. The long awaited redstone update is here! :D

    Launched branch 1.1.x! Released 1.1.0.

    Since this isn't just a mechanic update, but rather a sort of "fix" for redstone, should I add this plugin into the FIX category?
     
  7. Offline

    grinch843

    @moltendorf

    Great Job!!! Now I can use iron double doors without have some crazy redstone setup to make them open/close together....

    This is how double doors SHOULD work. This needs to be sent to Notch and have this added to minecraft.....

    Thanks

    Grinch.....
     
  8. Offline

    dragonhib

    Really good plugin, which was lacking in minecraft.
    Thanks for that :)
     
  9. Offline

    moltendorf

    Thanks for the responses. Hope you guys continue to like this plugin and the updates to it.
     
  10. Just tried this - the time it saves not having to set up the redstone mechanics for double-doors makes this plugin really worth while - thanks for providing it ! :)
     
  11. Offline

    moltendorf

    Released 1.1.1.

    This fixes the issue with double doors not opening (temporarily) while standing on one pressure plate with double pressure plates in front of doors caused by rapidly walking over one then the other. Additionally, lots of code cleanup and documentation.

    Planning to feature this on my project page soon as it's pretty nifty. :D

    Not so! Custom release for you: http://moltendorf.com/download/custom/morizuki/IntelliDoors.jar.

    Version 1.1.1_818.
    Does not contain sounds added in version 1.0.16. Will remove sound with redstone.
    Works on CraftBukkit build 818.

    Released version 1.1.2. This update is extremely important as it fixes a large number of server stability issues that could have quite possibly existed ever since release 1.0.3! *moltendorf gasps*

    Another custom build for morizuki: http://moltendorf.com/download/custom/morizuki/IntelliDoors.jar.

    Version 1.1.2_818.
    Does not contain sounds added in version 1.0.16. Will remove sound with redstone.
    Works on CraftBukkit build 818.

    There will not be any more builds for 818 unless I fix something critical related to version 1.1.2_818 within the next few weeks (i.e. if nothing critical is found and fixed within this timeframe, there will never be another backport of the current release to 818).

    Released version 1.1.3 which now causes loss of redstone power to not shut doors for two seconds. Additionally it fixes clicking on doors when receiving redstone power.

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

    philraz

    Thanks for he plugin any chance that there will be a way of setting how long doors stay open ?
     
  13. Offline

    moltendorf

    Server-wide, yes, it is planned for branch 1.2.x (check out the original post). Per-door is not planned as that will over-complicate the plugin to a large degree.
     
  14. Offline

    moltendorf

    Released 1.1.4. Please note that I am going to change how reverse iron doors work eventually; they will have a delay to reacting to becoming powered, and have no delay to losing power, as well as will not respect my reverse door rules created for wooden doors (this will fix the issues with "locking" the door by creating a lock mechanism that keeps the door powered when it is locked rather than powers it when it is unlocked).

    Additionally, I did not test this against Bukkit 953 as I am not running it on my main server (we did not upgrade due to the item duplication bug). However, fret not, I didn't notice any changes that would break my plugin in the latest release so go ahead and use it on Bukkit 953.
     
  15. Offline

    moltendorf

    Released 1.1.5 for build 953.

    Please report any bugs or minor inconsistencies, I feel like I'm not getting many bug reports for said issues; only for actual exceptions or completely broken functionality.
     
  16. Offline

    RedAlex

    I have bug with intellidoor on my server not all time but placed dual door don't open in team and don't auto-close.
    Dual door with a Lockette sign *Lockette.jar* to private a dual door make the door bug open or not the dual door.
    You can contact me if you want to come see the bug door on my server.
     
  17. Offline

    moltendorf

    We're working on a few fixes for bugs introduced in 1.1.5, as various changes to the API completely broke the plugin originally. I'll take a look at the Lockette issue you mentioned though, it should work fine without redstone; with redstone, though, it would be a requirement to actually link with each plugin to verify everything. We will be upgrading our server to 1.7.2 as well, so I will be able to spot these issues on my own easier.

    Sorry for the inconvenience. ;)
     
  18. Offline

    Musaddict

    Here is a schematic that seems to be incompatible with this plugin using 1.1.5:
    [​IMG]
    (The redstone torches on the 4th level are iron doors, and if you don't know, the grey circle is a lever)

    Every time I enable this plugin with this schematic, the doors will not close. The only way they will close is if you have blocks against them (which in turn makes the door not usable lol), even then, 2 doors close, then 3 seconds later the other 2 close.

    I assume this is being fixed cause it sounds similar to what RedAlex posted, but here is a specific schematic that should help you fix the issue. (P.S. this schematic does not use the Lockette functionality, however I have Lockette installed)
     
  19. Offline

    moltendorf

    Was this schematic designed for vanilla? If it was then there's power always being provided to one of the doors in the set, causing it to stay open. To fix double doors with my plugin, you need to provide power to either or both doors when you want it open, and no power to either when it is closed. This was how the redstone update was going to change the doors, but there isn't much I can do to fix it at the moment... I'll look into it though, it may be possible to fix this only as I assume most double door opening designs for vanilla provide input from the bottom, however this may restrict new designs for my plugin to providing input to the left door only if you wish to provide input from the bottom.

    If either of you wish to show me these in action, and have me further explain it, then please send me a private message with your server details (and make sure to whitelist me). :)

    For the most part though, I have a list of bugs I need to fix, and haven't quite had the time to fix them.

    Released 1.1.6. This should be the most bug-free build so far for Bukkit on Minecraft 1.7.

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

    Tealk

  21. Offline

    ferrousphantom

    you say it will open doors with redstone, or the one next to it if its ungarded, but on my server it just makes it so locking doors doesnt do anything. double doors, single, iron, we cant lock doors with this. i really want this plugin but unlocking all doors is too much, is there any other plugin that doesnt do that, or can you fix it?
     
  22. Offline

    moltendorf

    Lowest runs first though?

    I used to run in monitor, but I moved to highest because I needed to cancel the event myself to have it work on 1.7.2. I'm not sure why the permissions plugins aren't cancelling the event before I see it. I'm currently in the process of a rewrite for 1.2.x, and may add in a small delay to how often *any* event can trigger a response in my plugin for doors, mitigating this issue with door locking plugins, and allowing me to move back into monitor.
     
  23. Offline

    RedAlex

    Simple door stay open with version 1.1.6
     
  24. There's not a config file for this? Is this a mistake, is it a lazy plug-in? If there simply isn't one can we get one to turn on/off redstone functionality, and just have it handle doors auto-closing?
     
  25. Offline

    moltendorf

    I'm lost.

    Man, people don't read. :p
     
    Lunarius Haberdash likes this.
  26. I was really tired when I was going over this. XD Sorry.
     
  27. Offline

    RedAlex

    All work great thx
     
  28. Offline

    moltendorf

  29. Offline

    Fallen_Advent

    Please try to shorten the first post by making a spoiler for the older change logs, It looks nicer and shortens the first post so people can reach the posts faster to view any recent issues
     
  30. Offline

    Beldarak

    I can't break doors and trapdoors, is it a feature of the plugin or a bug? It's very anoying btw.

    But I love this plugin ;)
     

Share This Page