NC Party — Parties, Friends & Loot
Parties up to 5 players (configurable), with a /party panel, invites, friends, party finder, chat and private messages, mate boxes on the side of the screen, minimap blips, a symbol over the head, no friendly fire and loot split. The server decides everything: players only send requests, with anti-spam limits.
- Works with Qbox, QBCore, ESX or without a framework (detected automatically at start).
- 9 languages: Italian, English, German, French, Spanish, Portuguese, Chinese, Japanese, Korean.
- 5 graphic styles for panel, boxes, invites, notices and symbol:
fantasy,scifi,horror,steampunk,dieselpunk(can follow the NC Rift style by itself). - No database: friends are saved on the server (resource KVP).
- Lightweight: about 0.00 ms on the client and the server (resmon with a party of 3 nearby, symbols drawn, panel open and fighting).
- Runs alone or together with NC Rift (level in the boxes, EXP and rewards of mobs, bosses and rifts split in the party).
Full config guide (every option): CONFIG_GUIDE.md.
Requirements
- FiveM server with OneSync on.
- The nc_bridge resource (shared library of the NC resources) in
resources/. - The nc_assets resource (icons over the mates' heads) in
resources/. - Optional: a framework (character name, loot money),
ox_inventory/qb-inventory(loot items), a notification resource (Config.Integrations). Without them the resource uses its own functions.
Installation
- Copy the
nc_bridge,nc_assetsandnc_partyfolders intoresources/. - In
server.cfg, after the framework and the inventory (and beforenc_rift, if you use it):
ensure nc_bridge
ensure nc_assets
ensure nc_party- Restart the server and join:
/partyopens the panel.
Dependencies and start order
nc_bridge: shared library of the NC resources, required. If you own several NC packs bought at different times keep only onenc_bridgefolder, the newest.nc_assets: peds, weapons, animations, effects, interiors and sounds of nc_party, nc_rift and nc_dungeon in one pack, with no duplicate files. Every pack holds the part it needs: if you own more than one, copy all thenc_assetsfolders into the same folder. Start it only with the server: neverensure/restartit with players inside, the clients crash.- The old asset resources of the 1.x versions must never run together with
nc_assets(same file names): if one is still running,nc_assetsprints a red warning in the console. Updating from 1.x: the MIGRATION.md guide insidenc_bridge.
Order in server.cfg, after the framework and the inventory (keep only the resources you have):
ensure nc_bridge
ensure nc_assets
ensure nc_party
ensure nc_rift
ensure nc_dungeonWhat's inside
| Part | What it does |
|---|---|
| Party | Create, leave, invite by ID or the nearest player, accept / refuse, kick a member, pass the lead. The party is disbanded when one person is left; if the leader leaves, a new one takes over. |
/party panel | Party, Find, Friends, Chat tabs. Also opens with a key (Config.PanelKey, each player can change it in the FiveM settings). Esc or × close it. |
| Party finder | The leader sets the party to "looking for members" with a note, a solo player sets "looking for a party"; "Ask to join" sends the leader a request to accept. |
| Friends | Add an online player by ID, incoming and sent requests, who is online, notice when a friend joins the server. |
| Chat & PM | Party chat in the panel and private messages (/pm <id> <text>) to mates (or to online friends, if enabled). Short on-screen notice when the panel is closed. |
| Boxes | One box per member: photo, name, level, health, armour, mana; leader with the crown and always on top; "Far", "Down", "Disconnected" states. /partyhud hides / shows them. |
| Minimap | A blip with the name for every mate, even far away or in another dimension. |
| Symbol | Icon over the head of nearby mates (gem, crown, star, arrow), different for the leader, hidden behind walls. |
| No friendly fire | Weapons, melee and explosions between mates cancelled by the server; the leader can turn it off for their party. |
| Loot | The leader picks how to split the loot that other resources pass to nc_party: whoever takes it, in turn, random, split, all to the leader. Only nearby members get loot. Given to ox_inventory, qb-inventory or the framework inventory. |
Commands
| Command | Who | What it does |
|---|---|---|
/party | everyone | opens the panel (name in Config.Command) |
/partyhud | everyone | hides / shows the boxes (choice saved on the player's PC; Config.Hud.toggleCommand) |
/pm <id> <text> | everyone | private message to a mate (Config.Chat.pmCommand) |
To limit the party to a group: Config.AcePermission (e.g. 'group.vip'). The /pt_* commands exist only with Config.Debug = true (test tools, off on a live server).
For other resources (server side)
exports.nc_party:IsInParty(src)→true/false.exports.nc_party:GetParty(src)→ copy of the party (id,leader,members,max,loot,noff,lfg) ornil.exports.nc_party:ArePartyMates(a, b)→trueifaandbare two players of the same party.exports.nc_party:GetPartyMembers(src)→{ server ids... }ofsrc's party (src included, leader first) ornil.exports.nc_party:CreateParty(leaderSrc)→partyIdof the new party led byleaderSrc, ornil, code(target_offlinebad or offline id,deniedwithoutConfig.AcePermission,already_in_party). For matchmaking.exports.nc_party:AddMember(partyId, src)→true, orfalse, code(party_goneno such party,target_offline,denied,already_in_party,party_full). Every member gets the updated party. The codes are thenotify_<code>keys of the locales: the calling resource decides what to tell the players.- Event
nc_party:onPartyChanged(partyId, members): after every change;members = nil= party disbanded. exports.nc_party:Distribute(src, items, ctx)→ splits the loot amongsrc's nearby mates (party mode) and gives it throughConfig.Bridge.Inventory; returns who got what, withokon every entry. Same withTriggerEvent('nc_party:distributeLoot', src, items, ctx)(server side only).items={ { name = 'bread', count = 3 }, { name = 'money', count = 900, kind = 'money' } }(at most 100 entries;kind = 'money'= money withname= account:money/cash,bank...; optionalmetadata).ctx(optional) ={ coords = vector3(x, y, z) }: where the loot is (for the distance), otherwisesrc's position.- An entry with
ok ~= truewas not given: the calling resource gives it itself.
With NC Rift there is nothing to do: if nc_party is started, nc_rift splits EXP and rewards in the party by itself.
Open and editable files
The core of the resource is protected (Cfx escrow). These stay readable and editable:
| File | What you change there |
|---|---|
config.lua | all the options (see the guide) |
locales/*.lua | the texts in the 9 languages |
nc_bridge (separate resource) | framework, player name, notices, graphic style and loot giving (lib/inventory.lua, for other inventories): Config.Bridge.* in the nc_bridge configuration guide |
open/client/mana.lua | where to read the mana from (OpenClient.GetMana) |
nc_bridge/web/themes/*.css | colours and fonts of the 5 styles |
Languages
Texts are in locales/*.lua. For a new language copy locales/en.lua, translate the texts (keys and the %s / %d placeholders stay the same) and set Config.Locale. Chinese, Japanese and Korean show in the panel, the boxes and the themed notices (Config.UI.Notify = 'nui'), not in the GTA notification.
The full guide in 9 languages is also in the resource's docs/ folder.