[DEV/FUN]PuzzleQuest v0.1 - Redstone-Powered Questing [740]

Discussion in 'Inactive/Unsupported Plugins' started by MichaelBurge, May 4, 2011.

  1. Offline

    MichaelBurge

    PuzzleQuest: Redstone-Powered Questing

    Version: v0.1

    Have you seen uQuest, thought it'd be nice to give quests to your users, but were disappointed with only gathering and killing quests? PuzzleQuest builds on that framework, using the RedstoneChips library to allow you to design dungeons for your users to explore.

    This is a private plugin I've been using on my server for roughly a month(as of May 5, 2011), to help users go through tutorial areas.

    Features:

    • Adds a variety of quest-related circuits to your server.
    • Tracks quest completion, so you can guarantee starter kits or tutorials are only given/done once.
    • Is used on a live server with live users finding live bugs. This guarantees it won't get *too* outdated.
    Setting Up the Plugin:
    For the plugin itself:

    1. Install RedstoneChips v0.9 and uQuest 1.20.
    2 Put the PuzzleQuest.jar file and PuzzleQuest folder in your /plugins/ directory. data.yml contains the quest data for your server's players.
    3(optional). Put the sample Quests.yml in your uQuest folder, to see the 2 tutorial quests I use on my live server.


    For the circuitry:

    3. Make a RedstoneChips circuit with 1 output, 1 input, and 1 interface block. The circuit will activate in a 10 radius around the interface block whenever the input receives a signal. Every user in the radius will be affected.
    4. Make a sign on the chip that says


    Code:
    questcircuit
    <quest id>
    <subtype>
    
    where "<quest id>" is the numerical quest code in your uQuest file, and "<subtype>" is one of these:

    • "give": Attempts to give the quest to the user, outputting a signal if it was successful.
    • "detect": Outputs a signal if the quest is currently active
    • "finish": Attempts to finish the quest for the user. Outputs a signal if it was successful.
    • "drop": If the quest is currently active, drops it and outputs if successful.
    • "clear": Clears the quest from the user's list of completed quests. Outputs a signal if the quest had actually been completed.
    • "completed": Outputs a signal if the quest has been completed.
    Video Tutorial:
    This tutorial introduces each of the circuits above and shows how to make a simple quest using my plugin.
    Part 1: http://www.youtube.com/watch?v=6Pc_vP6j6GI
    Part 2: http://www.youtube.com/watch?v=MRdNE3UDQ_0

    Planned Features:
    • Allow you to add an optional "radius" argument to the sign.
    • Add direct iConomy support, allowing you to detect if the user has enough money to buy dirt from the tutorial's shop and give him money if not.
    • Monster spawning for dungeons.
    • A circuit for resetting levers to a default state.
    • Teleportation circuits for advanced hedge mazes.
    • Fix some minor errors the logs will show on loading, relating to uQuest's obectives formatting.
    • Allow WorldEdit scripts to be run from a chip.
    • Allow the chip to listen on a broadcast channel for a quest.
    • Circuits for saving/restoring/wiping players' inventories.
    • Allow a range of quests to be given on the sign argument. So "10-50" will process on the first valid quest from 10 to 50.
    Changelog:
    Version 0.1
    • Initial release.
     

    Attached Files:

    ronix likes this.
  2. Offline

    MichaelBurge

    Does it still break if you downgrade your uQuest to 1.21? They changed their API in 1.50 and my plugin hasn't been updated.
     
  3. Offline

    lilalulelo

    Seems to work fine with the downgrade. Though Uquest doesn't link with permissions and Iconomy with this version :/
    Do you plan on updating your plugin it at some point ?
     
  4. Offline

    Wakko

    I'm a little confused on what this does.
    A video demonstration or pictures?
     
  5. Offline

    MichaelBurge

    There's already a video linked in the original post.
     
  6. Offline

    Wakko

    whoops, missed those lol
     
  7. Offline

    hiro24

    are there any plans to continue development of this plugin? I love it, using it alot, but there's certain things that are giving me problems. For example: I want to do chain quests, so having the output of a "completed" circuit go to the input of of "give" circuit for the next quest in the chain works... the first time. But then the output of the "completed" circuit is stuck in on mode, effectively making it impossible for the next person who comes along to accept the quest, until the circuit is reset.

    I don't want to just have 1 "give" circuit, as then there's no way of verifying the previous quest was complete. Any ideas on how to solve this dilemma?
     
  8. Offline

    MichaelBurge

    If a Bukkit or RedstoneChips update ever actually breaks it or there are any actual bugs, I'll make sure to update my plugin accordingly.

    Actual new features depend more on the demand.

    Rather than using the output of "give"/"finish" directly, hook them up into an AND gate with one input from the pressure plate and one input from the circuit. Now every time a user steps on the plate, it'll send a fresh pulse through the rest of the checking circuitry.

    You can also look into RedstoneChips' "pulse" circuit, or using an SR-NOR latch with the SET line on one side of a door and the RESET line on the other.
     
  9. Offline

    hiro24

    Thank you for your timely response, it's really appreciated. However, this doesn't seem to solve the fundamental problem I'm having. What you describe seems to work well in your tutorial video. However, in that example, you give, then detect. For me, the opposite direction needs to happen. I must detect, then give. In your example above, here lies the problem:

    Once a "completed" chip is tripped, it stays tripped, whether the next guy that comes along has completed it or not. If I set up an SR-NOR off a plate or something, it still doesn't change the fact that the next guy to step on the plate to.. open a door or whatever... may not have actually completed the quest, he's merely stepping on a plate that's accessible b/c the previous guy 1) completed the quest, and 2) also stepped on the plate to, I suppose, get the next quest. Player 2 just needs now to step on the plate, and poof... quest 2, w/o doing quest 1.
     
  10. Offline

    MichaelBurge

    I'll change it for the next version so that switching the input from ON to OFF causes the output to go OFF as well. I'll try to release an update later today with a few new features(uQuest 1.50, and some new circuits).

    Or were you filing a bug report saying that "completed" circuits get permanently stuck in an ON state, regardless of what input you send them later?
     
  11. Offline

    hiro24

    oh no, I know they're designed to stay on.. I'm just saying functionally, it'd be better if it didn't, for reasons like this. btw, you're one of the fastest devs to respond to these, so kudos. :D

    I think I misread the pulse description, and it -may- do what I need, I'm looking into it.

    Yeah, pulse did the job, I laid it out as follows:

    IW##
    CS##
    CG#L
    #CCC
    #I##

    I = iron block/input
    W = redstone wire
    C = chip blocks
    L = lapis block
    S = switch
    G = gold block/output
    # = nothing/air

    So the bottom is a "completed" chip
    the top chip is a pulse 1sec positive chip
    the 2 chips share an output block, and when the "completed" chip outputs, the wire connects to the "pulse" chip, whos output is changed after 1 second... so once hit, if the quest is completed, it sends a signal for 1 second, then resets.

    Thanks for the suggestion for pulse.

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

    lilalulelo

    Any news on the state of advancement of the update ? I really like this plugin and I'll be happy if it could work with the latest uQuest.
     
  13. Offline

    cyborax

    plugin still working with bukkit [1000] :)
    but the "finish" option say also that the quest finished if i have not all items to finish the quest
    but i like this plugin ;) it cool to create events
     
  14. Offline

    hiro24

    with uQuest being inactive, and just a matter of time before it breaks.. and with an API now available for EpicQuests (which picks up the work of uQuest), would you be willing to look into support of EpicQuests for puzzlequest? Pleaseeee say yes..
     
  15. Offline

    sddddgjd

    Heeey, do you mind if i update puzzlequest to use it with my iQuest plugin? It's really awesome....
     

Share This Page