Mission System¶
The main storyline and achievements in the game are all backed by the mission system. A mission is a collection of one or more tasks, which the player must fulfill to progress. A mission may also reward the player with items, emotes, currency, increased health, imagination or backpack storage.
A mission is registered in the Missions table along with information on rewards, prerequisites and the template ids of the objects offering the mission. These objects then have a Mission Offer Component (73) component attached to them, which describe which missions that NPC offers and accepts.
Each Task from the MissionTasks table with the same id as the mission has to be fulfilled for the mission to be considered as completed. There are several types of tasks available, including one general script type
Mission Task Types¶
Smash (0)¶
The player is required to smash a count of targetValue
objects of the templates specified
in target
or targetGroup
.
Script (1)¶
Complete a condition specified in target
or targetGroup
scripts targetValue
times.
The condition will vary drastically between scripts.
QuickBuild (2)¶
The player is required to quick-build a count of targetValue
objects of the templates specified
in target
or targetGroup
.
Collect (3)¶
The player needs to collect (collide with) a count of targetValue
objects of the templates specified
in target
or targetGroup
. The object which needs to be collected will have a
Collectible Component (23) component attached to it, specifying the mission it belongs to.
GoToNPC (4)¶
The player need to go to the NPC of the template specified in target
.
UseEmote (5)¶
The player needs to play any emote id within taskParam1
near an object of the template specified in
target
.
UseConsumable (9)¶
The player needs to consume the template specified in target
targetValue
times.
UseSkill (10)¶
The player needs to trigger targetValue
skill(s) from the comma-delimited set in taskParam1
.
Example mission.
ObtainItem (11)¶
The player needs to somehow obtain a count of targetValue
items of the template specified in target
.
This is usually used to implement quests, asking the player to buy something from a vendor or to pick up an item in the world.
taskParam1
does not affect the mission progression but rather what happens to
the items at mission turn in. Depending on taskParam1
:
- 0 or no value: No extra parameters apply.
- 1: The target
item is not taken from the players inventory on mission turn in.
- 2: The target
item is taken from the players inventory on mission turn in.
- 5: The properties of 1 and 4 are combined. Items are not taken from the inventory nor will losing these items before mission
Discover (12)¶
The player needs to travel to the area specified by the targetGroup
. Possibly related to environment triggers.
MinigameAchievement (14)¶
Achieve at least targetValue
at the targetGroup
statistic in a minigame, such as survival_time_solo
.
target
specifies the relevant Activity ID.
Example: https://explorer.lu/activities/5
Some minigame missions like mission 229 to 1 or true
instead of setting them to their targetValue
since you are intended to get this score in one attempt.
Interact (15)¶
Interact with the target
template targetValue
times.
MissionComplete (16)¶
The player needs to complete a count of targetValue
of the missions specified by
target
and targetGroup
.
EarnReputation (17)¶
The player needs to earn targetValue
reputation.
TamePet (22)¶
The player needs to tame a count of targetValue
of the pet objects specified by
target
and targetGroup
. If taskParam1
is set, taming must take less
than that amount of seconds.
Racing (23)¶
Depending on taskParam1
:
- 1: Be at or above the
targetValue
place in the race world specified bytarget
. - 2: Achieve a
targetValue
ms lap time or better in the race world specified bytarget
. - 3: Achieve a
targetValue
ms time or better in the race world specified bytarget
. - 4: Complete
targetValue
achievements from thetargetGroup
. - 5: Achieve
targetValue
achievements of the ones intargetGroup
. - 6: Complete a task during while in modular building
targetValue
times. - 10: Complete a race at the race world specified by
target
without (less thantargetValue
???) wrecking. - 11: Smash any smashable in any world contained in
targetGroup
targetValue
times. - 12: Collect
targetValue
imagination orbs in the racing worlds specified bytargetGroup
. - 13: Enter the race world specified by
target
. - 14: Win
targetValue
races at the world specified bytarget
. - 15: Win
targetValue
races at the worlds specified bytargetGroup
. - 16: Finish in last place
targetValue
times intargetGroup
race worlds. - 17: Smash
targetValue
of the objects specified bytargetGroup
.
Flag (24)¶
The player needs to activate a count of targetValue
of the flags specified by
target
and targetGroup
.
VisitProperty (30)¶
The player needs to visit a count of targetValue
properties of template
target
or targetGroup
.
NexusTowerBrickDonation (32)¶
Depending on taskParam1
:
- 0: Donate
targetValue
bricks to the NexusJawbox (what istarget=9999
???)