[INACTIVE][SEC/MECH] SignProtect v0.6 - prevent sign breaking [440+]

Discussion in 'Inactive/Unsupported Plugins' started by ementalo, Jan 20, 2011.

  1. SignProtect will prevent signs being destroy by people other then the owners or the signAdmin.


    <font color="rgb(255, 0, 0)">SOURCE : </font>https://github.com/ementalo/SignProtect
    <font color="rgb(255, 0, 0)">I am unable to maintain this long term so if you wish to fork it please do.</font>
    <font color="rgb(255, 0, 0)">
    </font>
    Installation:

    Place into the plugins folder, on run there will be a SignProtect folder created in the plugins folder. This will contain:

    SignProtect.db - The SQLite database
    SignProtect.propertes - The properties file.


    Properties:

    Some options are only needed if using mysql

    SQLuser=root - <font color="rgb(255, 0, 0)">Your username for mysql</font>
    SQLpass=root - <font color="rgb(255, 0, 0)">Your password for mysql</font>
    SQLdb=jdbc:mysql://localhost:3306/minecraft - <font color="rgb(255, 0, 0)">Your mysql db location</font>
    protectBlockUnderneath=true - <font color="rgb(255, 0, 0)">choose to protect the block under the sign</font>
    dataType=sqlite - <font color="rgb(255, 0, 0)">database type, options sqlite / mysql</font>
    signAdmin=ementalo,player,thequeen - <font color="rgb(255, 0, 0)">who can destroy any sign / block under</font>

    Usage:

    Place a sign and it will get added to the database. If someone tried to destroy the sign (or block under) it will re-appear. (note that the re-stored sign will not have text on to the destroyer only, a disconnect / reconnect will make it appear)

    Destroyed blocks / signs will have their records removed from the database so the protection will not remain on those areas.

    As a signAdmin right-clicking a protected sign / block will tell you who owns it.

    Download:
    SignProtect v0.6


    Drivers:

    You also need the drivers for the database, these are the same that iConomy / MyHomes / Warps use so you may have them already. Place in the root of the server directory where the crafbukkit/
    .jar file is.

    <Edit by Moderator: Redacted mediafire url>
    <Edit by Moderator: Redacted mediafire url>

    Changelog:

    v0.6 : - Crafbukkit update
     
    Last edited by a moderator: Dec 15, 2016
  2. Offline

    Jobsti

    Very nice, thanks!

    But.... a command would be nice, not all signs must be protect.
    My users leave other users sometimes messages per sign in their homes.

    type /sp
    then place a sign, and it's portected.
     
  3. Offline

    Fleder

    yeah, Jobsti is right

    great mod and great addition to my server, but i really dont want to protect all signs
     
  4. Offline

    Yogoda

    Great plugin ! But yes, protecting ALL signs seems a bit too much.

    Addon idea :

    Let players place signs with a specific keyword on the first line only if they have the right to do it. The keyword could be anything :

    [permit], [shop],[house],[city],[land], ...

    It would be official signs only people with the specific right would be able to place : admins, mods, permit givers, land owner, ...

    And of course you won't be able to remove it.
     
  5. Offline

    Fleder

    im not a friend of this "i destroy the look of my sign because of keywords" thing, but i guess theres no other solution for this?
     
  6. Offline

    Jobsti

    Full ack.... I want a short ChatCommand like /sp

    And an option for coloring the signtext :D
     
  7. Well when I had this in hmod there were more permissions based on who could protect signs, I will look into making a command
     
  8. Offline

    Jobsti

    You can use Nijikokuns new permission system ;)
     
  9. Okay... This kind of failed at installing on my server ;). It created a SignProtect directory - but no files in it. Also in the plugins directory it created a file called SignProtect\SignProtect.properties, which I assume was its failed attempt at adding the properties file to the SignProtect directory, I also cannot access that properties file, or delete it (Using FTP) and I placed my own SignProtect.properties file inside the actual SignProtect directory, but the plugin doesn't seem to recognize it.

    I'm running on CraftBukkit #115 and there are no errors shown in console.
     
  10. I could and do what I had in the old system where people with permissions could place protected signs, however the request was that you may not want to protect the sign always. I will figure something out.
    --- merged: Jan 21, 2011 2:33 PM ---
    It should be in the plugins dir. I will test this.
     
  11. Yeah - it's in the plugins dir. I assume something with the new CraftBukkit broke things.
     
  12. I have tried this against #115 and it is creating things in the correct places. Does it let you delete the files / folders if you stop the server?
     
  13. It allows me to delete the SignProtect directory inside Plugins, however the SignProtect\SignProtect.properties isn't deletable, even with the server off. Over FileZilla it states
    Code:
    Command:	DELE SignProtect\SignProtect.properties
    Response:	553 Prohibited file name: SignProtect\SignProtect.properties
    and in FireFTP it says that the file doesn't exist when attempting to delete.

    After deleting the SignProtect folder and starting up the server again, it will just recreate that folder and won't make the properties file.
     
  14. I have a feeling it ma
    I have a feeling its the \ switch. Can you delete with SignProtect/SignProtect.properties
     
  15. Yes, I'm able to delete the SignProtect folder and anything inside of it, just I cannot delete the SignProtect\SignProtect.properties file which is inside my Plugins folder. I'm guessing the plugin is trying to create a SignProtect.properties inside the SignProtect folder, but because it's using a \ instead of / it's just creating a file inside Plugins.

    EDIT: Mis-read what you said. Well, I can't test that, due to the fact that it's not possible to rename the file - it throws the same error as when trying to delete.

    EDIT2: Yup, it's definately to do with that \. I got the server owner to delete the file, I restarted the server then it created it again.
     
  16. Can you try this version: SignProtect.jar see if this does the correct thing
     

  17. Not sure if it's still creating the SignProtect\SignProtect.properties file as my server owner hasn't been online yet to delete the file again, however, it's not reading my SignProtect.properties file - I've set it up to use my MySQL and listed me as the signAdmin, yet even after players place their signs, if I am to right click that sign, it does not show who the owner is and I am still able to break their sign.

    EDIT: From what I can tell, it seems you've made this plugin specifically for Windows - which is what is causing the problem. My server runs on Linux, so it'd be great if you could make it cross-compatible.

    EDIT2: Yeah, it's no longer creating that file, but it's still not working D:

    EDIT3: It may very well be reading my properties now, but due to the fact you've made this specifically for Windows, it's creating a file in my server folder called "plugins\SignProtect\SignProtect.db" which then of course isn't allowing it to read the database...
     
  18. That last version I posted should've got the defined "file seperator" from your OS. In otherwords platform indipendant. I will have another look to see what is going on.
     
  19. Alright, thanks :).
     
  20. Doesn't like my MySQL settings apparently, but it's working fine on SQLite, thanks for your time fixing this :).

    Any chance you could get this to work with signs on walls too?

    All it does at the moment is protect the block behind the sign on the wall - not the actual sign.

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

    Onza40

    It worked for me doing this, got one of my users to try and destroy a sign I placed in spawn on a wall, and it protected it.
     
  22. Offline

    Agonoize

    In my Case its still creating a File like: ''SignProtect\SignProtect.properties'' <- in Plugin Folder

    This Plugin does not running for me and it give me some Errors
    Code:
    2011-01-24 16:40:42 [SEVERE] [SignProtect] Unable to query SignProtection
    java.sql.SQLException: no such table: SignProtect
        at org.sqlite.DB.throwex(DB.java:288)
        at org.sqlite.NestedDB.prepare(NestedDB.java:115)
        at org.sqlite.DB.prepare(DB.java:114)
        at org.sqlite.PrepStmt.<init>(PrepStmt.java:37)
        at org.sqlite.Conn.prepareStatement(Conn.java:231)
        at org.sqlite.Conn.prepareStatement(Conn.java:224)
        at org.sqlite.Conn.prepareStatement(Conn.java:213)
        at com.ementalo.signprotect.SignProtectData.canDestroySign(SignProtectData.java:101)
        at com.ementalo.signprotect.SignProtectBlockListener.onBlockDamage(SignProtectBlockListener.java:46)
        at org.bukkit.plugin.java.JavaPluginLoader.callEvent(JavaPluginLoader.java:176)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:201)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:334)
        at net.minecraft.server.Packet14BlockDig.a(SourceFile:42)
        at net.minecraft.server.NetworkManager.a(SourceFile:232)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:65)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:104)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:261)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:197)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:512)
    
    So i editet the Files myself and put them in de right Dir. but nothing happens, it still create new Files when i reload this Plugin.

    But thx for ur work, hope we can run it soon :p Its nice
     
  23. Did you get the one from dropbox? http://dl.dropbox.com/u/19244232/SignProtect.jar
     
  24. Well in that case it may very well be protecting the signs on the wall then, but to see who made the sign I have to right click the block behind it, as right clicking the sign shows nothing.
     
  25. I will look after finishing the commands stuff.
     
  26. Offline

    Agonoize

  27. Offline

    EvilSeph

  28. Offline

    ledhead900

    Found a flaw in this, it does not do a very good job vs phsyics blocks like sand and gravel u can remove the block below the block the sign is on andw hen the block drops away sign is destroyed.

    Only a minor issue tho over all its great and is STILL working 100% even on bukkit 190+
     
  29. Offline

    GyD

    I maybe found a small issue with #CB262 (maybe other versions)

    Config:
    SQLuser=[​IMG]
    SQLpass= [​IMG]
    SQLdb=jdbc:mysql://localhost:3306/[​IMG]
    protectBlockUnderneath=true
    dataType=mysql
    signAdmin=GyD


    If someone put a sign, the sign and the block underneath are protected: ok
    If the sign is removed, the block underneath remain protected.

    ^^ btw, great plugin :)


     

Share This Page