[NEED] Selling Schematics plugin (fully described and uses template)

Discussion in 'Archived: Plugin Requests' started by DannySan626, May 30, 2014.

?

Want me to think of more crafty plugin ideas?

  1. no, this was boring and useless

    66.7%
  2. maybe, but make it more useful next time

    0 vote(s)
    0.0%
  3. maybe, but make it more fun next time

    0 vote(s)
    0.0%
  4. yes, this was a great request

    33.3%
  1. Offline

    DannySan626

    Plugin category: I wouldn't know, maybe Fun. Please correct me if I am wrong.

    Suggested name: TraderSchematics (but I do not mind if you name ti something else because you would be the one creating the plugin)

    What I want: I would like to be able to sell schematics on my server using either Citizens2 traders, or by typing in a command to give player schematics. I also use Enjin DonationCraft store and I would like players to buy exclusive schematics on there with points earned from my server. Enjin's DonationCraft store, as some Enjin site owners would know, uses commands to do the specific things you want to do when selling that item(s). So using commands would be very useful and make the plugin more dynamic and fun to play with.

    As an example on how I want this plugin to work, lets say I build a small house. I then use WorldEdit to select around the house. then I stand at the bottom left corner (or wherever the server owners decide they want to stand for the paste point) and copy and save the schematic, lets call this schematic 'Home'. Then we would use a command, lets say /ts schematic transfer <name>. so it would be like so: /ts schematic transfer Home. Then the server owner or admins depending on permissions, would get a sample paper in hand with the schematic name on it and has an enchanted effect over it (maybe allow changing the color of the effect would be cool if possible).

    Now onto when a player uses it. Basically, Owners should let players know how to paste them correctly, but in this case I want to make it easy on them. Lets say they paste it and do not like where it is. the player could just type in a command to remove it, and get the schematic paper back. Lets say the command is /ts undo, this would obviously undo the paste and give it back to the player. also, to have a player rotate would just be like the WE command which would probably be something like this: /ts rotate <degree [such as 90 180 or 270]>

    Now players after confirming the changes would not be able to get the schematic back. I would not know how it would be possible as schematics could overlap others, and possibly replace them. so I would think players would have to be very careful on how they use their schematics. also, a schematic could be spoils of a battle. Lets say a player decides to be carrying schematics on them while traveling, they come across a hostile player and dies. Basically, now that player has the schematic and may use it as well. SO I would like the schematics to be used by anyone else who may obtain it, not just the player who bought it. (hope that makes sense)

    Now lets talk about compatibility with other plugins, a major one being Factions or world guard regions. I say if any servers use any type of plugins that use some sort of region protection or whatever, try and make this plugin compatible with them. Like lets say an enemy of another faction comes and tries to lay down a schematic, but the schematic can overlap a factions claimed region, there would be a message that says something like 'Your schematic overlaps a region that does not belong to you' (or your faction depending on the plugin). this would make changes to land that they have no permission to build on impossible and safe for servers to use without the worry they might find a ton of random homes in their spawns and such.

    So now about the plugins folder where all the configs and files would go. in the folder, upon loading up the server lets say there will be 3 files that will load up, 'config.yml', 'lang.yml', and a 'schematics' file folder. in the config, we could have options like: how many schematics a player can load per second(s), factions options possibly on like what message to diplay when trying to paste a schematic over claimed land that is not their own, Worldguard options similar to factions with the messages, Metrics disabling (if you will use it), and whatever else you may need to add or other features you feel should be included to balance out the gameplay and not make it too resource intensive. in the lang.yml, we can specify what language we want the plugin to display for the plugin. And the schematics folder where we can transfer/move schematics to be able ti use them.

    Adding these schematics to npc shops and other shops in general would be easy enough as in my experiences Npc shops just take the item and sell it as is, even if another plugin is modifying the item. On my server I use UltraTrader and all I do is drag and drop an item from my inventory and it keeps everything the same not matter what. it keeps the Lore, Name, Enchants, and potion effects on items. (I do not know about other plugins that do NOT do this, but I am sure we will find out soon enough)

    I hope this was somewhat easy to understand, if there are any questions or more information you would like me to add, just comment below and I will try and get back to you asap by EDITING this post and then posting where I made the change.

    Ideas for commands: /ts reload - reloads config
    /ts give <player> [schematic name] - gives a player specified schematic
    /ts undo - undoes a paste from a schematic used by THIS plugin only
    /ts schematic transfer <name> - transfers the schematic located within the WE schematic folder to the TradeSchematics schematic folder.
    /ts rotate <90, 180, 270> - rotates schematic to specified degree
    /ts select - selects a schematic that was placed so that you may turn it back into the paper schematic. A player must be standing within the region of the build to select it. (only if possible)

    Ideas for permissions: ts.schematic.use - lets players use schematics
    ts.transfer - allows players to move schematics from folder to folder.
    ts.reload - allows players to reload the plugin
    ts.edit - allows players to rotate, select, and undo builds
    ts.give - allows players to give others specific schematics

    When I'd like it by: Take your time to make it function the way it needs to function.


    Thank you for reading =)

    Bump...

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 1, 2016
    Blackbird956 likes this.
  2. Online

    timtower Administrator Administrator Moderator

  3. Offline

    DannySan626

    Ok then sorry.
     
  4. Offline

    Garris0n

    While it's a nicely detailed description, and actually paragraphed, you didn't put an empty line in between the paragraphs, so it's still a wall of text. I'd recommend fixing that.
     
    timtower likes this.
  5. Offline

    DannySan626

    Garris0n Ok, I have fixed it. I hope it looks better.
     
    Garris0n likes this.
  6. Offline

    DannySan626

    I believe I can bump a this point.
     
  7. Offline

    FlareLine

    I'm showing mild signs of interest in this, however I do have a question relating to whether WorldEdit has built in permissions for separate schematics or just one for the whole command?
    Do you have any idea Garris0n
     
  8. Online

    timtower Administrator Administrator Moderator

    1 permission for schematics in general.
    You can use the API from worldedit to make your own permissions though
     
  9. Offline

    DannySan626

    FlareLine Any luck? It has been a while since I came back to this thread.
     
  10. Offline

    FlareLine

    I'm actually really busy at the moment so I haven't even had a chance to look at it yet. There may be a possibility in the future, but I doubt it - sorry.
     
  11. Offline

    DannySan626

    FlareLine , that is fine, I just hope something turns up because I would really like this plugin.
     
  12. Offline

    chingo247

    Im currently developing something similar,
    http://dev.bukkit.org/bukkit-plugins/structureapi/

    It's for bukkit 1.6.4 at the moment until I get out of alpha,

    as for the plans I'm currently at the point of implementing something with a faction-like style so players may only select plans of their faction. I need some inspiration for this, but I'm definitely not going to reinvent the wheel.

    About the schematic. The schematics are loaded within the SettlerCraft(My plugin) structures folder. There must be a config for each schematic (for name, price, id, schematic), otherwise the plugin would not recognize it. When the required info is filled, the plan should automatically appear in the shop (you DONT need to hardcode it's position or anything)


    The plugin uses:
    - WorldEdit
    - AsyncWorldEdit - (Comes with a config were you can set the amount of blocks a player or vip may set per interval)
    - WorldGuard - Currently only checks if the structure doesn't overlap any unowned region. Also each structure has it's own region
    -Holographic Displays
    -Vault - For to handling transactions (Optional)



    The plugin is still in alpha, if you aren't able to download the plugin for any reason let me know. Also this is my first bukkit plugin (Not that I'm new to Java) so let me notice if something is not alright.
     
  13. Offline

    DannySan626

    chingo247 that is great, but i am in 1.7.2 atm, and plus your plugin has way more than I need lol, but are the extras able to be turned off if not needed?
     
  14. Offline

    chingo247

    Shame, my menu breaks in 1.7.2...(Which works completly fine in 1.7.9) What extra's are you talking about?
     
  15. Offline

    DannySan626

    like lets say I do NOT want holographic displays, can I turn that off so the plugin does not search for any active? Also I have a question about the factions thing, what do you mean by, "I'm currently at the point of implementing something with a faction-like style so players may only select plans of their faction.", like will the plugin look and check to see if the land is owned before pasting the schematic?
     
  16. Offline

    chingo247

    I could make the holographic displays optional as they are just there to quickly view the id and name of the structure (There is a command that exactly does the same).
    As for factions, i was thinking about adding a (optional) faction node for each structure. This way it's possible to assign a set of structures to a specific faction. Meaning when opening the planmenu the player only sees the structures of his faction or the plans that are not faction specific.

    This restriction does not apply for the placement of structures. If the plan falls into the other faction's hands they may be able to build it.

    At the moment all players may build in regions they own or regions that are unowned. I was thinking about some feature called "Restrict regions", where players may only build within owned regions. However I wasn't able to implement it as I don't know anything about how regions are claimed in-game.

    Basicaly I need more information about:
    • How the game starts (At the begin of the game nobody has a region, or do they?)
    • How the game progresses ( The game logic )
    • What kind of player roles are there (ranks? are there any?)
    • Do players need specific skills (SkillAPI or other plugins) to do stuff (e.g. Some structures require a higher lvl)
     
  17. Offline

    DannySan626

    ummm idk if that is what I want actually, I was just looking for a plugin to SELL schematics out of shops I already have made. I mean your plugin seems cool, but it seems more complex than what my server needs.
     
  18. Offline

    chingo247

    It really looks more complex than it is, but basicly it only provides a way to place schematics using WorldEdit and AsyncWorldEdit (for performance) and WorldGuard for managing the placement.

    All the other features are/should/can be optional and are meant to be extensive. Ranks, skills, factions are not implemented by this plugin. What I have to do is write a RequirementAPI to support all (most) of them. Same goes for claiming of regions.

    The PlanMenu also has a Permission to open it, but you may also disable it. I don't know how your shop works, but if it only needs a list of items, then it can be provided.

    If i'ts really not what you are looking for then i'll be moving on :p
     
  19. Offline

    DannySan626

    chingo247 ok well just answer me this before disappearing into the sunset never to be seen by me again, What items are schematics bound to if they are bounded to anything, and would I just be able to sell them using UltraTrader or any shop NPC's using Citizens?
     
  20. Offline

    chingo247

    I'm going to take a look at UltraTrader on how they add items to inventory, if they completely replace the lore, then i would be kinda lost.. My plans require at least an id inside the lore and the type... If I were to reimplement it I could force that name's of plans are unique and are bound to paper.

    My menu is not compatible with 1.7.2. so I have to come up with something that allows you to select plans througt console. I could do something like: "/sc lp [ index]" which would list plans like:

    ------------------(Page 1 / 3)----------------
    #1 Castle 1
    #2 Castle 2
    #3 House 1
    #4 House 2
    #5 House 3

    /sc gp [id][amount] or /sc gp 1 64 would give you one stack of Castle 1
    That said I can't guarantee that I would support 1.7.2 for a long time as I plan to move to 1.7.9 soon.
     
  21. Offline

    DannySan626

    chingo247 Yeah I knwo, all DEV are moving their plugins to 1.7.9 as I am trying to upgrade my server as well. But sadly I am waiting on UltrTrader since it seems the DEV has been off Bukkit for 3 months already... so idk I might have to use another shop plugin...
     
  22. Offline

    Syd

    Funny, I'm on a plugin like this quite a while now (based on a request in another forum...). I might be able to supply such a plugin in the future, but I can't make any promises. I'll try to keep your ideas/wishes in mind.

    But thats no reason for other to not do such a plugin. ;)
     

Share This Page