Main Menu
  • Welcome to The RPG Maker Resource Kit.

[VXA] Quest Journal 1.0.3

Started by modern algebra, February 19, 2012, 08:01:42 PM

0 Members and 1 Guest are viewing this topic.

modern algebra

Quest Journal
Version: 1.0.3
Author: modern algebra
Date: 24 September 2012

Version History




  • <Version 1.0.3> 2012.09.24 - Fixed a minor incompatibility with ATS: Formatting
  • <Version 1.0.2> 2012.07.24 - Fixed a bug where the reset_quest, delete_quest, and setup_quest methods of Game_Interpreter would not work.
  • <Version 1.0.1> 2012.06.08 - Fixed a bug that would occur if there were less than two quest categories.
  • <Version 1.0d> 2012.02.27 - Fixed a bug with distribute_quest_rewards.
  • <Version 1.0c> 2012.02.23 - Fixed a bug where objective_revealed? did not exist.
  • <Version 1.0b> 2012.02.21 - Fixed a bug when CONCURRENT_ACTIVITY was set to false
  • <Version 1.0a> 2012.02.21 - Fixed a major bug with custom categories
  • <Version 1.0> 2012.02.19 - Original Release

Description



This script provides a graphical interface for showing quest progress. It is objective based, meaning that you choose when to reveal objectives and you can set it so that they show up as complete or failed. That said, this script does not build quests for you; it is only a supplementary scene for showing them. As such, you need to event all of the quests yourself and update/monitor quest progress via script call. Therefore, pay close attention to the instructions both here and in the Editable Regions.

Features


  • Unlimited number of quests (though if there are too many in one category there may be some lag when switching to that category)
  • Can setup and show lots of information about a quest
  • Vastly configurable, even down to the order in which data is shown and the fonts used
  • Quests are updated and monitored through simple script calls
  • If the information exceeds the visible height of the data window, can select the quest and scroll down to see the rest
  • Custom Categories permit you to add or remove categories and change their order
  • Access built into the menu, if it is so desired
  • Can manually add new types of basic data to be shown for each quest

Screenshots


The default setup.

Keep in mind that there are dozens of ways you can rearrange that. I did not give that quest a banner, but aside from that, you can totally rearrange the order in which the data is shown (on a quest per quest basis, if necessary), you can add new categories, you can change the icons of the default categories, you can add new types of data to show, you can change the font used for any particular entry, you can remove the category label window, etc. You have a lot of control over how the script looks, so even if you don't like the look of the default setup shown above, give the script a try and see if you can change it to your satisfaction.

Instructions

Paste this script into its own slot in the Script Editor, above Main but below Materials. You may wish to separate the configuration part of the script from the rest of it, for easier updating. See the header of the script on where the spot to do that is.

Please see the Header of the Script for detailed instructions on configuration and use.

Script



The script is too long. Please get it from Pastebin. A demo will be released shortly.

Addons

Debug Addon - napoleon has written a script that creates a debug menu for the Quest Journal, allowing you to manually complete or fail objectives in game to assist in testing.
Remove Quests from Default Categories - Some people use the script to display both quests and other information, and they would like the other information not to show up in the all, active, complete, and failed categories. This addon is for them.

Credit




  • modern algebra

Thanks


  • spywaretoff, for a bug report
  • Shadow Fox, for a bug report
  • AlexArmstrong, for a bug report
  • Ziemianin1, for a request

Support



Please post in this topic at RMRK.net to report any bugs, ask any questions, or make any comments or suggestions. Given the size of this script, I know that I have likely made errors and oversights. I greatly appreciate when someone reports errors.

Known Compatibility Issues

None currently. If you are using a custom menu script, however, it is recommended that the Quest Journal be below it in the Script Editor.

Demo



Brady has been kind enough to make a nice demo for working with the Quest Journal.

I will also be releasing a demo some time.

Author's Notes

This script imports most of the features from the VX version 2.1, as well as adds quite a few more.

One of the features that has not been imported is the Quest Shop. I will likely write an addon to the script for that feature sometime in the future, but for now I figured I would just release the basic script.

DoctorTodd

Looks great, I'm glad you decided to export it to VXA.

Bravo2Kilo

this is awesome this is one of the things I have been waiting for to come out for Ace
great job modern algebra
I have a blog now where I will be posting my scripts that I create.

My Favorite Animes:
    1. Full Metal Panic (all 3 seasons)
    2. Dragonaut the Resonance
    3. The Legend of the Legendary Heroes
    4. Spice and Wolf
    5. Rosario + Vampire

Lunarea

I know of so many people that have been waiting for this script! (myself included)

Thanks so much.  :)
My current project:

hexgame

Yay, now all I need is someone to port over that Advanced Crafting System (ACS) script and all my favorite scripts will be ready for the English release :)

AlexArmstrong

IT'S TOTALLY AWESOME!
May I call it "MALG Whatever Database"? (or AnythingJournal)
Because, even if you don't want quest journal, you can create with this script whatever you want. Wise using really grants ton of capabilities!
I played a little bit and got this - Travel Guide for jrpg tourists (Screenshot):
http://imageshack.us/photo/my-images/88/img1zw.png
With QuestJournal for old VX I created Achievments scene, with Ace version it's much easier, and (thanks to categories!) can be combined with other cool things (like Quest+Notes+Achievments Scene). 
This scripts makes me very happy! I like huge descriptions. And ranks (star icons super, and F-E-D-C-B-A-S for ninja games!). Omg, Global Text Codes works, I get colored quest name right now. It's remind me about ATS, both scripts have great customization (there was Synthesys Shop example in ATS VX 3.0 demo, and I created Teleportation System with Advanced Choises).
What it's all about. I really want to say "Thank you, modern algebra!". For AnythingJournal and other scripts :)

cozziekuns

The legend returns.

Great job, MA!

pacdiggity

Needs more Neo Gauge.
THIS IS AWESOME YOU ARE AMAZING.
it's like a metaphor or something i don't know

modern algebra

#8
Well, I am glad you all like it and I hope that it doesn't disappoint!

And I am glad that you like the customization AlexArmstrong, It's always hard to choose a balance between ease of use and customizability, and I don't think I ever strike it right. So it's nice to know when people put it to good use :) The travel journal looks good too. P.S. You don't need to put the "Major Name:" (Mayor?) inside the quest data itself: you can change it in the VOCAB hash itself. client and location are around line 355, and you can just change it from "" to "Major Name:"

AlexArmstrong

#9
Yes, I really like it. It's not simple easy script, but it have good instructions. After 1.5 hours I easily created travel guide first version in about 15 min (banner was the hardest thing xD). And yes, it was just quick test version, so i doesn't put much work in it (actually, even "name" word not neccessary, it's ok just with icon and text like "Mayor Daniel" or "King Arthur", "Elder Ralph" etc.).
Oh no, our publishing house made a mistake in travel guide... Sure, he is "mayor". No wonder so less tourists buying our guide xD
Well, waiting your other new scripts! (type of interesting in crafting system too). Best regards!

Oh, just now I get "can't convert symbol into string error" on this string  @data[quest_id].custom_categories.include?(list_type)
I created new category :guide and add q[:custom_categories] = [:guide] in my quest. I'm not sure, maybe I'm just missed something in categories, but I have no idea, what it is.

modern algebra

#10
Nah, that's my bad. Grab Version 1.0a from the first post. You don't need to replace the configuration, just the rest.

Bravo2Kilo

there is an error when CONCURRENT_ACTIVITY is set to false
Script 'Window Selectable' line 212 NoMethodError occurred.
undefined method 'call' for :on_category_ok:Symbol
I have a blog now where I will be posting my scripts that I create.

My Favorite Animes:
    1. Full Metal Panic (all 3 seasons)
    2. Dragonaut the Resonance
    3. The Legend of the Legendary Heroes
    4. Spice and Wolf
    5. Rosario + Vampire

modern algebra

Sorry, CTRL+F the following line:


    @quest_category_window.set_handler(:ok, :on_category_ok)


and change it to:


    @quest_category_window.set_handler(:ok, method(:on_category_ok))

Zennethe

You've done it again... Love it! So glad such talented people are part of the RM community.

Quote from: hexgame on February 20, 2012, 06:14:05 AM
Yay, now all I need is someone to port over that Advanced Crafting System (ACS) script and all my favorite scripts will be ready for the English release :)
Now sure if this is exactly what you are looking for BUT in case it is...
http://grimoirecastle.wordpress.com/2011/12/12/synthesis-shop/

Seiryuki

The last script I need. Big thanks once again. ^-^

Balthier99


I can't use "objective_revealed?(a, b)" on a condition branch. It gives a No Method Error on Game_Interpreter.

Apart from that, it's an amazing script!
Once you are done with your extended choices, I'll have everything I need for my project's systems!


modern algebra

#16
Sorry, I will post the fixed version shortly.

Edit: Version 1.0c has been released

Bravo2Kilo

I think there might be a problem with the description formatting
[spoiler][/spoiler]
I used the script call quest(1).description = "" to change the description and this is how it turned out.
I have a blog now where I will be posting my scripts that I create.

My Favorite Animes:
    1. Full Metal Panic (all 3 seasons)
    2. Dragonaut the Resonance
    3. The Legend of the Legendary Heroes
    4. Spice and Wolf
    5. Rosario + Vampire

modern algebra

#18
Well, that's probably just a result of the width limitations in the Script field. I think what is happening is that the text between your "" extends over one line, and so it inserts \n after each line in the box, which is the next line code. The next line code is recognized by the formatting in this script since I wanted the user to be able to manually break line with \n if they wanted to do so. To fix your problem, you could do something like this in the script call instead:


d = "Jessica has told me that Boris is "
d += "looking for me. Maybe I should talk "
d += "to him before I do anything else."
quest(1).description = d

Bravo2Kilo

it works great now thanks for the help modern algebra
I have a blog now where I will be posting my scripts that I create.

My Favorite Animes:
    1. Full Metal Panic (all 3 seasons)
    2. Dragonaut the Resonance
    3. The Legend of the Legendary Heroes
    4. Spice and Wolf
    5. Rosario + Vampire

Balthier99


Is there a way to make the "objectives" to have a different VOCAB on different custom layouts? For example: I have quests that use the default layout and the "objectives" VOCAB is set to "Summary". On another (custom) layout, I'd also like to use the "objectives", but this time with the VOCAB "Notes". I think I could create a new BASIC_DATA_TYPE and set its VOCAB to "Notes", but then it wouldn't answer to the functions I can use with objectives, like "reveal_objective(x, y)".

modern algebra

I don't think that's a feature I care to add to the main script, but maybe I will write a little work around that would permit you to do it.

Balthier99


Ambience

Thanks for the hard work. However, I got a problem. I do always get this Error (pic below), after the complete_objective function. I added a picture. The script I wrote are: "quest(1)", "reveal_objective(1, 1)" and "complete_objective (1, 1)", where it crashes.
As I'm the only one experiencing the problem I think it's my fault, but I don't know where. I used the sample quest for testing.



modern algebra

Don't put a space between complete_objective and (1, 1). In other words, do this:

complete_objective(1, 1)

And not this:

complete_objective (1, 1)