[REQ] (Spout) Citizens Quest Editor (a challenge, even for an expert)

Discussion in 'Archived: Plugin Requests' started by Musaddict, Oct 26, 2011.

  1. Offline

    Musaddict

    So, I know there's already a CitizensSpout plugin, but it doesn't have the functionality I'm looking for.

    Basically, now that Citizens finally has working quests I want to add some, lol. The only problem is that there arent any tutorials, examples, or explanations of how to add them beyond "add your quests in your quests.yml file" (except for one 50 minute video on youtube, which is outdated).

    What I'd like from the community is a plugin using Spout and Spoutclient that utilizes a HUD button system that easily allows me to add/remove/select quests, edit their objectives/requirements/rewards, and edit the text that the NPC's say for each part. Here is a brief runthrough of the gist of the aesthetics:

    Keep in mind that all of this would only be possible if you're able to add text, edit text, and remove text from the quests.yml from the Citizens plugin. After that it should be easier and possibly even fun.

    The Main Menu:
    [​IMG]
    The Main Menu gives you the option of adding/removing/editing quests.
    • "New Quest" will prompt you to enter a name for the quest, which is then stored in the yml. It will then take you to the "Quest Editor Menu", with the name of the quest replacing the words "Example Quest".
    • "Edit Quest" will prompt you to enter the name of an existing quest, which will take you to the "Quest Editor Menu", with the name of the quest replacing the words "Example Quest".
    • "Remove Quest" will prompt you to enter the name of an existing quest, which will remove it from the yml.
    Quest Editor Menu:
    [​IMG]
    • "Edit Prereq" will take you to the "Prereq Editor Menu"
    • "Edit Reward" will take you to the "Reward Editor Menu"
    • "Edit QGiver" will prompt you to enter the number ID of the quest giver, and write that to the yml.
    • "Add Objective" will take you to the "Add Objective Menu"
    • "Edit Objective" will take you to the "Edit Objective Menu"
    • "Rmv Objective" will prompt you to enter the ID of a quest, which it will remove from the quests.yml
    Edit Prereq Menu:
    [​IMG]
    All of these options will edit the quests.yml file accordingly.
    • "Edit In-Hand" prompts for an item, will force the player to have that object ID equipped (default: 0 (air))
    • "Add In-Inv" prompts for an item, adds an item needed in your inv to start the quest (idk if this is possible, if not ignore)
    • "Rmv In-Hand" prompts for an item, removes one of the preset "Add In-Inv" items, does not physically remove items (again, idk if this is possible, if not ignore)
    • "Edit Currency" prompts for an amount of currency, Removes a set amount of currency (default: 0)
    • "Add Quest" prompts for quest, adds that quest to the list of needed completed quests.
    • "Rmv Quest" prompts for quest, removes that quest from the list of needed completed quests.
    Edit Reward Menu:
    [​IMG]
    All of these options will edit the quests.yml file accordingly.
    • "Add/Rmv In-Inv" prompts for an item, adds/removes that item to the player's inventory.
    • "Edit Currency" prompts for an amount of currency, adds currency to the player's account.
    • "Edit Permission" prompts for a permission node, adds that permission node to the quester's permission.
    • "Heal" prompts for # of hearts, heals for that amount.
    • "Promote" prompts for group, promotes quester to that group.
    Add Objective Menu:
    [​IMG]
    All of the following choices prompts for a value, then the objective type/value will be added to the quests.yml.
    • "Material ID" asks for the material ID.
    • "Amount" asks for the amount of another objective.
    • "String" asks for a string of another objective (ex: mob type, player name, etc).
    • "Target NPC" asks for the ID of an NPC to deliver to.
    • "Move-To Here" sets the "location" node to where you're standing.
    • "Move-To (xyz)" asks for x,y,z for the "location" node.
    Edit Objective Menu:
    [​IMG]
    The "Edit Objective" menu has identical functions as the "Add Objective" menu, however you will first be prompted for which objective you want to alter, then the choice made on this menu will replace that selected objective.



    So, yeah. That's the gist of it! lol I know that's a heap-ton of programming, BUT I've seen harder plugins done, so I know someone can manage this :)

    Although I do not have the API available for you to look at, you may take a look HERE to view just the kind of challenge you'd be dealing with.
     
    zombone1982 likes this.
  2. Offline

    walty

    can you post this here? :) Or is it ready yet?
     
  3. Offline

    zombone1982

    Kudos Musaddict. you dont know how happy i was to find this request. I have been currently killing myself trying to learn java code, learning Eclipse, and even delve into a little Python trying to come up with a way to do EXACTLY what you requested. it would be cool if someone has some type of project going on for this request
     
  4. Offline

    Musaddict

    Yeah, it'd be nice to get some people on board. I have minimal java experience, and when I usually get in a team I usually take the role of designer, and help by pointing out some logical fallacies.
     
  5. Offline

    Jaminb2030

  6. Offline

    Musaddict

Share This Page