Vlue

Talent Extraordinaire
Member
Joined
Mar 13, 2012
Messages
589
Reaction score
382
First Language
English
Primarily Uses
Greetings Vlue, i really admire your script, by far the most reliable questing script i've managed to find. 

However, i am very new to scripting, so im just asking, is there any place where i can get a tutorial on how to make quests?
Hopefully this helps! http://daimonioustails.weebly.com/using-basic-quest-system.html

question sir vlue can i make a quest that the player can't refuse?

and if does, how? 
I shall make you an offer you can not refuse! Sorry, first thing that came to mind...

if you set :abandonable => false, in the DETAILS section of the script, the quest can not be abandoned.

If you call accept_quest right before you do ask_accept then even if the player hits refuse they have still accepted the quest, so nuts to them. (Or maybe do it the other way around, whichever works)
 

Dariom

Warper
Member
Joined
Jan 16, 2014
Messages
4
Reaction score
1
First Language
English
Primarily Uses
Thanks alot Vlue! I will look through it right away!
 

exele10

Darkness Master
Veteran
Joined
Sep 2, 2014
Messages
36
Reaction score
3
First Language
english
Primarily Uses
RMVXA
i got this error

2zrnyc0.png
 

C-C-C-Cashmere (old)

Resident Weirdo
Veteran
Joined
Mar 7, 2014
Messages
832
Reaction score
341
First Language
English
Primarily Uses
FAQ

Q: I have a question.A: No you don't.
<3 <3 <3 <3 <3

But seriously, I'm gonna use this for Project RMW World. Thanks for providing it, you are a maestro. I'll hit up this thread if I have any probs.
 

Crysillion

Veteran
Veteran
Joined
Sep 25, 2014
Messages
138
Reaction score
21
Primarily Uses
I'm getting an issue where when I change maps, sometimes the game will outright crash. This does not happen when I do not have the quest log script installed. That said, I have a plethora of other scripts, primarily a lot of Yanfly scripts, so it could be some kind of conflict, but I find it weird that it only crashes sometimes. Sometimes I can change maps and it'll be fine. Sometimes I can change maps and it'll crash the game. Worse, it will outright CRASH the client. No specific error. It's just telling me that the program has stopped working.

I'll try to reverse engineer it a bit, but it's coming off as some kind of memory leak problem if it only crashes sometimes and not all the time.

EDIT: Seems it was just the map somehow. Script is fine.

EDIT2: Script seems to irreparably break if you add something to the code it doesn't like, then take it back out.

Current script: http://pastebin.com/LD1nFcNA

Error received:

Script 'Sleek: Quest System' line 232: NoMethodError occured.
undefined method ' []' for nil:NilClass
I tried adding :abandonable => false in the DETAILS section of quest001 and it threw an error expecting an end of argument. My mistake, I fixed that, and ever since I've been having this error. I removed the :abandonable => false  from quest001 and put it back to the way it was and the error persists.

Any ideas?
 
Last edited by a moderator:

mjshi

Jack of Most Trades
Veteran
Joined
Feb 16, 2013
Messages
991
Reaction score
838
First Language
English
Primarily Uses
N/A
I honestly have had trouble with the "kill X monsters quest", and finally figured it out (and decided to share, since there are probably other people who don't get it :x )

Forgive my presumptuousness. 

- You need the two scripts provided by Vlue (thanks, vlue ^-^), the quest system and the after battle victory/escape switches:

Basic quest system: http://pastebin.com/tyM7s1Pj

After battle switches: http://pastebin.com/qH1SkL0V

- Open up the database in RPG maker and go to the Troops menu. Select a troop.

- On the battle events section, set the condition to switch [VICTORY] is on (default is switch #90, you can change this in the script).

- Create a new "Script..." event. Type in:

adv_obj:)questid, :objid, value)

for example, with the script compilation it would be adv_obj:)questid001, :obj1, 1) for an increase of 1 in the slime killing quest.

then don't forget to turn the "Victory" switch off with "Control Switch" so that if the player battles a slime again and escapes, they won't see any quest advancement.

Hope this helped :3

(Vlue, those slimes were literally impossible to kill, why did you do this to us T^T I had to go in and cheat by lowering the attack stats xD)

Also, if you'll allow me a question of my own: how do you automatically turn off these victory switches? I see this in the script

  def return_scene

    $game_switches[VICTORY_EVENT_SWITCH] = false

    $game_switches[ESCAPE_EVENT_SWITCH] = false

    $game_switches[ABORT_EVENT_SWITCH] = false

    $game_switches[DEFEAT_EVENT_SWITCH] = false

    super

but it doesn't seem to actually be called by scene manager?
 
Last edited by a moderator:

MisterTorgue

Explosioooooooons!
Veteran
Joined
Nov 4, 2014
Messages
324
Reaction score
49
First Language
Explosions!
Primarily Uses
Can I just say I love all the scripts Vlue has created,

they all work so well and Vlue himself is a fountain of knowledge.

An alternative for quest kill X 

What I do is create them as an event mob (so kill 5 bats)

Create bat npc event and put a switch when above quest is active this is on
Battle processing (bat or whatever monster)

then put the adv_obj(blahblahblah...

create a second page blank with the self switch A on

turn self switch A on

(copy and paste  same event 5 times :) )
 

hydro205

Warper
Member
Joined
Nov 26, 2014
Messages
4
Reaction score
0
First Language
English
Primarily Uses
Hello im trying to complete a  quest when the player talks to a NPC I'm just wondering how exactly i would do this??

If i have missed this post sorry for doing this again..

The idea is that the character will goto a certain person. talking to the NPC will allow them to complete the quest. but i cant find the script to force complete a quest?? 

Help plz
 

mjshi

Jack of Most Trades
Veteran
Joined
Feb 16, 2013
Messages
991
Reaction score
838
First Language
English
Primarily Uses
N/A
@hydro205: Should be easy enough

turnin_quest:)questid) - force quest turninSorry for reposting but do any scripters know how one automatically turns off a "Victory" switch? Also, is it possible to adjust the height of the quest acceptance window or automatically adjust it to fit the description length? I have a suspicion that it lies somewhere under def refresh but can't find anything about window height...

Screenshot_1.png

Edit: To clarify my question, how does one cause the quest acceptance window height to be shorter?

Edit2: Is it possible to have the quest completion items show up as a popup/by using other scripts?

Edit3: And what about repeatable quests?
 
Last edited by a moderator:

MisterTorgue

Explosioooooooons!
Veteran
Joined
Nov 4, 2014
Messages
324
Reaction score
49
First Language
Explosions!
Primarily Uses
Not sure on window size ( I am intrigued on this one as I would extend it width a bit)

As for quest items, are you not wanting the rewards to display in the quest log at all?

If that's the case, Create an item "Unknown" - point that to the items

you can then use his Vlue's pop up window once the quest has been completed to say "Item Rewarded" then add item to inventory>
 

hydro205

Warper
Member
Joined
Nov 26, 2014
Messages
4
Reaction score
0
First Language
English
Primarily Uses
Actually I used  adv_obj:)questid, :objectiveid, value) to make the objective complete however the quest was not rewarded as of yet. That way the quest could be completed at another time in case the character dose not have invetory space or they are not near the objective. Thanks any way guys.

If you wish to view the games progress goto this link:: HERE

[IMG]http://i.gjcdn.net/imgserver/screenshot-thumbnail/898x1000/79247.jpg[/IMG]
 

alberach

Veteran
Veteran
Joined
Oct 17, 2014
Messages
92
Reaction score
7
First Language
English
Primarily Uses
N/A
Hi there. I'm really new to scripting, so sorry if this seems like a silly question.

Could this be used to have an npc act as a quest giver? For example, you walk into the town hall, and the clerk says "We need you to go kill Grog the Orc." You go kill Grog, then come back for your reward, and the next quest. And would it be possible to have multiple active quests? "Go kill Grog, also look for the mystic box, and bring this ruby to John" but each quest has its own trigger, and its own rewards.Thanks ahead of time. :)
 

MisterTorgue

Explosioooooooons!
Veteran
Joined
Nov 4, 2014
Messages
324
Reaction score
49
First Language
Explosions!
Primarily Uses
Hi There!

I am a big fan of Vlue's stuff so I will try to help you best I can!

You can have as many quests as you want active at the same time (Vlue doesn't like limits!)

So for example on the above if you want multiple quests, you can for instance

Clerk:

I have some quests for you, would you be able to help?

Show Choices

Yes

Then create a second row of choices under the Yes choice

"Kill Grog"

Each choice then requires the script calls (to call the quests you created in the script)

for instance the quest ID Is :killgrog you would just need to use a script call for that one under this choice!

"Deliver Ruby"

Same as above but referencing the different quests

"Mystic Box"

And again here

No

Clerk: Well if you change your mind come back to me

End Event

This will give the option to pick up multiple quests at the same time, from 1 person.

It's just getting the triggers in the right order is a bit of getting used too

(see attached)

Also, you can do a quest chain, using the script call where it checks if :questid is turned in? if yes  you can then script call the next quest :delivermorerubies for instance.

EDIT:

all rewards are created in the script itself as well, EXP/Gold and Items (the items will refer to your own database IDs) - and show their images in the quest window.

For kill quests I recommend having an event monster walking around and when you interact with it, it calls the battle process then just put the script call in the event to advance the objective underneath - use a switch to show the monster wherever you like once the quest is accepted to avoid them killing it before the quest is active (see attached again)

It does look a bit daunting, but the way that is set up is to do the following

Checks if you have :questid  (no = asks to accept quest / yes = check if completed the quest)

Check for completion ( No = end of event / person telling them to hurry up e.c.t. / yes = check if turned in quest)

Check for turned in (no = quest window to turn in / yes = a thank you message OR your next quest "chain questing")

EditNote: Yes I know is the messages I spelled his name wrong >.<

MonsterObj.png

multiquestsameevent.png
 
Last edited by a moderator:

alberach

Veteran
Veteran
Joined
Oct 17, 2014
Messages
92
Reaction score
7
First Language
English
Primarily Uses
N/A
Hi There!

I am a big fan of Vlue's stuff so I will try to help you best I can!

You can have as many quests as you want active at the same time (Vlue doesn't like limits!)

So for example on the above if you want multiple quests, you can for instance

Clerk:

I have some quests for you, would you be able to help?

Show Choices

Yes

Then create a second row of choices under the Yes choice

"Kill Grog"

Each choice then requires the script calls (to call the quests you created in the script)

for instance the quest ID Is :killgrog you would just need to use a script call for that one under this choice!

"Deliver Ruby"

Same as above but referencing the different quests

"Mystic Box"

And again here

No

Clerk: Well if you change your mind come back to me

End Event

This will give the option to pick up multiple quests at the same time, from 1 person.

It's just getting the triggers in the right order is a bit of getting used too

(see attached)

Also, you can do a quest chain, using the script call where it checks if :questid is turned in? if yes  you can then script call the next quest :delivermorerubies for instance.

EDIT:

all rewards are created in the script itself as well, EXP/Gold and Items (the items will refer to your own database IDs) - and show their images in the quest window.

For kill quests I recommend having an event monster walking around and when you interact with it, it calls the battle process then just put the script call in the event to advance the objective underneath - use a switch to show the monster wherever you like once the quest is accepted to avoid them killing it before the quest is active (see attached again)

It does look a bit daunting, but the way that is set up is to do the following

Checks if you have :questid  (no = asks to accept quest / yes = check if completed the quest)

Check for completion ( No = end of event / person telling them to hurry up e.c.t. / yes = check if turned in quest)

Check for turned in (no = quest window to turn in / yes = a thank you message OR your next quest "chain questing")

EditNote: Yes I know is the messages I spelled his name wrong >.<
Wow... Looks like that would do what I wanted, but it is rather intimidating. Does this mean I need to create a separate switch for each quest?
 

MisterTorgue

Explosioooooooons!
Veteran
Joined
Nov 4, 2014
Messages
324
Reaction score
49
First Language
Explosions!
Primarily Uses
I may explain things a bit strange as it seems right in my head but not to others so:

You very rarely need to use switches unless you want something to spawn, only when the quest is accepted.

I will attach another image of what the script side of things is so it might help and be less intimidating (it was for me at first but I feel comfortable with it now!)

So lets take a look at the script attached.

The quest ID is :gnak (needs to be unique for each quest you create and use)

:qgivername (is what shows the source of the quest on the quest window)

:location (location of where you got the quest, fill as needed)

:desc (shows desc in quest window also)

Objectives 

:objective1 (give these unique names for the quest, so there are no conflicts)

you set all your quest stuff in the script and use the :questid to reference to it.

so in the above, you can see me using the script call for ask_accept:)gnak)

This basically pulls all the information you have put into the script for you.

For the others again just reference the questID but you use conditional branches to check if the quests are accepted / done e.c.t..

And if you look on my "Gnak" event you can see how to forward the objectives by using adv_obj:)questid, :objectiveid) then the amount you want to increase it by!

Again, I would see what I have typed and be a bit hesitant, If you want me to I can create a demo with a quest that works fully in there, and you can see how it works yourself? (if it will help! :) )

It does seem a bit overwhelming at first, but once you get the hang of it, its a lot quicker to implement quests, a lot easier to track, and in game a lot more user friendly (they can actually see and track their quests and progress)

As the standard way need a lot more switches and people to remember what they were doing (you leave a game for a week) come back and wont remember every npc you spoke to for quests!

scriptexample.png
 
Last edited by a moderator:

alberach

Veteran
Veteran
Joined
Oct 17, 2014
Messages
92
Reaction score
7
First Language
English
Primarily Uses
N/A
I may explain things a bit strange as it seems right in my head but not to others so:

You very rarely need to use switches unless you want something to spawn, only when the quest is accepted.

I will attach another image of what the script side of things is so it might help and be less intimidating (it was for me at first but I feel comfortable with it now!)

So lets take a look at the script attached.

The quest ID is :gnak (needs to be unique for each quest you create and use)

:qgivername (is what shows the source of the quest on the quest window)

:location (location of where you got the quest, fill as needed)

:desc (shows desc in quest window also)

Objectives 

:objective1 (give these unique names for the quest, so there are no conflicts)

you set all your quest stuff in the script and use the :questid to reference to it.

so in the above, you can see me using the script call for ask_accept:)gnak)

This basically pulls all the information you have put into the script for you.

For the others again just reference the questID but you use conditional branches to check if the quests are accepted / done e.c.t..

And if you look on my "Gnak" event you can see how to forward the objectives by using adv_obj:)questid, :objectiveid) then the amount you want to increase it by!

Again, I would see what I have typed and be a bit hesitant, If you want me to I can create a demo with a quest that works fully in there, and you can see how it works yourself? (if it will help! :) )

It does seem a bit overwhelming at first, but once you get the hang of it, its a lot quicker to implement quests, a lot easier to track, and in game a lot more user friendly (they can actually see and track their quests and progress)

As the standard way need a lot more switches and people to remember what they were doing (you leave a game for a week) come back and wont remember every npc you spoke to for quests!
Alright, looks simple enough. Time to give it a shot! :)
 

Kane Hart

Elmlor.com
Veteran
Joined
Jun 27, 2014
Messages
656
Reaction score
166
First Language
English
I'm pretty new learning still. Trying to figure out once you finish the quest how to go to Event 3 and stay there. Right now it just seems to go 1 and 2 and loop so they can do the quest over and over.

YBq2HpG.png


AJPbSVE.png


IABKDH5.png
Thank you!
 

Sarlecc

Veteran
Veteran
Joined
Sep 16, 2012
Messages
453
Reaction score
211
First Language
English
Primarily Uses
RMMV
@Kane you turned switch A off but you never turned switch B on.

Edit: Also I am not certain on this as I have not used the script but it looks like you are resetting the quests status in the quest list by using: $game_quests[:questid001].reset
 
Last edited by a moderator:
Joined
Jan 6, 2015
Messages
1
Reaction score
0
First Language
French
Primarily Uses
*apears out of nowhere in chibi ghost form* ( avoid this emote if you don't frequent much animes :3 )

Ahem, greetings fellow RPG makers, I am facing a sort of problem here. I am currently trying to make a quest based on :

"Hey! Can you bring this box to this guy?"

Everything goes wrong because I'm new to RPG maker so my event page is a mess rather -well-. . . Ahem, yeah. . . Anyways, my issue is :

As I saw in the following website given by our true god, Vlue, : http://daimonioustails.weebly.com/using-basic-quest-system.html

You have to use this sort of script to be able to "autofill" the quest requirements ( as in : as soon as you get the item from the guy who asks you to give it to someone else it fills the quest as compleeted. Or something. ) : adv_obj:)questid, :objid, value)

If I got it right~ normaly you should input this script inside the event, after you get the item. Or maybe even before I don't know if it matters there. 

I did put this as a script, replacing the questid, objid, value with the correct one, showing off something like this : adv_obj:)sidequest001, :Box, 1)

That done, I test it ingame and as soon as I get to the step in the event where I come across this script, I get the following damn message : "Script "Game_Interpreter" line 1411: ArgumentError occured.

wrong number of arguments (1 for 2)"

I moved to different places the script in the event but still the same thing. Either after you get the item or before.

I also checked the script "Game_Interpreter" at the previously named line and it shows : "eval (script)"

Same goes with the set_obj:)questid, :objid, :value)

Thanks for eventually reading this post and maybe answering to it ( ^ - ^ )/
 
Last edited by a moderator:

Latest Threads

Latest Posts

Latest Profile Posts

If you're an artist of illustrations, you're doing fine.
If you're an artist of writing, you're doing fine.
If you're an artist of programming, you're doing fine.
But if you are all three above (and more) you cannot allow any distractions in your life.
After working out some initial confusion, I managed to get Yanfly's Improved Battlebacks successfully working on a test battle, changing the battleback and getting it to scroll during combat. This means that I can have graphically dynamic battles on moving platforms, like the roof of a train or the deck of a ship/airship...
Place Events Like Tiles Through Replacement, & Take Notes Free Form | RPG Maker News #41

the singularity is upon us:
1621133810311.png
MV's plugin command setup is the current bane of RETRO's existence. To a degree, so is MZ's. Especially when trying to make MV's plugin command interface play nice with MZ plugin commands with complex arguments.

Forum statistics

Threads
111,397
Messages
1,060,797
Members
144,741
Latest member
Kalahan
Top