Inactive [ADMN/EDIT/GEN]Schematic Database : Share Your Schematic With the Minecraft Community [1.2.5-R4.0]

Discussion in 'Inactive/Unsupported Plugins' started by DocRedstone, Jun 27, 2012.

  1. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    [IMG]


    Overview
    Have you ever been on a server working on a great build and wishing that you could save it for yourself? Or have you ever made a build so epic that you wish you could share it with the rest of the world? Well if either of the above are true then this plugin is for you. With Schematic Database you can upload a schematic to a database to share with the world or use the personal client to download the schematic to your computer to use later on in a world of your own.

    Features (Plugin)
    • Upload a schematic to the server for everyone to see.
    • Download/Load a schematic from the server for your own personal use.
    • Use a "Clock" item in game to set the bounds of your schematic
    • Permissions to only allow your most trusted members to use the plugin.
    • Ability to see a list of ALL the current schematics
    • Ability to search for a plugin with a specified name.
    Features (Personal Client)
    • Download a schematic to your own personal computer for use in your own world.
    • Ability to see a list of ALL the current schematics.
    • Ability to search for a specific schematic by name.
    Permissions
    • database.canSave - If a user has this permission he/she can save the schematic to the server. This process can be somewhat RAM intensive if the schematic is larger than 3000x3000
    • database.canLoad - If a user has this permission he/she can load a schematic from the root directory if it exist. This process can be somewhat RAM intensive if the schematic is larger than 3000x3000
    • database.canDownload - If a user has this permisiion he/she can download a schematic from the server to the root directory for later use. This process can be somewhat RAM intensive if the schematic is larger than 3000x3000
    • database.canList - If a user has this permission he/she can see all the schematics that are available for download and can use the search feature to find specific schematics. This feature if spammed can lag or potentially crash a server so hand it out wisely.
    Commands
    • /saveschematic <schematicname> - This command requires that the user have the permission database.canSave. This command will start the process of saving the schematic to the server. It is only RAM intensive if the .schematic is greater than 3000x3000
    • /loadschematic <schematicname> - This command requires that the user have the permission database.canLoad. This command will start the process of loading a schematic to the server. It is only RAM intensive if the .schematic is greater than 3000x3000 <schematicname is case sensitive>.
    • /listfiles - This command requires that the user have the permission database.canList. It can become RAM intensive and potentially cause a crash if it is spammed. It is suggested that this command be given out sparingly.
    • /listfiles search <param> - This command requires that the user have the permission database.canList. It can become RAM intensive and potentially cause a crash if it is spammed. It is suggested that this command be given out sparingly.
    • *true - This command requires that the user have the permission database.canSave. In order for this command to be called a user must first call the command /saveschematic <schematicname>. It is only RAM intensive if the .schematic is greater than 3000x3000
    • *continue - This command requires that the user have the permission database.canLoad. In order for this command to be called a user must first call the command /loadschematic <schematicname>. It is only RAM intensive if the .schematic is greater than 3000x3000
    • *download - This command requires that the user have the permission database.canDownload. In order for this command to be called the user must first call the command /loadschematic <schematicname>. <Schematicname> is case sensitive and a error message will be displayed if the file doesnot exist. It is only RAM intensive if the .schematic is greater than 3000x3000
    FAQ
    • What do I use to set the bounds of the schematic?
      • The "Clock" item.
    • Why does this plugin take awhile to load on startup?
      • This plugin must first connect to the database before it can load.
    • Why are there so many commands before upload/dowload/load of a .schematic file
      • I am trying to prevent anyone messing with the database too much and I would like to prevent crashes. I would also like to prevent people from "accidentally" uploading a file as there is currently no way to delete a file.
    • What is the purpose of having a personal client?
      • So that any schematic file can be downloaded to your personal computer and used in a non-server world.
    • Where is the schematic placed?
      • The schematic is placed back to front one block to the right of your current position.
    • Why do I get an error?
      • First I suggest that you make sure WorldEdit is download since this plugin requires it be in the plugin folder for it to work correctly. If this does not solve your error post bellow the error and a description of how you got to this error.
    Example Use

    Upload a File(Save a File)
    1. Select the structure that you would like to upload using the right and left mouse buttons and the "clock" item.
    2. Type the command /saveschematic <filename> (The variable filename is case sensitive)
    3. A message will appear showing the size of the schematic and the name of the schematic. Confirm that both are true.
    4. Type the command *true. The saving and the upload process will being to start.
    Load a File(Already Downloaded)
    1. Select the structure that you would like to upload using the right and left mouse buttons and the "clock" item.
    2. Type the command /loadschematic <filename> (The variable filename is case sensitive)
    3. If the file exists locally a message will be displayed stating you can load the schematic. If not read the section Download a File.
    4. Type the command *continue. The schematic will be place back to front one block to the right of your current location.
    Download a File(Via Server)
    1. Type the command /loadschematic <filename> (The variablefilename is case sensitive)
    2. If the file exists locally a message will be displayed stating you can load the schematic if so read the section Load a File. If this message does not display type *download.
    3. The file will begin downloading. Once the download is finished you can load the schematic. If you need assistance read the section Load a File.
    Change Log (v1.0)
    • Plugin Officially Released to the Public
    .jar File (For use with your Bukkit Server)
    [IMG]
    Personal Client (For Downloading to your Personal Computer)
    [IMG]

    This post has been edited 4 times. It was last edited by DocRedstone Jun 28, 2012.
  2. Offline

    Codex Arcanum

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    The image below "Personal Client" does not appear to be a link.

    This post has been edited 1 time. It was last edited by Codex Arcanum Jun 28, 2012.
    DocRedstone likes this.
  3. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Thank you sir! It has been fixed.
  4. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Update: Project now available on bukkitdev!
  5. Offline

    Codex Arcanum

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Ah, the client is an exe. Any chance of offering it in a Mac friendly format?
  6. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    We'll if you can find a Mac compiler that works on windows I'd be happy to! If not I'll work on coding it into a runnable .jar
  7. Offline

    Dreeass

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    So this is what you needed the schematic thing for, great idea!
    DocRedstone likes this.
  8. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Exactly
  9. Offline

    md_5

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Very nice, approved.
    DocRedstone and JOPHESTUS like this.
  10. Offline

    mickdermack

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Always get two Exceptions on enabling, same when trying to download a schematic:
    Code:
    2012-07-01 03:38:27 [SEVERE] java.net.SocketException: Permission denied: recv failed
    2012-07-01 03:38:27 [SEVERE]    at java.net.SocketInputStream.socketRead0(Native Method)
    2012-07-01 03:38:27 [SEVERE]    at java.net.SocketInputStream.read(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at java.net.SocketInputStream.read(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at java.io.BufferedInputStream.fill(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at java.io.BufferedInputStream.read(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at sun.net.ftp.impl.FtpClient.readServerResponse(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at sun.net.ftp.impl.FtpClient.readReply(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at sun.net.ftp.impl.FtpClient.issueCommand(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at sun.net.ftp.impl.FtpClient.issueCommandCheck(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at sun.net.ftp.impl.FtpClient.openPassiveDataConnection(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at sun.net.ftp.impl.FtpClient.openDataConnection(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at sun.net.ftp.impl.FtpClient.getFileStream(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(Unknown Source)
    2012-07-01 03:38:27 [SEVERE]    at me.docredstone.sd.downloadFIle.download(downloadFIle.java:59)
    2012-07-01 03:38:27 [SEVERE]    at me.docredstone.sd.Main.bannedFromUse(Main.java:123)
    2012-07-01 03:38:27 [SEVERE]    at me.docredstone.sd.Main.onEnable(Main.java:73)
    2012-07-01 03:38:27 [SEVERE]    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:215)
    2012-07-01 03:38:27 [SEVERE]    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:337)
    2012-07-01 03:38:27 [SEVERE]    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
    2012-07-01 03:38:27 [SEVERE]    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:256)
    2012-07-01 03:38:27 [SEVERE]    at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:238)
    2012-07-01 03:38:27 [SEVERE]    at net.minecraft.server.MinecraftServer.t(MinecraftServer.java:381)
    2012-07-01 03:38:27 [SEVERE]    at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:368)
    2012-07-01 03:38:27 [SEVERE]    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:197)
    2012-07-01 03:38:27 [SEVERE]    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:432)
    2012-07-01 03:38:27 [SEVERE]    at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    2012-07-01 03:38:29 [SEVERE] java.net.SocketException: Permission denied: recv failed
    2012-07-01 03:38:29 [SEVERE]    at java.net.SocketInputStream.socketRead0(Native Method)
    2012-07-01 03:38:29 [SEVERE]    at java.net.SocketInputStream.read(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at java.net.SocketInputStream.read(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at java.io.BufferedInputStream.fill(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at java.io.BufferedInputStream.read(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at sun.net.ftp.impl.FtpClient.readServerResponse(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at sun.net.ftp.impl.FtpClient.readReply(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at sun.net.ftp.impl.FtpClient.issueCommand(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at sun.net.ftp.impl.FtpClient.issueCommandCheck(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at sun.net.ftp.impl.FtpClient.openPassiveDataConnection(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at sun.net.ftp.impl.FtpClient.openDataConnection(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at sun.net.ftp.impl.FtpClient.getFileStream(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(Unknown Source)
    2012-07-01 03:38:29 [SEVERE]    at me.docredstone.sd.downloadFIle.download(downloadFIle.java:59)
    2012-07-01 03:38:29 [SEVERE]    at me.docredstone.sd.Main.uploadDelay(Main.java:140)
    2012-07-01 03:38:29 [SEVERE]    at me.docredstone.sd.Main.onEnable(Main.java:81)
    2012-07-01 03:38:29 [SEVERE]    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:215)
    2012-07-01 03:38:29 [SEVERE]    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:337)
    2012-07-01 03:38:29 [SEVERE]    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
    2012-07-01 03:38:29 [SEVERE]    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:256)
    2012-07-01 03:38:29 [SEVERE]    at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:238)
    2012-07-01 03:38:29 [SEVERE]    at net.minecraft.server.MinecraftServer.t(MinecraftServer.java:381)
    2012-07-01 03:38:29 [SEVERE]    at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:368)
    2012-07-01 03:38:29 [SEVERE]    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:197)
    2012-07-01 03:38:29 [SEVERE]    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:432)
    2012-07-01 03:38:29 [SEVERE]    at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    
  11. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    That is interesting...I've never come across this and I did extensive testing... Let me do some research. Have you tried saving a schematic? Do you get the issue there as well?
  12. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    @mickdermack I've done some research and this is a result of a firewall block/protection. Some hosts/servers refuse to allow plugins to download external files in fear of them downloading "harsh" or "harmful" files. You can possibly discuss with your server host about allowing external downloads.
  13. Offline

    JeremyZh

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    This is indeed cool!!! I wanted to try this!!! Here are 2 questions that I have.
    Q1: But is there any way to turn the personal one to a mac readable file. I cannot open on Wine, so is there any way to open it on mac? I like it to have the extension .jar or .app. Those 2 extension are the most popular on the macs. Can you make a mac version?
    Q2: Also, is there any youtube video or picture showing all the actions on how to use it? I wanna see how it works before using it.

    Thanks. Please make my question 1 the priority because I love macs and I wanna this to be on mac!
  14. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    A1: I'm working on making it a runnable .jar file so it can run on mac. Just need to do some reading up.
    A2: Currently there is not, but there is a section that demonstrates how to use it for all the different functions.
    JeremyZh likes this.
  15. Offline

    JeremyZh

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Ok, I will be waiting for this .jar
  16. Offline

    mickdermack

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I tested that locally on my PC and I know my ISP doesn't block FTP as it works in other applications. I did some testing and found out that it resets the connection without former notice just after it gets the response with the data for passive mode. Some googling later I found out it was the Windows (*damn you*) firewall killing the FTP connection...
    Code:
    netsh advfirewall set global StatefulFTP disable
    and the problem was solved.
  17. Offline

    DocRedstone

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Glad to see that you fixed it!!! That's what I was able to find as well.

Share This Page