NSS Docs
DiscordStoreHomepage
nss_quest
nss_quest
  • README
  • Changelog
  • Objects
    • Quests
    • Quest steps
Powered by GitBook
On this page
  • id
  • name
  • description
  • btn_text
  • location
  • quest_text
  • callback
  • requires
  • items of requires
  • money of requires
  • gold of requires
  • completed_quests of requires
  • rewards
  • items of rewards
  • weapons of rewards
  • money of rewards
  • gold of rewards
  • background_filename
  • padding_left, padding_top, padding_right, padding_bottom
  • title_color
  • text_color
  • shadow_color
  • marker
  • blip
  • radius_blip

Was this helpful?

  1. Objects

Quest steps

PreviousQuests

Last updated 1 year ago

Was this helpful?

id

  • required

A unique identifier for the quest step. Ensure that these id only exists one time only.

Important: Only a-zA-Z0-9 and -_ are allowed.


name

  • required

The name of the quest step. It will be shown in the quest dialog.


description

  • default nil

An internal description for the quest step, e.g. like notes for the quest writers. It is currently not used and shown anywhere.


btn_text

  • required

The text for the button in the prompt. It will be shown in the prompt.


location

  • required

Contains the coords and radius for the quest step triggering point.

Example:

location = {
    coords = {
        x = -858.72,
        y = -1340.31,
        z = 44.43
    },
    radius = 2.0
}
Attributes
Type
Optional
Default
Description

coords

required

-

A table of the x, y and z coordinates for the quest step triggering point.

radius

required

-

The radius around the coords where the quest step should be triggered. Ensure a float (e.g. 2.0) and not an integer (e.g. 2) is given.


quest_text

  • required

The text for the quest dialog. It will be shown in the quest dialog. Can contain HTML tags.


callback

  • default nil

A function that is called when the quest step is started/accepted. It can be used to add custom logic like spawning a vehicle or giving weapons to the player.

Important: The callback will be executed on server side.

Example:

---@param _source number The player source (server player id)
---@param step NssQuestStep The current quest step (see configured step for possible properties)
---@param char NssQuestCharacter The character that accepted the quest
callback = function(_source, step, char)
    print("Character properties", json.encode(char))
end

requires

  • default nil

A table of requirements for the quest step.

The requirements are checked before the quest step is started/accepted.

See the following attributes for more information:


items of requires

  • default nil

A table of items that are required for the quest step.

If remove is set to true, the item will be removed from the player inventory if the quest step starts/ends.

label is optional and can be used to overwrite the item label in the quest dialog.

Important: The item must exists in the database of the supported framework.

Example:

items = {
    {
        name = "red_berries",
        count = 3,
        remove = true,
        label = "Custom label for item",
    },
}

money of requires

  • default nil

A table of money that are required for the quest step.

If remove is set to true, the money will be removed from the player inventory if the quest step starts/ends.

Example:

money = { amount = 5, remove = true }

gold of requires

  • default nil

A table of gold that are required for the quest step.

If remove is set to true, the gold will be removed from the player inventory if the quest step starts/ends.

Example:

gold = { amount = 5, remove = true }

completed_quests of requires

  • default nil

A list of quests that are required for the quest step.

Example:

completed_quests = { "quest_id1", "quest_id99" }

rewards

  • default nil

A table of rewards for the quest step.

See the following attributes for more information:


items of rewards

  • default nil

A table of rewards for the quest step.

label is optional and can be used to overwrite the item label in the quest dialog.

Important: The item must exists in the database of the supported framework.

Example:

items = {
    {
        name = "red_berries",
        count = 3,
        label = "Custom label for item"
    },
}

weapons of rewards

  • default nil

A table of rewards for the quest step.

label, desc and serial are optional and can be used to overwrite the weapon defaults.

Example:

weapons = {
    {
        name = "WEAPON_REVOLVER_CATTLEMAN",
        amount = 1,
        label = "Custom label for weapon",
        desc = "Custom description for weapon",
        serial = "Custom serial for weapon",
    }
}

money of rewards

  • default nil

A table of money as rewards for the quest step.

Example:

money = { amount = 5 }

gold of rewards

  • default nil

A table of gold as rewards for the quest step.

Example:

gold = { amount = 5 }

background_filename

  • default nil

The filename of the background image for the quest dialog. The image must be located in the html_quest/img folder.


padding_left, padding_top, padding_right, padding_bottom

  • default nil

The padding for the quest dialog. The padding is used to move the quest content inside the quest dialog, e.g. if you use your own background image.


title_color

  • default is black

The color for the quest title in the quest dialog. The color must be a valid CSS color, like #ff0000 or red.


text_color

  • default is black

The color for the quest text in the quest dialog. The color must be a valid CSS color, like #ff0000 or red.


shadow_color

  • default is nil

The color for the quest text shadow in the quest dialog. The color must be a valid CSS color, like #ff0000 or red.


marker

  • default nil

  • new since 1.2.0

Defines if a special symbol is shown at the given coordinates so the player can see the location before he arrives.

Example:

marker = {
    coords = {
        x = -858.72,
        y = -1340.31,
        z = 44.43
    },
    radius = 10.0,
    type = 0x94FDAE17,
    color = {
        r = 102,
        g = 0,
        b = 255
    },
}
Attributes
Type
Optional
Default
Description

coords

required

-

A table of the x, y and z coordinates for the marker triggering point.

radius

required

-

The radius around the coords where the marker should be triggered. Ensure a float (e.g. 10.0) and not an integer (e.g. 10) is given.

type

required

-

color

required

-

A table of the r (red), g (green) and b (blue) color values for the marker.


blip

  • default nil

  • new since 1.2.0

Allows to show a blip on the map for the quest step coordinates.

Example:

blip = {
    color = 'BLIP_MODIFIER_PICKUP_WEAPON_RARE',
    title = "Example title",
    icon = "blip_ambient_king",
}
Attributes
Type
Optional
Default
Description

color

required

-

title

required

-

The title of the blip.

icon

required

-


radius_blip

  • default nil

  • new since 1.2.0

Allows to show a radius blip with a defined radius on the map for the quest step coordinates.

Example:

radius_blip = {
    color = 'BLIP_MODIFIER_PICKUP_WEAPON_RARE',
    radius = 200.0,
}
Attributes
Type
Optional
Default
Description

color

required

-

radius

required

-

The radius in meters of the blip.


(float)

of quest id s

Important: The weapon must exist in the game, see .

(float)

The visible type of the marker. See for available types.

The color of the blip. See for available colors.

The icon of the blip. See and for available icons.

The color of the blip. See for available colors.

(float)

weapon list
items
money
gold
completed_quests
items
weapons
money
gold
Marker Types
Blip Colors
Blip Multiplayer Icons
Blip Singleplayer Icons
Blip Colors
string
string
string
optional
string
table
string
function
optional
table
optional
table
optional
table
optional
table
optional
list
string
optional
table
optional
table
optional
table
optional
table
optional
table
optional
string
optional
number
optional
string
optional
string
optional
string
optional
table
optional
table
optional
table
optional
table
number
table
number
number
table
string
string
number
string
number