• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Quests

Level 24
Joined
Jun 14, 2005
Messages
2,506
Bob27

Introduction
This tutorial is about how to make quests. It will tell you how to make a quest in the quest menu and then get a bit more advanced to the end.

Creating a quest in the Quest Menu
This is a very simply trigger to create a quest in the quest menu. However it will get a bit more advanced when you need to mark it as completed, failed or so on. Heres the basic trigger for creating a quest in the quest menu.

  • Quest
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Quest - Create a Required quest titled Quest with the description This is a quest, using icon path ReplaceableTextures\CommandButtons\BTNAmbush.blp
Part Two
Well that was a very basic trigger for creating a quest in the quest menu, now were gonna get a bit more advanced. Now for the second part we are going to add a variable. Go into the variable manager and create a new quest variable. This will store the quest data rather then creating it. This step is esenctial if you want to change your quest later on in the game. Here is the trigger:

  • Quest
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Quest - Create a Required quest titled Quest with the description this is a quest, using icon path ReplaceableTextures\CommandButtons\BTNAmbush.blp
      • Set Quest = (Last created quest)
So just after adding one more trigger we can now edit our quest later on in the game. Now were going to look into how to mark quests failed, completed and ect.

Completing, Discovering and Failing a Quest
This part of the tutorial will tell you how to mark a quest completed. This is the trigger for that:

  • Quest
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Quest - Mark Quest as Completed
Pretty simple isn't it, heres the one for failing a quest:

  • Quest
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Quest - Mark (Last created quest) as Failed
Now as for Discovering a quest the events and condition will change, however heres what the action would be:

  • Quest
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Quest - Mark Quest as Discovered
Now for the three above triggers you can add text messages, or do whatever you want to. And the event will probably be changed.

Quest Examples
These are a few examples of some quests i've put in an RPG. These do not have the quests put in the quests menu, but should give you an idea of some different types of Quests.

  • Quest One The Knights of Asiria Player One
    • Events
      • Unit - A unit Is issued an order targeting an object
    • Conditions
      • (Target unit of issued order) Equal to Captain 0029 <gen>
      • (Owner of (Triggering unit)) Equal to Player 1 (Red)
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Player_One_Character has an item of type Pirates Battle Plans) Equal to True
        • Then - Actions
          • Cinematic - Turn cinematic mode On for Player Group - Player 1 (Red)
          • Hero - Order Player_One_Character to Give Captain 0029 <gen> to (Item carried by Player_One_Character of type Pirates Battle Plans)
          • Player - Add 30 to Player 1 (Red) Current gold
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display Well done! I'll jus.... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display Here is your reward.... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Turn cinematic mode Off for Player Group - Player 1 (Red)
          • Trigger - Turn off (This trigger)
          • Trigger - Turn on Quest Two The Scorpians Player One <gen>
        • Else - Actions
          • Cinematic - Turn cinematic mode On for Player Group - Player 1 (Red)
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display The king has ordere.... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display First of all you mu.... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display Then come back to m.... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Turn cinematic mode Off for Player Group - Player 1 (Red)
This is another quest, that is in two triggers.

  • Quest Three Message to the Luitenant Player One
    • Events
      • Unit - A unit Is issued an order targeting an object
    • Conditions
      • (Owner of (Triggering unit)) Equal to Player 1 (Red)
      • (Target unit of issued order) Equal to Captain 0029 <gen>
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Player_One_Character has an item of type Letter to Luitenant Harsful) Equal to True
          • (Player_One_Character has an item of type Pirates Battle Plans) Equal to True
        • Then - Actions
          • Cinematic - Turn cinematic mode On for Player Group - Player 1 (Red)
          • Player - Add 30 to Player 1 (Red) Current gold
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display Well the Luitenant .... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display You can walk their .... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display And also this note .... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Turn cinematic mode Off for Player Group - Player 1 (Red)
          • Trigger - Turn off (This trigger)
        • Else - Actions
          • Cinematic - Turn cinematic mode On for Player Group - Player 1 (Red)
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display I have looked at th.... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display Take this message a.... Modify duration: Add 0.00 seconds and Wait
          • Hero - Create Letter to Luitenant Greaflod and give it to Player_One_Character
          • Hero - Create Pirates Battle Plans and give it to Player_One_Character
          • Cinematic - Turn cinematic mode Off for Player Group - Player 1 (Red)
          • Trigger - Turn on Quest Three Message to the Luitenant Part Two Player One <gen>
  • Quest Three Message to the Luitenant Part Two Player One
    • Events
      • Unit - A unit Is issued an order targeting an object
    • Conditions
      • (Owner of (Triggering unit)) Equal to Player 1 (Red)
      • (Target unit of issued order) Equal to Luitenant 0003 <gen>
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Player_One_Character has an item of type Letter to Luitenant Greaflod) Equal to True
          • (Player_One_Character has an item of type Pirates Battle Plans) Equal to True
        • Then - Actions
          • Cinematic - Turn cinematic mode On for Player Group - Player 1 (Red)
          • Hero - Order Player_One_Character to Give Luitenant 0003 <gen> to (Item carried by Player_One_Character of type Letter to Luitenant Greaflod)
          • Hero - Create Letter to Luitenant Harsful and give it to Player_One_Character
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Luitenant 0003 <gen> named Luitenant Greaflod: Play No sound and display What are these? Wel.... Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Turn cinematic mode Off for Player Group - Player 1 (Red)
          • Trigger - Turn off (This trigger)
        • Else - Actions
          • Cinematic - Turn cinematic mode On for Player Group - Player 1 (Red)
          • Cinematic - Send transmission to Player Group - Player 1 (Red) from Luitenant 0003 <gen> named Luitenant Greaflod: Play No sound and display What do you want?. Modify duration: Add 0.00 seconds and Wait
          • Cinematic - Turn cinematic mode Off for Player Group - Player 1 (Red)
Conclusion
I hope you have learnt something from this tutorial, expect some more in the near future.
-Bob27
 
Last edited by a moderator:
Top