Mod:Nebula's Mission Board/ Job Table

From PMDOWiki
Revision as of 18:53, 28 July 2025 by MistressNebula (talk | contribs) (Make page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page contains a list of all fields contained inside a Job Table.
Fields with a ? to their side can be safely set to nil depending on the circumstances.

Client

A MonsterID-style table describing the client of the job.

Type
{
  Species:string,
  Form:integer?,
  Skin:string?,
  Gender:integer?,
  Nickname:string?
}


Client

MonsterID style table describing the target. Must be set if the job type expects a target.

Type
{
  Species:string,
  Form:integer?,
  Skin:string?,
  Gender:integer?,
  Nickname:string?
}?


Flavor

Pair of string keys displayed when the job details are displayed. The second key is optional.

Type
{string, string?}


Title

String key displayed when browsing quest boards.

Type
string


Zone

The id of the zone this job takes place in.

Type
string


Segment

The specific segment this job takes place in.

Type
integer


Floor

The destination floor of this job.

Type
integer


RewardType

The id of the combination of rewards that will be awarded by this job. It must always be equal to one of the following values:
"money", "item", "money_item", "item_item", "client", "exclusive"

Type
string


Reward1

Data of the first item awarded by the job. Must be set if RewardType expects a visible item reward.

Type
{id:string, count:integer?, hidden:string?}?


Reward2

Data of the second item awarded by the job. Must be set if RewardType expects a hidden item reward.

Type
{id:string, count:integer?, hidden:string?}?


Type

The id of the type of this job. It must always be equal to one of the following values:
"RESCUE_SELF", "RESCUE_FRIEND", "ESCORT", "EXPLORATION", "DELIVERY", "LOST_ITEM", "OUTLAW", "OUTLAW_ITEM", "OUTLAW_ITEM_UNK", "OUTLAW_MONSTER_HOUSE", "OUTLAW_FLEE"

Type
string


Completion

The state of the job. -1 means failed. 0 means not completed. 1 means completed. This is always reset to 0 on day end if the job rewards are not claimed (like when an adventure is failed).

Type
integer


Taken

This variable means different things depending on what list this job is in:

  • Taken list: if true, the job is active.
  • Boards: if true, the job is considered to be inside the taken list.
Type
boolean


BackReference

Contains the id of the board it was in. It is used only in the taken list for discarding jobs and for routing the player during the reward process.

Type
string?


Difficulty

The difficulty index of this job. It is stored as a number instead of a string for ease of calculations.

Type
integer


Item

The id of the item this job requires. It must be set if the job type requires a target item.

Type
string?


Special

Special jobs can be triggered sometimes. If so, this will contain the special job category id.

Type
string?


HideFloor

If this is true, the target floor of this job will be hidden when inside menus.

Type
boolean


Callbacks

Table of callbacks with their respective parameters. Empty by default. You can add callbacks using the RegisterCallback library function. Every job can only have one callback per event.

Type
table<string, {name:string, args:table}>


ObjectiveOverride

A string key that, if set, is used instead of the job type's objective key. It only affects menus.

Localization placeholders:

  • {0}: client
  • {1}: target
  • {2}: item
Type
string?