• 🏆 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!

[Trigger] Need help with Quest Trigger

Status
Not open for further replies.
Level 11
Joined
Aug 11, 2009
Messages
594
I need help on making my/remake my Quest Triggers so they become more effective and bug free. Has to be MUI between the players.

How it should work:

1. A Questgiver sells a dummy unit to a player.
2. If player does not already have the Quest, it is given to the player (Also check lvl requirement if there is any)
3. The same dummy unit is also used to turn in the quest so in the trigger it will also check if the player has completed the quest, if so the unit will get its rewards and be able to pick up the quest again if meeting the lvl requirements.

I will upload a picture of my Triggers so you can look at it. Basically how I deal with it is that I give each Quest a variable and in its array I set the player number of the owner of the unit picking up the quest, thus making it its own and not some other players.

I want to know if there is any more effective way since this will result in over 30 Triggers just for the Repeatable Quests, and then more with Chain Quests and others.

I was thinking perhaps make a For Loop and make init variables for everything (strings etc), but it would need loads of variables instead, does that perhaps slow down the map more? Also another problem with this is that I cant put the player number in the array if I use this since I have to put the For Loop number in the array, so how can I make it MUI?

Thanks for any help on this :)
 

Attachments

  • Quest Triggers.jpg
    Quest Triggers.jpg
    200.9 KB · Views: 79
First of all, kill the unit before removing it. Second of all, since you remove the sold unit, no matter the condition, use that action once and move it at the end of the trigger.
Use variables to store (Buying unit) and (Player number of (Owner of (Buying unit))), to avoid repetition of function calls. Gold Credit model has a death animation, so use (Special Effect - Destroy (Last created special effect)), right after its creation. Store the special effect with the question mark to destroy it upon completion of the quest.
(All players matching...): It leaks. Use a Player Group variable and destroy it as "call DestroyForce (udg_VariableName)". Finally, use Convert Player to Player Group and not filtered player group.
 
Level 11
Joined
Aug 11, 2009
Messages
594
Ok so if i make those changes is this the best way to make it? It Will result in over 30 triggers to make one for each quest
 
Status
Not open for further replies.
Top