[SEC/MECH/FUN] PreciousStones - Block Area Proteciton System [BukkitDev]

Discussion in 'Archived: Plugin Releases' started by phaed, Jan 18, 2011.

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

    phaed

  2. Offline

    gilbz

    Thanks Man, will definetly implement your plugin for player protection as it will save a lot of time defineing and protecting everything =3
     
  3. Offline

    phaed

    I'll check it out.
     
  4. Offline

    philulrich

  5. Offline

    yakasuki

    do you have to have Sqlite?
     
  6. Offline

    phaed

    Right it supports SQLite. Just drop the contents of the zip into your plugins folder and you're good to go.
     
  7. Offline

    yakasuki


    k great plug-in
     
  8. Offline

    phaed

    Change log
    Version 5.3
    • Added: Support for iConomy 4 & 5+, BOSEconomy 0.6.2, Essentials Economy 2.2.17+. Use the "price" field flag to set a price for the pstone. Placing the pstone removes the amount from the player's account. Removal of pstone refunds the amount back.
    • Added: Automatic purge of pstones based on player inactivity. New config setting: player-inactivity-purge-days
    • Added: Automatic purge of snitches based on snitch inactivity. New config setting: snitch-unused-purge-days
    • Snitches now save entries on their own table, and snitch details are now only pulled from the database on request
    • Reversed snitch display to have latest on top
    • Removed: max-records-per-snitch setting
    • Fixed: Paintings can no longer be places/broken inside protected fields
    • Fixed: Race condition causing an OutOfMemoryError
    • Fixed: GriefRevert fields are now working again
     
  9. Offline

    Bronski

    I think my WG regions were doing the same thing tonight. Creepers just got dumb :/
     
  10. Offline

    phaed

    PS 5.3 introduces the automatic purging of pstones of long gone players. On first run, 5.3 will place all pstone owners on a table with the current date as their "last seen" date. Every time one of these players logs in or out of the server their "last seen" time will be updated. As time goes by, the last seen date of inactive players will get farther and farther away. If a player has not been seen for longer than the configured amount (45 days by default), all their pstones will become unprotected and deleted from the database.

    Snitches have a similar setting but it works differently, even if a snitch is owned by an active player, it will be purged if it has not been right clicked (viewed) for configured number of days (60 days by default). For example an active player of the server buried a snitch somewhere months ago and has long forgotten about it, that snitch, if not purged will keep collecting data indefinitely. With the new scheme, these long forgotten snitches will automatically become unprotected and deleted from the database.

    These two features will clean out the garbage out of your database as time goes by. Don't be surprised if your 100k collection of pstones shrinks down to 10k in a couple of months without anybody noticing a thing.

    Another change is snitch data. Up until now, on server start all data was pulled from the database for all fields, this included snitch list data. Snitch list data is the bulk of the data in the database, and it is seldom used. The new scheme keeps this data in the database and it is only pulled when it is needed. This will further speed up database transfers and shrink PS's memory footprint.
     
  11. Offline

    lukehib

    Upon a server restart, some peoples protection blocks stop protecting. If you type /ps info it says no fields found if your standing next to one.
     
  12. Offline

    Niff

    Sorry it took so long to respond, thanks for the help with the migration commands, I feel really dumb now....

    Great plugin and thanks again, I do have one issue with fields not cleaning themselves when removed, I have to run the command myself, but I have not updated to your latest (that I will do today) so ill edit this as needed.

    -niff
     
  13. Offline

    staniboy

    5.2.2 > 5.3 I get this after update....
    Code:
    2011-07-16 14:23:08 [SEVERE] java.sql.SQLException: no such column: 'pstone_fields.name'
    2011-07-16 14:23:08 [SEVERE]     at org.sqlite.RS.findColumn(RS.java:121)
    2011-07-16 14:23:08 [SEVERE]     at org.sqlite.RS.getString(RS.java:317)
    2011-07-16 14:23:08 [SEVERE]     at net.sacredlabyrinth.Phaed.PreciousStones.managers.StorageManager.getFields(StorageManager.java:326)
    2011-07-16 14:23:08 [SEVERE]     at net.sacredlabyrinth.Phaed.PreciousStones.managers.StorageManager.loadWorldFields(StorageManager.java:204)
    2011-07-16 14:23:08 [SEVERE]     at net.sacredlabyrinth.Phaed.PreciousStones.managers.StorageManager.loadWorldData(StorageManager.java:193)
    2011-07-16 14:23:08 [SEVERE]     at net.sacredlabyrinth.Phaed.PreciousStones.managers.StorageManager.<init>(StorageManager.java:52)
    2011-07-16 14:23:08 [SEVERE]     at net.sacredlabyrinth.Phaed.PreciousStones.PreciousStones.onEnable(PreciousStones.java:115)
    2011-07-16 14:23:08 [SEVERE]     at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:126)
    2011-07-16 14:23:08 [SEVERE]     at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:857)
    2011-07-16 14:23:08 [SEVERE]     at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:264)
    2011-07-16 14:23:08 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:151)
    2011-07-16 14:23:08 [SEVERE]     at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:136)
    2011-07-16 14:23:08 [SEVERE]     at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:284)
    2011-07-16 14:23:08 [SEVERE]     at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:271)
    2011-07-16 14:23:08 [SEVERE]     at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:148)
    2011-07-16 14:23:08 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    2011-07-16 14:23:08 [SEVERE]     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
     
  14. Offline

    MuttsNuts

    Hello. I'm getting 404 Not Found message on the zip and jar downloads. Any chance you could take a look at that for me. Thanks much ;)
     
  15. Offline

    SomeGuy72

    Hello. The download link seems to be broken, I would appreciate it if you fixed it. Thanks :p
    This plugin looks great!
     
  16. Offline

    Fallen_Advent

    Plugin looks great, 5.3 download link is broken, Ill just work with 5.2 till it gets fixed ^_^ thanks for keeping this plugin alive man
     
  17. Offline

    phaed

    Sorry about this, there was a problem with 5.3 and sqlite. In order to fix this you will need to use this: http://www.sqlitemanager.org/ to make the following changes:
    • Delete your pstone_players table
    • Edit your pstone_fields table and change the column last_used to type bigint
    After this you can run 5.3.1 and you wont get this problems.

    Change log
    Version 5.3.1
    • Fixed: SQLite incompatibility with 5.3
    • Warning: Backup your database before upgrading to 5.3.x just in case as it makes changes to the db schema
    • Improved responsiveness and precision of cannon/launchers/prevent-entry fields
    • Fixed: double launch/cannon launches

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

    GazerDwarf

    When I use the entry bouncer other players can still get through the field, they just get slowed a lot. The entry bouncer is using the default settings and I am using version 5.2.2. Thanks.
     
  19. Offline

    phaed

    Fixed in 5.3.1
     
  20. Offline

    staniboy

    ty for the update! Would #1000 brake the plugin? anyone?

    Hm looks like I got a minor and major bug for you. Minor - If there is no true on welcome/farewell message(or when it's absent) in config when you try to do /ps setname it will say that there is no fields. When you able to setname and you trying to set it to the same name it would say that there is no fields.. Also when welcome/farewell is on it is look like messages would apper(welcome/farewell) when you move across overlapped fields...(tested only vertically moving on ladder) Major - when you do /reload on the server you get this
    Code:
    2011-07-17 15:13:50 [WARNING] Error at SQL Query: [SQLITE_CONSTRAINT]  Abort due to constraint violation (columns x, y, z, world are not unique)
    Triggers when you trying to set/remove pstone, this is hunging the server.


    Tested on #1000, clean install of PS 5.3.1(new db, new config)

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

    GmK

    @phaed

    When starting 5.3.1, MySQL version:

    2011-07-18 02:03:27 [WARNING] Error at SQL Query: Unknown column 'pstone_players.player_name' in 'on clause'

    Doesnt seem to stop anything so far, just wanted to let you know.
     
  22. Offline

    staniboy

    When I left click someones block it deleting it O_O
     
  23. Offline

    phaed

    Change log
    Version 5.3.2
    • Fixed: disappearing fields bug
    • Added: /ps revert, will revert orphaned blocks back to the block type they are supposed to be
    If you have come across the disappearing pstone bug on 5.3.1, use /ps revert to revert back all the orphans left behind back to their old selves again. The bug has been fixed in 5.3.2.

    Delete your pstone_players table so that it can be automatically recreated with the correct column name.

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

    staniboy

    It's still does the same thing as it used to do when you placing protections after reload i placed 2 overlapping field and go the same sqllite error.... i always testing it on fresh installation...with new db and config...
     
  25. Offline

    Phun

    Download link doesn't work.
     
  26. Offline

    phaed

    That's odd, it does for me. Try again.

    Change log
    Version 5.3.3
    • Added: Made fields and unbreakables unmovable by pistons using cb#1000's new piston events
    • Removed: piston workaround

    Trying to decipher what you are saying here is giving me headaches. Let me see if I understand, the first part you are trying to say that you can still see welcome/farewell messages for individual fields even though the fields are overlapped. Think I got that one. Second you are saying that when you reload you get that error, but that error is also triggered when you use /ps remove? Can that be right? Is English your first language? Its really hard to debug errors when the bug report is tougher to figure out than the error itself.

    PS. No idea what hunging means.

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

    staniboy

    on #1000 and 5.3.2 and SQLlite ( As I'm not interested in this plugin anymore)
    Here u go:
    1. type in "reload" in ur server command line
    2. Place a few pstones
    3. Remove what you just placed
    4. ur server should be crashing by now

    ty for trying.
     
  28. Offline

    phaed

    You are right, non-stop sql errors after doing this on SQLite.
     
  29. Offline

    Bronski

    You may still be uploading this but I'm getting:

    EDIT: I think I'm moving to 1000 tonight so I'll post back if I get in any trouble (as you know by now :) )
     
  30. Offline

    phaed

    oops, try again
     
  31. Offline

    Bronski

    CB1000

    Code:
    02:05:03 [SEVERE] null
    java.sql.BatchUpdateException: Unknown column 'player_name' in 'field list'
            at com.mysql.jdbc.StatementImpl.executeBatch(StatementImpl.java:1065)
            at net.sacredlabyrinth.Phaed.PreciousStones.data.mysqlDatabaseHandler.closeBatch(mysqlDatabaseHandler.java:111)
            at net.sacredlabyrinth.Phaed.PreciousStones.data.mysqlCore.closeBatch(mysqlCore.java:87)
            at net.sacredlabyrinth.Phaed.PreciousStones.managers.StorageManager.processQueue(StorageManager.java:1001)
            at net.sacredlabyrinth.Phaed.PreciousStones.managers.StorageManager$1.run(StorageManager.java:950)
            at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
            at java.lang.Thread.run(Thread.java:636)
    
    Hrm... fields aren't working.

    Did the 'name' field get changed to 'player_name' recently in the database?
     
Thread Status:
Not open for further replies.

Share This Page