Inactive [MECH/RPG] Research and Tech 2.1 - Technology Tree [SPOUT][1.1-R1]

Discussion in 'Inactive/Unsupported Plugins' started by croxis, Dec 18, 2011.

  1. Offline


    Research -- Tech Tree


    Version: 2

    Research -- A tech tree api
    Tech -- An example plugin with simple mechanics.

    Short info for the reading lazy: Research is an API plugin that implements technology trees in game. In config.yml the server owner defines what blocks and items they don't want players using. In tech.yml they then define what they do want players to be able to make, break, place, and permissions for each technology. A default is provided. Players need the "research" permission node in order for the research plugin to work on them.

    Research is just an API, other plugins need to provide the commands for players. A sample plugin called Tech has been provided that demonstrates giving each online player one technology point a minute. Players will need the "tech" permission node.

    Intro/Justification: Many players enjoy the ability to jump right in minecraft and be able to build in diamond blocks right away. I am not one of those players. I get the most kick starting off restricted and developing new skills and abilities. RPG plugins do this for individual player actions, but I want to bring that kind of growth to the building and mining aspects. This plugin is for people who share my kind of play style.

    The Basics: This plugin is intended to work alongside other permission and Towny/Faction type plugins, although it will include basic functionality to be usable on its own. The plugin contains an existing default technology tree based on Civilization V's, but the server owner is able to customize it or rewrite it from scratch. The plugin tracks if a player can place, destroy, or using spout craft items based on the technology they have learned. Permission nodes can also be attached to technology.

    The Use Case: The best way for me to describe how this plugin works is through a use case.

    ServerOwnerSue installs the plugin and decides to check out the default settings. In config.yml there are a number of lists for what a player can't do if they have no technology under their name: BlockIDs for cantPlace, cantBreak, cantCraft, and and any permission nodes they WANT their players to start with (although I might change this to nodes they want to make sure player's DONT have).

    She then checks out techs.yml where she finds each tech has a description, costs, prerequisite technologies, fields for blockIDs under canPlace, canBreak, canCraft, as well as permission nodes. She decides to make a new technology called Teleportation which she adds to the bottom of the list

      description: "Instant travel! Opens up personal home warps"
      cost: 10000
      prereqs: ["Archery"] #Because that makes TOTAL sense!
      - commandbook.home
      - commandbook.sethome
      - 122
      canBreak: [122]
      canCraft: []
      # Custom events not yet available. This is for situations like a tech giving a town 10 free bonus chunks or something that is plugin specific.
      customEvents: []
    Once she tuned everything to her liking Sue became sad as no other plugins are set up to use Research. She download and installs TECH, a simple plugin that allows players to set their own personal research and earns one research point for every minute they play on her server.

    Integration: An API is being developed to allow other plugins that utilize groups of players (Towny/Factions/chunkyVillage/etc) to optionally tap in to this gameplay feature. It is impossible for me to accommodate all the possible ways these groups are organized and implemented. As a result technology is tracked per player. It will be up to external plugins to decide how to handle a player leaving or joining a group.

    • Tech tree based on Civilization V's tree
    • Manages block placing, breaking, and crafting events
    • Basic permission manager
    • Basic example plugin
    Research (Source) API
    Tech (Source) Example plugin, requires Research

    API: Link


    Version 2
    • addPoints now returns Tech learned, not boolean
    • Expanded api to accept strings
    • Updated to Bukkit 1.1 event system

    Version 1
    • Formal Release
    Version 1-SNAPSHOT
    • Initial Alpha
  2. Offline


    Thats.... interesting.
    We are trying to make it with Citizens quests, but if your plugin will evolve to more complex system... thats would be awesome.
    But dous it provide 'global' research or only individual for any player?
  3. Offline


    Research is tracked individually. To make it global another plugin just needs to write the required info for all players instead of one at a time.
  4. Offline


  5. Offline


    its very interesting !!!This plugin should work with FACTION plugin and we have kingdoms with technology ! AWSOME !
  6. Offline


    I've done a bit of bugfixing on this version and should be ready for release. I hope to get it published after the first.
  7. Offline


    The RB tag should always be last, feel free to move the spout tag to somewhere before it.
  8. Offline


    Version 1!
  9. Offline


  10. Offline


    Version 2! Some improvements to the api as well as updated to Bukkit 1.1 event system
  11. Offline


    This api is absolutely perfect for my own server!

    Is it possible to request a plugin that would link this with the factions plugin? Unfortuantly my own coding is poor and rusty and i don't think i'd be able to T.T It'd be much appreciated and a great addition to both bukkit and this api!
  12. Offline


    Sadly I have too much on my plate to support all the different towny/faction type of plugins. If they decide to agree on a standard group api then it would work out a lot better.
  13. Offline


    Awesome Plugin! Is there an way to give someone tech points by a command for testing? ^^
    EDIT: Is there also an way to check how many points u have?
  14. Offline


    The tech plugin has a progress command to show how many points. I haven't added commands into the main research api. The shortcut I used for testing was setting points directly in the sql database.
  15. Offline


    Oke thank you :D
  16. Offline


    Hey awesome plugin can you make some features for me?
    something like how long it takes to research something in hours so
    enableTime: false/true
    Time: 2 = 2hours server time
    and also could you make it so that there's certain group so like I have an Rpg server and humans are good swordsman and elves are good hunters swordsman don't need to research any swords and elves don't need to research bows and arrows.

  17. Offline


    I don't understand your first request, and no to your second. Another plugin can implement that.
  18. Offline


    Uploaded Research 2.1. This fixes a bug which allowed people to craft items before they learned the proper tech
  19. Awsome plugin but how about a GUI for picking research and knowing what research u have aquired

    Also i think a stable permission system would be better like permission bukkit or superperms
    Had to stop using it on my server because of perms not working correctly and a few server errors

    Keep up the good work though heading in the rite direction
  20. Offline


    Tech is only an example plugin, it will be up to other people to make plugins more specific to their server.

    I am using super perms.

    I can't fix errors that are not reported.
  21. Offline


    Are there any servers actively running this?
  22. Offline


    Mine is :p
  23. Offline


    When users try to do the /tech command, it says they don't have permission. Using PEX. What is the node to use so that they can use this?
  24. Offline


  25. Offline


    I think I finally found what I've been looking for. Do you have an email or skype where I could reach you regarding some other questions I have? I'd rather not discuss it here.
  26. Offline


    You should add ability to learn instantly in special places. I would like to get ''shout walls'', like in Skyrim where ppl can learn new special shouts. :rolleyes: Or library.
  27. Offline


    You can make your own plugin for that :)

Share This Page