JRS COREDocs
Scripts

Jobs

31 scripts in the [JOBS] folder

Legal jobs and gathering: police, medic, mining, hunting, fishing, crafting, railroad and more.

This folder has 31 scripts. Pick a script in the tabs below.

Paid (server only)   jrs_boats

jrs core Boats for jrs_core and jrs_inventory

Resource jrs_boats
Folder [JOBS]
Version 2.9.3
Author jrs team
Depends on jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 5,712 Lua lines

Commands

  • /boatEnter
  • /shipLoad
  • /shipUnload

Exports

GetLargeShipDefinition, IsLargeShipModel

Database tables

jrs_boats

config/config.lua - 164 options#

General

Setting Default What it does
CoreResource "jrs_core" Setting for core resource.
InventoryResource "jrs_inventory" Setting for inventory resource.
DatabaseTable "jrs_boats" Setting for database table.
PortableItem "portable_canoe" Inventory items used by portable item. Names must exist in the jrs_items table.
StoragePrefix "jrs_boat_" Setting for storage prefix.
Locale "ar" Interface language of this script (en or ar).
Debug false Debug output for debug: true = yes, false = no (default false).
NameMinLength 2 Minimum or level requirement for name min length.
NameMaxLength 30 Upper limit for name max length.
RequestCooldownMs 500 Time setting for request cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
RemoteReturnDelay 15000 Time setting for remote return delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
ShopSessionMs 900000 Number for shop session ms (default 900000).
keys table Key or control used for keys. Controls are hash values from the game input list.
  ↳ shop 0x760A9C6F [G] Open Boat Shop Menu
  ↳ options 0xF1301666 [O] Opens In-Boat Menu for Anchor, Inventory and Remote Return
  ↳ ret 0xD9D0E1C0 [space] Return Boat to Shop at Prompt
maxBoats 5 Default: 5
sellPrice 0.60 Default: 0.60
blockNpcBoats false If true, will block the spawning of NPC boats
blipAllowedClosed true If true, will show colored blip when shop is closed
  ↳ keelboat table Table of keelboat entries. Add, remove or edit entries following the examples in the file.
inventory table Table of inventory entries. Add, remove or edit entries following the examples in the file.
  ↳ pirogue2 table Portable
  ↳ canoetreetrunk table Canoes
  ↳ canoe table Table of canoe entries. Add, remove or edit entries following the examples in the file.
  ↳ pirogue table Table of pirogue entries. Add, remove or edit entries following the examples in the file.
  ↳ skiff table Rowboats
  ↳ rowboat table Table of rowboat entries. Add, remove or edit entries following the examples in the file.
  ↳ rowboatSwamp table Table of rowboat swamp entries. Add, remove or edit entries following the examples in the file.
  ↳ keelboat table Table of keelboat entries. Add, remove or edit entries following the examples in the file.
LargeShips table Large ships / hybrid ships Native RDR2 boat models can use themselves as the physics root. Streamed object models automatically fall back to the hidden physics-root system.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ DefaultPhysicsRoot 'boatsteam02x' Setting for default physics root.
  ↳ PreviewFov 88.0 Number for preview fov (default 88.0).
  ↳ InteractionDistance 2.5 Distance in game units that applies to interaction distance.
  ↳ OptionsDistance 45.0 Distance in game units that applies to options distance.
  ↳ CargoSearchRadius 14.0 Distance in game units that applies to cargo search radius.
  ↳ MaxCargoEntityDistance 22.0 Distance in game units that applies to max cargo entity distance.
  ↳ StateSaveIntervalMs 15000 Time setting for state save interval ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ BoardingPromptDistance 35.0 Distance in game units that applies to boarding prompt distance.
  ↳ controls table Table of controls entries. Add, remove or edit entries following the examples in the file.
  ↳ DrivingHUD table Table of driving hud entries. Add, remove or edit entries following the examples in the file.
  ↳ ships table visualType = 'auto' detects whether the model is a native vehicle or a streamed object. useNativePhysics = 'auto' uses native boat physics when the model is a vehicle; otherwise the model is attached to DefaultPhysicsRoot as a hyb
HorseTransport table Horse transport job (horseBoat only) Horse transport appears in the separate Jobs tab. Starting a job spawns a temporary free horseBoat at the pickup dock; no purchase or ownership is required.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ JobsMenu true Show horse transport in a separate Jobs tab inside the boat shop.
  ↳ FreeJobBoat true Mission horseBoat is temporary/free and does not need ownership.
  ↳ HideJobBoatFromShop true Do not sell horseBoat while it is reserved as a job boat.
  ↳ RequiredBoatModel "horseBoat" Game model or entity used for required boat model.
  ↳ JobBoatName "Horse Transport Boat" Who is allowed: jobs, groups or permissions for job boat name.
  ↳ InteractionDistance 2.5 Distance in game units that applies to interaction distance.
  ↳ StartDistance 3.0 Distance in game units that applies to start distance.
  ↳ DestinationDistance 4.0 Distance in game units that applies to destination distance.
  ↳ ShipDockDistance 55.0 Max distance between the job boat and the livestock dock.
  ↳ RequireAnchor true Requires anchor: true = yes, false = no (default true).
  ↳ ProtectHorses true Switch for protect horses: true = on, false = off (default true).
  ↳ MinimumTripTimeSeconds 45 Minimum or level requirement for minimum trip time seconds.
  ↳ CooldownSeconds 300 Time setting for cooldown seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ DeliveredHorseLifetimeMs 30000 Time setting for delivered horse lifetime ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ BlipSprite 2005921736 Map blip or icon settings for blip sprite.
  ↳ BlipScale 0.25 Map blip or icon settings for blip scale.
  ↳ ShowStartBlips false Job starts from the Jobs menu, so standalone start blips are not needed.
  ↳ controls table Table of controls entries. Add, remove or edit entries following the examples in the file.
  ↳ horseModels table Game model or entity used for horse models.
  ↳ horseSlots table Horse positions on horseBoat, lowered to the cargo-deck floor based on in-game testing. These sit inside the livestock bay instead of floating above the stall walls.
  ↳ routes table Table of routes entries. Add, remove or edit entries following the examples in the file.
CargoTransport table Cargo transport job using the same native horseBoat vehicle as Horse Transport. Cargo uses its own rear-deck slot layout and does not modify HorseTransport.horseSlots.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ JobsMenu true Switch for jobs menu: true = on, false = off (default true).
  ↳ FreeJobBoat true Switch for free job boat: true = on, false = off (default true).
  ↳ HideJobBoatFromShop true Hides job boat from shop: true = yes, false = no (default true).
  ↳ RequiredBoatModel "horseBoat" Game model or entity used for required boat model.
  ↳ JobBoatName "Horse Boat Cargo Transport" Who is allowed: jobs, groups or permissions for job boat name.
  ↳ InteractionDistance 2.5 Distance in game units that applies to interaction distance.
  ↳ DestinationDistance 5.0 Distance in game units that applies to destination distance.
  ↳ ShipDockDistance 60.0 Distance in game units that applies to ship dock distance.
  ↳ RequireAnchor true Requires anchor: true = yes, false = no (default true).
  ↳ MinimumTripTimeSeconds 45 Minimum or level requirement for minimum trip time seconds.
  ↳ CooldownSeconds 300 Time setting for cooldown seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ CargoLifetimeMs 20000 Time setting for cargo lifetime ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ CargoCount 6 Number for cargo count (default 6).
  ↳ controls table Table of controls entries. Add, remove or edit entries following the examples in the file.
  ↳ cargoModels table Physical freight spawned at the pickup dock. More models can be added later.
  ↳ cargoSlots table Cargo-only positions on horseBoat. Keep them toward the rear of the cargo deck. These are intentionally separate from HorseTransport.horseSlots.
  ↳ routes table Table of routes entries. Add, remove or edit entries following the examples in the file.
shops table Boat Shops
  ↳ lagras table Table of lagras entries. Add, remove or edit entries following the examples in the file.
  ↳ saintdenis table Table of saintdenis entries. Add, remove or edit entries following the examples in the file.
  ↳ annesburg table Table of annesburg entries. Add, remove or edit entries following the examples in the file.
  ↳ blackwater table Table of blackwater entries. Add, remove or edit entries following the examples in the file.
  ↳ wapiti table Table of wapiti entries. Add, remove or edit entries following the examples in the file.
  ↳ manteca table Table of manteca entries. Add, remove or edit entries following the examples in the file.
  ↳ sisika table Table of sisika entries. Add, remove or edit entries following the examples in the file.
  ↳ braithwaite table Table of braithwaite entries. Add, remove or edit entries following the examples in the file.
  ↳ guarma table Table of guarma entries. Add, remove or edit entries following the examples in the file.
locations table Water Locations for Portable Canoe
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.
  ↳ 6 table Table of 6 entries. Add, remove or edit entries following the examples in the file.
  ↳ 7 table Table of 7 entries. Add, remove or edit entries following the examples in the file.
  ↳ 8 table Table of 8 entries. Add, remove or edit entries following the examples in the file.
  ↳ 9 table Table of 9 entries. Add, remove or edit entries following the examples in the file.
  ↳ 10 table Table of 10 entries. Add, remove or edit entries following the examples in the file.
  ↳ 11 table Table of 11 entries. Add, remove or edit entries following the examples in the file.
  ↳ 12 table Table of 12 entries. Add, remove or edit entries following the examples in the file.
  ↳ 13 table Table of 13 entries. Add, remove or edit entries following the examples in the file.
  ↳ 14 table Table of 14 entries. Add, remove or edit entries following the examples in the file.
  ↳ 15 table Table of 15 entries. Add, remove or edit entries following the examples in the file.
  ↳ 16 table Table of 16 entries. Add, remove or edit entries following the examples in the file.
  ↳ 17 table Table of 17 entries. Add, remove or edit entries following the examples in the file.
  ↳ 18 table Table of 18 entries. Add, remove or edit entries following the examples in the file.
  ↳ 19 table Table of 19 entries. Add, remove or edit entries following the examples in the file.
  ↳ 20 table Table of 20 entries. Add, remove or edit entries following the examples in the file.
  ↳ 21 table Table of 21 entries. Add, remove or edit entries following the examples in the file.
  ↳ 22 table Table of 22 entries. Add, remove or edit entries following the examples in the file.
  ↳ 23 table Table of 23 entries. Add, remove or edit entries following the examples in the file.
  ↳ 24 table Table of 24 entries. Add, remove or edit entries following the examples in the file.
Notes from the README#
text
## 2.9.0 Shop Category Cleanup
- Removed the Large Ships category/filter button from the Shop/My Boats category bar.
- Large-ship definitions remain available internally for jobs and existing systems.
## 2.8.9 Multi-port Boarding Points
- Added `boardingPromptPoints` support for multiple static dock boarding locations.
- Added Blackwater and Saint Denis boarding points for `horseBoat`.
- The client automatically selects the nearest configured boarding point that is close to the active ship.
- Falls back to the local ship-side boarding offset at unconfigured ports.
## 2.8.8 Dedicated Boarding Point
- Added a dedicated `boardingPromptPoint` for `horseBoat`.
- `G - Board Ship` now appears only beside the configured boarding point.
- Boarding places the player on a safe deck landing point instead of taking the helm.
- `E - Take Helm` remains a separate interaction inside the wheelhouse.
## 2.8.6 Cargo Slot Adjustment
- Updated CargoTransport.cargoSlots to the user-tuned rear-deck positions.
## 2.8.5 Cargo Boat Dock Spawn
- Moved only the Cargo Transport `horseBoat` pickup spawn closer to the loading dock in Blackwater and Saint Denis.
- Horse Transport boat spawn, cargo slots, horse slots, and user-tuned Blackwater horse/cargo spawn points remain unchanged.
## 2.8.2 Cargo Crate Stack Model
- Cargo Transport crates now use `p_bat_cratestack01x` for all six cargo entities.
- Cargo boat, rear cargo slot positions, HorseTransport horse slots, and Blackwater spawn coordinates are unchanged.
## 2.8.1 Cargo Transport on Native horseBoat
- Cargo Transport now uses the same native `horseBoat` vehicle as Horse Transport.
- Cargo crates use a separate rear-deck slot layout and do not change the user-tuned horse slots.
- `horseBoat` remains a native RedM vehicle with native buoyancy, driving, engine audio, smoke and collision.
- Blackwater horse/cargo spawn coordinates remain unchanged.
## 2.8.0 Cargo Transport Back to Native tugboat3
- Cargo Transport now uses `tugboat3` again.
- `tugboat3` is explicitly treated as a native RedM vehicle, not an object/hybrid shell.
- Native buoyancy, driving, engine audio, smoke and collision remain on the actual `tugboat3` vehicle.
- Restored tugboat3-specific cargo deck slots.
- Preserved the user-approved Blackwater horse and cargo spawn coordinates.
## 2.7.9 Native ship_nbdGuama2 Vehicle
- Confirmed `ship_nbdGuama2` is a native RedM vehicle.
- Cargo Transport now spawns `ship_nbdGuama2` directly as the physics/drive vehicle.
- Disabled Hybrid/Object driving for this ship.
- Enabled native driver seat, native anchoring, and automatic anchor release on driver entry.
- Preserved the user-locked Blackwater horse/cargo spawn coordinates and HorseTransport horse slots.
# REDEMPIRE Boats v2.7.9
## 2.7.8 Cargo Ship Model
- Changed the Cargo Transport job boat from `ship_guama02` to `ship_nbdGuama2`.
- Kept the existing cargo routes, Blackwater spawn points, rewards, and cargo slot layout unchanged.
- Added `ship_nbdGuama2` as its own large-ship definition while leaving `ship_guama02` available separately.
## 2.7.7 Cargo Ship Guarma
- Changed the Cargo Transport job boat from `tugboat3` to `ship_guama02`.

Free (included in JRS Core)   jrs_bossmanager

JRS CORE | jrs_bossmanager | config.lua

Resource jrs_bossmanager
Folder [JOBS]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core
Interface No
Code size 883 Lua lines

Commands

  • /givelicense
  • /revokelicense

Database tables

jobmanager

config.lua - 2 options#

General

Setting Default What it does
Key 0x446258B6 changed Key to PGUP, otherwise it collides with the default key of jrs_admin
Locale "en" language

Paid (server only)   jrs_bounty

jrs core Bounty Board

Resource jrs_bounty
Folder [JOBS]
Version 2.1.1
Author jrs team
Depends on jrs_core, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 2,799 Lua lines

Commands

  • /bountycooldown

Database tables

jrs_bountty, jrs_bounty_cooldowns, jrs_sheriffbounty

config/config.lua - 114 options#

General

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
ServerConsolePrints true Enable to see payout/xp debug logs in server console
RequireJob true Access The bounty board requires a Bounty Hunter job.
BountyJobs table Who is allowed: jobs, groups or permissions for bounty jobs.
  ↳ bounty true Switch for bounty: true = on, false = off (default true).
  ↳ bountyhunter true Switch for bountyhunter: true = on, false = off (default true).
  ↳ bounty_hunter true Switch for bounty hunter: true = on, false = off (default true).
AllowLawJobs true Allows law jobs (police/sheriff) to access board and post sheriff notices
MaxSheriffReward 5000 Money value for max sheriff reward. Rewards go through the economy multiplier of jrs_core.
BoardBlips true UI / interaction
BoardblipName "Bounty Board" Text shown to the player for boardblip name. Change it to translate or rebrand.
BoardBlipSprite "blip_proc_bounty_poster" Map blip or icon settings for board blip sprite.
BoardBlipModifier "BLIP_MODIFIER_MP_COLOR_23" Map blip or icon settings for board blip modifier.
BoardBlipScale 0.2 Map blip or icon settings for board blip scale.
PromptGroup "Bounty Board" Who is allowed: jobs, groups or permissions for prompt group.
PromptName "Open" Text shown to the player for prompt name. Change it to translate or rebrand.
BoardOpenControl 0x760A9C6F G
BoardOpenDistance 2.0 Distance in game units that applies to board open distance.
CreateBountyTime 10 minutes
MaxBountys 20 Upper limit for max bountys.
DistanceSpawnEnemys 60.0 Distance in game units that applies to distance spawn enemys.
MinimumMissionSeconds 20 server-side anti-instant-complete check (45 on 2026-10-02 rejected fast legit kills; 20 on 2026-10-08)
MissionCompletionDistance 800.0 maximum distance from the assigned target area (400 rejected fights that chased away from the camp)
Jobs table Law jobs allowed to post and delete sheriff bounties.
Easy "easy" Stable internal difficulty keys. Existing Arabic/German rows are normalized by the server.
Middle "medium" Setting for middle.
Hard "hard" Setting for hard.
DifficultyLabels table Table of difficulty labels entries. Add, remove or edit entries following the examples in the file.
  ↳ easy "سهل" Setting for easy.
  ↳ medium "متوسط" Setting for medium.
  ↳ hard "صعب" Setting for hard.
BountyBoards table Table of bounty boards entries. Add, remove or edit entries following the examples in the file.
Names table This will be the Target name in Bountyboard Name will pciked random out of this names list
MinEasyReward 2 Reward System ---------------------------------- RDO Authentic Bounty Hunter Payouts & XP Progression Easy (1-star)
MaxEasyReward 3 Money value for max easy reward. Rewards go through the economy multiplier of jrs_core.
EasyXP 160 Number for easy xp (default 160).
MinMiddleReward 3 Middle (2-star)
MaxMiddleReward 6 Money value for max middle reward. Rewards go through the economy multiplier of jrs_core.
MiddleXP 300 Number for middle xp (default 300).
MinHardReward 6 Hard (3-star)
MaxHardReward 10 Money value for max hard reward. Rewards go through the economy multiplier of jrs_core.
HardXP 460 Number for hard xp (default 460).
BountyMissionCooldownSeconds 300 Bounty board mission cooldown (300 seconds / 5 minutes, replaces old 1 hour wait)
EnemyDifficulty table RDO Authentic Enemy Combat & Difficulty Settings
  ↳ easy table Table of easy entries. Add, remove or edit entries following the examples in the file.
  ↳ medium table Table of medium entries. Add, remove or edit entries following the examples in the file.
  ↳ hard table Table of hard entries. Add, remove or edit entries following the examples in the file.
Model "CS_strawberryoutlaw_02" Game model or entity used for model.
EasyMissions table Table of easy missions entries. Add, remove or edit entries following the examples in the file.
MiddleMissions table Table of middle missions entries. Add, remove or edit entries following the examples in the file.
HardMissions table Table of hard missions entries. Add, remove or edit entries following the examples in the file.
GroupMaxMembers 4 Total players including the leader

DE

Setting Default What it does
Text table UI labels / notifications
  ↳ BoardTitle "لوحة المطلوبين" Text shown to the player for board title. Change it to translate or rebrand.
  ↳ BoardSubtitle 'ملصقات المطلوبين وإعلانات ا... Setting for board subtitle.
  ↳ Available "الجوائز المتاحة" Setting for available.
  ↳ Sheriff "إعلانات الشريف" Setting for sheriff.
  ↳ Post "نشر مطلوب" Setting for post.
  ↳ Refresh "تحديث" Setting for refresh.
  ↳ Close "إغلاق" Setting for close.
  ↳ Start "بدء المهمة" Setting for start.
  ↳ Abort "إلغاء المهمة" Setting for abort.
  ↳ Delete "حذف" Setting for delete.
  ↳ ConfirmDelete "هل أنت متأكد من حذف هذا المطلوب؟" Setting for confirm delete.
  ↳ NoBounties "لا توجد مهمات متاحة حالياً." Setting for no bounties.
  ↳ NoSheriffBounties "لا توجد إعلانات شريف منشورة." Setting for no sheriff bounties.
  ↳ Firstname "الاسم الأول" Setting for firstname.
  ↳ Lastname "اسم العائلة" Setting for lastname.
  ↳ Reason "السبب" Setting for reason.
  ↳ Reward "المكافأة" Money value for reward. Rewards go through the economy multiplier of jrs_core.
  ↳ Submit "نشر ملصق مطلوب" Setting for submit.
  ↳ Group "المجموعة" Who is allowed: jobs, groups or permissions for group.
  ↳ AddMember "إضافة عضو" Setting for add member.
  ↳ LeaveGroup "مغادرة المجموعة" Who is allowed: jobs, groups or permissions for leave group.
  ↳ DisbandGroup "حل المجموعة" Who is allowed: jobs, groups or permissions for disband group.
MissionBlip "Bounty Target" Map blip or icon settings for mission blip.
MissionBlipSprite "blip_mission_bounty" Skull with dollar sign (-907204276)
MissionBlipModifier "BLIP_MODIFIER_MP_COLOR_10" Red color modifier
MissionBlipScale 0.2 Map blip or icon settings for mission blip scale.
MissionAreaZoneRadius 90.0 red zone under the skull blip
Messages table Text shown to the player for messages. Change it to translate or rebrand.
  ↳ NoPermission "ليس لديك صلاحية للقيام بذلك." Who is allowed: jobs, groups or permissions for no permission.
  ↳ MissionStarted 'بدأت المهمة. توجه إلى المنط... Setting for mission started.
  ↳ MissionAlreadyActive "لديك مهمة نشطة بالفعل." Setting for mission already active.
  ↳ MissionUnavailable "هذا المطلوب لم يعد متاحاً." Setting for mission unavailable.
  ↳ InvalidMissionCompletion "تعذر التحقق من إكمال المهمة." Setting for invalid mission completion.
  ↳ MissionAborted 'تم إلغاء مهمة صيد المطلوبين... Setting for mission aborted.
  ↳ NoActiveMission "ليس لديك مهمة صيد مطلوبين نشطة." Setting for no active mission.
  ↳ MissionFailed "فشلت المهمة." Setting for mission failed.
  ↳ MissionSuccess "اكتملت المهمة بنجاح." Setting for mission success.
  ↳ RemainingEnemies "الأعداء المتبقون: " Setting for remaining enemies.
  ↳ EnemiesKilled "الأعداء الذين تم القضاء عليهم: " Setting for enemies killed.
  ↳ RewardReceived 'تم استلام مكافأة صيد المطلو... Money value for reward received. Rewards go through the economy multiplier of jrs_core.
  ↳ SheriffBountyPosted "تم نشر ملصق الشريف بنجاح." Setting for sheriff bounty posted.
  ↳ SheriffBountyDeleted "تم حذف ملصق الشريف." Setting for sheriff bounty deleted.
  ↳ InvalidForm 'يرجى إكمال جميع الحقول وإدخ... Setting for invalid form.
  ↳ GroupInvalidPlayer "يرجى إدخال مُعرّف لاعب صالح." Who is allowed: jobs, groups or permissions for group invalid player.
  ↳ GroupPlayerNotFound "هذا اللاعب غير متصل أو غير جاهز." Who is allowed: jobs, groups or permissions for group player not found.
  ↳ GroupTargetBusy 'هذا اللاعب لديه مهمة صيد مط... Who is allowed: jobs, groups or permissions for group target busy.
  ↳ GroupTargetAlreadyGrouped 'هذا اللاعب موجود بالفعل في ... Who is allowed: jobs, groups or permissions for group target already grouped.
  ↳ GroupLeaderOnly 'فقط قائد المجموعة يمكنه الق... Who is allowed: jobs, groups or permissions for group leader only.
  ↳ GroupLeaderAbortOnly 'فقط قائد المجموعة يمكنه إلغ... Who is allowed: jobs, groups or permissions for group leader abort only.
  ↳ GroupLocked 'لا يمكن تعديل المجموعة أثنا... Who is allowed: jobs, groups or permissions for group locked.
  ↳ GroupFull "مجموعة صيد المطلوبين ممتلئة." Who is allowed: jobs, groups or permissions for group full.
  ↳ BountyCooldownActive 'يجب عليك الانتظار %s قبل بد... Time setting for bounty cooldown active. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ BountyCooldownStarted 'بدأت فترة انتظار مهمات صيد ... Time setting for bounty cooldown started. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ MemberCooldownActive 'عضو الفريق %s لديه فترة انت... Time setting for member cooldown active. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ JobRequired 'يجب أن تكون صائد جوائز لاست... Who is allowed: jobs, groups or permissions for job required.
  ↳ TargetJobRequired "هذا اللاعب ليس صائد جوائز." Who is allowed: jobs, groups or permissions for target job required.
MissionFailed Config.Messages.MissionFaile... Legacy bounty aliases kept for older integrations.
MissionSuccess Config.Messages.MissionSucce... Setting for mission success.
EnemyRemain Config.Messages.RemainingEne... Setting for enemy remain.
KiledEnemys Config.Messages.EnemiesKille... Setting for kiled enemys.
RewardGet Config.Messages.RewardReceiv... Money value for reward get. Rewards go through the economy multiplier of jrs_core.
Notes from the README#
text
REDEMPIRE Bounty Board v2.1.0
=======================
Dependencies
------------
- oxmysql
- jrs_core
Recommended start order
-----------------------
ensure oxmysql
ensure jrs_core
ensure jrs_bounty
Installation
------------
1. Replace the old jrs_bounty resource with this folder.
2. Keep the resource folder name as: jrs_bounty
3. The server creates the required tables automatically.
4. Review config.lua before starting the resource.
Bounty-only build
-----------------
- The complete heist/robbery system was removed.
- jrs_lockpick is no longer used.
- jrs_inventory is no longer required by this resource.
- Available bounty missions and sheriff bounty notices remain.
Group bounty system
-------------------
- Open the Group tab on the bounty board.
- The leader adds players directly by server ID.
- Config.GroupMaxMembers controls the total group size including the leader.
- Only the group leader can start or abort a bounty mission while grouped.
- Starting a bounty sends the same mission to every current group member.
- Only one networked enemy wave is spawned by the leader, preventing duplicate NPC waves.
- Group membership is locked while a mission is active.
- Group members cannot start another bounty while assigned to the leader's active mission.
- The poster reward is a TOTAL reward. It is split between online mission participants at completion.
- Integer remainders are distributed one dollar at a time so the full configured reward is paid.
- The normal bounty cooldown is applied to every mission participant after success.
- Groups are session-only and are not stored in the database.
Important config options
------------------------
- Config.Jobs
- Config.BountyBoards
- Config.GroupMaxMembers
- Config.MaxSheriffReward
- Config.MinimumMissionSeconds
- Config.MissionCompletionDistance

Free (included in JRS Core)   jrs_crawfish

A script to catch crawfish for jrs core framework

Resource jrs_crawfish
Folder [JOBS]
Version 2.0
Author JRS TEAM
Interface No
Code size 693 Lua lines
config.lua - 22 options#

General

Setting Default What it does
defaultlang "en" Default language ("en" English, "es" Español)
ProgressBarType 2 false or less than 1 = no progress bar display, 1 = legacy progressBars, 2 = jrs_progressbar; Default: 2
ProgressBar table Progress Bar Variables; Only used if Config.ProgressBarType is 2
  ↳ theme "linear" Supported themes: "linear", "circle", "innercircle"; Default: "linear"
  ↳ color "rgb(124, 45, 45)" CSS color name or rgb/rgba/etc format; Default: "rgb(124, 45, 45)"
  ↳ width "20vw" Horizontal length of progressbar in CSS units; Only used by the "linear" theme; Default: "20vw"
  ↳ focus false If true, progress bar UI will have keyboard focus; Default: false
SearchTimeMin 5000 Minimum time, in milliseconds (1000 milliseconds = 1 second), taken to search a crawfish hole.
SearchTimeMax 10000 Maximum time, in milliseconds (1000 milliseconds = 1 second), taken to search a crawfish hole.
SearchDelay 600 Time, in seconds, before a crawfish hole can be search again.
SearchRewardCount 1 How many crawfish players can find per hole; Set this to a table like so {min, max} for random reward count per search; eg {0, 3} will mean a random reward count between 0 and 3.
CrawfishItemName "animal_crawfish" The item name of a Crawfish; given to player on successful search (MUST be registered in your items database!).
CrawfishItemLabel _U("item_crawfish") The display name of a Crawfish. _U("item_crawfish") will pull the name from your language file, or you can just put a name here yourself.
CanFindOtherItems false Set true to allow players to find extra items in crawfish holes; Default: false
OtherItemsChance 2 The chance of a player finding other items in crawfish holes (0 to 100); Default: 2
MaxOtherItems 1 The maximum different items a player can find when searching a crawfish hole; Default: 1
OtherItems table Inventory items used by other items. Names must exist in the jrs_items table.
CrawfishCustomUseFunction false Set true if you already have a script which handles the usage of an item with the same name as Config.CrawfishItemName.
CrawfishGivenItemName "provision_meat_crustacean" The item name of what is rewarded when using a Crawfish from inventory (MUST be registered in your items database!).
CrawfishGivenItemLabel _U("item_harvest") The display name of Config.CrawfishGivenItemName. _U("item_harvest") will pull the name from your language file, or you can just put a name here yourself.
CrawfishGivenItemAmount 1 How many items (Config.CrawfishGivenItemName) players can obtain when using a Crawfish from inventory; Set this to a table like so {min, max} for random item count when used; eg {1, 3} will mean a random item count between 1 and 3
CrawfishHoles table vector3(x,y,z)

Paid (server only)   jrs_delivery

Multi-location and multi-cargo delivery job for jrs_core with route map NUI

Resource jrs_delivery
Folder [JOBS]
Version 4.1.4
Author jrs team
Depends on jrs_core
Interface Yes (NUI)
Languages ar, en
Code size 3,010 Lua lines

Database tables

jrs_delivery_locations, jrs_delivery_receivers, jrs_delivery_route_extras

config/config.lua - 77 options#

General

Setting Default What it does
defaultlang "ar" Fallback only. The live language is per player and comes from jrs_core (@jrs_core/shared/jrs_lang.lua): _U resolves in the language the player picked, _UE forces English for RedM on-screen prompts.
RequireJob true Only players who picked up the Delivery Driver job at a jrs_multijob employment office can start deliveries. Set to false to let anyone use the job.
JobName "delivery" Who is allowed: jobs, groups or permissions for job name.
MinimumJobGrade 0 Minimum or level requirement for minimum job grade.
CurrencyType 0 jrs_core currency: 0 = cash, 1 = gold, 2 = rol.
EnableXP true XP is awarded through jrs_core and stored in characters_level.
XPReason "Delivery completed" Setting for xp reason.
InteractControl 0x760A9C6F G
DeliverControl 0xCEFD9220 E
InteractRadius 2.0 Distance in game units that applies to interact radius.
ServerStartDistance 8.0 Distance in game units that applies to server start distance.
ServerDeliveryDistance 15.0 Distance in game units that applies to server delivery distance.
NpcSpawnDistance 180.0 Distance in game units that applies to npc spawn distance.
PromptCooldownMs 1200 Time setting for prompt cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
DeliveryZoneRadius 9.0 and the player must have stepped out of it, before the receiving clerk's prompt appears. ReceiverOffset places that clerk to the side of the parked wagon (reusing the destination station's own NPC model).
ReceiverInteractRadius 3.25 Distance in game units that applies to receiver interact radius.
ReceiverOffset 3.25 Number for receiver offset (default 3.25).
ReceiverOverrides table Per-location receiver spot overrides (loc_key -> vector4), set live from the in-game admin panel and synced from jrs_delivery_receivers. Locations with no entry here fall back to the automatic offset above.
UI table The delivery menu uses the included NUI interface. No external menu resource is required.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ Username "Delivery Job" Setting for username.
AllowAllRoutes false Each location ships one cargo to one fixed destination.
MinimumDeliverySeconds 10 Minimum or level requirement for minimum delivery seconds.
RouteExpiryGraceSeconds 30 Number for route expiry grace seconds (default 30).
CancelIfWagonDestroyed true Switch for cancel if wagon destroyed: true = on, false = off (default true).
WarpPlayerIntoWagon false Switch for warp player into wagon: true = on, false = off (default false).
EnableCargoSpeedLimit true Enforce each cargo contract's wagon speed.
EnableLocationBlips true Map settings.
LocationBlipHash -1989306548 World coordinates (x, y, z) used for location blip hash.
LocationBlipColor "BLIP_MODIFIER_MP_COLOR_32" World coordinates (x, y, z) used for location blip color.
LocationBlipScale 0.8 World coordinates (x, y, z) used for location blip scale.
DestinationBlipHash -570710357 Map blip or icon settings for destination blip hash.
GpsRouteColor "COLOR_YELLOW" Setting for gps route color.
RouteDefaults table Default values used by routes unless overridden in Config.RouteOverrides.
  ↳ wagon "CART06" Setting for wagon.
  ↳ timer 1500 Number for timer (default 1500).
  ↳ xp 220 Number for xp (default 220).
  ↳ priceMin 2.00 Money value for price min. Rewards go through the economy multiplier of jrs_core.
  ↳ priceMax 3.50 Money value for price max. Rewards go through the economy multiplier of jrs_core.
  ↳ maxSpeed 8.5 Game units are meters per second.
CargoPresets table Cargo presets define the default behavior of each load. Scaled onto jrs_delivery's price/xp economy (RDO Trader Delivery parity).
  ↳ eggs table Table of eggs entries. Add, remove or edit entries following the examples in the file.
  ↳ raspberry table Table of raspberry entries. Add, remove or edit entries following the examples in the file.
  ↳ lumber table Table of lumber entries. Add, remove or edit entries following the examples in the file.
  ↳ nails table Table of nails entries. Add, remove or edit entries following the examples in the file.
  ↳ caviar table Table of caviar entries. Add, remove or edit entries following the examples in the file.
  ↳ trader_goods_local table Table of trader goods local entries. Add, remove or edit entries following the examples in the file.
  ↳ trader_goods_distant table Table of trader goods distant entries. Add, remove or edit entries following the examples in the file.
  ↳ cigar table Table of cigar entries. Add, remove or edit entries following the examples in the file.
  ↳ coal_shipment table Table of coal shipment entries. Add, remove or edit entries following the examples in the file.
  ↳ snake_poison table Table of snake poison entries. Add, remove or edit entries following the examples in the file.
  ↳ tobacco table Table of tobacco entries. Add, remove or edit entries following the examples in the file.
  ↳ fish_lure table Table of fish lure entries. Add, remove or edit entries following the examples in the file.
  ↳ lead_bar table Table of lead bar entries. Add, remove or edit entries following the examples in the file.
  ↳ ruby table Table of ruby entries. Add, remove or edit entries following the examples in the file.
LocationOrder table wagonSpawn: wagon spawn position. deliveryPoint: route completion position. destinations: the single fixed target this location's cargo ships to (AllowAllRoutes = false).
Locations table World coordinates (x, y, z) used for locations.
  ↳ valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ wallace_station table Table of wallace station entries. Add, remove or edit entries following the examples in the file.
  ↳ strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ blackwater table Table of blackwater entries. Add, remove or edit entries following the examples in the file.
  ↳ mcfarlanes_ranch table Table of mcfarlanes ranch entries. Add, remove or edit entries following the examples in the file.
  ↳ armadillo table Table of armadillo entries. Add, remove or edit entries following the examples in the file.
  ↳ wapiti_indian table Table of wapiti indian entries. Add, remove or edit entries following the examples in the file.
  ↳ van_horn table Table of van horn entries. Add, remove or edit entries following the examples in the file.
  ↳ saint_denis table Table of saint denis entries. Add, remove or edit entries following the examples in the file.
  ↳ rhodes table Table of rhodes entries. Add, remove or edit entries following the examples in the file.
  ↳ emerald_ranch table Table of emerald ranch entries. Add, remove or edit entries following the examples in the file.
  ↳ annesburg table Table of annesburg entries. Add, remove or edit entries following the examples in the file.
RouteCargoOptions table Not needed: every location has exactly one cargo option, so no per-route override table.
RouteOverrides table Not needed: destinations above are fixed per location.
  ↳ valentine:wallace_station table Table of valentine:wallace station entries. Add, remove or edit entries following the examples in the file.
  ↳ wallace_station:strawberry table Table of wallace station:strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ annesburg:valentine table Table of annesburg:valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ rhodes:emerald_ranch table Table of rhodes:emerald ranch entries. Add, remove or edit entries following the examples in the file.
  ↳ wapiti_indian:van_horn table Table of wapiti indian:van horn entries. Add, remove or edit entries following the examples in the file.
Notes from the README#
text
# jrs_delivery 3.3.3 — jrs_core
This resource is built for `jrs_core` and uses the core for character data, money, XP, notifications and the 3D destination waypoint.
## SS-Deliveryjob port
Locations, item names and per-mission XP were ported from the SS-Deliveryjob asset pack's `config.lua`
(SS-Deliveryjob's actual game logic is escrow-protected, so only its readable config data could be
carried over — the engine below is jrs_delivery's own). `Config.AllowAllRoutes = false` and each
location's single `destinations` entry recreate SS-Deliveryjob's one-city, one-cargo, one-fixed-destination
design as a 12-city ring: Valentine -> Wallace Station -> Strawberry -> Blackwater -> McFarlane's Ranch ->
Armadillo -> Wapiti Indian Reservation -> Van Horn -> Saint Denis -> Rhodes -> Emerald Ranch -> Annesburg -> (back to Valentine).
A Discord webhook log on delivery completion is available via `Config.Discord` (disabled by default —
set your own webhook URL, never reuse one shipped inside a downloaded pack).
## Multi-cargo contracts
A destination can offer multiple cargo contracts. The player selects:
1. Destination.
2. Cargo type.
3. The contract with its own time, payment, XP, wagon model and maximum speed.
The selected cargo is validated on the server when the delivery starts, when the wagon is registered and when the delivery is completed.
## Cargo defaults
Each cargo type has default settings in `Config.CargoPresets`:
'''lua
Config.CargoPresets.coal_shipment = {
    label = 'Coal',
    description = 'Heavy coal load out of Emerald Ranch. 30-50 units, slows the wagon.',
    wagon = 'wagon04x',
    timer = 1850,
    priceMin = 650,
    priceMax = 850,
    xp = 58,
    maxSpeed = 6.0,
    props = {
        -- Cargo objects...
    }
}
'''
`maxSpeed` uses game speed units in meters per second. The UI displays the approximate value in km/h.
## Cargo offered by a departure city
When no exact route configuration exists, the route uses the departure city's `cargoOptions`:
'''lua
Config.Locations.valentine = {
    cargoOptions = { 'raspberry' },
    destinations = { 'wallace_station' },
    -- ...
}
'''
This makes `raspberry` available from Valentine to Wallace Station only (`Config.AllowAllRoutes = false`).

Paid (server only)   jrs_doctors

jrs core Doctors - fully integrated medical, hospital, disease, employment, storage and death-screen system for RedM

Resource jrs_doctors
Folder [JOBS]
Version 4.4.20
Author jrs team
Depends on jrs_core, jrs_inventory, jrs_metabolism, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 30,018 Lua lines

Commands

  • /-
  • /admincure
  • /cureme
  • /jrs_doctor_menu
  • /jrspromptfix

Exports

AddInjury, AddOption, AdminClearDisease, ApplyDoctorOutfit, ApplyGradeOutfit, CalculateDramaticHeartRate, CallMedicalService, ChangeMetabolism, ClearActiveDisease, ClearInjuries, CloseDoctorRadial, CreateMedicalCall, CurePlayer, CurrentZone, ExternalHeal, ExternalRevive, FinishKnock, FinishKnockedPlayer, ForceStopDeathCam, GetActiveDisease, GetActiveTreatments, GetBleedingState, GetCurrentHeartRate, GetDiseaseCatalog, GetDiseaseRuntimeStatus, GetDiseaseTreatmentQuote, GetDoctorsOnDuty, GetInjuries, GetMedicONDUTY, GetPlayerDisease

Database tables

jrs_doctors_applications, jrs_doctors_archives, jrs_doctors_bleeding, jrs_doctors_cabinet_usage, jrs_doctors_calls, jrs_doctors_diseases, jrs_doctors_employees, jrs_doctors_injuries, jrs_doctors_kit_durability, jrs_doctors_patient_profiles, jrs_doctors_treatments

config/admin.lua - 12 options#

General

Setting Default What it does
AdminMenu table Who is allowed: jobs, groups or permissions for admin menu.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Command "jrsdoctorsadmin" Setting for command.
  ↳ RequireFullAccess true Requires full access: true = yes, false = no (default true).
  ↳ AllowWithoutDuty true Allows without duty: true = yes, false = no (default true).
  ↳ MaximumGiveAmount 5 Upper limit for maximum give amount.
  ↳ MaximumInjurySeverity 100 Upper limit for maximum injury severity.
  ↳ AuditToDatabase true Switch for audit to database: true = on, false = off (default true).
  ↳ Operations table Table of operations entries. Add, remove or edit entries following the examples in the file.
  ↳ BodyParts table Table of body parts entries. Add, remove or edit entries following the examples in the file.
  ↳ Treatments table Table of treatments entries. Add, remove or edit entries following the examples in the file.
  ↳ MetabolismProfiles table Table of metabolism profiles entries. Add, remove or edit entries following the examples in the file.
config/core.lua - 106 options#

General

Setting Default What it does
Registry true Switch for registry: true = on, false = off (default true).
RepSystem false Switch for rep system: true = on, false = off (default false).
RepAdded 10.0 Number for rep added (default 10.0).
MedicMissions false Switch for medic missions: true = on, false = off (default false).
Diseases true Switch for diseases: true = on, false = off (default true).
MedicArchives true Switch for medic archives: true = on, false = off (default true).
ClothingScript true Switch for clothing script: true = on, false = off (default true).
RagDollFalling false Switch for rag doll falling: true = on, false = off (default false).
Key 0xCEFD9220 Key or control used for key. Controls are hash values from the game input list.
Align "right" Setting for align.
FireMedic "unemployed" Setting for fire medic.
JobGrade 7 Who is allowed: jobs, groups or permissions for job grade.
JobGradeBuy 10 Who is allowed: jobs, groups or permissions for job grade buy.
UseCommand true Turns command on or off (default true).
WagonInventory 200 Number for wagon inventory (default 200).
DespawnWagonDist 200 Distance in game units that applies to despawn wagon dist.
UsePayment true Turns payment on or off (default true).
SynPayment false Switch for syn payment: true = on, false = off (default false).
PaymentTime 1800 Number for payment time (default 1800).
PaymentGrade table Who is allowed: jobs, groups or permissions for payment grade.
PayAlertAccepted 1.00 Money value for pay alert accepted. Rewards go through the economy multiplier of jrs_core.
UseNotify true Turns notify on or off (default true).
DelayNotify 5000 Time setting for delay notify. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
AlertDistance 2500 Distance in game units that applies to alert distance.
UseAlertCmd true Turns alert cmd on or off (default true).
CmdDelay 10 Time setting for cmd delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
DeadBodyBlip 350569997 Map blip or icon settings for dead body blip.
DeadPoliceBlip -1154452417 Map blip or icon settings for dead police blip.
RemoveAlertItem false HARD RULE: birdalert is a permanent tool and is never consumed by jrs_doctors
AlertItem "birdalert" fixed dispatch item
BirdModel "a_c_pigeon" Game model or entity used for bird model.
ActivateMouse 0x760A9C6F Setting for activate mouse.
BedTime 10000 Number for bed time (default 10000).
BedScenario "PROP_HUMAN_SLEEP_BED_PILLOW... Animation settings for bed scenario.
RegisterPrice 0.35 Money value for register price. Rewards go through the economy multiplier of jrs_core.
MedicDistance 500 Distance in game units that applies to medic distance.
Distance 1.5 Distance in game units that applies to distance.
UseMetadata true Turns metadata on or off (default true).
KitsDurability 100 Number for kits durability (default 100).
RemoveWhenUse 20 Number for remove when use (default 20).
MedCabItem "docbandage" Inventory items used by med cab item. Names must exist in the jrs_items table.
BlacklistZones table Table of blacklist zones entries. Add, remove or edit entries following the examples in the file.
Version "4.4.8-jrs-login-fix" Setting for version.
Debug false Debug output for debug: true = yes, false = no (default false).
Framework "jrs" jrs_core + jrs_inventory
Locale "ar" Interface language of this script (en or ar).
CoreResource "jrs_core" Setting for core resource.
InventoryResource "jrs_inventory" Setting for inventory resource.
REDEMPIRE table Table of redempire entries. Add, remove or edit entries following the examples in the file.
  ↳ CoreResource "jrs_core" Setting for core resource.
  ↳ InventoryResource "jrs_inventory" Setting for inventory resource.
  ↳ Currency table Table of currency entries. Add, remove or edit entries following the examples in the file.
  ↳ RequireCharacterReady true Requires character ready: true = yes, false = no (default true).
  ↳ CharacterReadyTimeoutMs 15000 Time setting for character ready timeout ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ ApiRetryMs 1000 Number for api retry ms (default 1000).
  ↳ ApiRetryCount 20 Number for api retry count (default 20).
  ↳ StorageRegisterDelayMs 175 Time setting for storage register delay ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
ResourceName "jrs_doctors" Text shown to the player for resource name. Change it to translate or rebrand.
LegacyMigration table Table of legacy migration entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ CopyJrsDoctorTables true Switch for copy jrs doctor tables: true = on, false = off (default true).
ReleaseInfo table Startup identity printed in the RedM server console. Keep text concise so it stays readable in txAdmin and the live console.
  ↳ ScriptName "DOCTORS" Text shown to the player for script name. Change it to translate or rebrand.
  ↳ VersionName 'DOCTOR TRANSPORT & STORAGE ... Text shown to the player for version name. Change it to translate or rebrand.
  ↳ VersionType "SECURE UNIFIED PRODUCTION UI" Setting for version type.
  ↳ ReleaseChannel "PRODUCTION" Setting for release channel.
  ↳ FrameworkLabel "REDEMPIRE + INVENTORY" Text shown to the player for framework label. Change it to translate or rebrand.
  ↳ ShowStartupBanner true Shows startup banner: true = yes, false = no (default true).
  ↳ ReadyDelayMs 1500 Time setting for ready delay ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Debugging table Structured diagnostics. Keep Enabled=true while testing, then switch it off in production.
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ Level "info" trace | debug | info | warning | error
  ↳ StartupDetails false Switch for startup details: true = on, false = off (default false).
  ↳ PrintFramework true Switch for print framework: true = on, false = off (default true).
  ↳ PrintDatabase true Switch for print database: true = on, false = off (default true).
  ↳ PrintInventory false Switch for print inventory: true = on, false = off (default false).
  ↳ PrintRequests false Switch for print requests: true = on, false = off (default false).
  ↳ PrintResponses false Switch for print responses: true = on, false = off (default false).
  ↳ PrintSecurity false Switch for print security: true = on, false = off (default false).
  ↳ PrintPlayerAccess false Switch for print player access: true = on, false = off (default false).
  ↳ PrintNui false Switch for print nui: true = on, false = off (default false).
  ↳ PrintEntities false Switch for print entities: true = on, false = off (default false).
  ↳ PrintHospitals false Switch for print hospitals: true = on, false = off (default false).
  ↳ PrintShops false Switch for print shops: true = on, false = off (default false).
  ↳ PrintJobs false Switch for print jobs: true = on, false = off (default false).
  ↳ PrintCoordinates false Switch for print coordinates: true = on, false = off (default false).
  ↳ RequestPayloads false enable only when you need full request payloads
  ↳ Command "jrsdoctorsdebug" Setting for command.
  ↳ StatusCommand "jrsdoctorsstatus" Setting for status command.
  ↳ ClientCommand "jrsdoctorsclientdebug" Setting for client command.
  ↳ Categories table Table of categories entries. Add, remove or edit entries following the examples in the file.
Access table Table of access entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ AcePermission "jrs_doctors.full_access" Who is allowed: jobs, groups or permissions for ace permission.
  ↳ FullAccessGrade 99 Who is allowed: jobs, groups or permissions for full access grade.
  ↳ FullAccessIdentifiers table Table of full access identifiers entries. Add, remove or edit entries following the examples in the file.
  ↳ BypassJobAndGrade true Full-access identifiers are treated as doctors and managers everywhere in this resource.
  ↳ BypassCityJobRestriction true Switch for bypass city job restriction: true = on, false = off (default true).
  ↳ BypassDutyRestriction false Full access still bypasses job/grade/location checks, but medical actions require Go On Duty.
  ↳ BypassManagementGrade true Switch for bypass management grade: true = on, false = off (default true).
  ↳ BypassMenuLocation true Switch for bypass menu location: true = on, false = off (default true).
  ↳ BypassCabinetLocation true Switch for bypass cabinet location: true = on, false = off (default true).
  ↳ BypassPayments true The configured full-access Steam/Ace identifiers do not pay system-owned doctor charges (shops, cabinet, hospital, NPC doctor, assistant). Player-to-player medical invoices are deliberately excluded.
  ↳ PaymentBypassBlockedReasons table Table of payment bypass blocked reasons entries. Add, remove or edit entries following the examples in the file.
  ↳ BypassRequiredItems true This bypass never applies to consumable treatment items while Config.TreatmentItemConsumption.RequireRealInventory is enabled.
  ↳ BypassInventoryCapacity false item receipt still respects real inventory capacity
config/deathscreen_tests.lua - 123 options#

DEATH SCREEN, TEST SYSTEM AND COMPATIBILITY

Setting Default What it does
Billing table Table of billing entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ PayDoctorPercentage 100 Money value for pay doctor percentage. Rewards go through the economy multiplier of jrs_core.
  ↳ Currency "cash" Setting for currency.
  ↳ InvoiceTimeoutSeconds 30 Time setting for invoice timeout seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ TargetByServerId true Billing UI accepts a typed player Server ID.
  ↳ RequireNearbyTarget false Set true if invoices should only work on nearby players.
Animations table Table of animations entries. Add, remove or edit entries following the examples in the file.
  ↳ Revive table Table of revive entries. Add, remove or edit entries following the examples in the file.
  ↳ Treat table Table of treat entries. Add, remove or edit entries following the examples in the file.
  ↳ SelfBandage table Table of self bandage entries. Add, remove or edit entries following the examples in the file.
  ↳ DoctorScenario "WORLD_HUMAN_WRITE_NOTEBOOK" Animation settings for doctor scenario.
TreatmentVisuals table Network-visible treatment presentation. Only the doctor receives the progress/UI; nearby players see the natural doctor/patient motion with no medical data exposed.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ ObserverDistance 32.0 Distance in game units that applies to observer distance.
  ↳ FreezeConsciousPatient true Switch for freeze conscious patient: true = on, false = off (default true).
  ↳ FaceDoctorBeforeTreatment true Switch for face doctor before treatment: true = on, false = off (default true).
  ↳ FaceDurationMs 550 Time setting for face duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ SettleMs 220 Number for settle ms (default 220).
  ↳ AutoStepDoctorBesidePatient true Automatically handles step doctor beside patient: true = yes, false = no (default true).
  ↳ DoctorSideOffset 0.82 Number for doctor side offset (default 0.82).
  ↳ DoctorForwardOffset 0.04 Number for doctor forward offset (default 0.04).
  ↳ DoctorApproachDistance 1.55 Distance in game units that applies to doctor approach distance.
  ↳ DoctorApproachTolerance 0.42 Number for doctor approach tolerance (default 0.42).
  ↳ DoctorApproachTimeoutMs 1800 Time setting for doctor approach timeout ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ DoctorApproachSpeed 0.85 Number for doctor approach speed (default 0.85).
  ↳ KeepCriticalInjuredPose true Switch for keep critical injured pose: true = on, false = off (default true).
  ↳ HideObserverUi true Hides observer ui: true = yes, false = no (default true).
  ↳ NetworkNpcDoctor true Switch for network npc doctor: true = on, false = off (default true).
  ↳ NetworkHospitalDoctor true Switch for network hospital doctor: true = on, false = off (default true).
  ↳ PatientAnimation table Animation settings for patient animation.
  ↳ SkipPatientAnimation table These treatments keep their own native/downed/bed pose and do not force the conscious-patient idle above.
DeathScreen table Unified death-screen settings. This replaces the standalone second resource and uses the existing REDEMPIRE hospital, bed, treatment, dispatch, economy and security systems.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ DetectionConfirmMs 900 Number for detection confirm ms (default 900).
  ↳ DeathTimeSeconds 500 Number for death time seconds (default 500).
  ↳ HospitalButtonDelaySeconds 60 Time setting for hospital button delay seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AutoHospitalAtTimerEnd false Automatically handles hospital at timer end: true = yes, false = no (default false).
  ↳ DisableVoice true Turns off voice: true = yes, false = no (default true).
  ↳ DisableChat false Turns off chat: true = yes, false = no (default false).
  ↳ Compatibility table Optional custom chat resource integration. Leave empty for framework-neutral behavior.
  ↳ Hospital table Table of hospital entries. Add, remove or edit entries following the examples in the file.
  ↳ Emergency table Table of emergency entries. Add, remove or edit entries following the examples in the file.
  ↳ HeartRate table Rate or multiplier for heart rate.
  ↳ HeartbeatTiming table Table of heartbeat timing entries. Add, remove or edit entries following the examples in the file.
  ↳ Camera table Table of camera entries. Add, remove or edit entries following the examples in the file.
  ↳ UI table Table of ui entries. Add, remove or edit entries following the examples in the file.
  ↳ Text table Text shown to the player for text. Change it to translate or rebrand.
  ↳ DeathReasons table Table of death reasons entries. Add, remove or edit entries following the examples in the file.
  ↳ Security table Table of security entries. Add, remove or edit entries following the examples in the file.
TestSystem table Integrated test center. All buttons are rendered inside the existing medical NUI theme. Access is server-authoritative and is never granted from the browser payload.
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ Command "jrsdoctorstests" Setting for command.
  ↳ RequireDuty false the Steam allowlist has direct test access without going on duty
  ↳ CooldownMs 900 Time setting for cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AllowStateTests true Allows state tests: true = yes, false = no (default true).
  ↳ AllowDiseaseTests true Allows disease tests: true = yes, false = no (default true).
  ↳ AllowHospitalSequence true Allows hospital sequence: true = yes, false = no (default true).
  ↳ AllowDeathScreenTests true Allows death screen tests: true = yes, false = no (default true).
  ↳ AllowEntityTests true Allows entity tests: true = yes, false = no (default true).
  ↳ TestDurationMs 3500 Time setting for test duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AutoCleanupSeconds 45 Number for auto cleanup seconds (default 45).
  ↳ DoctorModel "cs_sddoctor_01" Game model or entity used for doctor model.
  ↳ PatientModel "u_m_m_valdoctor_01" Game model or entity used for patient model.
  ↳ BagModel "p_bag_leather_doctor" Game model or entity used for bag model.
  ↳ WagonModel "wagondoc01x" Game model or entity used for wagon model.
  ↳ MountModel "A_C_Horse_Arabian_White" Game model or entity used for mount model.
  ↳ DispatchPatientEnabled true Full dispatch simulation. The bot is networked, creates a real death call, displays the G acceptance card, routes the first doctor and can be treated through the normal patient assessment UI without consuming supplies.
  ↳ DispatchPatientName "Training Patient" Text shown to the player for dispatch patient name. Change it to translate or rebrand.
  ↳ DispatchPatientReason 'Training patient is unconsc... Setting for dispatch patient reason.
  ↳ DispatchPatientPersistentBlip true Switch for dispatch patient persistent blip: true = on, false = off (default true).
  ↳ DispatchPatientSpawnDistance 3.0 Distance in game units that applies to dispatch patient spawn distance.
  ↳ FullSuiteStepDelayMs 450 Time setting for full suite step delay ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
TestPatient table Interactive local patient used by the Steam-authorized test center. It reuses the real patient assessment UI but never consumes inventory items.
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ Command "jrstestpatient" Setting for command.
  ↳ RemoveCommand "jrsremovetestpatient" Setting for remove command.
  ↳ Name "Test Patient" Text shown to the player for name. Change it to translate or rebrand.
  ↳ DisplayId "TEST" Setting for display id.
  ↳ Model "u_m_m_valdoctor_01" Game model or entity used for model.
  ↳ SpawnDistance 2.25 Distance in game units that applies to spawn distance.
  ↳ InteractionDistance 3.0 Distance in game units that applies to interaction distance.
  ↳ InteractControl Config.Keys.Interact Key or control used for interact control. Controls are hash values from the game input list.
  ↳ PromptText "EXAMINE TEST PATIENT" Text shown to the player for prompt text. Change it to translate or rebrand.
  ↳ RequireDuty true Requires duty: true = yes, false = no (default true).
  ↳ MaximumHealth 200 Upper limit for maximum health.
  ↳ InjuredHealth 95 Number for injured health (default 95).
  ↳ UnconsciousHealth 10 Number for unconscious health (default 10).
  ↳ DurationMultiplier 0.45 Time setting for duration multiplier. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AutoCleanupSeconds 0 0 keeps the patient until cleanup, resource stop, or /jrsremovetestpatient.
Validation table Table of validation entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ PrintSummary true Switch for print summary: true = on, false = off (default true).
  ↳ FailOnDuplicateIds true Switch for fail on duplicate ids: true = on, false = off (default true).
  ↳ WarnOnZeroCoordinates true Switch for warn on zero coordinates: true = on, false = off (default true).
Compatibility table Table of compatibility entries. Add, remove or edit entries following the examples in the file.
  ↳ JRSReviveClientEvent "" optional; generic RedM revive works without this
  ↳ CustomReviveClientEvent "" Setting for custom revive client event.
  ↳ CustomHealClientEvent "" Setting for custom heal client event.
  ↳ CustomNotifyClientEvent "" Text shown to the player for custom notify client event. Change it to translate or rebrand.
  ↳ CustomSocietyDepositServerEvent "" Money value for custom society deposit server event. Rewards go through the economy multiplier of jrs_core.
  ↳ CustomSetJobServerEvent "" Who is allowed: jobs, groups or permissions for custom set job server event.
  ↳ UseOneSyncDistanceValidation true Turns one sync distance validation on or off (default true).
  ↳ ExternalMedicalBridge true Generic bridge for other resources. Native deaths are detected automatically. External scripts that use their own downed state can call the exports/events below without adding another framework dependency.
  ↳ ExternalDeathEvents table Table of external death events entries. Add, remove or edit entries following the examples in the file.
  ↳ ExternalReviveEvents table Table of external revive events entries. Add, remove or edit entries following the examples in the file.
  ↳ ExternalHealEvents table Table of external heal events entries. Add, remove or edit entries following the examples in the file.
RadialMenu table Integrated doctor transport radial menu. This replaces the separate jrs_radialmenu resource. Horse and wagon inventories intentionally remain on their nearby native prompts.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Command "jrsdoctorradial" Setting for command.
  ↳ Keybind 0x3C0A40F2 F6
  ↳ KeybindLabel "F6" Text shown to the player for keybind label. Change it to translate or rebrand.
  ↳ UseWhilstWalking false NUI owns input while open; player/camera controls stay locked.
  ↳ MedicalOnly true Switch for medical only: true = on, false = off (default true).
  ↳ AllowExternalOptions false Prevent other resources from adding non-medical entries.
  ↳ RequireDuty true The complete radial is restricted to on-duty doctors.
  ↳ Size 440 Number for size (default 440).
  ↳ CloseDelayMs 120 Time setting for close delay ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ HospitalLookupDistance 14.0 Distance in game units that applies to hospital lookup distance.
  ↳ DisableWorldTransportActions true Turns off world transport actions: true = yes, false = no (default true).
config/diseases.lua - 2 options#

General

Setting Default What it does
DiseaseSystem Config.DiseaseSystem or {} Setting for disease system.
ItemNames Config.ItemNames or {} Register the restricted test item in the shared medical item registry without exposing it through public or doctor shops.
config/downed_crawl.lua - 9 options#

General

Setting Default What it does
DownedCrawl table Table of downed crawl entries. Add, remove or edit entries following the examples in the file.
  ↳ Commands table Table of commands entries. Add, remove or edit entries following the examples in the file.
  ↳ AutoDowned false Automatically handles downed: true = yes, false = no (default false).
  ↳ HealthThreshold 50 Number for health threshold (default 50).
  ↳ MinimumHealth 50 Minimum or level requirement for minimum health.
  ↳ InvincibleWhileDowned true Switch for invincible while downed: true = on, false = off (default true).
  ↳ Debug false Debug output for debug: true = yes, false = no (default false).
  ↳ Animation table Animation settings for animation.
  ↳ Controls table Table of controls entries. Add, remove or edit entries following the examples in the file.
config/hospitals.lua - 10 options#

General

Setting Default What it does
Doctors table Table of doctors entries. Add, remove or edit entries following the examples in the file.
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.
  ↳ 6 table Table of 6 entries. Add, remove or edit entries following the examples in the file.
  ↳ 7 table Table of 7 entries. Add, remove or edit entries following the examples in the file.
  ↳ 8 table Table of 8 entries. Add, remove or edit entries following the examples in the file.
  ↳ 9 table Table of 9 entries. Add, remove or edit entries following the examples in the file.
Notes from the README#
text
## REDEMPIRE Inventory legacy item migration
Older `jrs_doctors` SQL used the `items.limit` column as a stack limit (for example `birdalert = 10`). The current `jrs_inventory` uses the same column as **wei
This build automatically normalizes all REDEMPIRE Doctors item definitions. If the console prints that legacy definitions were repaired, run `restart jrs_invent
# REDEMPIRE Doctors 4.4.5-jrs
`jrs_doctors` is the REDEMPIRE-only medical/doctor system for RedM. The runtime is connected directly to `jrs_core` and `jrs_inventory`; there is no framework a
## Requirements
- `oxmysql`
- `jrs_core`
- `jrs_inventory`
Recommended start order:
'''cfg
ensure oxmysql
ensure jrs_core
ensure jrs_inventory
ensure jrs_doctors
'''
## Installation
1. Keep the resource folder name exactly `jrs_doctors`.
2. Import `sql/jrs_doctors.sql` into the server database.
3. Copy the PNG files from `items/` into `jrs_inventory/html/img/items/` when your inventory build loads item images from that folder.
4. Configure jobs, hospitals, payments, access, diseases, storage and doctor features under `config/`.
5. Start the resource after `jrs_core` and `jrs_inventory`.
The main SQL file creates the REDEMPIRE Doctors tables and registers the medical inventory items using the REDEMPIRE inventory item schema. A copy of only the i
## REDEMPIRE Core integration
Server-side integration is implemented in `server/jrs_bridge.lua` and uses:
'''lua
local REDEMPIRE = exports.jrs_core:getCoreApi()
local character = REDEMPIRE.getCharacter(source)
'''
The script uses REDEMPIRE character data for:
- character identifier and character name
- doctor job and grade
- cash, gold and role currency
- job changes
- server-authoritative payments
- access checks and medical actions
Currency mapping is configured in `config/core.lua`:
'''lua
Config.REDEMPIRE.Currency = {
    cash = 0,
    gold = 1,
    rol = 2
}
'''
Character-ready integration uses the REDEMPIRE character-ready exports/events. This allows the resource to recover correctly when it is restarted while players 

Paid (server only)   jrs_farming

JRS Farming - server-authoritative, hardened, strictly separated from jrs_herbs

Resource jrs_farming
Folder [JOBS]
Version 2.8.17
Author jrs team
Depends on jrs_core, jrs_housing, jrs_inventory, jrs_police, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 18,559 Lua lines

Commands

  • /farmadmin
  • /farmzone

Exports

GetFarmingPlantIdFromEntity, IsFarmingPlantEntity, IsFarmingPlantNearCoords

Database tables

jrs_farming, jrs_farming_logs, jrs_farming_stats, jrs_farming_wagons, jrs_farming_zones, statements

configs/config.lua - 109 options#

REDEMPIRE Farming - CONFIG SECTION 1/4 : GENERAL / GAMEPLAY

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
Keys table to render. Keys deliberately NOT used here: 'E' (0xCEFD9220) is the mount control and is already taken by seven other resources, and 'L' (0x80F28E95) is INPUT_OPEN_WHEEL_MENU and is claimed by jrs_train.
  ↳ R 0xE30CD707, ['G'] = 0x760A9C... Setting for r.
Security table Server-side anti-exploit and validation rules. Keep the two fallback options false on a normal OneSync RedM server so distance checks never trust client coordinates.
  ↳ AllowMissingServerEntityCoords false Allows missing server entity coords: true = yes, false = no (default false).
  ↳ AllowClientPlacementFallback false Allows client placement fallback: true = yes, false = no (default false).
  ↳ PlacementDistance 10.0 Distance in game units that applies to placement distance.
  ↳ MinimumActionFraction 0.90 Minimum or level requirement for minimum action fraction.
  ↳ CallbackRateLimitMs 75 Upper limit for callback rate limit ms.
  ↳ ActionRateLimitMs 100 Upper limit for action rate limit ms.
  ↳ PlacementRateLimitMs 1200 Upper limit for placement rate limit ms.
  ↳ PlayerDataRateLimitMs 1000 Upper limit for player data rate limit ms.
  ↳ WagonRateLimitMs 100 Upper limit for wagon rate limit ms.
  ↳ PumpRateLimitMs 500 Upper limit for pump rate limit ms.
  ↳ SyncRateLimitMs 1000 Upper limit for sync rate limit ms.
  ↳ MaxCallbackQuantity 100 Upper limit for max callback quantity.
RestartHours table Properly saving data before server restarts (Suggested 2-3 minutes before restart).
SavingDurationDelay 5 The time in minutes (30 as default).
ObjectRenderDistance 50.0 The rendering distance for loading placed plants & seeds.
ActionDistance 1.5 Distance in game units that applies to action distance.
PlantActionsMenu table Enabled=false: all plant actions (water, fertilize, rake, collect, destroy) are done with native on-screen prompts, and the right-click panel is a pure info card. Enabled=true would instead show clickable action buttons inside the
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ MouseFocus true Switch for mouse focus: true = on, false = off (default true).
  ↳ AllowPlayerMovement true Keep movement/game controls active while the mouse is visible.
  ↳ CloseDistance 1.85 Close the panel after moving away from the plant.
  ↳ HideNativePrompts false Hides native prompts: true = yes, false = no (default false).
DistanceBetweenPlants 2.5 What is the required distance for placing a seed - plant when other plants and seeds are near to this location?
PlantingRules table Placement rules for the owner's farming configuration. means normal world planting is allowed while the configured zones remain available.
  ↳ OnlyZones false Switch for only zones: true = on, false = off (default false).
  ↳ BlacklistPlants table Table of blacklist plants entries. Add, remove or edit entries following the examples in the file.
  ↳ ExclusiveSeeds table Used only when Leave empty to allow every configured seed inside the zones.
  ↳ Zones table Table of zones entries. Add, remove or edit entries following the examples in the file.

Until at least one zone exists and claims weed_seed, marijuana

Setting Default What it does
MaximumOwnedPlants table Upper limit for maximum owned plants.
  ↳ Default 4 Without having any of the required jobs from below.
  ↳ Jobs table Extra plants placement when having any of the required jobs below.
LandOwnershipIntegration table Property boundaries are authoritative. Planting pauses while housing is unavailable.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ FailClosed true Switch for fail closed: true = on, false = off (default true).
  ↳ ResourceName "jrs_housing" Text shown to the player for resource name. Change it to translate or rebrand.
  ↳ MaximumPlantsBonus 20 Money value for maximum plants bonus. Rewards go through the economy multiplier of jrs_core.
  ↳ JobMaximumPlantsBonus table Money value for job maximum plants bonus. Rewards go through the economy multiplier of jrs_core.
  ↳ PreventPlantingOnOtherOwnedLands true Switch for prevent planting on other owned lands: true = on, false = off (default true).
  ↳ OtherLandPlantingMessage 'Farming: this land is priva... Text shown to the player for other land planting message. Change it to translate or rebrand.
  ↳ ShowOwnedLandStatusInMenu true Shows owned land status in menu: true = yes, false = no (default true).
  ↳ OwnedLandStatusTitle "PRIVATE LAND" Text shown to the player for owned land status title. Change it to translate or rebrand.
  ↳ OwnedLandStatusLabel "YOU ARE INSIDE YOUR PROPERTY" Text shown to the player for owned land status label. Change it to translate or rebrand.
  ↳ HarvestMultiplier 1.25 Rate or multiplier for harvest multiplier.
  ↳ JobHarvestMultiplier table Who is allowed: jobs, groups or permissions for job harvest multiplier.
  ↳ BoundaryPadding 0.10 Number for boundary padding (default 0.10).
  ↳ Debug false Debug output for debug: true = yes, false = no (default false).
OthersInteraction true Set to false if you don't want the strangers to interact on owned seeds - plants.
CropCare table Table of crop care entries. Add, remove or edit entries following the examples in the file.
  ↳ Weeds table Table of weeds entries. Add, remove or edit entries following the examples in the file.
  ↳ HealthDecay table Prevent a long offline catch-up or stacked hazards from killing a crop in one calculation. At 20/hour, complete neglect takes roughly five hours after health damage begins to kill a crop.
  ↳ HarvestQuality table Table of harvest quality entries. Add, remove or edit entries following the examples in the file.
  ↳ DryGrowing table Table of dry growing entries. Add, remove or edit entries following the examples in the file.
LockPlantsToPlanter true false preserves the current shared-care behavior; true restricts every maintenance/harvest/remove action to the character who planted the crop.
IllegalCropDetection table Table of illegal crop detection entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Jobs table Who is allowed: jobs, groups or permissions for jobs.
  ↳ Plants table Table of plants entries. Add, remove or edit entries following the examples in the file.
  ↳ Distance 50.0 Distance in game units that applies to distance.
  ↳ CheckIntervalMs 3000 Time setting for check interval ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ NotificationCooldownMs 30000 Time setting for notification cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ BlipDurationMs 30000 Time setting for blip duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
DeletePlantedSeedsNotComplete true Delete on @Config.RestartHours the plants (seeds) that have been placed but never actually progressed?
DisablePlayerDroppedSaving false Save a connected character's cached plant data again on playerDropped.
DisplayBlipOwnedPlants true Set to false if you don't want any blips to be displayed on owned plant locations.
DisplayBlipSprite -675651933 Map blip or icon settings for display blip sprite.
Towns table Prevent all players from planting seeds - plants on the specified towns below.
TownCenters table Authoritative city boundaries (used on both client and server)
SafezoneIntegration table Table of safezone integration entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ ResourceName "jrs_safezone" Text shown to the player for resource name. Change it to translate or rebrand.
WeatherSync table The "weathersync" resource is installed on this server ([ui]/weathersync, started before jrs_farming) and exposes exports.weathersync:getWeather(), which matches this integration exactly, so rain now tops up plant water.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ ResourceName "weathersync" Text shown to the player for resource name. Change it to translate or rebrand.
  ↳ UpdateTimer 1 Number for update timer (default 1).
  ↳ RefillPlantWaterSource true Switch for refill plant water source: true = on, false = off (default true).
  ↳ RainWaterValue 1000 Number for rain water value (default 1000).
  ↳ DamagePlantFertilizerValue 0 Number for damage plant fertilizer value (default 0).
UpdateTimer 5 Time in minutes for any plant updates (5 Minutes by default).
NeglectDeathSeconds 10 * 60 fertilizing, working the soil or removing weeds kills and removes the crop. Every successful care action resets this timer. Gradual health decay remains active too, so poor care is visible and recoverable before the final deadline
WellCaredGrowthBonusPercent 100 has satisfied its one-time fertilizer requirement (server_main.lua's AdvancePlantGrowth) - a well-cared-for plant grows noticeably faster than a neglected one, on top of any zone GrowthRate multiplier.
FertilePlotSoil table Crops planted on a jrs_housing fertile plot count as fertilized from the start, but only get these smaller bonuses. Applying all three fertilizer types by hand upgrades the crop to the full bonuses above.
  ↳ GrowthBonusPercent 25 instead of WellCaredGrowthBonusPercent (2026-09-24: 50 -> 25, realistic)
  ↳ HarvestBonus 0.05 instead of CropCare.HarvestQuality.FertilizedBonus (2026-09-24: 0.07 -> 0.05)
Temperature table temperature at the plant's own coords, sampled client-side every UpdateTimer minutes) - see configs/plants.lua's Temperature block on every plant and server_main.lua's AdvancePlantGrowth for the actual check.

PlaceObjectOnGroundProperly already seats a model on the terrain; this is

Setting Default What it does
PlantMaxRootSink 0.08 sink depths - subtracting them raw buried 54 of the 58 crops up to a metre and a quarter underground, which is why planted crops looked like they never appeared at all. Raise this a little if crops still look like they float.
PlantZone table Table of plant zone entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ DrawDistance 8.0 Distance in game units that applies to draw distance.
  ↳ Radius 1.15 Distance in game units that applies to radius.
  ↳ Segments 56 Number for segments (default 56).
  ↳ LineWidth 4 Number for line width (default 4).
  ↳ ZOffset 0.12 Number for z offset (default 0.12).
  ↳ CenterCrossSize 0.16 Number for center cross size (default 0.16).
  ↳ Color table Table of color entries. Add, remove or edit entries following the examples in the file.
  ↳ ShadowColor table Table of shadow color entries. Add, remove or edit entries following the examples in the file.
DirectPlanting table When a seed is used, it is planted automatically in front of the player.
  ↳ ForwardDistance 1.35 Distance in game units that applies to forward distance.
  ↳ GroundProbeHeight 5.0 Number for ground probe height (default 5.0).
  ↳ GroundProbeDepth 15.0 Number for ground probe depth (default 15.0).

Seamlessly connected to jrs_core character / job leveling.

Setting Default What it does
Leveling table Table of leveling entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ MaxLevel 100 Upper limit for max level.
  ↳ BaseHarvestXP 40 Base XP granted to the character upon a successful harvest (added directly to jrs_core)
  ↳ QualityXpMultiplier 0.50 Extra XP bonus based on crop quality (health percentage: e.g. 100% quality = +50% XP)
  ↳ Perks table Progressive Perks & High-Level Rewards across Levels 1 to 100:

Paid (server only)   jrs_fight

jrs core Fight Arena - training bouts, player duels and rankings for jrs_core

Resource jrs_fight
Folder [JOBS]
Version 2.5.0
Author jrs team
Depends on jrs_core, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 2,834 Lua lines

Commands

  • /fightdiag

Database tables

IF, jrs_fight_rankings

config/config.lua - 136 options#

01. KEYS, PRICES AND DISTANCES

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
TrainingKey 0x760A9C6F (G) start a training bout
ScoreboardKey 0x4CC0E2FE (B) open the scoreboard
StartFightKey 0xDE794E3E (Q) challenge another player
TrainingPrice 1.50 Price (cash) charged when a training bout starts.
InteractDistance 2.5 Distance from the organizer at which the prompts become active.
PromptCooldownMs 750 Ignore further prompt presses for this long after one fires. A completed prompt reports true on several consecutive frames, so without this a single press would trigger the action (and its notification) repeatedly.
TooFarAway 150.0 Leaving this radius aborts a training bout and despawns the arena peds.
ResetDuel true Heal both fighters back to full once a duel ends instead of leaving the loser bleeding out. This was ResetDuel in the original config.
LifeLose 30 A fighter who drops to this health (or below) loses the duel.

02. DUEL FLOW TIMINGS

Setting Default What it does
RequestTimeoutSeconds 30 How long a challenge stays pending before it expires.
ZoneTimeoutSeconds 120 After a challenge is accepted both fighters walk to the fight zone. The duel is cancelled if they do not both arrive within this window.
FightZoneRadius 12.0 How close a fighter must be to fightzonecoords to count as "in the zone".
DuelLeaveRadius 35.0 Leaving this radius mid-duel forfeits the fight.
CountdownSeconds 9 Countdown length. The original counted down from 9.
CountdownSwapFirst 3 The countdown headline changes after this many ticks have elapsed.
CountdownSwapSecond 6 Number for countdown swap second (default 6).
MinimumDuelSeconds 3 A duel cannot be resolved before this many seconds of real fighting. Stops a fighter from instantly forfeiting to farm a result.
MaxDuelSeconds 600 Hard cap on a single round. If neither fighter ever reports a result (a crashed client, a dead NUI) the duel is cancelled and both are freed instead of staying marked busy forever.
ResultScreenSeconds 6 How long the win/lose result banner stays on screen.

03. TRAINING TUTORIAL

Setting Default What it does
Tutorial table Table of tutorial entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Show the numbered lessons while a training bout is running.
  ↳ IntervalSeconds 14 Seconds between two lessons.
  ↳ Count 8 Lessons 1..8 play during the bout, lesson 9 plays when it is finished.
TrainingMinimumCompletionSeconds 20 A training completion is reported by the client because its sparring peds live there. Do not grant XP to a completion reported immediately after the server authorises the session (for example after a client/UI failure).
TrainingFallbackModel "cs_welshfighter" Used when a training opponent's model is invalid or fails to stream, so a bad model name can never leave the arena empty.

The small on-screen panel shown while training or duelling.

Setting Default What it does
HUD table Table of hud entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ ShowTraining true Show the opponent counter during training.
  ↳ ShowDuel true Show both health bars and the fight clock during a duel.
  ↳ HealthSyncMs 400 How often (ms) the client pushes its own health to the server so the opponent's HUD can draw it. Lower is smoother and chattier.

The "Start Fight" prompt opens a browser of players you can challenge

Setting Default What it does
Browser table Table of browser entries. Add, remove or edit entries following the examples in the file.
  ↳ ListPlayers true List other players rather than only offering the manual id field.
  ↳ NearbyOnly false Only list players within this many metres of the arena organizer. Set to false to list every eligible player on the server.
  ↳ NearbyRadius 150.0 Distance in game units that applies to nearby radius.
  ↳ ShowRecords true Show each listed player's win/loss record next to their name.
  ↳ MaxResults 64 Hardest cap on how many players are sent to the NUI.

npcmodel / blip: set to false to disable that part of the arena.

Setting Default What it does
FightArena table Table of fight arena entries. Add, remove or edit entries following the examples in the file.

07. XP (jrs_core per-job leveling)

Setting Default What it does
XP table Table of xp entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Job "fight" Per-job level key in jrs_core. Keep this stable: it is the primary key in the jrs_job_levels table, so renaming it orphans existing progress.
  ↳ Multiplier 1.0 Scales every reward below. Raise it for a boosted weekend, drop it to slow this job down relative to the others.
  ↳ Default 0 Used when a reward name is awarded that is not listed here.
  ↳ Rewards table Small XP for winning only. Losing gives nothing (it was farmable: two friends taking turns to "lose" both earned XP).
  ↳ DailyCap 100 Most fight XP one character can earn per real day (all rewards above).

07b. ANTI-EXPLOIT (server-side; nothing here is trusted from the client)

Setting Default What it does
Security table Table of security entries. Add, remove or edit entries following the examples in the file.
  ↳ OrganizerRadius 8.0 Server-checked distance from the organizer to start training / send a challenge (a bit above InteractDistance for sync lag).
  ↳ ZoneSlack 6.0 Extra slack on top of FightZoneRadius when the server checks a fighter who claims to be in the fight zone.
  ↳ MinRankedDuelSeconds 20 A duel must last this long to be ranked or give XP. Shorter results (instant forfeits between friends) still end the duel but count nothing.
  ↳ PairCooldownSeconds 900 The same two characters only get ranked / rewarded once per this window.
  ↳ TrainingXpCooldownSeconds 600 Training XP only once per this window per character.
  ↳ MaxTrainingSeconds 900 A training session the client never closes is dropped after this.
  ↳ RefundWindowSeconds 30 Refunds are only accepted this soon after the server authorised the bout (the spawn phase); a later "refund" is ignored.
  ↳ Throttle table Per-player event throttles in milliseconds.

08. DATABASE

Setting Default What it does
AutoCreateTable true Automatically handles create table: true = yes, false = no (default true).
DatabaseTable "jrs_fight_rankings" Setting for database table.
ScoreboardLimit 50 Upper limit for scoreboard limit.

09. TEXTS

Setting Default What it does
Text table Text shown to the player for text. Change it to translate or rebrand.
  ↳ Title "Fight Club" Text shown to the player for title. Change it to translate or rebrand.
  ↳ Training "Training" Setting for training.
  ↳ FightZone "Fight Zone" Setting for fight zone.
  ↳ Scoreboard "Scoreboard" Setting for scoreboard.
  ↳ StartFight "Start Fight" Setting for start fight.
  ↳ ChallengeHeader "Challenge a Player" Challenge browser
  ↳ ChallengeRow 'Pick an opponent from the l... Setting for challenge row.
  ↳ ChallengeSearch "Search by name or id..." Setting for challenge search.
  ↳ ChallengeManual "Player ID" Setting for challenge manual.
  ↳ ChallengeSubmit "Send Challenge" Setting for challenge submit.
  ↳ ChallengeCancel "Cancel" Setting for challenge cancel.
  ↳ ChallengeTabList "Available Players" Setting for challenge tab list.
  ↳ ChallengeTabManual "Manual Entry" Setting for challenge tab manual.
  ↳ ChallengeEmpty 'No opponents available righ... Setting for challenge empty.
  ↳ ChallengeRecord "Record" Setting for challenge record.
  ↳ WrongInputs "Invalid input!" Setting for wrong inputs.
  ↳ ChallengeIncoming "FIGHT REQUEST" Incoming challenge card
  ↳ ChallengeArenaLine 'Someone wants to settle thi... Setting for challenge arena line.
  ↳ ChallengeSuffix " has challenged you to a fight!" Setting for challenge suffix.
  ↳ Accept "Accept" Setting for accept.
  ↳ Decline "Decline" Setting for decline.
  ↳ TrainingStarted 'Training has started! Beat ... Training
  ↳ TooFar 'You went too far from the t... Setting for too far.
  ↳ TrainingLost 'You were knocked out! Train... Setting for training lost.
  ↳ TooFarOrganizer 'Stand next to the fight org... Setting for too far organizer.
  ↳ UnrankedResult 'Friendly fight - not ranked... Setting for unranked result.
  ↳ FinishedTraining 'You finished the training s... Setting for finished training.
  ↳ AlreadySpawned 'You already started a train... Setting for already spawned.
  ↳ NoMoney 'You do not have enough mone... Money value for no money. Rewards go through the economy multiplier of jrs_core.
  ↳ TrainingUnavailable 'No sparring partner could b... Setting for training unavailable.
  ↳ GoToFightZone 'Head to the centre of the f... Duel
  ↳ RequestSent 'Challenge sent, waiting for... Setting for request sent.
  ↳ RequestExpired "The challenge request expired." Setting for request expired.
  ↳ NotOnline "That player is not online!" Setting for not online.
  ↳ RivalInDuel 'That player is busy with a ... Setting for rival in duel.
  ↳ YouInDuel 'You are already in a fight,... Setting for you in duel.
  ↳ DuelDeclined1 "Your challenge was declined!" Setting for duel declined1.
  ↳ DuelDeclined2 "You declined that fight!" Setting for duel declined2.
  ↳ DuelCancelled "The fight was cancelled." Setting for duel cancelled.
  ↳ PrepareToFight "Prepare to fight!" Setting for prepare to fight.
  ↳ BeReady "Be ready" Setting for be ready.
  ↳ Fight "FIGHT" Setting for fight.
  ↳ PrepareLine 'The best fighter wins. Are ... Setting for prepare line.
  ↳ YouWin 'You won the fight! You are ... Setting for you win.
  ↳ YouLost 'You lost this one, but do n... Setting for you lost.
  ↳ VersusLabel "VS" Text shown to the player for versus label. Change it to translate or rebrand.
  ↳ ResultWin "VICTORY" Result banner
  ↳ ResultLose "DEFEAT" Setting for result lose.
  ↳ ResultStreak "Win Streak" Setting for result streak.
  ↳ ResultRecord "Record" Setting for result record.
  ↳ HudTraining "TRAINING" Live HUD
  ↳ HudOpponents "Opponents left" Setting for hud opponents.
  ↳ HudDuel "DUEL" Setting for hud duel.
  ↳ HudYou "You" Setting for hud you.
  ↳ ScoreSubtitle 'Standings of every contende... Scoreboard
  ↳ ScoreChampion "STRONGEST FIGHTER" Setting for score champion.
  ↳ ScoreChampionNone 'No champion yet - the title... Setting for score champion none.
  ↳ ScoreContenders "Contenders" Setting for score contenders.
  ↳ ScoreBest "Best streak" Setting for score best.
  ↳ ScoreRank "#" Setting for score rank.
  ↳ ScoreFighter "Fighter" Setting for score fighter.
  ↳ ScoreWins "Wins" Setting for score wins.
  ↳ ScoreLosses "Losses" Setting for score losses.
  ↳ ScoreRatio "Ratio" Setting for score ratio.
  ↳ ScoreStreak "Streak" Setting for score streak.
  ↳ ScoreYou "You" Setting for score you.
  ↳ ScoreSearch "Search for a fighter..." Setting for score search.
  ↳ ScoreUnranked 'You have not recorded a fig... Setting for score unranked.
  ↳ VictoryLabel " - Wins: " Text shown to the player for victory label. Change it to translate or rebrand.
  ↳ DefeatLabel " - Losses: " Text shown to the player for defeat label. Change it to translate or rebrand.
  ↳ NoRankings "No results recorded yet." Setting for no rankings.
  ↳ TutorialTitle table Training tutorial
  ↳ Tutorial table Table of tutorial entries. Add, remove or edit entries following the examples in the file.

(Historical note: the old jrs_notify export ended with Citizen.Wait(duration)

Setting Default What it does
Notifications table Table of notifications entries. Add, remove or edit entries following the examples in the file.
  ↳ UseNUI false Draw notifications as toasts in the fight UI instead of the unified jrs_notify toast. Leave false so fight messages match the rest of the server; jrs_notify is used whenever it is running either way.
  ↳ Fallback "jrs_notify" Fallback path when jrs_notify is stopped and UseNUI is false: 'jrs_notify' or 'core' (the jrs_core right tip).
  ↳ Duration 6000 Default lifetimes in milliseconds.
  ↳ LessonDuration 10000 Time setting for lesson duration. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Notes from the README#
text
# JRS Fight Arena
An open reimplementation of the SS-FightArena feature set, rebuilt on `jrs_core`
with no escrow, no jQuery/materialize and no external menu or input resource.
Every string is English and lives in `config/config.lua`.
## Features
- Multiple configurable arenas, each with an organizer NPC and a fight zone.
- Native prompts on the organizer: **Training (G)**, **Start Fight (Q)**,
  **Scoreboard (B)**.
- Paid training bouts against configurable opponents (model, random health
  range, combat movement) with the nine numbered fighting lessons.
- **Challenge browser**: pick an opponent from a searchable list of eligible
  players showing their win/loss record, or enter a server id by hand.
- Incoming challenge card with the challenger's initials, record and a live
  request-timeout bar.
- Both fighters walk to the fight zone; the countdown only starts once both are
  inside it, and shows a versus header plus a draining progress ring.
- **Live HUD**: opponents remaining during training; both fighters' health bars
  and a fight clock during a duel.
- **Result banner** with the fresh record and win streak.
- Duels resolve server-side on the health floor, on death, or on leaving the
  arena. Quitting mid-fight counts as a loss.
- Persistent rankings with win streaks and a full scoreboard: medal ranks, win
  ratio, streak column, search box and your own row pinned and highlighted.
- Unified notifications through `jrs_core`, so arena messages use the same
  renderer and language styling as the rest of the server.
- Per-job XP through `jrs_core` (job key `fight`).
- Owner-only administration through the shared `jrs_scriptadmin` panel, the same
  way `jrs_farming` does it.
## Dependencies
'''cfg
ensure oxmysql
ensure jrs_core
ensure jrs_scriptadmin   # optional; required only for the owner admin panel
ensure jrs_fight
'''
`jrs_fight` lives in `[JOBS]`, which `server.cfg` already starts with
`ensure [JOBS]` after `jrs_core`, `oxmysql` and the shared JRS resources.
## Flow
| Step | Where | What happens |
| --- | --- | --- |
| Training | organizer prompt (G) | `Config.TrainingPrice` is charged, the arena's `training` peds spawn, the HUD counts opponents, lessons 1..8 play, lesson 9 
| Challenge | organizer prompt (Q) | The challenge browser lists eligible players with their records; pick one or type an id. |
| Walk in | after accept | Both fighters are told to go to the fight zone and report when they arrive. |
| Countdown | both in zone | Versus header, draining ring, 9..1, both frozen, then `FIGHT`. |
| Duel | after the countdown | Both health bars are live in the HUD; health is relayed server-side. |

Free (included in JRS Core)   jrs_fishing

jrs core Fishing

Resource jrs_fishing
Folder [JOBS]
Version 1.5.4
Author jrs team
Depends on jrs_core, jrs_inventory
Interface Yes (NUI)
Languages ar, en
Code size 6,055 Lua lines

Commands

  • /-jrsFishingSkillHit
  • /fishboard
  • /fishdebug

Exports

OpenFishingBoard

Database tables

jrs_fishing_leaderboard

config/config.lua - 151 options#

General

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
Difficulty 1250 If you use -1 for testing the fish is very easy to catch --
ReelSpeed 0.0125 Number for reel speed (default 0.0125).
LegendaryCooldownMinutes 15 After landing a Legendary fish, that character cannot roll another Legendary for this many minutes (catches still roll Rare/Epic/Common). 0 = no cooldown.
FishingMechanics table Fishing behavior. Percent values are from 0 to 100.
  ↳ AttractionRadius 50.0 How far fish can detect the bait.
  ↳ HookDistance 1.6 Fish must be this close to bite.
  ↳ LureCooldownMs 1000 Delay between attraction tasks.
  ↳ BiteAttemptIntervalMs 750 Delay between bite rolls while a fish is close.
  ↳ BiteChance 45 Chance for a nearby interested fish to bite.
  ↳ AutoBiteDelayMs 4000 Maximum time waiting before a fish bites automatically.
  ↳ StruggleChance 40 Chance that the fish enters a struggle phase.
  ↳ StruggleDurationMinSec 3 Time setting for struggle duration min sec. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ StruggleDurationMaxSec 5 Time setting for struggle duration max sec. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ CalmDurationMinSec 6 Time setting for calm duration min sec. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ CalmDurationMaxSec 10 Time setting for calm duration max sec. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ FishPullForce 0.8 Number for fish pull force (default 0.8).
  ↳ MinimumPullForce 0.8 Minimum or level requirement for minimum pull force.
  ↳ LineBreakForce 1.4 Number for line break force (default 1.4).
  ↳ ForceStep 0.005 Number for force step (default 0.005).
  ↳ RequireMatchingBait true Only fish listed for the selected bait can bite.
FishingSkillGame table UI skill-check shown after a fish bites the hook.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ RequiredHits 3 Correct R / Click presses needed to land the fish.
  ↳ AllowedMisses 1 Number of allowed misses before losing the fish.
  ↳ ZoneWidth 18 Gold arc size as a percentage of the ring (18 = 65 degrees).
  ↳ TravelTimeMs 1450 Needle speed: one lap takes 1.25x this; lower is faster.
  ↳ TimeLimitMs 15000 Total time allowed for the skill-check.
  ↳ PullToPlayerSpeed 3.0 How quickly the successful fish moves toward the player.
  ↳ LandingDistance 4.0 Native landing begins at this line distance.
  ↳ AutoLandTimeoutMs 3500 Safety fallback if the fish cannot path to the player.
  ↳ DefaultKey "R" Used only when RegisterKeyMapping is supported.
  ↳ ControlHash 0xE30CD707 INPUT_RELOAD / keyboard R fallback for older RedM artifacts.
  ↳ KeyLabel "R" Key or control used for key label. Controls are hash values from the game input list.
  ↳ Title "Secure the Hook" Text shown to the player for title. Change it to translate or rebrand.
  ↳ Instruction "Press R when the needle is ... Setting for instruction.
FishingWaitUI table Circular indicator displayed while waiting for a fish to bite.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Label "Waiting for a fish..." Text shown to the player for label. Change it to translate or rebrand.
FishCatchUI table Table of fish catch ui entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Title "Fish Caught" Text shown to the player for title. Change it to translate or rebrand.
  ↳ PromptTitle "FISH CAUGHT" Text shown to the player for prompt title. Change it to translate or rebrand.
  ↳ KeepLabel "Keep Fish" Text shown to the player for keep label. Change it to translate or rebrand.
  ↳ ThrowLabel "Throw Fish" Text shown to the player for throw label. Change it to translate or rebrand.
  ↳ DefaultImage "assets/fish_bw.png" Setting for default image.
  ↳ Images table Keys are the signed 32-bit GetHashKey() of the uppercase model name (e.g. GetHashKey("A_C_FISHBLUEGIL_01_MS")). Real per-species catch photos (from the imported fishing dataset's art) live in html/assets/fish/.
FishingJob table Leave Enabled = false to allow everyone to fish. Set Enabled = true when fishing should require one of the jobs below.
  ↳ Enabled true Enabled: requires the fishing job (fisher / fisherman)
  ↳ AllowedJobs table Internal job names stored by jrs_core or jrs_multijob. Add more entries if needed.
  ↳ MinimumGrade 0 Minimum job grade/rank required. Set 0 to allow every grade.
  ↳ DeniedMessage "لا يمكنك الصيد بدون وظيفة ا... Message shown when a player without the required job tries to fish or use bait.
  ↳ ValidateOnBaitUse true Extra server-side protection when consuming bait and receiving a fish.
  ↳ ValidateOnBaitConsume true Switch for validate on bait consume: true = on, false = off (default true).
  ↳ ValidateOnFishReward true Switch for validate on fish reward: true = on, false = off (default true).
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ Url "" Setting for url.
  ↳ Color 10038562 Number for color (default 10038562).
FishingXP table Uses jrs_core's official server API: REDEMPIRE.addxp(source, amount). XP is awarded only after a successful catch is added to inventory.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Default 15 Used only when a fish model is missing from Rewards.
  ↳ NotifyPlayer true Switch for notify player: true = on, false = off (default true).
  ↳ Notification "+%s Fishing XP" Text shown to the player for notification. Change it to translate or rebrand.
  ↳ Rewards table Table of rewards entries. Add, remove or edit entries following the examples in the file.
FishingCash table Money value for fishing cash. Rewards go through the economy multiplier of jrs_core.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Default 2.50 Number for default (default 2.50).
  ↳ Rewards table Table of rewards entries. Add, remove or edit entries following the examples in the file.
Baits table Baits are also the names of the used items when holding a fishing rod.
ReusableBaits table Reusable baits (artificial lures & spinners). Items listed here are NOT consumed/deleted from the player's inventory on cast; the server only verifies that the player possesses at least 1 in their inventory.
  ↳ p_finishedragonfly01x true Dragonfly Lure
  ↳ p_FinisdFishlure01x true Fish Lure
  ↳ p_finishdcrawd01x true Crawfish Lure
  ↳ p_finishedragonflylegendary01x true Legendary Dragonfly Lure
  ↳ p_finisdfishlurelegendary01x true Legendary Fish Lure
  ↳ p_finishdcrawdlegendary01x true Legendary Crawfish Lure
  ↳ p_lgoc_spinner_v4 true Special Spinner
  ↳ p_lgoc_spinner_v6 true Legendary Special Spinner
BaitsPerFish table Table of baits per fish entries. Add, remove or edit entries following the examples in the file.
  ↳ p_baitBread01x table Table of p bait bread01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_baitCorn01x table Table of p bait corn01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_baitCheese01x table Table of p bait cheese01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_baitCricket01x table Table of p bait cricket01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_baitWorm01x table Table of p bait worm01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_crawdad01x table Table of p crawdad01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_finishedragonfly01x table Table of p finishedragonfly01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_FinisdFishlure01x table Table of p finisd fishlure01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_finishdcrawd01x table Table of p finishdcrawd01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_finishedragonflylegendary01x table Table of p finishedragonflylegendary01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_finisdfishlurelegendary01x table Table of p finisdfishlurelegendary01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_finishdcrawdlegendary01x table Table of p finishdcrawdlegendary01x entries. Add, remove or edit entries following the examples in the file.
  ↳ p_lgoc_spinner_v4 table Table of p lgoc spinner v4 entries. Add, remove or edit entries following the examples in the file.
  ↳ p_lgoc_spinner_v6 table Table of p lgoc spinner v6 entries. Add, remove or edit entries following the examples in the file.
FishData table Table of fish data entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHBLUEGIL_01_MS table Table of a c fishbluegil 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHBLUEGIL_01_SM table Table of a c fishbluegil 01 sm entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHBULLHEADCAT_01_MS table Table of a c fishbullheadcat 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHBULLHEADCAT_01_SM table Table of a c fishbullheadcat 01 sm entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHCHAINPICKEREL_01_MS table Table of a c fishchainpickerel 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHCHAINPICKEREL_01_SM table Table of a c fishchainpickerel 01 sm entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHCHANNELCATFISH_01_LG table Table of a c fishchannelcatfish 01 lg entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHCHANNELCATFISH_01_XL table Table of a c fishchannelcatfish 01 xl entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHLAKESTURGEON_01_LG table Table of a c fishlakesturgeon 01 lg entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHLARGEMOUTHBASS_01_LG table Table of a c fishlargemouthbass 01 lg entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHLARGEMOUTHBASS_01_MS table Table of a c fishlargemouthbass 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHLONGNOSEGAR_01_LG table Table of a c fishlongnosegar 01 lg entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHMUSKIE_01_LG table Table of a c fishmuskie 01 lg entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHNORTHERNPIKE_01_LG table Table of a c fishnorthernpike 01 lg entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHPERCH_01_MS table Table of a c fishperch 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHPERCH_01_SM table Table of a c fishperch 01 sm entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHRAINBOWTROUT_01_LG table Table of a c fishrainbowtrout 01 lg entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHRAINBOWTROUT_01_MS table Table of a c fishrainbowtrout 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHREDFINPICKEREL_01_MS table Table of a c fishredfinpickerel 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHREDFINPICKEREL_01_SM table Table of a c fishredfinpickerel 01 sm entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHROCKBASS_01_MS table Table of a c fishrockbass 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHROCKBASS_01_SM table Table of a c fishrockbass 01 sm entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHSALMONSOCKEYE_01_LG table Table of a c fishsalmonsockeye 01 lg entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHSALMONSOCKEYE_01_ML table Table of a c fishsalmonsockeye 01 ml entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHSALMONSOCKEYE_01_MS table Table of a c fishsalmonsockeye 01 ms entries. Add, remove or edit entries following the examples in the file.
  ↳ A_C_FISHSMALLMOUTHBASS_01_LG table Table of a c fishsmallmouthbass 01 lg entries. Add, remove or edit entries following the examples in the file.
Notes from the README#
text
# REDEMPIRE Fishing Modifications
This version includes a fishing skill game, a circular waiting indicator, bait consumption on cast, optional job restrictions, and configurable XP rewards per f
## Skill Game
When a fish bites, press `R` while the moving fish icon overlaps the target fish icon. The target moves after every successful hit. The default requirement is t
Configure the system in `Config.FishingSkillGame` inside `config.lua`:
- `Enabled`: Enables or disables the skill game.
- `RequiredHits`: Number of successful hits required.
- `AllowedMisses`: Number of allowed misses.
- `ZoneWidth`: Target area width.
- `TravelTimeMs`: Time for the moving icon to cross the bar.
- `TimeLimitMs`: Total attempt time.
- `PullToPlayerSpeed`: Fish pull speed after success.
- `LandingDistance`: Distance required to begin the landing animation.
- `AutoLandTimeoutMs`: Fallback timeout to prevent the fish from getting stuck.
- `DefaultKey`: Default key label.
- `ControlHash`: RedM control hash used as the fallback input.
## Waiting Indicator
Configure the circular waiting indicator in `Config.FishingWaitUI`.
## Job Restriction
Configure job access in `Config.FishingJob`. The restriction is disabled by default with `Enabled = false`.
## Fishing XP
Configure XP rewards in `Config.FishingXP`. Each fish model can have its own XP value in the `Rewards` table. XP is awarded through the REDEMPIRE Core API after

Paid (server only)   jrs_freelance

JRS Freelance - Unified Chimney Sweep & Metal Detector Activities

Resource jrs_freelance
Folder [JOBS]
Version 1.0.0
Author jrs team
Depends on jrs_core, jrs_inventory
Interface Yes (NUI)
Languages ar, en
Code size 3,760 Lua lines

Commands

  • /jrsmd_resetspots
config/chimneysweep.lua - 40 options#

General

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
Locale "ar" Interface language of this script (en or ar).
RequiredJob table Set enabled = false to allow every player. 'surfacecleaner' is the job-board job (jrs_multijob "Surface Cleaner"); the old 'chimneysweep' id was never offered on any board, so nobody could get it.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ job "surfacecleaner" Who is allowed: jobs, groups or permissions for job.
  ↳ jobs table Who is allowed: jobs, groups or permissions for jobs.
  ↳ label "Surface Cleaner" Text shown to the player for label. Change it to translate or rebrand.
NPCs table Table of np cs entries. Add, remove or edit entries following the examples in the file.
CleaningDuration 10000 Time setting for cleaning duration. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Payment table Table of payment entries. Add, remove or edit entries following the examples in the file.
JobsPerTask 4 Who is allowed: jobs, groups or permissions for jobs per task.
Cooldown 30000 Time setting for cooldown. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
DailyLimit table Upper limit for daily limit.
BroomModel "p_broom01x" Game model or entity used for broom model.
BroomFallbacks table Table of broom fallbacks entries. Add, remove or edit entries following the examples in the file.
Animation table Animation settings for animation.
  ↳ male table Table of male entries. Add, remove or edit entries following the examples in the file.
  ↳ female table Table of female entries. Add, remove or edit entries following the examples in the file.
  ↳ fallback table Table of fallback entries. Add, remove or edit entries following the examples in the file.
  ↳ flag 1 Number for flag (default 1).
  ↳ prop Config.BroomModel Game model or entity used for prop.
  ↳ bone 7966 Number for bone (default 7966).
  ↳ offset table Table of offset entries. Add, remove or edit entries following the examples in the file.
NPCPromptKey 0x760A9C6F Key or control used for npc prompt key. Controls are hash values from the game input list.
PromptKey 0x760A9C6F Key or control used for prompt key. Controls are hash values from the game input list.
JobBlip table Map blip or icon settings for job blip.
ChimneyObject table Disabled: all props removed as requested. Only yellow circle markers are displayed.
  ↳ enabled false Turns enabled on or off (default false).
TaskMarker table Yellow circle marker drawn at every incomplete chimney task while the job is active. zOffset kept near 0 (rooftop coords are already at surface height) since a large negative offset can sink the marker below thin roof geometry and
  ↳ enabled true Turns enabled on or off (default true).
  ↳ type 1 Number for type (default 1).
  ↳ scale vector3(1.8, 1.8, 1.2) Rate or multiplier for scale.
  ↳ color table Table of color entries. Add, remove or edit entries following the examples in the file.
  ↳ zOffset 0.25 Number for z offset (default 0.25).
  ↳ bobUpAndDown true Switch for bob up and down: true = on, false = off (default true).
  ↳ drawDistance 25.0 Distance in game units that applies to draw distance.
InteractionDistance 3.0 Distance in game units that applies to interaction distance.
DrawDistance 50.0 Distance in game units that applies to draw distance.
ServerValidationDistance 20.0 Distance in game units that applies to server validation distance.
NotificationDuration 4000 Time setting for notification duration. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
config/metal_detector.lua - 74 options#

General

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
CoreResource "jrs_core" Setting for core resource.
InventoryResource "jrs_inventory" Setting for inventory resource.
DetectorWeapon "WEAPON_KIT_METAL_DETECTOR" Native Red Dead Online metal detector weapon.
DetectorItem "metal_detector" Inventory item that owns/toggles the detector. The native held kit is not stored in the weapon loadout because RedM reports HAS_PED_GOT_WEAPON=false for this held-kit weapon even while it is visibly equipped.
ShovelItem "shovel" Inventory items used by shovel item. Names must exist in the jrs_items table.
TestCommands table Temporary development commands. These give/remove the detector directly with RedM natives and do NOT require an inventory/database entry. Disable after the detector test is complete.
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ GiveCommand "testdetector" Setting for give command.
  ↳ RemoveCommand "removedetector" Setting for remove command.
RandomizeSpotPlacement false If enabled, each resource start selects a random subset of the configured spots.
RandomSpotChance 50 Rate or multiplier for random spot chance.
NearbyPlayerDistance 15.0 Nearby clients reproduce the shovel prop/animation for the digging player.
MaxDistanceToNode 5.0 Detection distances.
MinDistanceToNode 1.0 Distance in game units that applies to min distance to node.
DigPromptDistance 1.65 Dig prompt distance is intentionally a little larger than MinDistanceToNode. The detector light can already look fully green just outside exactly 1.0m, and using horizontal distance prevents small terrain/Z differences from hiding
UseStrobeMode false Light behavior.
UseColorMode true Turns color mode on or off (default true).
DisableFindingNodesAfterUse true Turns off finding nodes after use: true = yes, false = no (default true).
SpotCooldown table Optional cooldown after a successful dig. Enabled = true -> the spot is hidden/locked until Seconds expires. Enabled = false -> no timed reset; the spot stays consumed until the resource/server restarts.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Seconds 30 * 60 30 minutes
Blips table Optional map blips for treasure search locations. Disable globally with Enabled = false, or disable a single location with that location's blipEnabled = false value below.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ OnlyActiveSpots true Switch for only active spots: true = on, false = off (default true).
  ↳ HideOnCooldown false Hides on cooldown: true = yes, false = no (default false).
  ↳ Style 1664425300 Number for style (default 1664425300).
  ↳ Sprite 0 0 = keep the default RedM blip sprite for this style
  ↳ Scale 0.75 Rate or multiplier for scale.
  ↳ DefaultName "Treasure Search Area" Text shown to the player for default name. Change it to translate or rebrand.
Light table Table of light entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Range 1.25 Distance in game units that applies to range.
  ↳ MinIntensity 0.35 Minimum or level requirement for min intensity.
  ↳ MaxIntensity 5.5 Upper limit for max intensity.
  ↳ StrobeSpeed 0.022 Number for strobe speed (default 0.022).
  ↳ Offset vec3(0.42, 0.72, -0.58) Approximate detector-head position relative to the player.
Sound table Detector audio. Uses an internal NUI beep so it does not depend on undocumented RDR3 frontend sound names/soundsets. The beep gets faster and slightly higher-pitched as the player approaches a treasure spot.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Volume 0.70 Number for volume (default 0.70).
  ↳ MinPitch 0.90 Minimum or level requirement for min pitch.
  ↳ MaxPitch 1.35 Upper limit for max pitch.
  ↳ FarInterval 850 Time setting for far interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ NearInterval 115 Time setting for near interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ TestCommand "testdetectorsound" Local test command. Set to false to disable it.
Keys table Key or control used for keys. Controls are hash values from the game input list.
  ↳ Dig "INPUT_FRONTEND_X" Setting for dig.
Dig table Table of dig entries. Add, remove or edit entries following the examples in the file.
  ↳ Duration 7000 Time setting for duration. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ LockTimeout 20 Time setting for lock timeout. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ Prop "p_shovel02x" Game model or entity used for prop.
  ↳ AnimDict 'amb_work@world_human_graved... Grave-digging animation paired with the shovel position below.
  ↳ AnimName "base" Text shown to the player for anim name. Change it to translate or rebrand.
  ↳ AnimFlag 17 Animation settings for anim flag.
  ↳ BoneName "SKEL_R_Hand" Shovel attachment. Keep this on the right hand; the animation positions the left hand around the shaft automatically.
  ↳ FallbackBone 7966 Number for fallback bone (default 7966).
  ↳ Position vec3(0.0, -0.09, -0.09) World coordinates (x, y, z) used for position.
  ↳ Rotation vec3(250.2899, 579.19, 373.3... Setting for rotation.
  ↳ DisablePropCollision true Prevent the shovel from colliding with the ped/ground while attached.
  ↳ MakePropInvincible true Switch for make prop invincible: true = on, false = off (default true).
Security table Table of security entries. Add, remove or edit entries following the examples in the file.
  ↳ RequireDetectorOwnership true Server checks for Config.DetectorItem in jrs_inventory before digging.
  ↳ FailClosedOnDetectorCheckError true Fail closed if jrs_inventory cannot verify the detector item.
  ↳ DigValidationDistance 2.25 Distance in game units that applies to dig validation distance.
  ↳ RequestCooldownMs 1250 Time setting for request cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Locations table Chance values are weights. They do not have to total exactly 100.
  ↳ Owanjila table Table of owanjila entries. Add, remove or edit entries following the examples in the file.
  ↳ Barrow_Lagoon table Table of barrow lagoon entries. Add, remove or edit entries following the examples in the file.
  ↳ Grizzlies_East table Table of grizzlies east entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ Url "" Setting for url.
  ↳ Color 9326801 Number for color (default 9326801).
  ↳ Name "REDEMPIRE Metal Detector" Text shown to the player for name. Change it to translate or rebrand.
  ↳ Avatar "" Setting for avatar.

Free (included in JRS Core)   jrs_goldclaim

JRS Core gold claims - gold rockers, paydirt, water and licensed claims

Resource jrs_goldclaim
Folder [JOBS]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core, jrs_inventory, jrs_progressbar, oxmysql
Interface No
Code size 2,604 Lua lines
config.lua - 56 options#

General

Setting Default What it does
Language "en" 'en' or 'ar'
PlayerProps table populated at runtime by the server, do not edit
Debug false Debug output for debug: true = yes, false = no (default false).
NotifyDuration 10000 default notification duration (ms)

general settings (gold rocker / claims)

Setting Default What it does
EnableVegModifier true clears vegetation around placed rockers
GoldRocker p_goldcradlestand01x prop used for gold rocker
MaxGoldRockers 4 maximum gold rockers per character
DegradeChance 5 % chance (per rocker) of losing 1% quality each cron cycle
DegradeEvery 30 minutes between degradation rolls
RepairWoodAmount 5 amount of wood needed to repair
LeoJobs table jobs allowed to destroy unlicensed claims
OwnerOnlyProcessing true only the owner can start processing (and receives the output)

distances (server-side anti-exploit checks)

Setting Default What it does
InteractDistance 5.0 max distance from a rocker to interact with it
PickupDistance 10.0 max distance from a rocker to pick up its output
PlaceMaxDistance 6.0 max distance between player and placed rocker
MinRockerSpacing 4.0 min distance between two rockers
PropDrawDistance 60.0 distance at which rocker props are streamed in

processing settings

Setting Default What it does
ProcessingTime 60000 time in ms per processing cycle
GoldChance 50 % chance of gold vs paydirt return
AddPaydirtTime 10000 time in ms to add paydirt to rocker
AddWaterTime 10000 time in ms to add water to rocker
MaxPaydirt 5 max paydirt units a rocker can hold
MaxWater 5 max water units a rocker can hold
RepairTime 10000 time in ms to repair
PackUpTime 10000 time in ms to pack up
PlaceTime 10000 time in ms to set up a rocker
DestroyTime 10000 time in ms for LEO to destroy an illegal claim
PickupTime 3000 time in ms to pick up an output prop

gold ore output (random amount per gold pickup)

Setting Default What it does
GoldOreItem "goldnugget" Money value for gold ore item. Rewards go through the economy multiplier of jrs_core.
GoldOreAmount table Money value for gold ore amount. Rewards go through the economy multiplier of jrs_core.

gathering settings (shovel / bucket)

Setting Default What it does
ShovelDigTime 10000 time in ms to dig paydirt
BucketFillTime 8000 time in ms to fill bucket

prop models

Setting Default What it does
GoldProp p_goldstack01x gold output prop
PaydirtProp `mp005_p_dirtpile_sca02_buri... paydirt output prop
PropSpawnOffset 1.5 distance to side of rocker to spawn output prop

shovel prop (attached to hand during dig)

Setting Default What it does
ShovelProp table Game model or entity used for shovel prop.
  ↳ model p_shovel02x Game model or entity used for model.
  ↳ bone "SKEL_R_Hand" Setting for bone.
  ↳ offset table Table of offset entries. Add, remove or edit entries following the examples in the file.
DigDirtPile table dirt pile spawned in front of the player after a successful dig (cosmetic, local only)
  ↳ enabled true Turns enabled on or off (default true).
  ↳ model `mp005_p_dirtpile_tall_unbur... Game model or entity used for model.
  ↳ offset 0.6 distance in front of the player
  ↳ lifetime 30000 ms before it is removed

animations

Setting Default What it does
Anims table Table of anims entries. Add, remove or edit entries following the examples in the file.
  ↳ dig table Table of dig entries. Add, remove or edit entries following the examples in the file.
  ↳ crouch_inspect WORLD_HUMAN_CROUCH_INSPECT scenario
  ↳ add_paydirt WORLD_HUMAN_FEED_PIGS scenario used when adding paydirt
  ↳ add_water `WORLD_HUMAN_BUCKET_POUR_LOW... scenario used when adding water

claim zone / blip settings

Setting Default What it does
ClaimZoneRadius 20.0 Distance in game units that applies to claim zone radius.
MaxClaimNameLength 50 Upper limit for max claim name length.
ClaimBlip table Map blip or icon settings for claim blip.
  ↳ blipSprite "blip_gold" Map blip or icon settings for blip sprite.
  ↳ blipScale 0.2 Map blip or icon settings for blip scale.
  ↳ blipColour "BLIP_MODIFIER_MP_COLOR_6" Map blip or icon settings for blip colour.

placement

Setting Default What it does
ForwardDistance 2.0 Distance in game units that applies to forward distance.

Free (included in JRS Core)   jrs_goldpanning

JRS Core gold panning - pan for gold nuggets in rivers and lakes

Resource jrs_goldpanning
Folder [JOBS]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core, jrs_inventory, jrs_minigame
Interface No
Code size 933 Lua lines
config.lua - 13 options#

General

Setting Default What it does
Language "en" 'en' or 'ar'
PanItem "goldpan" Inventory items used by pan item. Names must exist in the jrs_items table.
Reward table Money value for reward. Rewards go through the economy multiplier of jrs_core.
BreakChance 3 % chance the pan breaks on a failed try
Rounds 3 skill checks in a row (jrs_minigame)
Cooldown 5 seconds between two pans
MinTime 8 seconds a pan really takes (server check)
Water table fresh water only (no swamps)
  ↳ -247856387 true, [-1504425495] = true, ... Setting for 247856387.
  ↳ -1300497193 true, [-1276586360] = true, ... Setting for 1300497193.
  ↳ 592454541 true, [-804804953] = true, [... Setting for 592454541.
  ↳ -811730579 true, [-1229593481] = true, ... Setting for 811730579.
  ↳ 2005774838 true, [-1287619521] = true, ... Setting for 2005774838.

Paid (server only)   jrs_government

JRS Government - city governors, elections, citizenship, treasury, city revenue, taxes, city wars and government messaging

Resource jrs_government
Folder [JOBS]
Version 2.4.5
Author JRS
Depends on jrs_banking, jrs_character, jrs_core, jrs_doctors, jrs_idcard, jrs_police, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 6,946 Lua lines

Commands

  • /distributecity
  • /govdistribute
  • /govgovernor
  • /govguarma
  • /govstatus
  • /govsynclaw
  • /setgov
  • /warscore

Exports

AreCitiesAtWar, AssignCity, DepositBusinessRevenue, EnsureOwnerLawRank, GetCitizenship, GetCityGovernment, GetCityOwner, GetCityTaxRate, GetCityWar, GetFacilityStatus, GetFacilityTax, GetSalesTax, GrantGuarmaMaster, IsCityOwner, IsDeputyGovernor, IsFacilityClosed, IsGovernor, LogAudit, OpenAdminMenu, RecordCityRevenue, ResolveCity, ResolveCityAt, SetCityOwner, SetGovernor, SyncOnlineCityOwners

Database tables

jrs_government_audit, jrs_government_candidates, jrs_government_cities, jrs_government_citizen_applications, jrs_government_citizens, jrs_government_facilities, jrs_government_messages, jrs_government_revenue, jrs_government_salaries, jrs_government_salary_grades, jrs_government_store_taxes, jrs_government_taxes, jrs_government_votes, jrs_government_war_kills, jrs_government_wars

config/config.lua - 124 options#

General

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
InteractDistance 2.25 Distance in game units that applies to interact distance.
NpcCleanupRadius 1.75 Removes stale government NPCs at the configured position after a resource restart.
ServerActionDistance 4.0 Distance in game units that applies to server action distance.
InteractControl 0xCEFD9220 E / INPUT_CONTEXT
DefaultNpcModel "U_M_M_ValSheriff_01" Game model or entity used for default npc model.
Blip table Map blip or icon settings for blip.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Sprite 1869246576 Official Government Seal / Senior Badge
  ↳ Scale 0.2 Rate or multiplier for scale.
  ↳ Color "BLIP_MODIFIER_MP_COLOR_27" Royal Purple
Elections table Permanent government: elections only start when an administrator explicitly opens one.
  ↳ CandidateMinimumLevel 20 Minimum or level requirement for candidate minimum level.
  ↳ MaxCandidatesPerCity 3 Maximum active candidates is PER CITY, PER ELECTION (not global across all cities).
  ↳ BlockActiveCandidacyInOtherCities true Prevent a character from being an ACTIVE candidate/governor in another city at the same time.
  ↳ AllowElectionWhileGoverned false Allows election while governed: true = yes, false = no (default false).
  ↳ RequireNoPoliceRecord true Requires no police record: true = yes, false = no (default true).
  ↳ RequireNoBankDebt true Requires no bank debt: true = yes, false = no (default true).
  ↳ DebtEpsilon 0.01 Number for debt epsilon (default 0.01).
  ↳ CandidateStatementMaxLength 220 Upper limit for candidate statement max length.
  ↳ DefaultDurationMinutes 60 Elections can end automatically after this duration. Admins may override it when opening an election.
  ↳ MinimumDurationMinutes 1 Time setting for minimum duration minutes. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ MaximumDurationMinutes 10080 7 days
  ↳ RequireCityCitizenshipToVote true Once a city has citizens, only a citizen of that city can vote. Bootstrap allows the very first election to work before a governor exists to approve citizens.
  ↳ AllowBootstrapVotersWhenCityHasNoCitizens true Allows bootstrap voters when city has no citizens: true = yes, false = no (default true).
CriminalRecord table Table of criminal record entries. Add, remove or edit entries following the examples in the file.
  ↳ BlockAnyMdtRecord true Must have a clean police MDT record
  ↳ BlockActiveWanted true Must not have active police wanted/bounty entries
  ↳ BlockActiveJail true Must not be serving a jail sentence
  ↳ RequireCleanReputation true Must have a clean reputation / honor (jrs_integrity)
  ↳ MinimumHonor 0 Minimum honor / integrity score
  ↳ CheckOnDeputy true Check reputation when appointing deputy
  ↳ CheckOnWarDeclare true Check reputation when declaring/accepting war
DeputyPermissions table Who is allowed: jobs, groups or permissions for deputy permissions.
  ↳ manageCitizens true Switch for manage citizens: true = on, false = off (default true).
  ↳ viewTreasury true Switch for view treasury: true = on, false = off (default true).
  ↳ manageEmployees false Switch for manage employees: true = on, false = off (default false).
  ↳ editSalaries false Switch for edit salaries: true = on, false = off (default false).
  ↳ sendCityMessages true Switch for send city messages: true = on, false = off (default true).
  ↳ sendGovernmentMessages false Switch for send government messages: true = on, false = off (default false).
  ↳ sendGlobalMessages false Switch for send global messages: true = on, false = off (default false).
  ↳ appointDeputy false Switch for appoint deputy: true = on, false = off (default false).
  ↳ manageTaxes false Switch for manage taxes: true = on, false = off (default false).
  ↳ manageWars false Switch for manage wars: true = on, false = off (default false).
  ↳ manageAppointments false Switch for manage appointments: true = on, false = off (default false).
  ↳ manageStores false Switch for manage stores: true = on, false = off (default false).
  ↳ viewCrimeStats true Switch for view crime stats: true = on, false = off (default true).
Treasury table Table of treasury entries. Add, remove or edit entries following the examples in the file.
  ↳ AllowGovernorDeposit true Allows governor deposit: true = yes, false = no (default true).
  ↳ AllowGovernorWithdraw false Allows governor withdraw: true = yes, false = no (default false).
  ↳ MinimumDeposit 1.00 Money value for minimum deposit. Rewards go through the economy multiplier of jrs_core.
  ↳ MaximumDeposit 100000.00 Money value for maximum deposit. Rewards go through the economy multiplier of jrs_core.
Revenue table Table of revenue entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ MaximumSingleDeposit 100000000.00 Money value for maximum single deposit. Rewards go through the economy multiplier of jrs_core.
  ↳ RecentTransactionLimit 50 Upper limit for recent transaction limit.
  ↳ AllowedResources table Table of allowed resources entries. Add, remove or edit entries following the examples in the file.
Payroll table Table of payroll entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ IntervalMinutes 30 Time setting for interval minutes. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ MinimumGrade 0 Minimum or level requirement for minimum grade.
  ↳ MaximumGrade 10 Upper limit for maximum grade.
  ↳ MinimumSalary 0.25 Absolute safety net. The real limits are the per-grade bands below.
  ↳ MaximumSalary 30.00 10-01: was 6.00 (bands below x5 for law + medicine)
  ↳ GradeBands table RDO-style pay per payroll tick (every IntervalMinutes = 30 min, on duty only). The governor can only pick a value inside [min, max] of each grade. Grade 10 top = $5.00 / 30 min = $10/h passive, on top of what the job itself earns.
  ↳ RoleScale table Band multiplier per employee role id. Jobs that already earn from their own work (mining, lumber, smelting, banking fees) get a smaller government salary.
  ↳ DefaultBandPoint 0.40 New/out-of-band salaries are reset to min + this share of the band (0.4 = a bit below the middle).
  ↳ AllOrNothing true If treasury cannot cover every online employee in a city's payroll, nobody is paid.
Messages table Text shown to the player for messages. Change it to translate or rebrand.
  ↳ MaxTitleLength 80 Upper limit for max title length.
  ↳ MaxBodyLength 800 Upper limit for max body length.
  ↳ CooldownMs 3000 Time setting for cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
CityOwnership table Table of city ownership entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ AllowOwnerWithdraw true City Owner can withdraw funds directly from the city treasury
  ↳ AllowGovernorWithdraw false Standard governor withdrawal restriction
  ↳ MinimumWithdraw 1.00 Minimum or level requirement for minimum withdraw.
  ↳ MaximumWithdraw 100000.00 Upper limit for maximum withdraw.
  ↳ ConquestOnWarVictory true Winning a city war can confer ownership/conquest rights
  ↳ CanPurchaseCity false Option to buy unowned city directly
  ↳ PurchasePrice 250000.00 Purchase price if buying is enabled
  ↳ AutoGrantLawRankToOwner true City Owner automatically receives highest law rank
  ↳ OwnerLawGrade 9 Highest law rank grade
CityLawJobs table Primary law jobs and highest ranks per city (used for automatic owner rank assignment)
  ↳ valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ blackwater table Table of blackwater entries. Add, remove or edit entries following the examples in the file.
  ↳ rhodes table Table of rhodes entries. Add, remove or edit entries following the examples in the file.
  ↳ saintdenis table Table of saintdenis entries. Add, remove or edit entries following the examples in the file.
  ↳ annesburg table Table of annesburg entries. Add, remove or edit entries following the examples in the file.
  ↳ armadillo table Table of armadillo entries. Add, remove or edit entries following the examples in the file.
  ↳ tumbleweed table Table of tumbleweed entries. Add, remove or edit entries following the examples in the file.
  ↳ guarma table Table of guarma entries. Add, remove or edit entries following the examples in the file.
Admin table Who is allowed: jobs, groups or permissions for admin.
  ↳ AcePermission "jrs.government.admin" Who is allowed: jobs, groups or permissions for ace permission.
  ↳ Groups table Who is allowed: jobs, groups or permissions for groups.
  ↳ Commands table Table of commands entries. Add, remove or edit entries following the examples in the file.
RankLadders table and the payroll grid all show these names and stop at the ladder's top grade. Law ladders run 0-9 to match jrs_police (uniform/weapon kit per grade 0-9, city owner = 9). Doctors run 0-10 to match jrs_doctors Config.RankLabels.
  ↳ sheriff table Table of sheriff entries. Add, remove or edit entries following the examples in the file.
  ↳ police table Table of police entries. Add, remove or edit entries following the examples in the file.
  ↳ guarma_guard table Table of guarma guard entries. Add, remove or edit entries following the examples in the file.
  ↳ doctor table Table of doctor entries. Add, remove or edit entries following the examples in the file.
  ↳ banker table Table of banker entries. Add, remove or edit entries following the examples in the file.
  ↳ worker table Table of worker entries. Add, remove or edit entries following the examples in the file.
Cities table Employee roles are intentionally city-specific. Add doctors, bankers, etc. here. Multiple ON-DUTY job names can map to one payroll role. Never add jobs beginning with "off".
  ↳ valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ blackwater table Table of blackwater entries. Add, remove or edit entries following the examples in the file.
  ↳ rhodes table Table of rhodes entries. Add, remove or edit entries following the examples in the file.
  ↳ saintdenis table Table of saintdenis entries. Add, remove or edit entries following the examples in the file.
  ↳ annesburg table Table of annesburg entries. Add, remove or edit entries following the examples in the file.
  ↳ armadillo table Table of armadillo entries. Add, remove or edit entries following the examples in the file.
  ↳ tumbleweed table Table of tumbleweed entries. Add, remove or edit entries following the examples in the file.
  ↳ guarma table Table of guarma entries. Add, remove or edit entries following the examples in the file.
CityMapRegions table Table of city map regions entries. Add, remove or edit entries following the examples in the file.
  ↳ valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ blackwater table Table of blackwater entries. Add, remove or edit entries following the examples in the file.
  ↳ rhodes table Table of rhodes entries. Add, remove or edit entries following the examples in the file.
  ↳ saintdenis table Table of saintdenis entries. Add, remove or edit entries following the examples in the file.
config/economy.lua - 40 options#

General

Setting Default What it does
Economy table Table of economy entries. Add, remove or edit entries following the examples in the file.
  ↳ GoldToCashRate 1.0 Gold paid for a city service is converted into treasury dollars at this rate.
  ↳ FallbackMaxDistance 3000.0 A payment is credited to the city whose zone contains the buyer. Outside every zone (ranches, camps, small settlements) the nearest city within this distance receives it. 0 = always the nearest city.
  ↳ Zones table Town centres on the 2D map. radius is the "inside the city" distance.
  ↳ CityAliases table Alternative names other resources may send as a city hint.
  ↳ Categories table Every revenue source shown on the Revenue page. share is the fraction of the payment that reaches the treasury (1.0 = all of it, 0.25 = a quarter).
  ↳ Taxes table Taxes the governor sets from the Treasury page (percent). sales: taken from every player-owned store sale inside the city.
  ↳ RecentTransactionLimit 60 Recent ledger rows sent to the Revenue page.
Wars table Table of wars entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ DeclarationCost 150.0 Taken from the attacker's treasury when war is declared. The winner of the war receives it; a draw, peace treaty or cancellation returns it.
  ↳ PreparationMinutes 15 warning period before fighting counts
  ↳ DurationMinutes 60 fighting period
  ↳ CooldownMinutes 720 the same two cities cannot fight again for 12 hours
  ↳ RequireDefenderGovernor true Requires defender governor: true = yes, false = no (default true).
  ↳ MinimumCitizensPerCity 1 Minimum or level requirement for minimum citizens per city.
  ↳ RequireAcceptance true A declared war does not start fighting until the defender's leadership explicitly accepts the challenge. If they refuse or run out of time the war is cancelled and the attacker's stake is refunded.
  ↳ AcceptanceTimeoutMinutes 3 Time setting for acceptance timeout minutes. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ MinimumOnlineCitizensPerCity 2 Both cities need this many citizens ONLINE right now (not just registered) before a war can even be declared, so nobody fights an empty city.
  ↳ RequireDefenderLeadershipOnline true The defender's owner, governor or deputy must be online to receive and answer the challenge.
  ↳ TributePercent 20.0 share of the loser's treasury paid to the winner
  ↳ SurrenderTributePercent 10.0 Rate or multiplier for surrender tribute percent.
  ↳ TributeMax 1500.0 0 = no cap
  ↳ KillPoints 1 World coordinates (x, y, z) used for kill points.
  ↳ ScoreToWin 0 0 = the war is decided only when the timer ends
  ↳ PairKillCooldownSeconds 300 one killer/victim pair scores once in this window
  ↳ MaxKillDistance 350.0 Distance in game units that applies to max kill distance.
  ↳ RequireInsideCityZones false true = only kills inside either warring city count
  ↳ AnnounceGlobal true false = only citizens of the two cities are told
  ↳ ReasonMaxLength 200 Upper limit for reason max length.
  ↳ RosterLimit 20 (Config.Cities[cityId].npc) - the one coordinate every city already has proven safe, instead of guessing new landmark coordinates. Roster of participants selected by the Governor for the war (max 20 per city)
  ↳ RequireRosterFighters true Requires roster fighters: true = yes, false = no (default true).
  ↳ ArenaOutOfBoundsSeconds 10 Number for arena out of bounds seconds (default 10).
  ↳ DefaultArena "bolger_glade" Setting for default arena.
  ↳ DefaultMode "siege" Setting for default mode.
  ↳ Modes table Table of modes entries. Add, remove or edit entries following the examples in the file.
WarArenas table Predefined historic battlefield arenas for city wars. Both 20-man rosters enter the chosen arena zone with team-specific spawns and perimeter bounds.
  ↳ bolger_glade table Table of bolger glade entries. Add, remove or edit entries following the examples in the file.
  ↳ fort_mercer table Table of fort mercer entries. Add, remove or edit entries following the examples in the file.
  ↳ fort_wallace table Table of fort wallace entries. Add, remove or edit entries following the examples in the file.
Notes from the README#
text
# jrs_government 1.0.0
Permanent city government system for JRS RedM.
## Included
- One permanent Governor per configured city.
- One Deputy Governor appointed/removed by the Governor.
- Elections are admin-opened only; there is no automatic term timer.
- Candidate requirements:
  - minimum JRS level;
  - cannot have registered as a candidate in another city (configurable);
  - no police MDT criminal record, active wanted entry, or active jail sentence;
  - no active/defaulted JRS bank loan debt.
- Voting requires the character's permanent 6-digit JRS ID number from `jrs_id_numbers`.
- One vote per character/identity number per city election, enforced with SQL unique keys; bootstrap voters are also blocked from voting in two simultaneously-o
- Citizenship applications and city-transfer requests.
- A character can be an active citizen of only one city.
- Governor/Deputy citizen approval and rejection.
- Governor can remove citizens; removing the deputy also removes the deputy office.
- City treasury with governor deposits and admin adjustments.
- City employee salary configuration and automatic online payroll from the treasury.
- Government messages: own city, another governor, all governors, all players.
- Persistent audit log for sensitive actions.
- NPC per city with a single responsive HD/2K/4K NUI.
- Character-bound client startup waits for `jrs_character:isPlayerReady`.
## Existing JRS integration used directly
### jrs_idcard
`jrs_id_numbers.charid -> identity_number` is used to verify the six-digit voting number.
### jrs_police
Candidate checks query:
- `jrs_police_mdt`
- `jrs_police_wanted`
- `jail_police`
### jrs_banking
Candidate debt checks query `jrs_bank_loans.remaining_debt` for active/defaulted loans.
### jrs_core
Uses `exports.jrs_core:getCoreApi()`, `exports.jrs_core:GetXP(source)` for the calculated level, and the active `character.charIdentifier`, job, money and curre
## Installation
1. Put `jrs_government` in your resources folder.
2. The resource creates its tables automatically. `sql/jrs_government.sql` is also provided for manual installation/review.
3. Start dependencies before it:
'''cfg
ensure oxmysql
ensure jrs_core
ensure jrs_character
ensure jrs_idcard
ensure jrs_police

Free (included in JRS Core)   jrs_huntingpets

JRS Core hunting pets - hunting dogs and birds with training, tracking and scavenging

Resource jrs_huntingpets
Folder [JOBS]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Code size 23,821 Lua lines

Commands

  • /callbird
  • /calldog
  • /fleebird
  • /fleedog

Database tables

is, player_birds, player_dogs, player_selected_pets

shared/config_birds.lua - 109 options#

Bird Configuration

Setting Default What it does
SellingBirdJob table for no job: Config.SellingBirdJob = false
Prompts table Table of prompts entries. Add, remove or edit entries following the examples in the file.
  ↳ BirdShop L('prompt_bird_shop') Setting for bird shop.
  ↳ Home table Table of home entries. Add, remove or edit entries following the examples in the file.
  ↳ Follow table Table of follow entries. Add, remove or edit entries following the examples in the file.
  ↳ Hunt table Table of hunt entries. Add, remove or edit entries following the examples in the file.
  ↳ FlyBack table Table of fly back entries. Add, remove or edit entries following the examples in the file.
  ↳ Camera table Table of camera entries. Add, remove or edit entries following the examples in the file.
  ↳ ShopOpen table Table of shop open entries. Add, remove or edit entries following the examples in the file.
  ↳ Sell table C
  ↳ BuyBird table C
  ↳ StopSell table C
  ↳ Talk table Q
ConfirmDeleteValue "delete" players must type this word in order to delete a bird from owned birds
Texts table Table of texts entries. Add, remove or edit entries following the examples in the file.
  ↳ ShopTitle L('cfgtext_shoptitle') Text shown to the player for shop title. Change it to translate or rebrand.
  ↳ WaitLoad L('cfgtext_waitload') Time setting for wait load. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ Bird L('cfgtext_bird') Setting for bird.
  ↳ BirdT L('cfgtext_birdt') Setting for bird t.
  ↳ SendHome L('cfgtext_sendhome') Setting for send home.
  ↳ BirdName L('cfgtext_birdname') Text shown to the player for bird name. Change it to translate or rebrand.
  ↳ ShopNoMoney L('cfgtext_shopnomoney') Money value for shop no money. Rewards go through the economy multiplier of jrs_core.
  ↳ BirdBought L('cfgtext_birdbought') Setting for bird bought.
  ↳ SoldBird L('cfgtext_soldbird') Setting for sold bird.
  ↳ ConfirmDelete L('cfgtext_confirmdelete') Setting for confirm delete.
  ↳ NoJob L('cfgtext_nojob') Who is allowed: jobs, groups or permissions for no job.
  ↳ WaitBird L('cfgtext_waitbird') Time setting for wait bird. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ Hunting L('cfgtext_hunting') Setting for hunting.
  ↳ GoingHome L('cfgtext_goinghome') Setting for going home.
  ↳ GoingHunt L('cfgtext_goinghunt') Setting for going hunt.
  ↳ NoHunt L('cfgtext_nohunt') Setting for no hunt.
  ↳ FoundScavItem L('cfgtext_foundscavitem') Inventory items used by found scav item. Names must exist in the jrs_items table.
  ↳ PlayerBuyBird L('cfgtext_playerbuybird') Setting for player buy bird.
  ↳ PlayerBuyNoMoney L('cfgtext_playerbuynomoney'... Money value for player buy no money. Rewards go through the economy multiplier of jrs_core.
  ↳ PlayerBuyNoMoneyAtBuyer L('cfgtext_playerbuynomoneya... Money value for player buy no money at buyer. Rewards go through the economy multiplier of jrs_core.
  ↳ PlayerBoughtBird L('cfgtext_playerboughtbird'... Setting for player bought bird.
  ↳ PlayerSoldBird L('cfgtext_playersoldbird') Setting for player sold bird.
  ↳ WaitTalk L('cfgtext_waittalk') Time setting for wait talk. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ NotParrot L('cfgtext_notparrot') Setting for not parrot.
  ↳ NoTalkSkill L('cfgtext_notalkskill') Setting for no talk skill.
  ↳ Menu table Table of menu entries. Add, remove or edit entries following the examples in the file.
MaxBirdXP 1000 Upper limit for max bird xp.
Hunting table Table of hunting entries. Add, remove or edit entries following the examples in the file.
  ↳ jobrequired false player job requirements for sending bird to hunt/fish/scav - true or false
  ↳ jobs table if true
  ↳ extra_XP 50 If there is jobs in "jobs" array then they can earn more XP to their birds if this variable is not boolean false
BirdGoForHuntTimer 20 seconds - when the bird is flying away to hunt, after the timer runs out bird gets deleted to start hunting.
HuntingTimer 20 seconds - after the deletion, this timer starts and once its completed, the bird will fly back to player with prey
ParrotTalkingXPReq 1 required XP for parrot's talking ability
ScavengerItems table Inventory items used by scavenger items. Names must exist in the jrs_items table.
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.
  ↳ 6 table Table of 6 entries. Add, remove or edit entries following the examples in the file.
  ↳ 7 table Table of 7 entries. Add, remove or edit entries following the examples in the file.
  ↳ 8 table Table of 8 entries. Add, remove or edit entries following the examples in the file.
  ↳ 9 table Table of 9 entries. Add, remove or edit entries following the examples in the file.
  ↳ 10 table Table of 10 entries. Add, remove or edit entries following the examples in the file.
  ↳ 11 table Table of 11 entries. Add, remove or edit entries following the examples in the file.
  ↳ 12 table Table of 12 entries. Add, remove or edit entries following the examples in the file.
  ↳ 13 table Table of 13 entries. Add, remove or edit entries following the examples in the file.
  ↳ 14 table Table of 14 entries. Add, remove or edit entries following the examples in the file.
  ↳ 15 table Table of 15 entries. Add, remove or edit entries following the examples in the file.
  ↳ 16 table Table of 16 entries. Add, remove or edit entries following the examples in the file.
  ↳ 17 table Table of 17 entries. Add, remove or edit entries following the examples in the file.
  ↳ 18 table Table of 18 entries. Add, remove or edit entries following the examples in the file.
  ↳ 19 table Table of 19 entries. Add, remove or edit entries following the examples in the file.
  ↳ 20 table Table of 20 entries. Add, remove or edit entries following the examples in the file.
  ↳ 21 table Table of 21 entries. Add, remove or edit entries following the examples in the file.
  ↳ 22 table Table of 22 entries. Add, remove or edit entries following the examples in the file.
  ↳ 23 table Table of 23 entries. Add, remove or edit entries following the examples in the file.
  ↳ 24 table Table of 24 entries. Add, remove or edit entries following the examples in the file.
  ↳ 25 table Table of 25 entries. Add, remove or edit entries following the examples in the file.
  ↳ 26 table Table of 26 entries. Add, remove or edit entries following the examples in the file.
  ↳ 27 table Table of 27 entries. Add, remove or edit entries following the examples in the file.
  ↳ 28 table Table of 28 entries. Add, remove or edit entries following the examples in the file.
  ↳ 29 table Table of 29 entries. Add, remove or edit entries following the examples in the file.
  ↳ 30 table Table of 30 entries. Add, remove or edit entries following the examples in the file.
  ↳ 31 table Table of 31 entries. Add, remove or edit entries following the examples in the file.
  ↳ 32 table Table of 32 entries. Add, remove or edit entries following the examples in the file.
  ↳ 33 table Table of 33 entries. Add, remove or edit entries following the examples in the file.
  ↳ 34 table Table of 34 entries. Add, remove or edit entries following the examples in the file.
FishItems table Inventory items used by fish items. Names must exist in the jrs_items table.
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.
  ↳ 6 table Table of 6 entries. Add, remove or edit entries following the examples in the file.
  ↳ 7 table Table of 7 entries. Add, remove or edit entries following the examples in the file.
  ↳ 8 table Table of 8 entries. Add, remove or edit entries following the examples in the file.
  ↳ 9 table Table of 9 entries. Add, remove or edit entries following the examples in the file.
  ↳ 10 table Table of 10 entries. Add, remove or edit entries following the examples in the file.
  ↳ 11 table Table of 11 entries. Add, remove or edit entries following the examples in the file.
  ↳ 12 table Table of 12 entries. Add, remove or edit entries following the examples in the file.
  ↳ 13 table Table of 13 entries. Add, remove or edit entries following the examples in the file.
  ↳ 14 table Table of 14 entries. Add, remove or edit entries following the examples in the file.
  ↳ 15 table Table of 15 entries. Add, remove or edit entries following the examples in the file.
  ↳ 16 table Table of 16 entries. Add, remove or edit entries following the examples in the file.
BirdShops table Table of bird shops entries. Add, remove or edit entries following the examples in the file.
  ↳ name "Hunting Birds" name of the shop
  ↳ jobrequired false job requirement for opening shop - true or false
  ↳ jobs table if jobrequired true
  ↳ blip table Map blip or icon settings for blip.
  ↳ tax 10 +10% - basic bird price + tax = shop price
  ↳ pos vector3(-283.97, 666.14, 113... position of the shop checkpoint
  ↳ standpos table position of the birds at shop -284.32, 666.70, 113.45, 29.13
shared/config_dogs.lua - 125 options#

Dog Configuration

Setting Default What it does
DogKeyBind "E" Key or control used for dog key bind. Controls are hash values from the game input list.
DogTrackingJob "Police" job allowed to use dog tracking (jrs_police job name)
CallDogKey true Switch for call dog key: true = on, false = off (default true).
DogTriggerKeys table Key or control used for dog trigger keys. Controls are hash values from the game input list.
  ↳ CallDog "U" Setting for call dog.
AttackCommand true Attack command: send your dog to attack a locked-on target
AttackOnlyPlayers true Switch for attack only players: true = on, false = off (default true).
AttackOnlyAnimals true Switch for attack only animals: true = on, false = off (default true).
AttackOnlyNPC true Switch for attack only npc: true = on, false = off (default true).
TrackCommand true Track command: send your dog to follow a locked-on target
TrackOnlyPlayers true Switch for track only players: true = on, false = off (default true).
TrackOnlyAnimals true Switch for track only animals: true = on, false = off (default true).
TrackOnlyNPC true Switch for track only npc: true = on, false = off (default true).
DefensiveMode true Pets hostile to anything you are in combat with
NoFear true Prevents horses from fearing your pet
DogSearchRadius 50.0 How far the dog searches for hunted animals
DogFeedInterval 1800 1800 = 30 min, seconds between feeds
RaiseAnimal true Feed to gain XP and grow
DogFullGrownXp 1000 XP to be fully grown
DogXpPerFeed 20 XP gained per feed
NotifyWhenHungry true Switch for notify when hungry: true = on, false = off (default true).
DogPetSearchDatabase true Switch for dog pet search database: true = on, false = off (default true).
DogAllowedSearchTables table Table of dog allowed search tables entries. Add, remove or edit entries following the examples in the file.
DogPetAttributes table Table of dog pet attributes entries. Add, remove or edit entries following the examples in the file.
  ↳ FollowDistance 5 Distance in game units that applies to follow distance.
  ↳ Invincible false Switch for invincible: true = on, false = off (default false).
  ↳ SpawnLimiter 0 0 = disabled
  ↳ DeathCooldown 300 Seconds before respawn after death

Dog Breeds (for shop)

Setting Default What it does
Dogs table Table of dogs entries. Add, remove or edit entries following the examples in the file.

Animals dogs can retrieve (hunt mode)

Setting Default What it does
DogRetrievableAnimals table Game model or entity used for dog retrievable animals.
  ↳ 1110710183 table Big game mammals
  ↳ -1437898800 table Table of 1437898800 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1667609490 table Table of 1667609490 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2032656150 table Table of 2032656150 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2021043433 table Table of 2021043433 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1098441944 table Table of 1098441944 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1427753735 table Table of 1427753735 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1556473961 table Table of 1556473961 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2137407627 table Table of 2137407627 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1088132500 table Table of 1088132500 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2023809075 table Table of 2023809075 entries. Add, remove or edit entries following the examples in the file.
  ↳ -249305323 table Table of 249305323 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2029832225 table Table of 2029832225 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2075325674 table Table of 2075325674 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1383236440 table Table of 1383236440 entries. Add, remove or edit entries following the examples in the file.
  ↳ 195700131 table Table of 195700131 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1700211906 table Table of 1700211906 entries. Add, remove or edit entries following the examples in the file.
  ↳ 788053982 table Table of 788053982 entries. Add, remove or edit entries following the examples in the file.
  ↳ 40345436 table Table of 40345436 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1255771871 table Table of 1255771871 entries. Add, remove or edit entries following the examples in the file.
  ↳ -753902995 table Table of 753902995 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2091538496 table Table of 2091538496 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1851177881 table Table of 1851177881 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1755643085 table Table of 1755643085 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1381945409 table Table of 1381945409 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1864338716 table Predators
  ↳ -665854081 table Table of 665854081 entries. Add, remove or edit entries following the examples in the file.
  ↳ 252669332 table Table of 252669332 entries. Add, remove or edit entries following the examples in the file.
  ↳ 480688259 table Table of 480688259 entries. Add, remove or edit entries following the examples in the file.
  ↳ 734582471 table Table of 734582471 entries. Add, remove or edit entries following the examples in the file.
  ↳ -541762431 table Small game
  ↳ 1553815115 table Table of 1553815115 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1211566332 table Table of 1211566332 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1458540991 table Table of 1458540991 entries. Add, remove or edit entries following the examples in the file.
  ↳ -203109469 table Table of 203109469 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1170118274 table Table of 1170118274 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1797625440 table Table of 1797625440 entries. Add, remove or edit entries following the examples in the file.
  ↳ 68584579 table Table of 68584579 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1134449699 table Table of 1134449699 entries. Add, remove or edit entries following the examples in the file.
  ↳ 989669666 table Table of 989669666 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1465438313 table Table of 1465438313 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1785067139 table Table of 1785067139 entries. Add, remove or edit entries following the examples in the file.
  ↳ -710876114 table Table of 710876114 entries. Add, remove or edit entries following the examples in the file.
  ↳ -117890714 table Table of 117890714 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1003616053 table Game birds
  ↳ -646237339 table Table of 646237339 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1459778951 table Table of 1459778951 entries. Add, remove or edit entries following the examples in the file.
  ↳ -164963696 table Table of 164963696 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1104697660 table Table of 1104697660 entries. Add, remove or edit entries following the examples in the file.
  ↳ -466054788 table Table of 466054788 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2011226991 table Table of 2011226991 entries. Add, remove or edit entries following the examples in the file.
  ↳ -166054593 table Table of 166054593 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1076508705 table Table of 1076508705 entries. Add, remove or edit entries following the examples in the file.
  ↳ -466687768 table Table of 466687768 entries. Add, remove or edit entries following the examples in the file.
  ↳ -575340245 table Table of 575340245 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1416324601 table Table of 1416324601 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1265966684 table Table of 1265966684 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1797450568 table Table of 1797450568 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2073130256 table Table of 2073130256 entries. Add, remove or edit entries following the examples in the file.
  ↳ -564099192 table Table of 564099192 entries. Add, remove or edit entries following the examples in the file.
  ↳ 723190474 table Table of 723190474 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1652376302 table Table of 1652376302 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1353981788 table Table of 1353981788 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2145890973 table Table of 2145890973 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1095117488 table Table of 1095117488 entries. Add, remove or edit entries following the examples in the file.
  ↳ 386506078 table Table of 386506078 entries. Add, remove or edit entries following the examples in the file.
  ↳ -861544272 table Table of 861544272 entries. Add, remove or edit entries following the examples in the file.
  ↳ -2063183075 table Table of 2063183075 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2023522846 table Table of 2023522846 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1093853729 table Table of 1093853729 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1525077198 table Table of 1525077198 entries. Add, remove or edit entries following the examples in the file.
  ↳ -578821898 table Table of 578821898 entries. Add, remove or edit entries following the examples in the file.
  ↳ 98537260 table Table of 98537260 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1197044581 table Table of 1197044581 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1582986780 table Table of 1582986780 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1784941179 table Table of 1784941179 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1302821723 table Table of 1302821723 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1210546580 table Table of 1210546580 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2105463796 table Table of 2105463796 entries. Add, remove or edit entries following the examples in the file.
  ↳ 1253481500 table Table of 1253481500 entries. Add, remove or edit entries following the examples in the file.
  ↳ -393435863 table Table of 393435863 entries. Add, remove or edit entries following the examples in the file.
  ↳ -1849659473 table Table of 1849659473 entries. Add, remove or edit entries following the examples in the file.

Key Hashes

Setting Default What it does
DogKeys table Key or control used for dog keys. Controls are hash values from the game input list.
  ↳ G 0x760A9C6F Setting for g.
  ↳ B 0x4CC0E2FE Setting for b.
  ↳ S 0xD27782E3 Setting for s.
  ↳ W 0x8FD015D8 Setting for w.
  ↳ H 0x24978A28 Setting for h.
  ↳ U 0xD8F73058 Setting for u.
  ↳ R 0x0D55A0F0 Setting for r.
  ↳ ENTER 0xC7B5340A Setting for enter.
  ↳ E 0xDFF812F9 Setting for e.
  ↳ J 0xF3830D8E Setting for j.
  ↳ 7 0xB03A913B Setting for 7.
  ↳ 8 0x42385422 Setting for 8.
shared/config_shared.lua - 15 options#

General

Setting Default What it does
Language "en" 'en' (other languages: add them to shared/locale.lua)

General Settings

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
FadeIn true Switch for fade in: true = on, false = off (default true).
DistanceSpawn 20.0 Distance in game units that applies to distance spawn.
AnimalFood "raw_meat" Food item for both dogs and birds

Opening Hours

Setting Default What it does
AlwaysOpen true if false, configure open/close times
OpenTime 8 store opens
CloseTime 20 store closes

Blip Settings

Setting Default What it does
Blip table Map blip or icon settings for blip.
  ↳ blipName "Hunting Pets" Map blip or icon settings for blip name.
  ↳ blipSprite -699499938 Map blip or icon settings for blip sprite.
  ↳ blipScale 0.6 Map blip or icon settings for blip scale.

Shop Locations

Setting Default What it does
Shops table Table of shops entries. Add, remove or edit entries following the examples in the file.

Checkpoint Colours

Setting Default What it does
Checkpoints table Table of checkpoints entries. Add, remove or edit entries following the examples in the file.
  ↳ shop table Table of shop entries. Add, remove or edit entries following the examples in the file.

Free (included in JRS Core)   jrs_lumberjack

jrs core Lumberjack - jrs core only, organized secure lumber workflow

Resource jrs_lumberjack
Folder [JOBS]
Version 3.11.1
Author jrs team
Depends on jrs_character, jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 16,949 Lua lines

Commands

  • /carryoffset
  • /lumber
  • /lumberadmin
  • /lumberaxeoffset
  • /lumbercarry
  • /lumbercart
  • /lumberclose
  • /lumberdiag
  • /lumberfallenprop
  • /lumberfulladmin
  • /lumbermenu
  • /lumberprocessanim
  • /lumberprocesstool
  • /lumberprocesstooloffset
  • /lumberquick
  • /lumberreground
  • /lumbersawanim
  • /lumbersawhorse
  • /lumbersawtool
  • /lumbersawtooloffset
  • /lumbertoolgizmo
  • /lumberwagon
  • /lumberwagontest
  • /lumberworkpiece
  • /planttree
  • /sawhorse
  • /sawhorsedist
  • /sawhorsemove
  • /sawhorsereset
  • /sawhorsesave

Database tables

jrs_lumberjack_carts, jrs_lumberjack_world, jrs_lumberjack_world_history

shared/config.lua - 193 options#

General

Setting Default What it does
Locale "ar" Interface language of this script (en or ar).
CoreResource "jrs_core" REDEMPIRE resources this build is wired against.
InventoryResource "jrs_inventory" Setting for inventory resource.
CharacterResource "jrs_character" Setting for character resource.
UseWorldDatabase false back in here (COPY CODE) - they just no longer save anything to the DB or survive a resource restart on their own. Set true to restore the old database-backed world (persistent World Builder saves, survives restarts).
TreeSpots table Table of tree spots entries. Add, remove or edit entries following the examples in the file.
ProcessSpots table Process locations
SawingSpots table Sawing locations
CuttingKey 0x760A9C6F Key or control used for cutting key. Controls are hash values from the game input list.
Item "hatchet" item required to chop tree
HatchetDurability table jrs_inventory's own durability metadata (every 'equipment' category item, the hatchet included, already starts at durability=100 automatically - see jrs_inventory/config/config.lua Config.Metadata.CategoryDefaults.equipment).
  ↳ enabled true Turns enabled on or off (default true).
  ↳ lossPerChop table durability points lost per successful chop (random range)
  ↳ breakOnZero true destroy the hatchet once its durability reaches 0
MaxTimeCarryingTree 60 much in second to player stay carrying the tree before it deleted - requested 60 is fine
ProcessedWoodPickupMs 60000 Time in ms that processed wood waits at station for player to pick it up
TreeInWagon 15 max tree in wagon
MaxVisualCartLogs 3 Maximum visible logs/trees rendered on the wagon at once (prevents excessive stacking/ugly bushes while capacity remains Config.TreeInWagon)
StageOne 30000 Time to wait in regrowth trees depend on the stage
StageTwo 30000 Time to wait in regrowth trees depend on the stage
StageThree 30000 Time to wait in regrowth trees depend on the stage
RemoveMoneyOnSpawnCart true Take money when the player spawns a cart
AddMoneyWhenSendAway true Refund the money when the player sends the cart away -- (requires RemoveMoneyOnSpawnCart to be true)
CartCost 0.50 The cost of spawning the cart (authentic 1899 cents deposit)
UseJob true Turns job on or off (default true).
Jobs table Who is allowed: jobs, groups or permissions for jobs.
UseBlips true Turns blips on or off (default true).
Blips table Map blip or icon settings for blips.
Levels table Table of levels entries. Add, remove or edit entries following the examples in the file.
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.
  ↳ 6 table Table of 6 entries. Add, remove or edit entries following the examples in the file.
  ↳ 7 table Table of 7 entries. Add, remove or edit entries following the examples in the file.
  ↳ 8 table Table of 8 entries. Add, remove or edit entries following the examples in the file.
  ↳ 9 table Table of 9 entries. Add, remove or edit entries following the examples in the file.
  ↳ 10 table Table of 10 entries. Add, remove or edit entries following the examples in the file.
  ↳ 11 table Table of 11 entries. Add, remove or edit entries following the examples in the file.
  ↳ 12 table Table of 12 entries. Add, remove or edit entries following the examples in the file.
  ↳ 13 table Table of 13 entries. Add, remove or edit entries following the examples in the file.
  ↳ 14 table Table of 14 entries. Add, remove or edit entries following the examples in the file.
  ↳ 15 table Table of 15 entries. Add, remove or edit entries following the examples in the file.
  ↳ 16 table Table of 16 entries. Add, remove or edit entries following the examples in the file.
  ↳ 17 table Table of 17 entries. Add, remove or edit entries following the examples in the file.
  ↳ 18 table Table of 18 entries. Add, remove or edit entries following the examples in the file.
  ↳ 19 table Table of 19 entries. Add, remove or edit entries following the examples in the file.
  ↳ 20 table Table of 20 entries. Add, remove or edit entries following the examples in the file.
  ↳ 21 table Table of 21 entries. Add, remove or edit entries following the examples in the file.
  ↳ 22 table Table of 22 entries. Add, remove or edit entries following the examples in the file.
  ↳ 23 table Table of 23 entries. Add, remove or edit entries following the examples in the file.
  ↳ 24 table Table of 24 entries. Add, remove or edit entries following the examples in the file.
  ↳ 25 table Table of 25 entries. Add, remove or edit entries following the examples in the file.
  ↳ 26 table Table of 26 entries. Add, remove or edit entries following the examples in the file.
  ↳ 27 table Table of 27 entries. Add, remove or edit entries following the examples in the file.
  ↳ 28 table Table of 28 entries. Add, remove or edit entries following the examples in the file.
  ↳ 29 table Table of 29 entries. Add, remove or edit entries following the examples in the file.
  ↳ 30 table Table of 30 entries. Add, remove or edit entries following the examples in the file.
  ↳ 31 table Table of 31 entries. Add, remove or edit entries following the examples in the file.
  ↳ 32 table Table of 32 entries. Add, remove or edit entries following the examples in the file.
  ↳ 33 table Table of 33 entries. Add, remove or edit entries following the examples in the file.
  ↳ 34 table Table of 34 entries. Add, remove or edit entries following the examples in the file.
  ↳ 35 table Table of 35 entries. Add, remove or edit entries following the examples in the file.
  ↳ 36 table Table of 36 entries. Add, remove or edit entries following the examples in the file.
  ↳ 37 table Table of 37 entries. Add, remove or edit entries following the examples in the file.
  ↳ 38 table Table of 38 entries. Add, remove or edit entries following the examples in the file.
  ↳ 39 table Table of 39 entries. Add, remove or edit entries following the examples in the file.
  ↳ 40 table Table of 40 entries. Add, remove or edit entries following the examples in the file.
  ↳ 41 table Table of 41 entries. Add, remove or edit entries following the examples in the file.
  ↳ 42 table Table of 42 entries. Add, remove or edit entries following the examples in the file.
  ↳ 43 table Table of 43 entries. Add, remove or edit entries following the examples in the file.
  ↳ 44 table Table of 44 entries. Add, remove or edit entries following the examples in the file.
  ↳ 45 table Table of 45 entries. Add, remove or edit entries following the examples in the file.
  ↳ 46 table Table of 46 entries. Add, remove or edit entries following the examples in the file.
  ↳ 47 table Table of 47 entries. Add, remove or edit entries following the examples in the file.
  ↳ 48 table Table of 48 entries. Add, remove or edit entries following the examples in the file.
  ↳ 49 table Table of 49 entries. Add, remove or edit entries following the examples in the file.
  ↳ 50 table Table of 50 entries. Add, remove or edit entries following the examples in the file.
  ↳ 51 table Table of 51 entries. Add, remove or edit entries following the examples in the file.
  ↳ 52 table Table of 52 entries. Add, remove or edit entries following the examples in the file.
  ↳ 53 table Table of 53 entries. Add, remove or edit entries following the examples in the file.
  ↳ 54 table Table of 54 entries. Add, remove or edit entries following the examples in the file.
  ↳ 55 table Table of 55 entries. Add, remove or edit entries following the examples in the file.
  ↳ 56 table Table of 56 entries. Add, remove or edit entries following the examples in the file.
  ↳ 57 table Table of 57 entries. Add, remove or edit entries following the examples in the file.
  ↳ 58 table Table of 58 entries. Add, remove or edit entries following the examples in the file.
  ↳ 59 table Table of 59 entries. Add, remove or edit entries following the examples in the file.
  ↳ 60 table Table of 60 entries. Add, remove or edit entries following the examples in the file.
  ↳ 61 table Table of 61 entries. Add, remove or edit entries following the examples in the file.
  ↳ 62 table Table of 62 entries. Add, remove or edit entries following the examples in the file.
  ↳ 63 table Table of 63 entries. Add, remove or edit entries following the examples in the file.
  ↳ 64 table Table of 64 entries. Add, remove or edit entries following the examples in the file.
  ↳ 65 table Table of 65 entries. Add, remove or edit entries following the examples in the file.
  ↳ 66 table Table of 66 entries. Add, remove or edit entries following the examples in the file.
  ↳ 67 table Table of 67 entries. Add, remove or edit entries following the examples in the file.
  ↳ 68 table Table of 68 entries. Add, remove or edit entries following the examples in the file.
  ↳ 69 table Table of 69 entries. Add, remove or edit entries following the examples in the file.
  ↳ 70 table Table of 70 entries. Add, remove or edit entries following the examples in the file.
  ↳ 71 table Table of 71 entries. Add, remove or edit entries following the examples in the file.
  ↳ 72 table Table of 72 entries. Add, remove or edit entries following the examples in the file.
  ↳ 73 table Table of 73 entries. Add, remove or edit entries following the examples in the file.
  ↳ 74 table Table of 74 entries. Add, remove or edit entries following the examples in the file.
  ↳ 75 table Table of 75 entries. Add, remove or edit entries following the examples in the file.
  ↳ 76 table Table of 76 entries. Add, remove or edit entries following the examples in the file.
  ↳ 77 table Table of 77 entries. Add, remove or edit entries following the examples in the file.
  ↳ 78 table Table of 78 entries. Add, remove or edit entries following the examples in the file.
  ↳ 79 table Table of 79 entries. Add, remove or edit entries following the examples in the file.
  ↳ 80 table Table of 80 entries. Add, remove or edit entries following the examples in the file.
  ↳ 81 table Table of 81 entries. Add, remove or edit entries following the examples in the file.
  ↳ 82 table Table of 82 entries. Add, remove or edit entries following the examples in the file.
  ↳ 83 table Table of 83 entries. Add, remove or edit entries following the examples in the file.
  ↳ 84 table Table of 84 entries. Add, remove or edit entries following the examples in the file.
  ↳ 85 table Table of 85 entries. Add, remove or edit entries following the examples in the file.
  ↳ 86 table Table of 86 entries. Add, remove or edit entries following the examples in the file.
  ↳ 87 table Table of 87 entries. Add, remove or edit entries following the examples in the file.
  ↳ 88 table Table of 88 entries. Add, remove or edit entries following the examples in the file.
  ↳ 89 table Table of 89 entries. Add, remove or edit entries following the examples in the file.
  ↳ 90 table Table of 90 entries. Add, remove or edit entries following the examples in the file.
  ↳ 91 table Table of 91 entries. Add, remove or edit entries following the examples in the file.

PROCESS STATION CONFIG (إعدادات محطة البروسيس - معالجة الجذع)

Setting Default What it does
ProcessStation table Table of process station entries. Add, remove or edit entries following the examples in the file.
  ↳ model "p_lumbercart02x" Game model or entity used for model.
  ↳ actionPoint table World coordinates (x, y, z) used for action point.
  ↳ workpiece table Table of workpiece entries. Add, remove or edit entries following the examples in the file.

SAWING / SWING STATION CONFIG (إعدادات محطة السوينج - طاولة واحدة)

Setting Default What it does
EnableCompanionSawhorse false Turns companion sawhorse on or off (default false).
SawStation table Table of saw station entries. Add, remove or edit entries following the examples in the file.
  ↳ model "p_sawhorse01x" Game model or entity used for model.
  ↳ companionModel nil Game model or entity used for companion model.
  ↳ actionPoint table Action point: where the player stands (في المنتصف تماماً أمام الخشبة رياضياً)
  ↳ centerOffset table Center offset: where the player faces (منتصف الخشبة تماماً)
  ↳ companion nil Companion sawhorse disabled: الخشبة على طاولة واحدة فقط
  ↳ workpiece table Workpiece (wood plank) position on the sawhorses
SawStationModel "p_sawhorse01x" Game model or entity used for saw station model.
SawingWork table request: starts with the wood plane, then the hand saw. المرحلة 1: تسوية الخشب بالمسحاج (Wood plane) المرحلة 2: نشر الخشب بالمنشار (Hand saw)
  ↳ phase1 table Table of phase1 entries. Add, remove or edit entries following the examples in the file.
  ↳ phase2 table Table of phase2 entries. Add, remove or edit entries following the examples in the file.
  ↳ anim table Legacy compatibility fallbacks (now mirror phase1: plane first):
  ↳ tool table Table of tool entries. Add, remove or edit entries following the examples in the file.
  ↳ buckingSawPreset table JRS bucking saw preset (منشار السوينج الثنائي):
  ↳ enablePhase2 false Two-phase transition disabled per request: sawing now stays on phase1 (the wood plane animation) for the whole action, no switch to phase2.
DefaultSawhorseCompanion Config.SawStation.companion Setting for default sawhorse companion.
WoodVisuals Config.WoodVisuals or {} Setting for wood visuals.
TreeGrowth table Table of tree growth entries. Add, remove or edit entries following the examples in the file.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ seedItem "tree_seed" Inventory items used by seed item. Names must exist in the jrs_items table.
  ↳ plantDuration 6000 Time setting for plant duration. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ plantXp 15 Number for plant xp (default 15).
  ↳ maxTreesPerPlayer 8 Upper limit for max trees per player.
  ↳ minDistance 3.5 Distance in game units that applies to min distance.
  ↳ stage1Duration 60 seconds to grow from sapling to young tree
  ↳ stage2Duration 60 seconds to grow from young tree to mature tree
  ↳ stage1Model "p_tree_ponderosa_sap_01" Game model or entity used for stage1 model.
  ↳ stage2Model "p_tree_ponderosa_sap_02" Game model or entity used for stage2 model.
  ↳ stage3Model "p_tree_pine_ponderosa_07" Game model or entity used for stage3 model.
  ↳ stumpModel "p_tree_stump_cut_01" Game model or entity used for stump model.
  ↳ pickupDurationMs 60000 Time setting for pickup duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
DutyClothing table Table of duty clothing entries. Add, remove or edit entries following the examples in the file.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ mode "uniform" Setting for mode.
  ↳ cleanupOnRestart true Switch for cleanup on restart: true = on, false = off (default true).
  ↳ clothingResource "jrs_clothing" Setting for clothing resource.
  ↳ minUniformComponents 1 Minimum or level requirement for min uniform components.
  ↳ maleSourcePed "s_m_m_cghworker_01" Game model or entity used for male source ped.
  ↳ maleOutfitPreset 0 Number for male outfit preset (default 0).
  ↳ Uniform table Table of uniform entries. Add, remove or edit entries following the examples in the file.

Free (included in JRS Core)   jrs_mdt

JRS Core MDT - records, warrants, reports, charges and fines for the law

Resource jrs_mdt
Folder [JOBS]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core, oxmysql
Interface Yes (NUI)
Languages de, en, es, fr, it, pl, pt, ru
Code size 6,019 Lua lines

Commands

  • /mdt

Exports

attemptLocalOverride, createOrUpdateFine, forceRefreshRoles, getAllPlayerRoles, getAllRoles, getChargeAttachments, getChargeTemplates, getCitizenFines, getConfigVersion, getJobInfo, getJobLabel, getLawJobs, getMyRole, getPermissions, getPlayerFines, getPlayerRole, getReportsWithCharges, getSettings, getStaffPermissions, getTotalFinesAmount, getUnpaidFines, getValidatedLawJobs, hasAccess, hasAdminPermission, hasPermission, hasRolePermission, hasUnpaidFines, isAdmin, isLawJob, isLawOfficer

shared/config.lua - 33 options#

General

Setting Default What it does
Language "en" 'en' or another file in locales/

Law Enforcement Jobs

Setting Default What it does
LawJobs table Jobs that can access the MDT system
  ↳ Police table Table of police entries. Add, remove or edit entries following the examples in the file.
  ↳ Valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ Strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ Blackwater table Table of blackwater entries. Add, remove or edit entries following the examples in the file.
  ↳ Rhodes table Table of rhodes entries. Add, remove or edit entries following the examples in the file.
  ↳ SaintDenis table Table of saint denis entries. Add, remove or edit entries following the examples in the file.
  ↳ Tumbleweed table Table of tumbleweed entries. Add, remove or edit entries following the examples in the file.
  ↳ Annesburg table Table of annesburg entries. Add, remove or edit entries following the examples in the file.
  ↳ Armadillo table Table of armadillo entries. Add, remove or edit entries following the examples in the file.

MDT Settings

Setting Default What it does
Settings table Table of settings entries. Add, remove or edit entries following the examples in the file.
  ↳ command "mdt" Setting for command.
  ↳ keybind nil Setting for keybind.
  ↳ requireOnDuty false jrs_police handles duty itself
  ↳ maxSearchResults 50 Upper limit for max search results.
  ↳ recordRetentionDays 0 Number for record retention days (default 0).
  ↳ warrantExpirationDays 0 Number for warrant expiration days (default 0).
  ↳ debug false Debug output for debug: true = yes, false = no (default false).

Report Incident Types

Setting Default What it does
IncidentTypes table label: Display name shown in UI value: Stored in database (use lowercase, no spaces) color: Tailwind classes for badge styling

Default Values

Setting Default What it does
Defaults table Table of defaults entries. Add, remove or edit entries following the examples in the file.
  ↳ jobGrade table Who is allowed: jobs, groups or permissions for job grade.

Fines System

Setting Default What it does
Fines table Table of fines entries. Add, remove or edit entries following the examples in the file.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ gracePeriodDays 7 Number for grace period days (default 7).
  ↳ paymentLocations table World coordinates (x, y, z) used for payment locations.
Jail table Table of jail entries. Add, remove or edit entries following the examples in the file.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ delaySeconds 5 Time setting for delay seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ maxDistance 10.0 Distance in game units that applies to max distance.
  ↳ jailCoords vector3(2761.44, -1460.54, 4... World coordinates (x, y, z) used for jail coords.
  ↳ jailHeading 90.0 Number for jail heading (default 90.0).
  ↳ minutesPerMonth 1 Number for minutes per month (default 1).

Free (included in JRS Core)   jrs_medic

A medical scrpt for jrs core framework

Resource jrs_medic
Folder [JOBS]
Version 0.3
Author JRS TEAM
Interface No
Code size 1,344 Lua lines

Exports

getDoctorFromCall, isOnDuty

configs/config.lua - 38 options#

General

Setting Default What it does
DevMode false Switch for dev mode: true = on, false = off (default false).
Align "top-left" menu alignment
Lang "English" language you want to use please make sure its in the translation.lua
AllowOnlyDeadToAlert true if true only dead players can alert doctors
AlertDoctorCommand "calldoctor" command to alert doctors
cancelalert "cancelDoctorAlert" command to cancel alert
finishalert "finishDoctorAlert" command to finish alert
DoctorMenuCommand "doctormenu" Command to go on duty and teleport
Keys table prompts
  ↳ B 0x4CC0E2FE Setting for b.
DoctorJobs table jobs that can open hire menu
  ↳ doctor table Table of doctor entries. Add, remove or edit entries following the examples in the file.
ShareStorage true if true storage for every doctor station will be shared if false they will be unique
Storage table storage locations check the server.lua for webhook url location line 21 in server.lua
  ↳ Valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ Strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ SaintDenis table Table of saint denis entries. Add, remove or edit entries following the examples in the file.
UseTeleportsMenu true if true players can use teleport from the doctor menu if false only from locations
Teleports table set up locations to teleport to or from
  ↳ Valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ Strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ SaintDenis table Table of saint denis entries. Add, remove or edit entries following the examples in the file.
Blips table blips for stations
  ↳ Color "COLOR_WHITE" Setting for color.
  ↳ Style "BLIP_STYLE_FRIENDLY_ON_RADAR" Setting for style.
  ↳ Sprite "blip_mp_travelling_saleswoman" Map blip or icon settings for sprite.
AlertBlips table Map blip or icon settings for alert blips.
  ↳ Color "COLOR_RED" Setting for color.
  ↳ Style "BLIP_STYLE_CHALLENGE_OBJECTIVE" Setting for style.
  ↳ Sprite "blip_mp_travelling_saleswoman" Map blip or icon settings for sprite.
Stations table doctor stations boss menu locations
  ↳ Valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ Strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ SaintDenis table Table of saint denis entries. Add, remove or edit entries following the examples in the file.
Items table usable items
  ↳ bandage table item name
  ↳ potion table Table of potion entries. Add, remove or edit entries following the examples in the file.
  ↳ syringe table Table of syringe entries. Add, remove or edit entries following the examples in the file.

Free (included in JRS Core)   jrs_mining

jrs_mining - native jrs core mining, order-based smelting and gold panning with restart recovery

Resource jrs_mining
Folder [JOBS]
Version 7.17.1
Author jrs team
Depends on jrs_character, jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 22,626 Lua lines

Commands

  • /goldsmelt_offset
  • /helmetoffset
  • /miningback
  • /miningbag
  • /miningduty
  • /miningenter
  • /mininghand
  • /miningstore
  • /pickaxeoffset

Exports

GetPlayerLevel, GetPlayerXP

Database tables

IF, jrs_mining_employees, jrs_mining_gold_stations, jrs_mining_jobs, jrs_mining_mines, jrs_mining_order_batches, jrs_mining_order_events, jrs_mining_order_items, jrs_mining_orders, jrs_mining_payouts, jrs_mining_sell_prices, jrs_mining_server_task_players, jrs_mining_server_task_state, jrs_mining_server_tasks, jrs_mining_smelting, jrs_mining_xp

config/config.lua - 251 options#

General

Setting Default What it does
REDEMPIRE table ─────────────────────── REDEMPIRE framework binding ─────────────────────── This build is REDEMPIRE-only. jrs_core owns character/account data, jrs_character owns the final selector/spawn gate, and jrs_inventory owns inventory sta
  ↳ CoreResource "jrs_core" Setting for core resource.
  ↳ CharacterResource "jrs_character" exact target: uploaded jrs_character 3.4.8
  ↳ InventoryResource "jrs_inventory" exact target: uploaded jrs_inventory 1.6.33
  ↳ ClothingResource "Jrs_clothing" optional; only used to restore saved clothing after duty
  ↳ RequireCharacterReady true Requires character ready: true = yes, false = no (default true).
Locale "ar" Language: en, ar, fr, es, de, it, pt, nl
Debug false Debug output for debug: true = yes, false = no (default false).
ResourceName "jrs_mining" Canonical resource identity. Keep the folder/resource name exactly jrs_mining.
RestartRecovery table character after restart jrs_mining is automatic. In-progress economic actions are intentionally cancelled server-side; duty can be restored for the same character without trusting client data.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ preserveDuty true Switch for preserve duty: true = on, false = off (default true).
  ↳ bootstrapIntervalMs 250 Time setting for bootstrap interval ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ integrationRetryMs 750 Number for integration retry ms (default 750).
  ↳ npcWatchdogMs 1500 Number for npc watchdog ms (default 1500).
Prompts table One physical key press = one action. The prompt layer also has a release latch + debounce so a native prompt and its direct-input fallback can never fire the same event twice.
  ↳ singlePress true Switch for single press: true = on, false = off (default true).
  ↳ debounceMs 450 Number for debounce ms (default 450).
ToolControls table Pickaxe visual controls. Gameplay input is read contextually from the same RedM control hashes used by the native prompts; no persisted key mapping is required. Commands remain available as F8 diagnostic fallbacks.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ handControl 0x6319DB71 ARROW UP: draw/put the remembered pickaxe in hand
  ↳ backControl 0x05CA7C52 ARROW DOWN: place the equipped pickaxe on the back
  ↳ hideControl 0xDEB34313 ARROW RIGHT: hide/remove the visual completely
  ↳ toggleCommand "pickaxe" F8 fallback: toggle hand/back
  ↳ removeCommand "hidepickaxe" Setting for remove command.
  ↳ initialSlot "hand" Setting for initial slot.
  ↳ restoreLastSlot false Switch for restore last slot: true = on, false = off (default false).
  ↳ debounceMs 220 Number for debounce ms (default 220).
  ↳ notifications false Switch for notifications: true = on, false = off (default false).
  ↳ consumeControls false Switch for consume controls: true = on, false = off (default false).
  ↳ showPromptLoop true native RedM prompt group while a tool stack is remembered
  ↳ promptGroupLocale "ui_mining_tool" Interface language of this script (en or ar).
  ↳ handPromptLocale "prompt_pickaxe_hand" Interface language of this script (en or ar).
  ↳ backPromptLocale "prompt_pickaxe_back" Interface language of this script (en or ar).
  ↳ hidePromptLocale "prompt_pickaxe_bag" Interface language of this script (en or ar).
  ↳ keyMapping false contextual direct-control capture is authoritative (no persisted binds)
  ↳ showHud true notification-style tool HUD while the tool is in HAND
Duty table Duty lifecycle. Duty is bound to the mine area, not only the NPC.
  ↳ autoOffOutsideMine false Automatically handles off outside mine: true = yes, false = no (default false).
  ↳ areaRadius 145.0 Distance in game units that applies to area radius.
  ↳ serverCheckSeconds 5 Number for server check seconds (default 5).
  ↳ applyUniform true Switch for apply uniform: true = on, false = off (default true).
  ↳ cleanupClothingOnRestart true restore the saved REDEMPIRE outfit on mining resource restart/stop
  ↳ maleUniformSourcePed "loansharking_asbminer_males_01" runtime-cloned clothing source (male duty outfit)
  ↳ hours table 24/7 mining duty. Time must never block clock-in or force a player off duty. The open/close values are retained only for backwards-compatible configs.
  ↳ Helmet table with /helmetoffset - a bone offset cannot be judged from outside a running game. The lamp (Light below) is drawn from the ped's head bone every frame and never depended on the prop, so it works either way.
  ↳ Uniform table Real multiplayer clothing components. These are applied as clothing components, never spawned/attached as props. On clock-out the REDEMPIRE clothing reload event restores the player's saved outfit.
Admin table Admin UI features (all server actions are still protected by FullAccess).
  ↳ command "miningadmin" Setting for command.
  ↳ maxGiveAmount 999 Upper limit for max give amount.
  ↳ maxMoneyAmount 1000000 Money value for max money amount. Rewards go through the economy multiplier of jrs_core.
KeyToInteract 0xCEFD9220 Main world interaction key: E (same native control used by the REDEMPIRE prompt stack).
RequireJob true true = only JobName may mine
JobName "mining" Who is allowed: jobs, groups or permissions for job name.
Tool table The pickaxe is a USABLE item: use it from the inventory to equip it. Arrow controls while on duty: UP = hand, DOWN = back, RIGHT = hide visual. Hidden/back states clear the carry animation; the inventory item is never deleted.
  ↳ prop "p_pickaxe01x" fallback prop if a tier has no model
  ↳ useHelmet false duty clothing is a real outfit; never attach clothing props to the body
XP table ───────────────────────── XP / progression ────────────────────────
  ↳ enabled true Turns enabled on or off (default true).
  ↳ xpPerLevel 100 xp needed for each level
  ↳ maxLevel 100 Upper limit for max level.
  ↳ timeByLevel table Swing time (seconds) by level - interpolated between breakpoints. Higher level = faster mining. Lvl 0 = 15s ... Lvl 100 = 7s.
CoreCharacterXP table Optional mirror into the character's general jrs_core XP. Mining levels and unlocks always use jrs_mining_xp regardless of these settings.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ multiplier 1.0 Rate or multiplier for multiplier.
  ↳ reason "jrs_mining" Setting for reason.
ServerTolerance 5.0 extra slack (m) added to node radius server-side
Cooldown 1 seconds between actions (server enforced)
InfiniteNodes true true = rocks never deplete or force players to change spots; mining is continuous at the same node
MiningInteraction table Config.mineData. The player is gently aligned beside that coordinate before the immediate one-attempt skill check starts. Mining requires the pickaxe to already be HAND.
  ↳ requireHand false Requires hand: true = yes, false = no (default false).
  ↳ alignToRock true face the rock only; never changes player coordinates
  ↳ alignDistance 1.15 Distance in game units that applies to align distance.
  ↳ minAlignDistance 0.75 Distance in game units that applies to min align distance.
  ↳ maxAlignDistance 1.80 Distance in game units that applies to max align distance.
  ↳ serverResultToleranceMs 3000 Number for server result tolerance ms (default 3000).
  ↳ serverAngleToleranceDegrees 15 Number for server angle tolerance degrees (default 15).
  ↳ minimumSkillTimeMs 250 Minimum or level requirement for minimum skill time ms.
ActionMovement table Player locomotion is never hard-frozen by REDEMPIRE Mining. Walking away cancels the active operation instead of snapping/dragging the ped back into position.
  ↳ cancelOnMove true Switch for cancel on move: true = on, false = off (default true).
  ↳ cancelDistance 0.90 Distance in game units that applies to cancel distance.
  ↳ minigameCancelDistance 1.10 Distance in game units that applies to minigame cancel distance.
ServerTasks table from resources that actually exist in Config.mineData rewards. Task creation, progress, expiry and completion are silent: players discover task state only by physically visiting a mining shop and opening the Tasks tab.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ initialDelaySeconds 60 Time setting for initial delay seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ durationSeconds 1200 Time setting for duration seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ cooldownSeconds 900 Time setting for cooldown seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ targetMin 45 Minimum or level requirement for target min.
  ↳ targetMax 90 Upper limit for target max.
  ↳ cashRewardPool 3.50 split proportionally across contributors (1899 cents scale)
  ↳ xpReward 150 awarded to online contributors at completion
  ↳ excludeRare true Switch for exclude rare: true = on, false = off (default true).
DynamicSellPrices table Resource SELL prices only. Tool purchase prices and mineral-order prices are never changed. Current values + next update time are persisted in MySQL.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ updateMinutes 30 Number for update minutes (default 30).
  ↳ minMultiplier 0.70 Minimum or level requirement for min multiplier.
  ↳ maxMultiplier 1.55 Upper limit for max multiplier.
  ↳ maxStep 0.18 Upper limit for max step.
  ↳ preventBuySellArbitrage true Switch for prevent buy sell arbitrage: true = on, false = off (default true).
ItemImagePath 'nui://jrs_inventory/html/im... images come from the inventory; NUI falls back to bundled item_imgs/ if missing
Minigame table ═══════════════════════ SKILL-CHECK MINIGAME ══════════════════════ Mandatory circular timing check. One attempt only: stop the rotating needle inside the randomized success arc. Legacy per-node rounds are ignored.
  ↳ enabled true mining uses the original circular skill-check minigame
  ↳ style "circle" Setting for style.
  ↳ rounds 1 hard one-attempt skill check
  ↳ arcMinDegrees 58 Circular timing check. Each attempt randomises target position, rotation direction and speed. Degrees are used for the target arcs.
  ↳ arcMaxDegrees 78 Upper limit for arc max degrees.
  ↳ perfectDegrees 18 Number for perfect degrees (default 18).
  ↳ speedMinDegrees 42 slow/smooth: ~8.6 sec per revolution
  ↳ speedMaxDegrees 58 ~6.2 sec per revolution
  ↳ startOffsetMin 125 Minimum or level requirement for start offset min.
  ↳ startOffsetMax 205 Upper limit for start offset max.
  ↳ timeoutMs 16000 Time setting for timeout ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ failReward 0.0 Money value for fail reward. Rewards go through the economy multiplier of jrs_core.
  ↳ precisionBonus table Money value for precision bonus. Rewards go through the economy multiplier of jrs_core.
  ↳ blockGameControls true NUI owns SPACE/ENTER during the single circular attempt.
  ↳ blockedControls table Table of blocked controls entries. Add, remove or edit entries following the examples in the file.

Optional per-node fields:

Setting Default What it does
Nodes table NOTE: actual rock mining lives in Config.mineData (config/mining.lua). These nodes are only the stationary Processing stations. Ore-to-bar smelting is its own order-based system (config/smelting.lua).
LevelSystemEnabled true false = disable the level system (flat XP fallback)
ExpRewardNotif true show "gained EXP" notification
LevelUpNotif true show "level up" notification
MiningExpAdminCommand "giveminingexp" /giveminingexp <playerServerId> <expAmount> (admin, sets mining exp)
MinigExpCommand "miningexp" /miningexp (player: display mining exp)
LevelSystem table cumulative Experience threshold to REACH that level, plus the reward granted on reaching it. Higher levels unlock rarer resources inside each mine (see the per-entry level field in config/mining.lua reward tables).
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.
  ↳ 6 table Table of 6 entries. Add, remove or edit entries following the examples in the file.
  ↳ 7 table Table of 7 entries. Add, remove or edit entries following the examples in the file.
  ↳ 8 table Table of 8 entries. Add, remove or edit entries following the examples in the file.
  ↳ 9 table Table of 9 entries. Add, remove or edit entries following the examples in the file.
  ↳ 10 table Table of 10 entries. Add, remove or edit entries following the examples in the file.
  ↳ 11 table Table of 11 entries. Add, remove or edit entries following the examples in the file.
  ↳ 12 table Table of 12 entries. Add, remove or edit entries following the examples in the file.
  ↳ 13 table Table of 13 entries. Add, remove or edit entries following the examples in the file.
  ↳ 14 table Table of 14 entries. Add, remove or edit entries following the examples in the file.
  ↳ 15 table Table of 15 entries. Add, remove or edit entries following the examples in the file.
  ↳ 16 table Table of 16 entries. Add, remove or edit entries following the examples in the file.
  ↳ 17 table Table of 17 entries. Add, remove or edit entries following the examples in the file.
  ↳ 18 table Table of 18 entries. Add, remove or edit entries following the examples in the file.
  ↳ 19 table Table of 19 entries. Add, remove or edit entries following the examples in the file.
  ↳ 20 table Table of 20 entries. Add, remove or edit entries following the examples in the file.
  ↳ 21 table Table of 21 entries. Add, remove or edit entries following the examples in the file.
  ↳ 22 table Table of 22 entries. Add, remove or edit entries following the examples in the file.
  ↳ 23 table Table of 23 entries. Add, remove or edit entries following the examples in the file.
  ↳ 24 table Table of 24 entries. Add, remove or edit entries following the examples in the file.
  ↳ 25 table Table of 25 entries. Add, remove or edit entries following the examples in the file.
  ↳ 26 table Table of 26 entries. Add, remove or edit entries following the examples in the file.
  ↳ 27 table Table of 27 entries. Add, remove or edit entries following the examples in the file.
  ↳ 28 table Table of 28 entries. Add, remove or edit entries following the examples in the file.
  ↳ 29 table Table of 29 entries. Add, remove or edit entries following the examples in the file.
  ↳ 30 table Table of 30 entries. Add, remove or edit entries following the examples in the file.
  ↳ 31 table Table of 31 entries. Add, remove or edit entries following the examples in the file.
  ↳ 32 table Table of 32 entries. Add, remove or edit entries following the examples in the file.
  ↳ 33 table Table of 33 entries. Add, remove or edit entries following the examples in the file.
  ↳ 34 table Table of 34 entries. Add, remove or edit entries following the examples in the file.
  ↳ 35 table Table of 35 entries. Add, remove or edit entries following the examples in the file.
  ↳ 36 table Table of 36 entries. Add, remove or edit entries following the examples in the file.
  ↳ 37 table Table of 37 entries. Add, remove or edit entries following the examples in the file.
  ↳ 38 table Table of 38 entries. Add, remove or edit entries following the examples in the file.
  ↳ 39 table Table of 39 entries. Add, remove or edit entries following the examples in the file.
  ↳ 40 table Table of 40 entries. Add, remove or edit entries following the examples in the file.
  ↳ 41 table Table of 41 entries. Add, remove or edit entries following the examples in the file.
  ↳ 42 table Table of 42 entries. Add, remove or edit entries following the examples in the file.
  ↳ 43 table Table of 43 entries. Add, remove or edit entries following the examples in the file.
  ↳ 44 table Table of 44 entries. Add, remove or edit entries following the examples in the file.
  ↳ 45 table Table of 45 entries. Add, remove or edit entries following the examples in the file.
  ↳ 46 table Table of 46 entries. Add, remove or edit entries following the examples in the file.
  ↳ 47 table Table of 47 entries. Add, remove or edit entries following the examples in the file.
  ↳ 48 table Table of 48 entries. Add, remove or edit entries following the examples in the file.
  ↳ 49 table Table of 49 entries. Add, remove or edit entries following the examples in the file.
  ↳ 50 table Table of 50 entries. Add, remove or edit entries following the examples in the file.
  ↳ 51 table Table of 51 entries. Add, remove or edit entries following the examples in the file.
  ↳ 52 table Table of 52 entries. Add, remove or edit entries following the examples in the file.
  ↳ 53 table Table of 53 entries. Add, remove or edit entries following the examples in the file.
  ↳ 54 table Table of 54 entries. Add, remove or edit entries following the examples in the file.
  ↳ 55 table Table of 55 entries. Add, remove or edit entries following the examples in the file.
  ↳ 56 table Table of 56 entries. Add, remove or edit entries following the examples in the file.
  ↳ 57 table Table of 57 entries. Add, remove or edit entries following the examples in the file.
  ↳ 58 table Table of 58 entries. Add, remove or edit entries following the examples in the file.
  ↳ 59 table Table of 59 entries. Add, remove or edit entries following the examples in the file.
  ↳ 60 table Table of 60 entries. Add, remove or edit entries following the examples in the file.
  ↳ 61 table Table of 61 entries. Add, remove or edit entries following the examples in the file.
  ↳ 62 table Table of 62 entries. Add, remove or edit entries following the examples in the file.
  ↳ 63 table Table of 63 entries. Add, remove or edit entries following the examples in the file.
  ↳ 64 table Table of 64 entries. Add, remove or edit entries following the examples in the file.
  ↳ 65 table Table of 65 entries. Add, remove or edit entries following the examples in the file.
  ↳ 66 table Table of 66 entries. Add, remove or edit entries following the examples in the file.
  ↳ 67 table Table of 67 entries. Add, remove or edit entries following the examples in the file.
  ↳ 68 table Table of 68 entries. Add, remove or edit entries following the examples in the file.
  ↳ 69 table Table of 69 entries. Add, remove or edit entries following the examples in the file.
  ↳ 70 table Table of 70 entries. Add, remove or edit entries following the examples in the file.
  ↳ 71 table Table of 71 entries. Add, remove or edit entries following the examples in the file.
  ↳ 72 table Table of 72 entries. Add, remove or edit entries following the examples in the file.
  ↳ 73 table Table of 73 entries. Add, remove or edit entries following the examples in the file.
  ↳ 74 table Table of 74 entries. Add, remove or edit entries following the examples in the file.
  ↳ 75 table Table of 75 entries. Add, remove or edit entries following the examples in the file.
LevelScaling table ──────────────────── level-based reward scaling ──────────────────── amountPerLevel : extra base items added to every mining drop, per level. (floor(level * amountPerLevel) is added to the rolled amount)
  ↳ amountPerLevel 0.05 level 20 = +1 item, level 40 = +2 items, ...
MineBusiness table ═══════════════════════ MINE OWNERSHIP / ACCESS ═══════════════════ Mine state is persistent in MySQL. "free" = public mine, "owned" = only the owner + employees can mine it. Admins can change mode/owner at runtime.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ defaultMode "owned" Setting for default mode.
  ↳ employeeLimit 12 Upper limit for employee limit.
  ↳ ownerCanHire true Switch for owner can hire: true = on, false = off (default true).
  ↳ employeeCanMine true Switch for employee can mine: true = on, false = off (default true).
  ↳ showMineTabAtNpc true Shows mine tab at npc: true = yes, false = no (default true).
  ↳ purchaseAtMineNpc false mine deeds are sold only through the Pause/Base Menu store
  ↳ defaultSalary 0.75 Money value for default salary. Rewards go through the economy multiplier of jrs_core.
  ↳ maxSalary 2.50 Money value for max salary. Rewards go through the economy multiplier of jrs_core.
  ↳ maxPayrollTotal 50.00 Upper limit for max payroll total.
  ↳ payrollEnabled true Switch for payroll enabled: true = on, false = off (default true).
  ↳ treasuryEnabled true Switch for treasury enabled: true = on, false = off (default true).
  ↳ payrollTaxPercent 10 gross salary tax; employee receives the net amount
  ↳ maxTreasuryTransaction 1000000 Upper limit for max treasury transaction.
  ↳ freeMines table Only these mines are public. Every mine listed in Config.ServiceMineIds (free or owned) has its rewards converted to raw rock by Config.MineralProcessing and must be processed at its processing station.
  ↳ sales table Every other mine is private while unowned and can be bought at its own linked mining store. Features apply to both the owner and employees.
  ↳ defaults table Per-mine FIRST-RUN defaults. Database/admin changes take priority once the mine has been created in MySQL. Use the mine id from config/mining.lua.
JobMarket table ═════════════════════════ JOB MARKET ══════════════════════════════ Player-created delivery contracts. Payout is escrowed when the job is created, so workers cannot complete an unfunded contract.
  ↳ enabled false v6.3 shop uses mineral batch orders instead of player job contracts
  ↳ creationFee 2 Money value for creation fee. Rewards go through the economy multiplier of jrs_core.
  ↳ maxActiveCreated 3 Upper limit for max active created.
  ↳ maxActiveAccepted 2 Upper limit for max active accepted.
  ↳ minAmount 1 Minimum or level requirement for min amount.
  ↳ maxAmount 100 Upper limit for max amount.
  ↳ minPayout 1 Money value for min payout. Rewards go through the economy multiplier of jrs_core.
  ↳ maxPayout 10000 Money value for max payout. Rewards go through the economy multiplier of jrs_core.
  ↳ minMinutes 5 Minimum or level requirement for min minutes.
  ↳ maxMinutes 180 Upper limit for max minutes.
  ↳ refreshSeconds 20 Number for refresh seconds (default 20).
  ↳ deliveryAtPostedMine true accepted jobs must be delivered at the mine where they were posted
  ↳ allowedItems table Inventory items used by allowed items. Names must exist in the jrs_items table.
AllowMiningCancel true ═══════════════════ INTEGRATION / GLOBAL SWITCHES ═══════════════════
AdminAce "jrs.mining" Who is allowed: jobs, groups or permissions for admin ace.
CoordCheckerEfficiency 3 World coordinates (x, y, z) used for coord checker efficiency.
MiniGameAsMineAccurately false Switch for mini game as mine accurately: true = on, false = off (default false).
config/goldpanning.lua - 87 options#

General

Setting Default What it does
GoldPanning table Money value for gold panning. Rewards go through the economy multiplier of jrs_core.
  ↳ enabled false 7.12.9: standalone river panning disabled in favor of BCC-style wash station only
  ↳ item "goldpan" Inventory items used by item. Names must exist in the jrs_items table.
  ↳ requireJob true Pan + wash station only for these jobs (jrs_multijob 'mingold' = Gold Prospector). No admin bypass, no mining duty: holding the job is enough.
  ↳ jobs table Who is allowed: jobs, groups or permissions for jobs.
  ↳ requireDuty false Requires duty: true = yes, false = no (default false).
  ↳ shopItems table Gold Prospectors use any mining shop WITHOUT duty, limited to these rows of Config.Shops.types (tools = buy, materials = sell). BCC tools only.
  ↳ cooldownSeconds 15 Time setting for cooldown seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ actionDurationMs 5000 Time setting for action duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ minigameMinMs 4000 Minimum or level requirement for minigame min ms.
  ↳ minMovementDistance 2.0 Distance in game units that applies to min movement distance.
  ↳ spotMemoryMs 300000 Number for spot memory ms (default 300000).
  ↳ goldChance 50 Money value for gold chance. Rewards go through the economy multiplier of jrs_core.
  ↳ rewards table Table of rewards entries. Add, remove or edit entries following the examples in the file.
  ↳ waterTypes table 7.15.0: exactly BCC's Config.waterTypes - every named water zone (river, creek, lake, pond, swamp, ocean). waterHashes is built from it below.
GoldPanningStation table BCC-style wash-station flow. The original river-pan flow remains enabled.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ model "p_goldcradlestand01x" Game model or entity used for model.
  ↳ stationItem "goldwash_table" Inventory items used by station item. Names must exist in the jrs_items table.
  ↳ mudBucket "mud_bucket" Setting for mud bucket.
  ↳ emptyMudBucket "empty_mud_bucket" Setting for empty mud bucket.
  ↳ waterBucket "wateringcan" Setting for water bucket.
  ↳ emptyWaterBucket "wateringcan_empty" Setting for empty water bucket.
  ↳ panItem "goldpan" Inventory items used by pan item. Names must exist in the jrs_items table.
  ↳ requirePanItem true BCC: the wash stage needs a goldpan in the bag. It starts at durability 100 and loses panWearPerWash per wash ATTEMPT; when what is left is below one more wash it breaks (100 / 2 = 50 washes).
  ↳ panWearPerWash 2 Number for pan wear per wash (default 2).
  ↳ siftPanModel "p_copperpan02x" BCC: no pan on the table; this prop is held in the right hand (PH_R_Hand) only while the panning animation plays.
  ↳ siftsPerFill 1 BCC flow: one mud bucket + one water can = exactly one wash.
  ↳ useMinigame true BCC: a skill-check minigame decides the wash. Failing it pays nothing and keeps the mud/water in the table so the player can try again.
  ↳ minigameAttempts 2 BCC Config.Minigame.maxattempts = 2: two tries per wash before it fails.
  ↳ ownerOnly true Only the player who built the table can load / wash / pick it up (BCC).
  ↳ maxShoreDistance 6.0 7.15.7: the table is built on dry ground (it blacks out water it touches); river/lake water must be within this many metres of the spot.
  ↳ blip true Map blip on the player's own tables only (false = no blip).
  ↳ blipSprite "blip_ambient_chore" Map blip or icon settings for blip sprite.
  ↳ blipScale 0.2 Map blip or icon settings for blip scale.
  ↳ washReward table BCC reward: every passed wash pays washReward for sure, plus an extraRewardChance (%) roll from the river zone's pool (or Config.GoldPanning.rewards outside a zone).
  ↳ extraRewardChance 10 Money value for extra reward chance. Rewards go through the economy multiplier of jrs_core.
  ↳ fillDurationMs 8000 Time setting for fill duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ buildDurationMs 8000 Time setting for build duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ washDurationMs 8000 Time setting for wash duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ interactDistance 2.2 Distance in game units that applies to interact distance.
  ↳ placementDistance 1.6 Distance in game units that applies to placement distance.
  ↳ maxStationsPerCharacter 2 Upper limit for max stations per character.
  ↳ rewardXpMultiplier 1.25 Money value for reward xp multiplier. Rewards go through the economy multiplier of jrs_core.
GoldPanningRivers table Specialized Prospecting River Zones across the Frontier
GoldSmelt table 7.15.0 Gold furnace (from alfie_goldsmelt): the ONLY way to make gold bars. The NPC smelters no longer take gold nuggets. Bought at the mining shop; needs the Gold Prospector job like the wash station.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ furnaceItem "gold_furnace" Inventory items used by furnace item. Names must exist in the jrs_items table.
  ↳ model "p_goldsmeltburner01x" native; hawk's escrowed gold_smelt crashed clients when merged (7.16.13)
  ↳ fallbackModel "p_goldsmeltburner01x" Game model or entity used for fallback model.
  ↳ smeltKey 0x760A9C6F G (original)
  ↳ pickupKey 0xCEFD9220 E (original)
  ↳ chunkModel "p_goldnugget01x" Game model or entity used for chunk model.
  ↳ barModel "s_pickup_goldbar01x" Game model or entity used for bar model.
  ↳ requireJob true Requires job: true = yes, false = no (default true).
  ↳ jobs table 7.16.11: every mining job may use the furnace (ACTIVE job).
  ↳ maxBatchesPerMelt 5 inputAmount/outputAmount are per batch; xp is per batch. Optional per recipe: chunkModel (what lies in the crucible), barModel (what is poured on success), img (NUI picture).
  ↳ recipes table Inventory items used by recipes. Names must exist in the jrs_items table.
  ↳ furnaceWearPerMelt 5 Furnace durability (metadata, starts 100): -5 per poured melt = 20 melts.
  ↳ interactDistance 1.5 Distance in game units that applies to interact distance.
  ↳ blip true 7.16.5: map blip on your own furnace only (false = no blip).
  ↳ blipSprite "blip_shop_blacksmith" Map blip or icon settings for blip sprite.
  ↳ blipColor "BLIP_MODIFIER_MP_COLOR_4" yellow / gold
  ↳ blipScale 0.2 Map blip or icon settings for blip scale.
  ↳ camSideDeg 55.0 smelt camera swung to the side so the player doesn't block the crucible
  ↳ camIntro table 7.16.6 camera: intro looks down into the crucible, then the working view (metres from the crucible)
  ↳ camSmelt table Table of cam smelt entries. Add, remove or edit entries following the examples in the file.
  ↳ camFov 45.0 Number for cam fov (default 45.0).
  ↳ crucibleOffset nil 7.16.6 crucible: nuggets/bar sit IN the bowl. nil = auto (ray onto the furnace, sunk chunkSink). Exact spot: use /goldsmelt_offset x y z next to your furnace and paste the printed line here.
  ↳ crucibleFallbackZ 0.55 used when the ray finds no collision
  ↳ chunkSink 0.04 Number for chunk sink (default 0.04).
  ↳ chunkDrop 0.30 7.16.9: lowers the auto point into the crucible (more = lower); was 0.15, still on the handle
  ↳ meltSink 0.035 7.16.9: nuggets sink this much into the crucible as the melt reaches 100 %
  ↳ smokeFx "ent_amb_smoke_cabin" 7.16.9: heat smoke over the crucible (core ptfx)
  ↳ chunkSpread 0.05 Number for chunk spread (default 0.05).
  ↳ fireBelowCrucible 0.22 Number for fire below crucible (default 0.22).
  ↳ requireShore true 7.16.6 placement like the wash table: dry bank next to sea/river/creek/lake/pond/swamp (Config.GoldPanning.waterHashes, within Config.GoldPanning.maxShoreDistance m).
  ↳ heatMin 60 Bellows minigame: keep the heat between heatMin..heatMax until the melt hits 100 %. Above heatMax for overheatMs = the crucible blows.
  ↳ heatMax 70 Upper limit for heat max.
  ↳ overheatMs 2000 Number for overheat ms (default 2000).
  ↳ minSmeltMs 8000 a real melt cannot finish faster than this
  ↳ maxSmeltMs 120000 Upper limit for max smelt ms.
  ↳ fireLow 0.5 Number for fire low (default 0.5).
  ↳ fireHigh 0.8 Number for fire high (default 0.8).
  ↳ destroyFurnaceOnFail true Blow-up: the nuggets in the crucible are lost and so is the furnace.
  ↳ explosionType 2 Number for explosion type (default 2).
  ↳ explosionDamage 0.3 Number for explosion damage (default 0.3).
config/mineral_props.lua - 7 options#

General

Setting Default What it does
MineralProps table Physical ore/bar appearance. These are visual models, not inventory item IDs. The twelve models and their YTYP/YTD are bundled in jrs_mining/stream.
  ↳ enabled false 7.17.1: off until a COMPILED .ytyp exists (XML one crashed clients)
  ↳ showMineReward true Shows mine reward: true = yes, false = no (default true).
  ↳ showOtherRewards true gold panning and NPC smelter collection
  ↳ previewMs 3500 Number for preview ms (default 3500).
  ↳ maxCrucibleChunks 3 rough chunks are larger than the old nugget prop
  ↳ models table Game model or entity used for models.
config/mining.lua - 86 options#

General

Setting Default What it does
MiniGame true ═════════════════════════ MINES ═════════════════════════ Toggle the skill-check minigame globally (per-mine MinigameDifficulty can be set to false to make that mine luck-only).
MinerJobs table (Gold Prospector) are this server's job-board jobs (jrs_multijob/config/jobs.lua). 'processing' (the old Resource Processor, merged into Miner 2026-09-24) and the rest are legacy/other-server job-name variants kept for compatibili
MineAreaRadius 120.0 How close (m) to a mine's MainCoord before its rocks stream in.
NodeInteractDistance 2.0 How close (m) to a rock node before the mine prompt shows.
mineData table Table of mine data entries. Add, remove or edit entries following the examples in the file.
  ↳ Tumbleweed Mine table Table of tumbleweed mine entries. Add, remove or edit entries following the examples in the file.
  ↳ Annesburg Coal Mine table Table of annesburg coal mine entries. Add, remove or edit entries following the examples in the file.
  ↳ Northpoint Mine table Table of northpoint mine entries. Add, remove or edit entries following the examples in the file.
  ↳ Mount Shann Cave table Table of mount shann cave entries. Add, remove or edit entries following the examples in the file.
  ↳ Beaver Hallow Cave table Table of beaver hallow cave entries. Add, remove or edit entries following the examples in the file.
  ↳ Twin Rocks Gang Camp table Table of twin rocks gang camp entries. Add, remove or edit entries following the examples in the file.
  ↳ Zirkel Cave table Table of zirkel cave entries. Add, remove or edit entries following the examples in the file.
  ↳ Dinosaur Cave table Table of dinosaur cave entries. Add, remove or edit entries following the examples in the file.
  ↳ Heartlands Oil pit table Table of heartlands oil pit entries. Add, remove or edit entries following the examples in the file.
  ↳ Bacchus Ridge Cave table Table of bacchus ridge cave entries. Add, remove or edit entries following the examples in the file.
  ↳ Mount Shann collapsed mine table Table of mount shann collapsed mine entries. Add, remove or edit entries following the examples in the file.
  ↳ Guarma Cave table Table of guarma cave entries. Add, remove or edit entries following the examples in the file.
  ↳ Bolger Glade Clay Pit table Table of bolger glade clay pit entries. Add, remove or edit entries following the examples in the file.
MiningAnimations table ═════════════════════ TOOLS / STATIONS / SHOPS ═════════════════════ ════════════════════════════ MINING ANIMS ══════════════════════════
  ↳ pickaxe table Table of pickaxe entries. Add, remove or edit entries following the examples in the file.
PickaxeData table ═══════════════════════════ TOOLS (PICKAXES) ═══════════════════════
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
MinerHatItem "minerhat" outfit (Config.Duty.Helmet) and is worn automatically on clock-in. The name is kept only so the server item allowlist stays stable for characters that still hold a legacy minerhat in their inventory.

It is also mirrored into jrs_inventory's own durability percentage, which

Setting Default What it does
ToolDurability table draws the bar inside the inventory UI and (being one of that resource's Config.Metadata.UniqueKeys) keeps every pickaxe a separate instance rather than stacking two tools onto one shared counter.
  ↳ enabled true false = pickaxes are permanent again (7.11.0 behaviour)
  ↳ breakOnZero true false = the tool stops at 1 use left instead of being destroyed
  ↳ showInHud true draw the remaining-uses meter on the tool card
  ↳ warnBelow 0.20 start warning under this fraction of the tier's Uses
  ↳ warnEvery 10 ...and then only every Nth remaining use, to avoid spam
  ↳ warnAlwaysUnder 3 ...but always warn for the last few uses
ServiceMineIds table Only these mine services are exposed. Runtime filtering lives in client/functions.lua and server/functions.lua (prepareMiningRuntimeConfig).
MineralProcessing table PROCESSING stations by server/functions.lua + client/functions.lua (prepareMiningRuntimeConfig). The player loop is: mine rock -> process rock -> receive one local mineral.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ inputItem "rock" Key or control used for input item. Controls are hash values from the game input list.
  ↳ inputAmount 1 Key or control used for input amount. Controls are hash values from the game input list.
  ↳ durationMs 6000 Time setting for duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ xp 2 Number for xp (default 2).
  ↳ interactRadius 1.2 Distance in game units that applies to interact radius.
  ↳ prop nil Game model or entity used for prop.
  ↳ blip table Map blip or icon settings for blip.
  ↳ rawReward table Money value for raw reward. Rewards go through the economy multiplier of jrs_core.
  ↳ Locations table coords is the station/prompt position; heading rotates the spawned prop. A mine may have as many stations as you like: they all share that mine's mineral table, so any of them processes that mine's rock.
MineralCleaning Config.MineralProcessing Backwards-compatible alias: older edits/configs referring to the previous "mineral cleaning" name keep resolving to the same table.
Shops table One trading bot stands on every mining location (mine blip). The locations list is generated at runtime from Config.mineData, in the client/shops.lua and server/shops.lua scripts (kept in sync by sorting).
  ↳ enabled true Turns enabled on or off (default true).
  ↳ interactDistance 1.8 Tightened NPC interaction radius; player must get close to the bot
  ↳ pedSpawnDistance 180.0 stream the shop NPC before the player reaches the prompt
  ↳ pedDespawnDistance 260.0 keep enough hysteresis to prevent spawn/despawn flicker
  ↳ alignBotToMineBlip true visible mine: NPC + prompt use the exact MainCoord used by its blip
  ↳ scenario "WORLD_HUMAN_STAND_WAITING" Idle standing scenario for the shopkeeper NPC
  ↳ keys table Two separate world prompts at the same mining NPC.
  ↳ duty table Duty gates every mining/shop action. Client visibility is convenience only; server events independently reject off-duty access.
  ↳ hours table 24/7 mining store. Server and client both treat the store as always open. Individual mine OpenTime/CloseTime values are intentionally ignored.
  ↳ pedModels table Ped models used for shop NPCs
  ↳ blip table Blip shown on every shop bot. The blip uses the SAME vector4 as the ped (loc.coords), so they always stay at the exact same spot.
  ↳ customLocations table "one bot per mine" behaviour. Each entry: { name = "Valentine", coords = vector4(x, y, z, heading), openTime = 6, closeTime = 23 } Add as many as you want. Keep it empty {} to use the automatic ones.
  ↳ locations table Filled at runtime (see client/shops.lua + server/shops.lua)
  ↳ types table Two shop types, each with its own button
InfiniteNodes Config.InfiniteNodes ~= fals... ═══════════════════ MINING RUNTIME DERIVED SETTINGS ═════════════════ Only controls that are actually consumed by the integrated mining runtime are exposed here. Station/shop prompts use Config.KeyToInteract directly.
Controls Config.Controls or &#123; Setting for controls.
NodeInteractDistance math.max(0.5, tonumber(Confi... Canonical interaction distance used by both client and server.
AdvancedMining table General mining behaviour mirrored from the reference resource. Every switch here is consumed by the integrated runtime or explicitly mapped to REDEMPIRE's equivalent secure implementation.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ allowMiningCancel Config.AllowMiningCancel ~= ... Setting for allow mining cancel.
  ↳ useLookAtNodePrompt false Turns look at node prompt on or off (default false).
  ↳ rayCastDistance 4.0 Distance in game units that applies to ray cast distance.
  ↳ virtualLookTolerance 1.5 meters; how close a camera-ray hit must land to a virtual (propless) node's position to count as "looking at it"
  ↳ highlightNodeProps true Switch for highlight node props: true = on, false = off (default true).
  ↳ showNodeNumberInPrompt false Shows node number in prompt: true = yes, false = no (default false).
  ↳ smartZDifference true Switch for smart z difference: true = on, false = off (default true).
  ↳ initSoundAudio true Switch for init sound audio: true = on, false = off (default true).
  ↳ displayToolHud true Switch for display tool hud: true = on, false = off (default true).
  ↳ displayToolHudAlign "top" Setting for display tool hud align.
  ↳ displayTextOffset table Text shown to the player for display text offset. Change it to translate or rebrand.
  ↳ cancelControl Config.Controls.MineCancel Key or control used for cancel control. Controls are hash values from the game input list.
  ↳ minerJobProbabilityIncrease tonumber(Config.MinerJobProb... Who is allowed: jobs, groups or permissions for miner job probability increase.
  ↳ coordCheckerEfficiency tonumber(Config.CoordChecker... World coordinates (x, y, z) used for coord checker efficiency.
  ↳ drawDebugMarkers false Switch for draw debug markers: true = on, false = off (default false).
  ↳ highlightMarkerType 1 Mining nodes have no entity to outline (see client/mines.lua's VIRTUAL_ROCK), so an eligible node is highlighted with a marker ring at its position instead. Only used when highlightNodeProps ~= false.
  ↳ highlightMarkerScale 0.9 Rate or multiplier for highlight marker scale.
  ↳ highlightMarkerZOffset 0.1 Number for highlight marker z offset (default 0.1).
  ↳ highlightMarkerColor table Table of highlight marker color entries. Add, remove or edit entries following the examples in the file.
PickaxeItem "pickaxe" A single persistent pickaxe whose power is stored in item metadata.
LegacyForgeToolItems table Retired standalone tool items. Kept only so the security allow-list stays stable for characters still holding one.

Uses is how many SUCCESSFUL mining deliveries it survives before it breaks

Setting Default What it does
PickaxeLevels table (Config.ToolDurability). AMS.toolMetadata clamps any legacy pickaxeLevel metadata (2/3/4) down to 1, so old pickaxes keep working as this one.
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
config/smelting.lua - 20 options#

This replaces the old forge/anvil/crafting systems, which were removed in

Setting Default What it does
Smelting table Table of smelting entries. Add, remove or edit entries following the examples in the file.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ keys table World interaction. open matches the mining store key so the two NPC prompts read the same way; duty allows toggling mining/processing duty directly.
  ↳ interactDistance 2.5 Distance in game units that applies to interact distance.
  ↳ pedSpawnDistance 160.0 Distance in game units that applies to ped spawn distance.
  ↳ pedDespawnDistance 240.0 Distance in game units that applies to ped despawn distance.
  ↳ requireDuty false Duty/job gating. Setting requireDuty to false allows anyone with the job (from the job board) to use the smelter directly without needing duty clock-in.
  ↳ requireJob true Requires job: true = yes, false = no (default true).
  ↳ maxOpenOrders 5 unfinished orders one character may hold, per NPC
  ↳ maxAmountPerOrder 50 output batches in a single order
  ↳ minAmountPerOrder 1 Minimum or level requirement for min amount per order.
  ↳ rush table Instant finish. Cost is per remaining MINUTE, rounded up, and is charged in cash at the moment the player presses RUSH.
  ↳ feePerBatch 5 * these NPC smelters = PAID and SLOW (order, wait, collect) feePerBatch is cash taken when the order is placed (a recipe may set its own fee); timeMultiplier stretches every recipe's minutes.
  ↳ timeMultiplier 5 Rate or multiplier for time multiplier.
  ↳ xpPerBatch 3 XP awarded per collected order line (scaled by the number of batches).
  ↳ scenario "WORLD_HUMAN_WRITE_NOTEBOOK" Working animation played at the NPC when placing an order.
  ↳ placeDurationMs 4000 Time setting for place duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ pedModel "A_M_M_ASBMINER_02" Ambient furnace ped + blip shared by every location that does not set its own. Blip sprite matches the mining shop family.
  ↳ blip table Map blip or icon settings for blip.
  ↳ Locations table ONE bar. input/inputAmount is what a single batch costs, output/ outputAmount is what a single batch returns, minutes is how long a single batch takes.

Paid (server only)   jrs_moonshine

JRS Core moonshiner job (jrs_multijob): distilling, distilleries, business and delivery

Resource jrs_moonshine
Folder [JOBS]
Version 1.5.0
Author jrs team
Depends on /assetpacks, jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 4,477 Lua lines

Exports

jrs_is_player_moonshining

Database tables

jrs_moonshine_missions, jrs_moonshine_productions, jrs_moonshine_shells, jrs_moonshine_stills

config.lua - 186 options#

General

Setting Default What it does
Language "ar" Interface language of this script (en or ar).
Locale table Interface language of this script (en or ar).
  ↳ en table Table of en entries. Add, remove or edit entries following the examples in the file.
  ↳ ar table Table of ar entries. Add, remove or edit entries following the examples in the file.
Progress table progressImg = The item name you enter here is pulled from your inventory images.
  ↳ Delivery table Delivery Progress
Indicate table A small image indicating their presence there at the center of the interiors
  ↳ enabled true Turns enabled on or off (default true).
  ↳ distance 10.0 Distance in game units that applies to distance.
CreateInteriorCommandSetting table If you do not want to use interior creation as an item, enable this command and it will only set up an interior entrance at your current location. Without an prop.
  ↳ activeCommand false If the command is open, interior items cannot be used.
  ↳ command "createinterior" Setting for command.
  ↳ commandRequired table or false

Config.PlayerXP ###

Setting Default What it does
PlayerXP table Config.JobXP.CoreShare of it into the global character level, exactly like fishing, hunting, lumberjack and every other job on this server. The still keeps its own XP as before; this is in addition to it, not instead.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Job "moonshiner" primary key in jrs_job_levels; renaming it orphans progress
  ↳ Multiplier 1.0 scales the recipe addXP value before it reaches the player
AllowMoonshineInShell false If true, you can set up a moonshine still inside the interior
DurabilityMultiplier 1.5 The machine's durability decreases significantly based on the production volume. 1.0 is the normal value.
TimeMultiplier true Time increases depending on production volume

Config.RemoveStillSetting ###

Setting Default What it does
RemoveStillSetting 2 legal job (2026-09-25): only the owner removes a still
RemoveStillAfterSaveData true Should the level and xp of the machine be added to the item as metadata after Moonshine Still is deleted?

Config.LawmenJobs ###

Setting Default What it does
LawmenJobs table Who is allowed: jobs, groups or permissions for lawmen jobs.
  ↳ bwsheriff true Switch for bwsheriff: true = on, false = off (default true).
  ↳ valsheriff true Switch for valsheriff: true = on, false = off (default true).
  ↳ armsheriff true Switch for armsheriff: true = on, false = off (default true).
  ↳ armheriff true legacy typo kept for servers that still use it
  ↳ twsheriff true Switch for twsheriff: true = on, false = off (default true).
  ↳ stbsheriff true Switch for stbsheriff: true = on, false = off (default true).
  ↳ rhdsheriff true Switch for rhdsheriff: true = on, false = off (default true).
  ↳ sdsheriff true Switch for sdsheriff: true = on, false = off (default true).
  ↳ annsheriff true Switch for annsheriff: true = on, false = off (default true).
  ↳ marshal true Switch for marshal: true = on, false = off (default true).
  ↳ sisika true Switch for sisika: true = on, false = off (default true).
  ↳ police true Switch for police: true = on, false = off (default true).
  ↳ ALFIE true Switch for alfie: true = on, false = off (default true).
  ↳ Guamrma true Switch for guamrma: true = on, false = off (default true).

To use this command, there must be 2 active lawmen in front of the interior at t

Setting Default What it does
ActiveLawmenPlayerCount 2 Number for active lawmen player count (default 2).

Config.ExplosionItem ###

Setting Default What it does
ExplosionItem false legal job (2026-09-25): stills can no longer be bombed. Was "dynamite".
ExplosionDefuseItem "lockpick" Item used to defuse the moonshine still explosion (Dynamite becomes ineffective if used before the detonation time expires)
ExplosionTime 30 Sets the countdown time for the explosion after the ExplosionItem is used
DeliverySuccesNotifyLawmen table NEW SETTING
  ↳ notify false legal job (2026-09-25): deliveries no longer alert lawmen
  ↳ chance 30 Rate or multiplier for chance.
  ↳ AlertDelay 3 second (How many seconds after a shot is fired)
  ↳ blipname "Report Moonshine Sale!" Setting for blipname.
  ↳ blipsprite 1001245999 Number for blipsprite (default 1001245999).
  ↳ blipscale 0.5 Number for blipscale (default 0.5).
  ↳ blipmodifier "BLIP_MODIFIER_MP_COLOR_32" Setting for blipmodifier.
  ↳ blipradius 10.0 Number for blipradius (default 10.0).
  ↳ alerttime 30 after how many seconds the blip will be deleted ? 60 = 60000
SetupTownPropSettings table Game model or entity used for setup town prop settings.
  ↳ moonshineStill false If this setting is true, players can set up moonshine machines in cities.
  ↳ moonshineInterior false If this setting is true, players can set up moonshine interior in cities.
DropPlayerNuiCheater false ## Cheaters who try to modify recipes and data through NuiDevtools. Set this to true if you want them to be kicked out of the game.
Towns table Table of towns entries. Add, remove or edit entries following the examples in the file.
  ↳ AguasdulcesFarm 1654810713 Number for aguasdulces farm (default 1654810713).
  ↳ AguasdulcesRuins 201158410 Number for aguasdulces ruins (default 201158410).
  ↳ AguasdulcesVilla -1207133769 Number for aguasdulces villa (default -1207133769).
  ↳ Annesburg 7359335 Number for annesburg (default 7359335).
  ↳ Armadillo -744494798 Number for armadillo (default -744494798).
  ↳ BeechersHope -1708386982 Number for beechers hope (default -1708386982).
  ↳ Blackwater 1053078005 Number for blackwater (default 1053078005).
  ↳ Braithwaite 1778899666 Number for braithwaite (default 1778899666).
  ↳ Butcher -1947415645 Number for butcher (default -1947415645).
  ↳ Caliga 1862420670 Number for caliga (default 1862420670).
  ↳ cornwall -1851305682 Number for cornwall (default -1851305682).
  ↳ Emerald -473051294 Number for emerald (default -473051294).
  ↳ lagras 406627834 Number for lagras (default 406627834).
  ↳ Manicato 1299204683 Number for manicato (default 1299204683).
  ↳ Manzanita 1463094051 Number for manzanita (default 1463094051).
  ↳ Rhodes 2046780049 Number for rhodes (default 2046780049).
  ↳ Siska 2147354003 Number for siska (default 2147354003).
  ↳ StDenis -765540529 Number for st denis (default -765540529).
  ↳ Strawberry 427683330 Number for strawberry (default 427683330).
  ↳ Tumbleweed -1524959147 Number for tumbleweed (default -1524959147).
  ↳ valentine 459833523 Number for valentine (default 459833523).
  ↳ VANHORN 2126321341 Number for vanhorn (default 2126321341).
  ↳ Wallace -872622034 Number for wallace (default -872622034).
  ↳ wapiti 1663398575 Number for wapiti (default 1663398575).
InteriorProp "p_outhouse05x" Game model or entity used for interior prop.
ShellSpawnDistance 100 Distance in game units that applies to shell spawn distance.
PropSpawnDistance 40 Distance in game units that applies to prop spawn distance.
PropInteractionDistance 3 Distance in game units that applies to prop interaction distance.
MaximumCreateMoonshineTable 2 Upper limit for maximum create moonshine table.
MaxCraftMultipler 5 Upper limit for max craft multipler.
SmokeEffect table Table of smoke effect entries. Add, remove or edit entries following the examples in the file.
  ↳ dict "scr_net_gangbounty" Animation settings for dict.
  ↳ name "scr_net_gangbounty_smoke" Text shown to the player for name. Change it to translate or rebrand.
  ↳ distance 300 Distance in game units that applies to distance.
  ↳ SmokeScale 0.8 Rate or multiplier for smoke scale.
FailedMissionRemoveMoney 10 Penalty money to be deducted from the player if he fails to deliver the items to the recipient
DrawSetting table Table of draw setting entries. Add, remove or edit entries following the examples in the file.
  ↳ DrawMarker table or DrawMarker = false,
  ↳ DrawLight table or DrawLight = false,
  ↳ DrawTexture table or DrawTexture = false,

## Config.SpawnMoonshineWagonCommand ## --

Setting Default What it does
Commands table These commands require you to own a hideout, hold an accepted mission, and stand near the hideout.
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
Customers table Table of customers entries. Add, remove or edit entries following the examples in the file.
InteriorSets table Table of interior sets entries. Add, remove or edit entries following the examples in the file.
  ↳ standart table Table of standart entries. Add, remove or edit entries following the examples in the file.
  ↳ hunter table Table of hunter entries. Add, remove or edit entries following the examples in the file.
  ↳ christmas table Table of christmas entries. Add, remove or edit entries following the examples in the file.
  ↳ floral table Table of floral entries. Add, remove or edit entries following the examples in the file.
  ↳ goth table Table of goth entries. Add, remove or edit entries following the examples in the file.
  ↳ refined table Table of refined entries. Add, remove or edit entries following the examples in the file.
  ↳ stonewall table Table of stonewall entries. Add, remove or edit entries following the examples in the file.
Shells table NOTE: the NPC walk-in/walk-out routine (gotoTable) is real movement logic, not a config value - it now lives in shared/utils.lua as JMS.moonshineGotoTable and is attached to every entry below automatically at load time.
  ↳ moonshine_interior1 table Table of moonshine interior1 entries. Add, remove or edit entries following the examples in the file.
  ↳ moonshine_interior2 table Table of moonshine interior2 entries. Add, remove or edit entries following the examples in the file.
  ↳ moonshine_interior3 table Table of moonshine interior3 entries. Add, remove or edit entries following the examples in the file.
  ↳ moonshine_interior4 table Table of moonshine interior4 entries. Add, remove or edit entries following the examples in the file.
  ↳ moonshine_interior5 table Table of moonshine interior5 entries. Add, remove or edit entries following the examples in the file.
  ↳ moonshine_interior6 table Table of moonshine interior6 entries. Add, remove or edit entries following the examples in the file.
  ↳ moonshine_interior7 table Table of moonshine interior7 entries. Add, remove or edit entries following the examples in the file.
Levels table Table of levels entries. Add, remove or edit entries following the examples in the file.
  ↳ 0 0 Number for 0 (default 0).
  ↳ 1 1000 Number for 1 (default 1000).
  ↳ 2 2000 Number for 2 (default 2000).
  ↳ 3 3000 Number for 3 (default 3000).
  ↳ 4 4000 Number for 4 (default 4000).
  ↳ 5 5000 Number for 5 (default 5000).
  ↳ 6 6000 Number for 6 (default 6000).
  ↳ 7 7000 Number for 7 (default 7000).
  ↳ 8 8000 Number for 8 (default 8000).
  ↳ 9 9000 Number for 9 (default 9000).
  ↳ 10 10000 Number for 10 (default 10000).
  ↳ 11 11000 Number for 11 (default 11000).
  ↳ 12 12000 Number for 12 (default 12000).
  ↳ 13 13000 Number for 13 (default 13000).
  ↳ 14 14000 Number for 14 (default 14000).
  ↳ 15 15000 Number for 15 (default 15000).
  ↳ 16 16000 Number for 16 (default 16000).
  ↳ 17 17000 Number for 17 (default 17000).
  ↳ 18 18000 Number for 18 (default 18000).
  ↳ 19 19000 Number for 19 (default 19000).
  ↳ 20 20000 Number for 20 (default 20000).
  ↳ 21 21000 Number for 21 (default 21000).
  ↳ 22 22000 Number for 22 (default 22000).
  ↳ 23 23000 Number for 23 (default 23000).
  ↳ 24 24000 Number for 24 (default 24000).
  ↳ 25 25000 Number for 25 (default 25000).
  ↳ 26 26000 Number for 26 (default 26000).
  ↳ 27 27000 Number for 27 (default 27000).
  ↳ 28 28000 Number for 28 (default 28000).
  ↳ 29 29000 Number for 29 (default 29000).
  ↳ 30 30000 Number for 30 (default 30000).
  ↳ 31 31000 Number for 31 (default 31000).
  ↳ 32 32000 Number for 32 (default 32000).
  ↳ 33 33000 Number for 33 (default 33000).
  ↳ 34 34000 Number for 34 (default 34000).
  ↳ 35 35000 Number for 35 (default 35000).
  ↳ 36 36000 Number for 36 (default 36000).
  ↳ 37 37000 Number for 37 (default 37000).
  ↳ 38 38000 Number for 38 (default 38000).
  ↳ 39 39000 Number for 39 (default 39000).
  ↳ 40 40000 Number for 40 (default 40000).
  ↳ 41 41000 Number for 41 (default 41000).
  ↳ 42 42000 Number for 42 (default 42000).
  ↳ 43 43000 Number for 43 (default 43000).
  ↳ 44 44000 Number for 44 (default 44000).
  ↳ 45 45000 Number for 45 (default 45000).
  ↳ 46 46000 Number for 46 (default 46000).
  ↳ 47 47000 Number for 47 (default 47000).
  ↳ 48 48000 Number for 48 (default 48000).
  ↳ 49 49000 Number for 49 (default 49000).
  ↳ 50 50000 Number for 50 (default 50000).
Moonshines table Table of moonshines entries. Add, remove or edit entries following the examples in the file.

Every fruit input below is now grown, not gathered: mulberry, blackmulberry

Setting Default What it does
  ↳ mp001_p_mp_still01x table and grapes are jrs_farming crops, and moonbloom is the shared crop that jrs_farming grows and jrs_herbs spawns wild at night. jrs_moonshine no longer owns any gathering of its own.

Professional Still (Level 25)

Setting Default What it does
  ↳ mp006_p_moonshiner_still04x table Table of mp006 p moonshiner still04x entries. Add, remove or edit entries following the examples in the file.
Prompts table Table of prompts entries. Add, remove or edit entries following the examples in the file.
  ↳ setupMoonshine table Table of setup moonshine entries. Add, remove or edit entries following the examples in the file.
  ↳ interactMoonshine table Table of interact moonshine entries. Add, remove or edit entries following the examples in the file.
  ↳ shell table Table of shell entries. Add, remove or edit entries following the examples in the file.
  ↳ exitshell table Table of exitshell entries. Add, remove or edit entries following the examples in the file.
  ↳ shellstash table Table of shellstash entries. Add, remove or edit entries following the examples in the file.
  ↳ shellsellmenu table Table of shellsellmenu entries. Add, remove or edit entries following the examples in the file.
  ↳ wagonrob table Table of wagonrob entries. Add, remove or edit entries following the examples in the file.
  ↳ delivery table Table of delivery entries. Add, remove or edit entries following the examples in the file.
ProgressBar table Table of progress bar entries. Add, remove or edit entries following the examples in the file.
  ↳ progresstype "innercircle" Setting for progresstype.
  ↳ color "#c40000" Setting for color.

JRS MOONSHINE - Open replacement settings

Setting Default What it does
JRS Config.JRS or &#123; Setting for jrs.
Notes from the README#
text
# jrs_moonshine - Moonshine System for JRS Core
An open, self-contained moonshine system built to work directly with
`jrs_core` and `jrs_inventory`, without VORP or RSG.
## Requirements
Start resources in this order before `jrs_moonshine`:
'''cfg
ensure oxmysql
ensure jrs_core
ensure jrs_inventory
ensure jrs_theftsystem
ensure jrs_moonshine
'''
> `jrs_theftsystem` integration is optional but enabled by default, to unify
> activity locks and police alerts. The resource folder name must stay
> `jrs_moonshine`.
## Ingredients: sourced from farming, not self-gathered
`jrs_moonshine` does not run its own gathering zones. Every fruit its
recipes consume is grown by `jrs_farming`, with one ingredient also
reachable wild through `jrs_herbs`:
- **Mulberry** and **Black Mulberry** - `jrs_farming` field crops only
  (`MULBERRY_SEED` / `BLACKMULBERRY_SEED`).
- **Grapes** - already existed as a `jrs_farming` crop (`GRAPES_SEED`).
- **Moonbloom** - the premium ingredient for the top two recipes, reachable
  two ways: cultivated via `jrs_farming`'s `MOONBLOOM_SEED` (slow, thirsty,
  reliable), or picked wild at night through `jrs_herbs`'s Moonbloom Grove
  (fast, free, but only active between dusk and dawn and on a long
  per-bush cooldown).
- **Alcohol** / **Alcohol Bottle** - stocked in `jrs_stores`' general store.
If any of these item names differ on your server, adjust them in
`config.lua`'s `Config.Moonshines[...].items[...].requiredItems`.
## Database
The script creates its own tables automatically on startup because:
'''lua
Config.JRS.AutoCreateDatabase = true
Config.JRS.AutoRegisterItems = true
'''
You can also import the files manually if needed:
- `sql/jrs.sql` for the system tables.
- `sql/items_jrs_inventory.sql` to define the moonshine items in JRS
  Inventory's `items` table.
## Item images
Copy the contents of:
'''text
jrs_moonshine/inventoryitemimages/
'''

Free (included in JRS Core)   jrs_multijob

jrs core MultiJob - job board, saved professions and employee management for jrs_core

Resource jrs_multijob
Folder [JOBS]
Version 5.17.2
Author jrs team
Depends on jrs_core, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 5,239 Lua lines

Exports

AddCharacterJob, AddJob, GetAllJobDefinitions, GetCharacterJobs, JobName, JobNameServer, OpenMenu, RankName, RankNameServer, RemoveCharacterJob, RemoveJob, SyncPlayerJob

Database tables

IF, jrs_multijob_jobs, jrs_multijob_migrations

config/boards.lua - 10 options#

General

Setting Default What it does
Boards table Table of boards entries. Add, remove or edit entries following the examples in the file.
  ↳ valentine table Table of valentine entries. Add, remove or edit entries following the examples in the file.
  ↳ saintdenis table Table of saintdenis entries. Add, remove or edit entries following the examples in the file.
  ↳ rhodes table Table of rhodes entries. Add, remove or edit entries following the examples in the file.
  ↳ annesburg table Table of annesburg entries. Add, remove or edit entries following the examples in the file.
  ↳ blackwater table Table of blackwater entries. Add, remove or edit entries following the examples in the file.
  ↳ strawberry table Table of strawberry entries. Add, remove or edit entries following the examples in the file.
  ↳ armadillo table Table of armadillo entries. Add, remove or edit entries following the examples in the file.
  ↳ tumbleweed table Table of tumbleweed entries. Add, remove or edit entries following the examples in the file.
  ↳ guarma table Table of guarma entries. Add, remove or edit entries following the examples in the file.
config/guides.lua - 8 options#

General

Setting Default What it does
JobGuides table Coordinates are copied from each job's own resource config (start NPC, depot, shop or work area) - update them here if a job's NPC moves. A job with no points (herbalist, farmer, moonshiner) gets the text only.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ BlipSprite "blip_ambient_chore" Map blip or icon settings for blip sprite.
  ↳ BlipScale 0.7 same readable objective size used by delivery jobs
  ↳ GpsHudColor 6 fallback colour when a native waypoint is unavailable
  ↳ ArriveDistance 20.0 route + blip removed once this close
  ↳ LifetimeMinutes 20 or after this long
  ↳ Jobs table Who is allowed: jobs, groups or permissions for jobs.
config/jobs.lua - 22 options#

General

Setting Default What it does
Jobs table jobs in this same order so the board shows easy jobs at the top. Board ladder: 19 jobs spaced every 5 levels, 1 -> 90 (rebalanced 2026-09-25, 'weeder' / Herb Processor removed: it only duplicated Herbalist).
  ↳ hunter table Table of hunter entries. Add, remove or edit entries following the examples in the file.
  ↳ publicjobs table Table of publicjobs entries. Add, remove or edit entries following the examples in the file.
  ↳ surfacecleaner table Table of surfacecleaner entries. Add, remove or edit entries following the examples in the file.
  ↳ trachboy table Table of trachboy entries. Add, remove or edit entries following the examples in the file.
  ↳ delivery table Table of delivery entries. Add, remove or edit entries following the examples in the file.
  ↳ radio_technician table Repairs jrs-Radio towers (Config.TowerManagement.Repair.AllowedJobs) and buys repair kits from the supply prompt at each tower pole.
  ↳ undertaker table Worked by [JOBS]/jrs_undertaker: collect bodies, prepare them at a parlour, bury them at a cemetery. Swap Image for img/undertaker.jpg once that picture is added to html/img.
  ↳ cotton table Worked at jrs_business's Cotton Company (Config.PublicJobs.companies.cotton).
  ↳ legendary_hunter table Table of legendary hunter entries. Add, remove or edit entries following the examples in the file.
  ↳ farmer table Table of farmer entries. Add, remove or edit entries following the examples in the file.
  ↳ chicken table Table of chicken entries. Add, remove or edit entries following the examples in the file.
  ↳ mill table Worked at jrs_business's Mill Company (Config.PublicJobs.companies.mill).
  ↳ herbalist table Table of herbalist entries. Add, remove or edit entries following the examples in the file.
  ↳ fisher table Table of fisher entries. Add, remove or edit entries following the examples in the file.
  ↳ lumberjack table Table of lumberjack entries. Add, remove or edit entries following the examples in the file.
  ↳ mining table One job for the whole mine: 'processing' (Resource Processor) was merged into it on 2026-09-24 since both worked the same mine. jrs_mining still accepts 'processing' as a legacy alias.
  ↳ bountyhunter table Table of bountyhunter entries. Add, remove or edit entries following the examples in the file.
  ↳ beer table Table of beer entries. Add, remove or edit entries following the examples in the file.
  ↳ oiler table Table of oiler entries. Add, remove or edit entries following the examples in the file.
  ↳ mingold table Table of mingold entries. Add, remove or edit entries following the examples in the file.
  ↳ moonshiner table Table of moonshiner entries. Add, remove or edit entries following the examples in the file.
config/management.lua - 16 options#

General

Setting Default What it does
Management table Table of management entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ AutoSaveCurrentJob true Automatically keeps externally assigned REDEMPIRE jobs in the player's saved job list.
  ↳ AutoSaveIntervalMs 15 * 60 * 1000 Time setting for auto save interval ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ SaveOnCharacterReady true Switch for save on character ready: true = on, false = off (default true).
  ↳ SaveOnSwitch true Switch for save on switch: true = on, false = off (default true).
  ↳ DeletedJobResaveBlockMs 120000 prevents a stale core snapshot from re-adding a just-deleted job
  ↳ QuitAllSetsFallback true Removing every job returns the character to this job.
  ↳ AllowManageEqualRank false Boss rules.
  ↳ HireMakesActive true Switch for hire makes active: true = on, false = off (default true).
  ↳ DefaultHireGrade 0 Who is allowed: jobs, groups or permissions for default hire grade.
  ↳ PreventSelfFire true Switch for prevent self fire: true = on, false = off (default true).
  ↳ MaximumEmployeesShown 100 Upper limit for maximum employees shown.
  ↳ IgnoreJobs table Jobs listed here are never auto-saved as professions.
  ↳ Logs table Optional Discord logs. Leave a webhook empty to disable that category.
  ↳ Jobs table Official jobs and rank labels. BossGrade gives access to Staff Management.
config/settings.lua - 14 options#

General

Setting Default What it does
Settings table Table of settings entries. Add, remove or edit entries following the examples in the file.
  ↳ Debug false Debug output for debug: true = yes, false = no (default false).
  ↳ Language "ar" Interface language of this script (en or ar).
  ↳ MaxJobs 0 0 = no limit, a character can hold every job
  ↳ RestoreSelectedJobOnLoad false jrs_core is authoritative; set true only for legacy recovery
  ↳ Core table Table of core entries. Add, remove or edit entries following the examples in the file.
  ↳ Database table Table of database entries. Add, remove or edit entries following the examples in the file.
  ↳ Command table Table of command entries. Add, remove or edit entries following the examples in the file.
  ↳ Notifications table Table of notifications entries. Add, remove or edit entries following the examples in the file.
  ↳ Security table Table of security entries. Add, remove or edit entries following the examples in the file.
  ↳ FallbackJob table Who is allowed: jobs, groups or permissions for fallback job.
  ↳ XP table Table of xp entries. Add, remove or edit entries following the examples in the file.
  ↳ Interaction table Table of interaction entries. Add, remove or edit entries following the examples in the file.
  ↳ UI table Table of ui entries. Add, remove or edit entries following the examples in the file.

Paid (server only)   jrs_newspaper

JRS Newspaper - newspaper publishing, archives and investigations for RedM

Resource jrs_newspaper
Folder [JOBS]
Version 1.1.0
Author jrs
Depends on jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 3,051 Lua lines

Commands

  • /jrsnewspaper

Database tables

jrs_newspaper_ads, jrs_newspaper_articles, jrs_newspaper_books, jrs_newspaper_editions, jrs_newspaper_investigations, jrs_newspaper_publishers, jrs_newspaper_transactions

config.lua - 91 options#

General

Setting Default What it does
JRS table Direct integration verified against jrs_core v1.0.18 / current JRS Inventory stack. Core admins are resolved through jrs_core:IsAdmin, so owner/admin/support follow the central AdminGroups policy from jrs_core instead of a duplica
  ↳ CoreResource "jrs_core" Setting for core resource.
  ↳ InventoryResource "jrs_inventory" Setting for inventory resource.
  ↳ RequireIdentity true Requires identity: true = yes, false = no (default true).
  ↳ UseCoreNotifications true Turns core notifications on or off (default true).
  ↳ NotificationDuration 4500 Time setting for notification duration. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AllowCoreAdmins true Allows core admins: true = yes, false = no (default true).
  ↳ AdminActsAsEditor true Switch for admin acts as editor: true = on, false = off (default true).
  ↳ VerifiedCoreVersion "1.0.18" Setting for verified core version.
Debug false Debug output for debug: true = yes, false = no (default false).
Language "ar" 'en' or 'ar'
NewspaperYear 1901 Number for newspaper year (default 1901).
InteractionKey 0x760A9C6F G
Prompt table Text shown to the player for prompt. Change it to translate or rebrand.
  ↳ nativeLanguage "en" RedM native prompt fonts do not reliably render Arabic. Keep native prompt strings on the stable English locale while the full NUI follows Config.Language.
  ↳ actionTextKey "prompts.open" Key or control used for action text key. Controls are hash values from the game input list.
BlipModifier "BLIP_MODIFIER_MP_COLOR_2" Cyan / Teal
BlipScale 0.7 Map blip or icon settings for blip scale.
InteractionDistance 2.5 Distance in game units that applies to interaction distance.
EnforceOpeningHours false false = newspaper stands stay available 24/7. Set true to enforce each stand's openTime/closeTime.
SpawnDistance 55.0 Distance in game units that applies to spawn distance.
ServerDistanceTolerance 4.5 Distance in game units that applies to server distance tolerance.
ServerDistanceCheck true Switch for server distance check: true = on, false = off (default true).
NewspaperItem "jrs_newspaper" Inventory items used by newspaper item. Names must exist in the jrs_items table.
PhysicalCopies table Physical copies are permanent saved editions. The inventory item itself stays the same JRS item, while every individual copy carries its own edition metadata.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ KeepExactEdition true Switch for keep exact edition: true = on, false = off (default true).
  ↳ StoreDisplayMetadata true Switch for store display metadata: true = on, false = off (default true).
Currency 0 0 = Money in jrs_core
DefaultPrice 0.25 jrs_core supports decimal cash values
ArchiveCopyUsesPublisherPrice true Switch for archive copy uses publisher price: true = on, false = off (default true).
RequestTimeoutMs 8000 Time setting for request timeout ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
SingleJobMode table Who is allowed: jobs, groups or permissions for single job mode.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ jobs table Who is allowed: jobs, groups or permissions for jobs.
GeneralJournalistJobs table General journalist jobs that have writing/publishing access across all newspaper stands and offices
  ↳ journalist true Switch for journalist: true = on, false = off (default true).
  ↳ reporter true Switch for reporter: true = on, false = off (default true).
  ↳ newspaper true Switch for newspaper: true = on, false = off (default true).
  ↳ press true Switch for press: true = on, false = off (default true).
  ↳ editor true Switch for editor: true = on, false = off (default true).
  ↳ news true Switch for news: true = on, false = off (default true).
JournalistCanPublish true If true, journalists (or any journalist job grade >= journalistGrade) can create drafts and publish editions.
AdminGroups table Admin groups recognized from jrs_core or vorp_core
  ↳ owner true Switch for owner: true = on, false = off (default true).
  ↳ admin true Switch for admin: true = on, false = off (default true).
  ↳ superadmin true Switch for superadmin: true = on, false = off (default true).
  ↳ mod true Switch for mod: true = on, false = off (default true).
  ↳ moderator true Switch for moderator: true = on, false = off (default true).
  ↳ support true Switch for support: true = on, false = off (default true).
  ↳ god true Switch for god: true = on, false = off (default true).
AutoCreateFirstEdition false Never automatically create placeholder dummy editions. Keep newspapers empty until published by staff.
Jobs table Used only if SingleJobMode.enabled = false.
  ↳ stdenis_journalist "stdenisjournalist" Setting for stdenis journalist.
  ↳ stdenis_editor "stdeniseditor" Setting for stdenis editor.
  ↳ valentine_journalist "valentinejournalist" Setting for valentine journalist.
  ↳ valentine_editor "valentineeditor" Setting for valentine editor.
  ↳ blackwater_journalist "blackwaterjournalist" Setting for blackwater journalist.
  ↳ blackwater_editor "blackwatereditor" Setting for blackwater editor.
JobPublisherMap table Who is allowed: jobs, groups or permissions for job publisher map.
  ↳ Config.Jobs.stdenis_journalist 1 Number for config.jobs.stdenis journalist (default 1).
  ↳ Config.Jobs.stdenis_editor 1 Number for config.jobs.stdenis editor (default 1).
  ↳ Config.Jobs.valentine_journalist 2 Number for config.jobs.valentine journalist (default 2).
  ↳ Config.Jobs.valentine_editor 2 Number for config.jobs.valentine editor (default 2).
  ↳ Config.Jobs.blackwater_journalist 3 Number for config.jobs.blackwater journalist (default 3).
  ↳ Config.Jobs.blackwater_editor 3 Number for config.jobs.blackwater editor (default 3).
EditorJobs table Who is allowed: jobs, groups or permissions for editor jobs.
  ↳ Config.Jobs.stdenis_editor true Switch for config.jobs.stdenis editor: true = on, false = off (default true).
  ↳ Config.Jobs.valentine_editor true Switch for config.jobs.valentine editor: true = on, false = off (default true).
  ↳ Config.Jobs.blackwater_editor true Switch for config.jobs.blackwater editor: true = on, false = off (default true).
PublisherSocieties table Revenue is always recorded in jrs_newspaper_publishers.funds. If you later connect a society resource, listen to: jrs_newspaper:server:onRevenue(publisherId, societyName, amount, source, transactionId)
  ↳ 1 "stdenisnews" Setting for 1.
  ↳ 2 "valentinenews" Setting for 2.
  ↳ 3 "blackwaternews" Setting for 3.
NewspaperStands table Table of newspaper stands entries. Add, remove or edit entries following the examples in the file.
EditorDesks table Separate desk/archive/investigation points are disabled so all features are consolidated directly into the newspaper stands (Config.NewspaperStands).
ArchiveLocations table World coordinates (x, y, z) used for archive locations.
InvestigationLocations table World coordinates (x, y, z) used for investigation locations.
OfficeNPCGroups table Optional immersive office NPCs based on the supported newspaper office locations.
  ↳ saintdenis table Table of saintdenis entries. Add, remove or edit entries following the examples in the file.
  ↳ blackwater table Table of blackwater entries. Add, remove or edit entries following the examples in the file.
DefaultPublishers table Table of default publishers entries. Add, remove or edit entries following the examples in the file.
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
DefaultEditionArticles 3 Number for default edition articles (default 3).
MaxArticleLength 12000 Upper limit for max article length.
MaxTitleLength 255 Upper limit for max title length.
MaxArchiveResults 50 Upper limit for max archive results.
MaxInvestigations 100 Upper limit for max investigations.
ActionCooldownMs 350 Time setting for action cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Notes from the README#
text
# JRS Newspaper
A standalone newspaper system written for `jrs_core` + `jrs_inventory`, verified against `jrs_core v1.0.18`.
## Included systems
- Newspaper stands with NPCs, opening hours, blips and current-edition preview.
- Server-authoritative newspaper purchasing.
- Physical newspaper item with per-copy metadata, so old copies always open the exact edition they belong to.
- Three independent publishers: Saint Denis, Valentine and Blackwater.
- Journalist / Editor permissions from the live `jrs_core` job + grade, with optional core-admin editor access.
- Editorial Desk with draft creation, article editing, advertisements, page expansion and publication.
- Publishing archives the previous current issue automatically.
- Publisher name and cover price configuration by editors.
- Searchable archive with read and physical-copy actions.
- Investigation Board with assignments, status, priority, clues, notes, deadlines and resource requests.
- Editor approval / denial of investigation resource requests.
- Publisher revenue balance and transaction log.
- Revenue integration event for an optional society resource.
- Identity-gated player actions using `jrs_core:IsIdentityReady`.
- Core money/balance/job/grade/group/admin APIs are used directly and refreshed safely after a `jrs_core` restart.
- Character identity is checked through the core before every player-bound server action.
- Open newspaper UIs are force-closed on character unload, core job changes, and core restart so stale permissions cannot remain active.
- Restart-safe usable-item re-registration when `jrs_inventory` restarts.
## Requirements
- RedM
- `oxmysql`
- `jrs_core`
- `jrs_inventory`
Start order:
'''cfg
ensure oxmysql
ensure jrs_core
ensure jrs_inventory
ensure jrs_newspaper
'''
## Installation
1. Put the folder in your resources as `jrs_newspaper`.
2. The resource auto-creates/updates its own tables from `sql/jrs_newspaper.sql` on start. You can also import it manually.
3. Copy your item image to the inventory image folder as `jrs_newspaper.png` if you want a custom icon.
4. Check the coordinates and jobs in `config.lua`.
5. Restart `jrs_inventory` once after importing the item row, then start `jrs_newspaper`.
## Default jobs
'''lua
[1] = { jobName = 'stdenisnews',   editorGrade = 3, journalistGrade = 0 }
[2] = { jobName = 'valentinenews', editorGrade = 3, journalistGrade = 0 }
[3] = { jobName = 'blackwaternews', editorGrade = 3, journalistGrade = 0 }
'''

Free (included in JRS Core)   jrs_police

jrs_police - RedM police system with recruitment NPCs, rank kits, roster management, Steam admin, NUI and stable lifecycle

Resource jrs_police
Folder [JOBS]
Version 2.11.7
Author jrs team
Depends on jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 19,673 Lua lines

Commands

  • /badge
  • /badgehand
  • /checkreputation
  • /jail
  • /policehorsestats
  • /policemenu
  • /showbadge

Exports

AddExecutionRecord, AddHonor, AddOption, ExtendCharacterSentence, GetCharacterHonor, GetHonor, GetHonorTier, GetJailedPlayers, GetPoliceRosterEntry, GrantPoliceWeaponLicense, HireOfficer, IsClothingBusy, IsOnDutyOfficer, JailPlayer, ReleaseCharacter, ReleasePlayer, RemoveFromPoliceRoster, RemoveHonor, RemoveOfficer, RemoveOption, RevokePoliceWeaponLicense, SetHonor, jrs_policejail

Database tables

jrs_communityservice, jrs_integrity, jrs_jail_police, jrs_police_journal, jrs_police_mdt, jrs_police_recruitment, jrs_police_roster, jrs_police_wanted

config/integrity.lua - 103 options#

Police recruitment/hiring itself is NOT duplicated here - jrs_police already

Setting Default What it does
Honor table Table of honor entries. Add, remove or edit entries following the examples in the file.
  ↳ Default 50 Number for default (default 50).
  ↳ Minimum 0 Minimum or level requirement for minimum.
  ↳ Maximum 100 Upper limit for maximum.
  ↳ LowThreshold 30 Number for low threshold (default 30).
  ↳ ShowDuration 5000 Time setting for show duration. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ ShowOnChange true Shows on change: true = yes, false = no (default true).
HonorEvents table How everyday play moves honor. Values are signed amounts; 0 disables an entry. Honor is stored per character in jrs_integrity and survives relogs/restarts.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ PlayerKilled -10 murdered another player in PvP
  ↳ Jailed -10 sent to jail (officer, admin or auto-jail after a kill)
  ↳ SentenceServed 3 sat out the full sentence instead of being released
  ↳ WantedPublished -5 a wanted notice was posted on you while online
  ↳ WantedPaidOff 3 cleared your own wanted notice at the kiosk
  ↳ Fined -3 received a police fine / ticket
  ↳ QuestCompleted 1 finished a jrs_randomquests mission
  ↳ BountyCompleted 2 completed a bounty mission and caught an outlaw
  ↳ AnimalHunted 1 base proportional gain for hunting an animal
  ↳ AnimalSkinned 2 base proportional gain for skinning/slaughtering an animal
  ↳ FarmAnimalSlaughtered 2 base proportional gain for farm animal slaughter
  ↳ Passive table Slow recovery for staying out of trouble: +Amount every IntervalMinutes online while not jailed/wanted, only up to Cap (higher needs donations, cleaning duty or quests). Any honor loss restarts the timer.
IntegrityCommands table Table of integrity commands entries. Add, remove or edit entries following the examples in the file.
  ↳ Player "integrity" Setting for player.
  ↳ OfficerCheck "checkhonor" Setting for officer check.
  ↳ EnableAdminCommands true Turns admin commands on or off (default true).
  ↳ AdminAce "jrs.integrity.admin" Who is allowed: jobs, groups or permissions for admin ace.
  ↳ AdminIdentifiers table Who is allowed: jobs, groups or permissions for admin identifiers.
  ↳ Add "addH" Setting for add.
  ↳ Remove "delH" Setting for remove.
  ↳ Set "setH" Setting for set.
IntegritySecurity table Table of integrity security entries. Add, remove or edit entries following the examples in the file.
  ↳ MaximumExternalChange 100 Upper limit for maximum external change.
  ↳ RequestCooldownMs 500 Time setting for request cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ CrimeServerCooldownMs 1500 Time setting for crime server cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Crime table Table of crime entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Debug false Debug output for debug: true = yes, false = no (default false).
  ↳ RestrictToZones false If false, killing an innocent human NPC anywhere on the map removes integrity (not just in town centers).
  ↳ UseLegacyDetection true Per-frame detection is retained, but integrity is removed only after a confirmed NPC kill.
  ↳ KillAimGraceMs 350 Number for kill aim grace ms (default 350).
  ↳ KillConfirmationWindowMs 15000 Number for kill confirmation window ms (default 15000).
  ↳ ShootingNpcPenalty 2 Number for shooting npc penalty (default 2).
  ↳ ClientCooldownMs 1500 Time setting for client cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ ScanIntervalMs 75 Time setting for scan interval ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ UseDamageEvent true Turns damage event on or off (default true).
  ↳ AimGraceMs 2500 Number for aim grace ms (default 2500).
  ↳ RecentShotWindowMs 2500 Number for recent shot window ms (default 2500).
  ↳ DamageScanRadius 120.0 Distance in game units that applies to damage scan radius.
  ↳ HumanCacheRadius 140.0 Distance in game units that applies to human cache radius.
  ↳ HumanCacheIntervalMs 200 Time setting for human cache interval ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AllowAllHumanNpcs true Allows all human npcs: true = yes, false = no (default true).
  ↳ PenalizeAnimals false true: killing/shooting any non-player ped (humans or animals) removes integrity. false: only human NPCs remove integrity.
  ↳ WitnessEnabled true Switch for witness enabled: true = on, false = off (default true).
  ↳ WitnessRadius 20.0 Distance in game units that applies to witness radius.
  ↳ WitnessBlipDurationMs 5000 Time setting for witness blip duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AllowedPedTypes table Game model or entity used for allowed ped types.
LowHonorNpcAggression table Table of low honor npc aggression entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ CheckIntervalMs 1000 Time setting for check interval ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AttackRadius 10.0 Distance in game units that applies to attack radius.
  ↳ RetargetCooldownMs 3000 Time setting for retarget cooldown ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
IntegrityServices table Table of integrity services entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ PromptKey 0x8CC9CD42 X / INPUT_CONTEXT_X
  ↳ PromptHold true Switch for prompt hold: true = on, false = off (default true).
  ↳ RequireServerDistanceValidation true Requires server distance validation: true = yes, false = no (default true).
  ↳ ServerNpcValidationDistance 7.0 Distance in game units that applies to server npc validation distance.
  ↳ InteractDistance 2.2 Distance in game units that applies to interact distance.
  ↳ RequirePoliceJob false Requires police job: true = yes, false = no (default false).
  ↳ PoliceJobs table Left empty on purpose: isPoliceJob() falls back to the live, already normalized OnDutyJobs global (shared/police_bridge.lua) instead of a snapshot taken before that normalization runs.
  ↳ Donation table Table of donation entries. Add, remove or edit entries following the examples in the file.
  ↳ Cleaning table Table of cleaning entries. Add, remove or edit entries following the examples in the file.
  ↳ Stations table eight sheriff towns) a wanted board - see config/online.lua and config/wanted.lua. Coordinates are resolved below from the recruiter office list so the three features can never drift apart again.
IntegrityCrimeZones table Town zones where shooting an ambient NPC removes integrity.
IntegrityCheckAreas table Areas where low-integrity NPC aggression is active.
IntegrityTexts table Table of integrity texts entries. Add, remove or edit entries following the examples in the file.
  ↳ Title "السمعة والسلامة" Text shown to the player for title. Change it to translate or rebrand.
  ↳ Current "مستوى السمعة الحالي: %s" Setting for current.
  ↳ Increased "ارتفعت السمعة إلى %s" Setting for increased.
  ↳ Decreased "انخفضت السمعة إلى %s" Setting for decreased.
  ↳ CharacterNotReady "بيانات شخصيتك غير جاهزة بعد." Setting for character not ready.
  ↳ NoPermission 'ليس لديك صلاحية لاستخدام هذ... Who is allowed: jobs, groups or permissions for no permission.
  ↳ InvalidCommand 'الاستخدام: /%s [معرف اللاعب... Setting for invalid command.
  ↳ InvalidSetCommand 'الاستخدام: /%s [معرف اللاعب... Setting for invalid set command.
  ↳ PlayerNotFound "اللاعب غير موجود." Setting for player not found.
  ↳ DonationSuccess 'تم قبول التبرع: $%s. ارتفعت... Setting for donation success.
  ↳ NotEnoughMoney "ليس لديك مبلغ كافٍ للتبرع." Money value for not enough money. Rewards go through the economy multiplier of jrs_core.
  ↳ DonationProcessingFailed 'فشل معالجة التبرع، يرجى الم... Setting for donation processing failed.
  ↳ IntegrityFull 'مستوى سمعتك في الحد الأقصى ... Setting for integrity full.
  ↳ DonationTooLarge 'اختر مبلغ تبرع أصغر لتجنب ه... Setting for donation too large.
  ↳ ServiceCooldown 'يرجى الانتظار %s ثانية قبل ... Time setting for service cooldown. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ CleaningStarted 'بدأت مهمة تنظيف المدينة. تو... Setting for cleaning started.
  ↳ CleaningInProgress "جاري التنظيف..." Setting for cleaning in progress.
  ↳ CleaningProgress "تم تنظيف المنطقة: %s/%s." Setting for cleaning progress.
  ↳ CleaningCompleted 'اكتملت مهمة التنظيف. ارتفعت... Setting for cleaning completed.
  ↳ CleaningCancelled "تم إلغاء مهمة التنظيف." Setting for cleaning cancelled.
  ↳ CleaningAlreadyActive "لديك مهمة تنظيف نشطة بالفعل." Setting for cleaning already active.
  ↳ CleaningNotActive "ليس لديك مهمة تنظيف نشطة." Setting for cleaning not active.
  ↳ CleaningCooldown 'ستكون مهمة التنظيف متاحة مج... Time setting for cleaning cooldown. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ CleaningInvalidLocation "أنت لست في موقع التنظيف الصحيح." World coordinates (x, y, z) used for cleaning invalid location.
  ↳ MustBeOnFoot 'يجب أن تكون مترجلاً لتنظيف ... Setting for must be on foot.
  ↳ TooFarFromStation "اقترب أكثر من موظف المركز." Setting for too far from station.
  ↳ PoliceOnly 'هذه الخدمة مخصصة لرجال الشر... Setting for police only.
config/main.lua - 32 options#

General

Setting Default What it does
Lang "Arabic" Live core settings only. Dead legacy UI/shop options were removed so every exposed value below has a runtime consumer.
nameMenu "Police Menu" Text shown to the player for name menu. Change it to translate or rebrand.
Menu_command "police" Setting for menu command.
onduty_command "onduty" Setting for onduty command.
offduty_command "offduty" Setting for offduty command.
jailCommand "policejail" Setting for jail command.
unjailCommand "policeunjail" Setting for unjail command.
Start_outfit true Police uniforms are bundled. Restoring the civilian outfit can optionally use an external command; if the command is unavailable the script will fail safely and show a NUI warning instead of silently breaking.
RestoreOutfitCommand "" Setting for restore outfit command.

STATION BLIPS & STATUS SYSTEM

Setting Default What it does
StationBlips table Map blip or icon settings for station blips.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Key 0x760A9C6F [G] key to toggle station status
  ↳ RequireOnDuty false If false, officers of this department can toggle even if off-duty
  ↳ ShowStatusInName true Appends [مفتوح] / [مغلق] to the blip label on the map
  ↳ Scale 0.8 Rate or multiplier for scale.
  ↳ Locations table World coordinates (x, y, z) used for locations.
Blips Config.StationBlips.Location... Map blip or icon settings for blips.
blip Config.StationBlips.Location... Map blip or icon settings for blip.
Key Config.StationBlips.Key Key or control used for key. Controls are hash values from the game input list.
jrs_idcard true If you have this jrs_idcard script, you can activate the option. This option allows you to send information and images of the player you are looking for in the archive.
IdCardDefaultImage 'nui://jrs_police/html/img/p... Setting for id card default image.
bank table Deposits collected fines into the jrs_banking personal account of the charidentifier configured below for the officer's city (Config.BankFine). Requires jrs_banking to be started.
  ↳ Enabled true Turns enabled on or off (default true).
BankFine table Money value for bank fine. Rewards go through the economy multiplier of jrs_core.
MenuKeybind "U" ConfigPoliceRadial.KeybindJS in config/police.lua. It never opens the MDT menu directly; the MDT is reached from inside the radial ("Records") or via the /police chat command.
EnableMenuKey false Legacy PAGE UP raw-control hijack, kept disabled in favor of Config.MenuKeybind above.
kyemenu 0x446258B6 pgUP (only used when Config.EnableMenuKey is true)
Limit table Upper limit for limit.
  ↳ Money 1000 Max amount of money that can be stolen (set to false for no limit)
  ↳ Weapons 1000 Max number of weapons that can be stolen (set to false for no limit)
  ↳ Items 1000 Max number of items that can be stolen (set to false for no limit)
ItemsBlackList table Blacklist of items and weapons that cannot be stolen

Paid (server only)   jrs_polls

Polls and referendums: server polls by admins, city polls by governors (citizens vote), one vote per character

Resource jrs_polls
Folder [JOBS]
Version 1.0.0
Author jrs team
Depends on jrs_core, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 335 Lua lines

Database tables

jrs_poll_votes, jrs_polls

config.lua - 15 options#

General

Setting Default What it does
Command "polls" Setting for command.
AdminGroups table Who is allowed: jobs, groups or permissions for admin groups.
Cities table City ids exactly as in jrs_government's Config.Cities. A governor, deputy or owner of a city may open polls for that city; only its citizens vote.
  ↳ valentine 'Valentine', strawberry = 'S... Setting for valentine.
  ↳ saintdenis 'Saint Denis', annesburg = '... Setting for saintdenis.
DeputiesCanCreate true Let deputies open city polls too.
MaxQuestionLength 150 Upper limit for max question length.
MaxOptionLength 60 Upper limit for max option length.
MinOptions 2 Minimum or level requirement for min options.
MaxOptions 6 Upper limit for max options.
MinHours 1 Minimum or level requirement for min hours.
MaxHours 168 Upper limit for max hours.
MaxActivePerCity 3 Upper limit for max active per city.
ShowResultsBeforeVoting false false: you see the numbers after you vote (or when it closes)
KeepClosedDays 7 closed polls stay visible this long

Paid (server only)   jrs_publicjobs

JRS Public Jobs - Daily Labor & Work Activities

Resource jrs_publicjobs
Folder [JOBS]
Version 1.0.0
Author JRS Team
Depends on jrs_core, jrs_inventory
Interface Yes (NUI)
Languages ar, en
Code size 2,210 Lua lines
config.lua - 30 options#

General

Setting Default What it does
Align "top-left" align to menu
Lang "ar" 'en', 'ar'
MaxSpeed 1.5 number (Maximum walking speed while characters are carrying)
InteractKey 0x760A9C6F [G] key (standard non-conflicting interaction key)
HoldDuration 800 ms to hold prompt (avoids conflicts with other scripts)

MULTIJOB SETTINGS

Setting Default What it does
JobName "publicjobs" Multijob internal identifier
RequireJob true STRICT: Player MUST have 'publicjobs' active in multijob to start tasks!
BonusForJobHolders 1.25 25% bonus cash and XP

LOCATIONS

Setting Default What it does
Locations table World coordinates (x, y, z) used for locations.

KEYS

Setting Default What it does
Keys table Key or control used for keys. Controls are hash values from the game input list.
  ↳ InteractJob "INPUT_INTERACT_OPTION1" Who is allowed: jobs, groups or permissions for interact job.

NAVIGATION COLORS

Setting Default What it does
NavigationColors table Table of navigation colors entries. Add, remove or edit entries following the examples in the file.
  ↳ Blip "BLIP_MODIFIER_MP_COLOR_11" Map blip or icon settings for blip.
  ↳ Route "COLOR_PLATFORM_GREEN" Setting for route.

JOB SPECIFIC BLIPS & NAVIGATION

Setting Default What it does
JobBlips table Map blip or icon settings for job blips.
  ↳ Labour table Table of labour entries. Add, remove or edit entries following the examples in the file.
  ↳ Distribute table Table of distribute entries. Add, remove or edit entries following the examples in the file.
  ↳ Sweep table Table of sweep entries. Add, remove or edit entries following the examples in the file.
  ↳ Sharpen table Table of sharpen entries. Add, remove or edit entries following the examples in the file.
  ↳ ChopWood table Table of chop wood entries. Add, remove or edit entries following the examples in the file.
  ↳ WaterCarrying table Table of water carrying entries. Add, remove or edit entries following the examples in the file.

PROGRESBAR

Setting Default What it does
ProgressBar table Table of progress bar entries. Add, remove or edit entries following the examples in the file.
  ↳ type "innercircle" Setting for type.
  ↳ color "#0A4F05" Setting for color.

PUBLIC JOBS

Setting Default What it does
Labour table Table of labour entries. Add, remove or edit entries following the examples in the file.
Distribute table Table of distribute entries. Add, remove or edit entries following the examples in the file.
Sweep table Table of sweep entries. Add, remove or edit entries following the examples in the file.
Sharpen table Table of sharpen entries. Add, remove or edit entries following the examples in the file.
ChopWood table Table of chop wood entries. Add, remove or edit entries following the examples in the file.
WaterCarrying table Table of water carrying entries. Add, remove or edit entries following the examples in the file.

Free (included in JRS Core)   jrs_railroad

JRS Core railroad - buy and run trains, companies, cargo, passengers and tickets

Resource jrs_railroad
Folder [JOBS]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages en
Code size 8,394 Lua lines

Commands

  • /setjunction
  • /trainpos
  • /trainrobbery

Database tables

IF, railroad_companies, railroad_companies_owned, railroad_company_supplies, railroad_company_upgrades, railroad_employees, railroad_rewards, railroad_trains

shared/config.lua - 164 options#

General

Setting Default What it does
Language "en" 'en' or 'ar'

GENERAL SETTINGS

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
AutoInstallDatabase true automatically creates/verifies all required MySQL tables on resource start (from install/rsg_railroad_full.sql). Set to false if you prefer to import the .sql file yourself.
MaxTrainsPerCompany 5 max trains a company can own
MaxTrainsPerPlayer 5 max trains a single player can personally own (bug fix: was referenced but never defined)
SellBackPercent 0.60 60% of purchase price on resale
TrainDespawnDist 250 despawn if player is far from their train
StationInteractRadius 3.0 how close to station marker to interact
HUDKeybind 0x760A9C6F G key (hold) to open HUD while driving
NotifyRadius 20.0 Distance in game units that applies to notify radius.
TicketItem "trainticket" Inventory items used by ticket item. Names must exist in the jrs_items table.
TicketPrice 20.00 Money value for ticket price. Rewards go through the economy multiplier of jrs_core.
MarkupPrice 25.00 Money value for markup price. Rewards go through the economy multiplier of jrs_core.

DISCORD WEBHOOK LOGGING

Setting Default What it does
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ BotName "JRS Railroad" Text shown to the player for bot name. Change it to translate or rebrand.
  ↳ BotAvatar "" optional image URL shown as the webhook's avatar
  ↳ URLs table Per-category webhook URLs. Paste your Discord webhook URLs below.
  ↳ Colors table Embed colors (decimal, not hex -- e.g. 0x2ECC71 = 3066993)
  ↳ LogMissionCompletions false Mission completions fire very frequently -- off by default so the economy channel isn't flooded. Turn on if you want every delivery / maintenance job logged too.

CONTINUOUS PASSENGER SYSTEM

Setting Default What it does
PassengerSystem table Table of passenger system entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ MaxBoardPerStop 10 Upper limit for max board per stop.
  ↳ MinBoardPerStop 1 Minimum or level requirement for min board per stop.
  ↳ SearchRadius 120.0 Distance in game units that applies to search radius.
  ↳ TicketPrice 15.0 Money value for ticket price. Rewards go through the economy multiplier of jrs_core.
  ↳ TicketXP 5 Number for ticket xp (default 5).
  ↳ DisembarkChance 50 Rate or multiplier for disembark chance.
  ↳ MinBoardedToKeep 1 Minimum or level requirement for min boarded to keep.
  ↳ BoardingWindowMs 38000 Number for boarding window ms (default 38000).
  ↳ BoardWalkSpeed 5.0 walk speed to train
  ↳ BoardDistance 5.0 within this distance (m) counts as boarded
  ↳ StationStopRadius 135.0 Distance in game units that applies to station stop radius.
  ↳ TrainStopSpeed 1.5 Number for train stop speed (default 1.5).
  ↳ CompanyShare 0.50 Number for company share (default 0.50).

RANKS (Brakeman -> Foreman)

Setting Default What it does
Ranks table Table of ranks entries. Add, remove or edit entries following the examples in the file.
  ↳ 1 table Table of 1 entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.

V2: COMPANY OWNERSHIP

Setting Default What it does
CompanyPurchasePrice 50000 Money value for company purchase price. Rewards go through the economy multiplier of jrs_core.
CompanySellPercent 0.50 Rate or multiplier for company sell percent.
MissionPaySplit table Money value for mission pay split. Rewards go through the economy multiplier of jrs_core.
  ↳ driver 0.50 Number for driver (default 0.50).
  ↳ company 0.50 Number for company (default 0.50).
SupplyItems table Inventory items used by supply items. Names must exist in the jrs_items table.

FUEL / WATER / CONDITION

Setting Default What it does
Fuel table Table of fuel entries. Add, remove or edit entries following the examples in the file.
  ↳ item "coal" Inventory items used by item. Names must exist in the jrs_items table.
  ↳ itemLabel "Coal" Inventory items used by item label. Names must exist in the jrs_items table.
  ↳ refuelAmount 2 Number for refuel amount (default 2).
  ↳ decreaseInterval 20000 Time setting for decrease interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ decreaseAmount 1 Number for decrease amount (default 1).
Water table Table of water entries. Add, remove or edit entries following the examples in the file.
  ↳ item "rocker_bucket_full" Inventory items used by item. Names must exist in the jrs_items table.
  ↳ itemLabel "Bucket of Water" Inventory items used by item label. Names must exist in the jrs_items table.
  ↳ refillAmount 50 Number for refill amount (default 50).
  ↳ decreaseInterval 45000 Time setting for decrease interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ decreaseAmount 1 Number for decrease amount (default 1).
Condition table Table of condition entries. Add, remove or edit entries following the examples in the file.
  ↳ item "oilcan" Inventory items used by item. Names must exist in the jrs_items table.
  ↳ itemLabel "Oil Can" Inventory items used by item label. Names must exist in the jrs_items table.
  ↳ repairAmount 50 Number for repair amount (default 50).
  ↳ decreaseInterval 60000 Time setting for decrease interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ decreaseAmount 1 Number for decrease amount (default 1).
  ↳ lowConditionSpeedCap 0.25 Upper limit for low condition speed cap.

COMPANIES

Setting Default What it does
Companies table Table of companies entries. Add, remove or edit entries following the examples in the file.
  ↳ lemoyne_central table Table of lemoyne central entries. Add, remove or edit entries following the examples in the file.
  ↳ heartlands_express table Table of heartlands express entries. Add, remove or edit entries following the examples in the file.
  ↳ cumberland_western table Table of cumberland western entries. Add, remove or edit entries following the examples in the file.
  ↳ new_austin_rail table Table of new austin rail entries. Add, remove or edit entries following the examples in the file.

UPGRADES

Setting Default What it does
Upgrades table Table of upgrades entries. Add, remove or edit entries following the examples in the file.
  ↳ speed table Table of speed entries. Add, remove or edit entries following the examples in the file.
  ↳ fuel_cap table Upper limit for fuel cap.
  ↳ water_cap table Upper limit for water cap.
  ↳ durability table Table of durability entries. Add, remove or edit entries following the examples in the file.

TRAINS

Setting Default What it does
Trains table Table of trains entries. Add, remove or edit entries following the examples in the file.

STATIONS

Setting Default What it does
StationBlipHash 1258184551 Map blip or icon settings for station blip hash.
Stations table Table of stations entries. Add, remove or edit entries following the examples in the file.

TRACK SWITCHES (per route)

Setting Default What it does
TrackSwitches table Table of track switches entries. Add, remove or edit entries following the examples in the file.
  ↳ route_east table Table of route east entries. Add, remove or edit entries following the examples in the file.
  ↳ route_south table Table of route south entries. Add, remove or edit entries following the examples in the file.
TrainSetup table Table of train setup entries. Add, remove or edit entries following the examples in the file.
RouteOneTrainSwitches table Table of route one train switches entries. Add, remove or edit entries following the examples in the file.
RouteOneTrainStops table Table of route one train stops entries. Add, remove or edit entries following the examples in the file.
RouteOneTramSwitches table Table of route one tram switches entries. Add, remove or edit entries following the examples in the file.
RouteOneTramStops table Table of route one tram stops entries. Add, remove or edit entries following the examples in the file.
RouteThreeTrainSwitches table Table of route three train switches entries. Add, remove or edit entries following the examples in the file.
RouteThreeTrainStops table Table of route three train stops entries. Add, remove or edit entries following the examples in the file.
TrackModels table Game model or entity used for track models.

MISSIONS

Setting Default What it does
Missions table Table of missions entries. Add, remove or edit entries following the examples in the file.
  ↳ delivery table Table of delivery entries. Add, remove or edit entries following the examples in the file.
  ↳ maintenance table Table of maintenance entries. Add, remove or edit entries following the examples in the file.

DELIVERY DESTINATIONS

Setting Default What it does
DeliveryDestinations table Table of delivery destinations entries. Add, remove or edit entries following the examples in the file.

PropModel / CarryOffset / CarryAnim / CarryMoveRate are copied

Setting Default What it does
CargoDelivery table Disabling Enabled reverts to no physical cargo, but note that delivery legs currently only complete via the carry/drop flow, so leave this on unless you also restore a walk-based fallback.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ PropModel "p_barrel010x" PLACEHOLDER: verify in-game
  ↳ MaxSimultaneous 3 should match Config.Missions.delivery.jobLegs; max barrels the flatbed can carry
  ↳ RequiredTrainModel "appleseed_config" only this train has the flatbed car for barrels
  ↳ FlatbedCarModel "privateflatcar01x" the coupled carriage barrels are loaded onto
  ↳ PlatformOverrides table just reuses that station's own coords (heading 0.0) as an untested starting point -- check each one in-game and adjust the x/y/z/heading as needed (e.g. move it away from doorways/props, face it properly, etc.).
  ↳ PlatformFallbackCoords vector4(-164.49, 636.65, 114... Used only if a mission is somehow started without a station reference.
  ↳ PlatformBarrelOffsets table Small per-barrel offsets (relative to PlatformSpawnCoords) so multiple loose barrels don't spawn stacked on top of each other.
  ↳ TrainAttachOffsets table if MaxSimultaneous/jobLegs is increased. x = side offset, y = along the flatbed length, z = height above the deck. Still needs in-game tuning -- raise/lower z further if barrels are clipped into the flatbed deck or float above it.
  ↳ CarryOffset table Proven values from mack-oilcompany's Config.CarryOffsets.barrel (CP_BeltFront attach point).
  ↳ CarryAnim table Proven barrel carry animation from mack-oilcompany's AttachBarrelToPlayer.
  ↳ CarryMoveRate 0.7 slows the player while carrying, same as mack-oilcompany
  ↳ PickupRequiresStopped true train must be stopped to load/unload barrels
  ↳ MaxTrainSpeedToPickup 1.5 m/s
  ↳ DropRadius 4.0 distance from destination coords that completes the leg
  ↳ AbandonDistance 100.0 distance from the destination that force-fails an active carry
  ↳ MinMoveDistance 15.0 Only one barrel can be unloaded per drop-off: after a delivery, the train must move at least this far from that spot before "Unload Cargo" appears again.

REWARDS

Setting Default What it does
RailwaymanRewards table Table of railwayman rewards entries. Add, remove or edit entries following the examples in the file.
CompanyRankRewards table Table of company rank rewards entries. Add, remove or edit entries following the examples in the file.
  ↳ 2 table Table of 2 entries. Add, remove or edit entries following the examples in the file.
  ↳ 3 table Table of 3 entries. Add, remove or edit entries following the examples in the file.
  ↳ 4 table Table of 4 entries. Add, remove or edit entries following the examples in the file.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.

BLIPS

Setting Default What it does
Blips table Map blip or icon settings for blips.
  ↳ station table Table of station entries. Add, remove or edit entries following the examples in the file.
  ↳ train table Table of train entries. Add, remove or edit entries following the examples in the file.
  ↳ mission table Table of mission entries. Add, remove or edit entries following the examples in the file.
  ↳ water table Table of water entries. Add, remove or edit entries following the examples in the file.
  ↳ depot table Table of depot entries. Add, remove or edit entries following the examples in the file.
  ↳ switch table Table of switch entries. Add, remove or edit entries following the examples in the file.
AmbientTram table (SpawnAmbientTram) but never defined; feature silently no-op'd.
  ↳ enabled true Turns enabled on or off (default true).
  ↳ model "appleseed_config" reuse a known-good train model
  ↳ spawnCoords vector3(2732.33, -1445.62, 4... Saint Denis Yard
  ↳ direction 1 Number for direction (default 1).
  ↳ passengers 6 Number for passengers (default 6).
  ↳ speed 8.0 Number for speed (default 8.0).

NOTE: OutlawModels / HorseModels / OutlawWeapons below MUST be

Setting Default What it does
TrainRobbery table because shipping guessed model hashes would just fail silently (peds won't load) instead of erroring, which is worse to debug. Enabled is set to false until you confirm/replace them.
  ↳ Enabled false flip to true once models below are verified
  ↳ AmbientEnabled true Switch for ambient enabled: true = on, false = off (default true).
  ↳ AmbientCheckInterval 300000 5 min between scans for ambient trains to rob
  ↳ AmbientChance 25 % chance an ambient train gets robbed per scan
  ↳ AmbientFollowMs 45000 how long ambient outlaws harass a route train
  ↳ PlayerChance 20 % chance used only if TriggerTrainRobbery(false) is ever called
  ↳ SafeZoneRadius 500.0 no robbery within this distance of any station
  ↳ ManualStopRobRadius 15.0 outlaw must be this close to rob a stopped/dead train
  ↳ TrainStopSpeed 1.5 speed (m/s) below which a manual stop counts as "stopped"
  ↳ RobberySlowSpeed 8.0 train is forced down to this speed during a robbery
  ↳ BoardTrain true Switch for board train: true = on, false = off (default true).
  ↳ BoardDistance 4.0 Distance in game units that applies to board distance.
  ↳ BoardSideOffset 1.2 Number for board side offset (default 1.2).
  ↳ EscapeTimeMs 15000 Number for escape time ms (default 15000).
  ↳ InitialMessageDelay 4000 Time setting for initial message delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ SpawnAheadDistance 80.0 Distance in game units that applies to spawn ahead distance.
  ↳ SpawnMultiplier 3.0 World coordinates (x, y, z) used for spawn multiplier.
  ↳ OutlawCount table Table of outlaw count entries. Add, remove or edit entries following the examples in the file.
  ↳ OutlawAccuracy 35 Number for outlaw accuracy (default 35).
  ↳ OutlawModels table PLACEHOLDER -- replace with real RDR2 ped model names:
  ↳ HorseModels table Game model or entity used for horse models.
  ↳ OutlawWeapons table Game model or entity used for outlaw weapons.
  ↳ PressureDecayInterval 4000 Time setting for pressure decay interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ PressureDecayPerOutlaw 4 Number for pressure decay per outlaw (default 4).
  ↳ PressureAttackRadius 40.0 Distance in game units that applies to pressure attack radius.
  ↳ PressureRecoveryInterval 2000 Time setting for pressure recovery interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ PressureRecoveryAmount 5 Number for pressure recovery amount (default 5).
  ↳ PressureRepairAmount 30 Number for pressure repair amount (default 30).
  ↳ PressureRepairTime 8000 Number for pressure repair time (default 8000).
  ↳ RobberyTakePercent 0.20 20% of the current cash register
  ↳ RobberyTakeMin 20 Minimum or level requirement for robbery take min.
  ↳ RobberyTakeMax 500 Upper limit for robbery take max.

Free (included in JRS Core)   jrs_samples

JRS Core animal samples - sedate animals, collect samples, leaderboard and milestones

Resource jrs_samples
Folder [JOBS]
Version 1.0.0
Author JRS TEAM
Depends on /onesync, jrs_core, oxmysql
Interface No
Code size 1,631 Lua lines

Commands

  • /samplesmenu
  • /setfeatured

Database tables

jrs_samples

config.lua - 24 options#

JRS SAMPLES — Configuration

Setting Default What it does
Language "en" 'en' or 'ar'

Debug

Setting Default What it does
DebugClient false Print client-side debug logs to F8 console
DebugServer false Print server-side debug logs to server console

Database

Setting Default What it does
AutoInstallDB true create the jrs_samples table automatically on resource start

Sample Collection

Setting Default What it does
StoreSampleData true false = no DB writes; collections kept in memory until restart (testing only)
SampleHoldTime 4000 ms — how long to hold the prompt to collect
AnimalCleanupTime 90000 ms — how long before a sedated animal recovers (90s)
SampleCooldown 3000 ms — server-side minimum gap between a player's sample submissions (anti-spam/exploit)

Leaderboard location (prompt)

Setting Default What it does
LeaderboardLocation table Place this sphere at a naturalist camp, doctor's office, or any RP-fitting location. Adjust coords and heading to match your map layout.
  ↳ coords vector3(-280.45, 758.23, 118... Example: Valentine area — change to fit your server
  ↳ heading 180.0 Number for heading (default 180.0).
  ↳ radius 1.5 Distance in game units that applies to radius.

Map Blip (shown at the leaderboard target location)

Setting Default What it does
ShowBlip true Set Config.ShowBlip = false to hide it entirely. BlipSprite / BlipColor accept RDR3 blip names (joaat'd automatically).
BlipSprite "blip_shop_trapper" blip sprite name (or hash)
BlipColor "BLIP_MODIFIER_MP_COLOR_8" blip colour modifier ('' = default)
BlipScale 0.2 Map blip or icon settings for blip scale.

Milestone Rewards

Setting Default What it does
MilestoneRewards table When a player's personal total sample count hits a key, they receive bonus cash + notify. Keys must be integers (sample counts). Set to {} to disable milestones entirely.
  ↳ 5 table Table of 5 entries. Add, remove or edit entries following the examples in the file.
  ↳ 10 table Table of 10 entries. Add, remove or edit entries following the examples in the file.
  ↳ 25 table Table of 25 entries. Add, remove or edit entries following the examples in the file.
  ↳ 50 table Table of 50 entries. Add, remove or edit entries following the examples in the file.

First Discovery Bonus

Setting Default What it does
FirstDiscoveryBonus 500 Extra cash awarded to the FIRST player EVER to collect a particular animal sample. Set to 0 to disable.

Featured Animal

Setting Default What it does
FeaturedAnimal "" e.g. 'bear', 'moose', 'bison' — must match a name in hashToAnimalMap (server/main.lua)
FeaturedMultiplier 2 reward is multiplied by this when sampling the featured animal

Free (included in JRS Core)   jrs_smelting

JRS Core smelting - turn ore from jrs_mining into bars at smelters

Resource jrs_smelting
Folder [JOBS]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core, jrs_inventory, jrs_progressbar
Interface No
Code size 1,023 Lua lines
config.lua - 8 options#

General

Setting Default What it does
Language "en" 'en' or 'ar'
SpawnDistance 50.0 smelter NPC appears inside this radius
UseDistance 2.5 prompt radius
MaxBatch 20 bars per smelt
Job nil e.g. 'blacksmith' to lock smelting to one job (nil = everyone)
Smelters table add more: { label, model, coords = vector4(x, y, z, heading), scenario, blip }
BlipSprite "blip_shop_blacksmith" Map blip or icon settings for blip sprite.
Recipes table Uses the items jrs_mining gives. time = ms per bar.

Paid (server only)   jrs_stashes

jrs core Stashes - purchasable and placeable shared stashes for jrs_core / jrs_inventory

Resource jrs_stashes
Folder [JOBS]
Version 1.4.1
Author jrs team
Depends on jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 2,652 Lua lines

Exports

AdminRemovePropertyStash, BeginPropertyPlacement, CountPropertyStashes, CreatePropertyStashDirect, GetPropertyStashes, GetPropertyStashesDetailed, RefreshAccess, ReloadStashes, RemoveAllPropertyStashes, RemovePropertyStash, SetPropertyStashSingleSize, SetPropertyStashSize

Database tables

jrs_stashes

config/config.lua - 76 options#

General

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
Commands table Table of commands entries. Add, remove or edit entries following the examples in the file.
  ↳ Create "createstash" Setting for create.
  ↳ Remove "removestash" Setting for remove.
OpenKey 0x0522B243 RedM controls used while standing near a stash.
ManageKey 0x5415BE48 Deprecated: stash management now opens from the same world prompt.
Prompt table Native RedM prompt shown while standing near an accessible stash.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Text "Open Stash Menu" Text shown to the player for text. Change it to translate or rebrand.
  ↳ GroupText "Stash" Who is allowed: jobs, groups or permissions for group text.
  ↳ Hold false Switch for hold: true = on, false = off (default false).
Object table Physical object spawned at every stash location. Model can be changed without touching client/server code.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Model "p_chest01x" Game model or entity used for model.
  ↳ FallbackModels table Game model or entity used for fallback models.
  ↳ SpawnDistance 70.0 Distance in game units that applies to spawn distance.
  ↳ DespawnDistance 85.0 Distance in game units that applies to despawn distance.
  ↳ ZOffset 0.0 Number for z offset (default 0.0).
  ↳ Freeze true Switch for freeze: true = on, false = off (default true).
  ↳ Collision true Switch for collision: true = on, false = off (default true).
PropertyStash table House stashes placed from the jrs_housing property menu. Count and capacity per house come from jrs_housing (Config.PropertyStashes); this is the prop.
  ↳ Model "p_storagebox01x" Game model or entity used for model.
  ↳ FallbackModels table Game model or entity used for fallback models.
  ↳ Models table Available storage furniture models player can cycle through with [R]:
  ↳ MinDistance 1.5 House boxes may stand this close to another stash (several fit in one room).
Move table Owner-only stash relocation & placement: matches housing furniture theme exactly.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ PreviewDistance 1.3 Distance in game units that applies to preview distance.
  ↳ PreviewAlpha 170 Number for preview alpha (default 170).
  ↳ RotateSpeed 90.0 Number for rotate speed (default 90.0).
  ↳ Keys table Key or control used for keys. Controls are hash values from the game input list.
  ↳ ConfirmKey 0x760A9C6F Key or control used for confirm key. Controls are hash values from the game input list.
  ↳ CancelKey 0x156F7119 Key or control used for cancel key. Controls are hash values from the game input list.
  ↳ GroupText "House Stash" Who is allowed: jobs, groups or permissions for group text.
  ↳ ConfirmText "Place Stash" Text shown to the player for confirm text. Change it to translate or rebrand.
  ↳ CancelText "Cancel" Text shown to the player for cancel text. Change it to translate or rebrand.
  ↳ NextText "Change Furniture" Text shown to the player for next text. Change it to translate or rebrand.
  ↳ RotateText "Rotate" Text shown to the player for rotate text. Change it to translate or rebrand.
  ↳ ServerConfirmDistance 4.0 Distance in game units that applies to server confirm distance.
InteractionDistance 2.0 Distance in game units that applies to interaction distance.
ServerInteractionDistance 4.0 Distance in game units that applies to server interaction distance.
RemoveDistance 5.0 Distance in game units that applies to remove distance.
MinimumStashDistance 3.0 Distance in game units that applies to minimum stash distance.
SyncDistance 150.0 reserved for future scoped sync; current sync remains authoritative for all stashes.
MaxStashUsers 999 Upper limit for max stash users.
MaxStorageSize 1000000 Upper limit for max storage size.
MaxPriceMoney 100000000 Money value for max price money. Rewards go through the economy multiplier of jrs_core.
MaxPriceGold 1000000 Money value for max price gold. Rewards go through the economy multiplier of jrs_core.
DepositRules table Controls what can be deposited into REDEMPIRE stashes. These rules apply to the owner and all authorized users and are enforced server-side. Normal items are always allowed; use per-user permissions to control who may deposit them
  ↳ Money true cash
  ↳ Gold true gold
  ↳ DirtyMoney true dirty money
  ↳ Weapons true weapons
Blips table Map blip or icon settings for blips.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Sprite 1151744703 Map blip or icon settings for sprite.
  ↳ ForSaleLabel "Stash For Sale" Text shown to the player for for sale label. Change it to translate or rebrand.
  ↳ OwnedLabel "Your Stash" Text shown to the player for owned label. Change it to translate or rebrand.
  ↳ HouseStashes true House stashes (jrs_housing): shown to the owner and key holders.
  ↳ HouseLabel "House Stash" Text shown to the player for house label. Change it to translate or rebrand.
AdminGroups table jrs_core groups allowed to use /createstash and /removestash.
  ↳ owner true Switch for owner: true = on, false = off (default true).
  ↳ admin true Switch for admin: true = on, false = off (default true).
AllowedIdentifiers table Optional explicit identifiers. Supports steam:, license:, fivem:, etc.
Items table Usable items that create an already-owned stash at the player's position.
  ↳ Create "" Setting for create.
  ↳ Remove "" Setting for remove.
  ↳ Ownership "" Setting for ownership.
  ↳ Move "" Setting for move.
  ↳ Deposit "" Money value for deposit. Rewards go through the economy multiplier of jrs_core.
  ↳ Withdraw "" Setting for withdraw.
  ↳ AllowCustom true Owners can add a per-stash Discord webhook from the management UI.
Text table Text shown to the player for text. Change it to translate or rebrand.
  ↳ Open "Open Stash" Setting for open.
  ↳ Buy "Buy Stash" Setting for buy.
  ↳ Manage "Manage Stash" Setting for manage.
Notes from the README#
text
# jrs_stashes
REDEMPIRE-native stash system rebuilt for `jrs_core` + `jrs_inventory`.
## Features
- Admin `/createstash` UI: size, cash price, gold price.
- `/removestash <id>` with permission + distance validation.
- For-sale stash purchase using cash, gold, or free ownership.
- Owner management menu: add/remove authorized players and set a custom Discord webhook.
- `Stash1` / `Stash2` usable items create personal stashes using the configured capacity, optional cash/gold placement fee, and `DeleteOnUse` behavior.
- Opens the native `jrs_inventory` storage UI, so items, weapons, cash, gold and dirty money follow inventory config and security rules.
- Server-authoritative access, ownership, distance and purchase validation.
- Low-idle client loop with dynamic sleep.
- Optional blips for for-sale and owned stashes.
- Global and per-stash logs. Per-stash item movement logs require the included patched `jrs_inventory` build.
## Install
1. Import `sql/jrs_stashes.sql`.
2. Put `jrs_stashes` in resources.
3. Ensure start order:
   '''cfg
   ensure oxmysql
   ensure jrs_core
   ensure jrs_inventory
   ensure jrs_stashes
   '''
4. Configure admin groups / allowed identifiers and webhooks in `config.lua`.
## Inventory integration
Every stash maps to a storage key like `jrs_stash:12` and uses:
- `jrs_inventoryApi().createstorage`
- `jrs_inventoryApi().openstorage`
- `jrs_inventoryApi().updatestorage`
The included updated `jrs_inventory` emits a server-local `jrs_inventory:server:storageTransaction` event after successful storage transactions so custom stash 
## v1.0.2
- Removed dependency on the table returned by `jrs_inventoryApi()`.
- Usable stash items now register through `jrsCore:registerUsableItem`, which is the server event implemented by `jrs_inventory`.
- Storage/item operations now call the direct `jrs_inventory` exports.
- Fixes startup error: `jrs_inventory usable-item API is unavailable`.
## v1.0.3 - Per-user stash permissions
- Every authorized stash user now has an individual access level:
  - `deposit`: can put items/weapons/currencies into the stash but cannot take anything out.
  - `withdraw`: can take items/weapons/currencies out but cannot put anything in.
  - `full`: can deposit and withdraw.
- The stash owner always has `full` access and cannot be downgraded.
- Owners can choose the access level when adding a player and can change it later from the same management UI.
- Permission checks are server-authoritative and apply to items, weapons, cash, gold, and dirty money.
- Existing authorized users created before v1.0.3 automatically keep `full` access; no SQL migration is required.
- Requires the included `jrs_inventory` v1.6.7 permission-hook build for transfer enforcement.

Paid (server only)   jrs_train

Resource jrs_train
Folder [JOBS]
Version 2.5.3-jrs
Author jrs team
Depends on jrs_core, jrs_inventory, oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 8,062 Lua lines

Commands

  • /-jrs_train_track_left
  • /-jrs_train_track_right
  • /jrs_train_menu
  • /ticketgps

Exports

BacchusBridgeDestroyed, CheckIfTrainIsSpawned, FindNearestTicketBooth, ForceExitSitting, GetTrainEntity, PlayTrainWhistleSafe

Database tables

train

config/config.lua - 139 options#

General

Setting Default What it does
defaultlang "ar" Setting for defaultlang.
Debug false Debug output for debug: true = yes, false = no (default false).
ConductorJob "conductor" job title of who can spawn a train
CruiseControl false set true if you want to allow cruise control
TrainControls table Table of train controls entries. Add, remove or edit entries following the examples in the file.
  ↳ OpenMenuKey "L" Labels shown in the NUI
  ↳ TrackLeftKey "A" Key or control used for track left key. Controls are hash values from the game input list.
  ↳ TrackRightKey "D" Key or control used for track right key. Controls are hash values from the game input list.
  ↳ AccelerateKey "W" Key or control used for accelerate key. Controls are hash values from the game input list.
  ↳ BrakeReverseKey "S" Key or control used for brake reverse key. Controls are hash values from the game input list.
  ↳ RemapMovement true Remap the locomotive's native Left Shift / Left Ctrl controls to W / S.
  ↳ OpenMenuControl 0x80F28E95 Native RedM input hashes read from the keyboard.
  ↳ TrackLeftControl 0x7065027D Key or control used for track left control. Controls are hash values from the game input list.
  ↳ TrackRightControl 0xB4E465B4 Key or control used for track right control. Controls are hash values from the game input list.
  ↳ AccelerateControl 0x8FD015D8 W / INPUT_MOVE_UP_ONLY
  ↳ BrakeReverseControl 0xD27782E3 S / INPUT_MOVE_DOWN_ONLY
  ↳ NativeAccelerateControl 0x8FFC75D6 Left Shift / INPUT_SPRINT
  ↳ NativeBrakeReverseControl 0xDB096B85 Left Ctrl / INPUT_DUCK
TrainPreview table Table of train preview entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ UseCurrentStation true preview the train on the current station track
  ↳ Direction false Switch for direction: true = on, false = off (default false).
  ↳ CameraDistance 26.0 Distance in game units that applies to camera distance.
  ↳ MinCameraDistance 12.0 Distance in game units that applies to min camera distance.
  ↳ MaxCameraDistance 42.0 Distance in game units that applies to max camera distance.
  ↳ CameraHeight 5.4 Number for camera height (default 5.4).
  ↳ LookAtHeight 1.8 Number for look at height (default 1.8).
  ↳ CameraFov 38.0 Number for camera fov (default 38.0).
  ↳ StartAngle 90.0 Number for start angle (default 90.0).
  ↳ RotateStep 12.0 Number for rotate step (default 12.0).
  ↳ ZoomStep 2.5 Number for zoom step (default 2.5).
  ↳ LoadTimeout 15000 Time setting for load timeout. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ Coords table Used only when UseCurrentStation is false.
FuelSettings table Table of fuel settings entries. Add, remove or edit entries following the examples in the file.
  ↳ TrainFuelItem "coal" db name of the item needed to fuel the train
  ↳ TrainFuelItemDisplayName "Coal" display name of the item
  ↳ TrainFuelItemAmount 1 How many of the item it will take to fuel the train
  ↳ FuelDecreaseTime 30000 time in ms of how often the trains fuel goes down
  ↳ FuelDecreaseAmount 1 amount of fuel to decrease
ConditionSettings table Table of condition settings entries. Add, remove or edit entries following the examples in the file.
  ↳ TrainCondItem "trainoil" db name of the item needed to repair the train
  ↳ TrainCondItemDisplayName "Train Oil" display name of the item
  ↳ TrainCondItemAmount 1 How many of the item it will take to repair the train
  ↳ CondDecreaseTime 30000 time in ms of how often the trains condition goes down
  ↳ CondDecreaseAmount 1 amount of cond to decrease
PassengerJob table Who is allowed: jobs, groups or permissions for passenger job.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ KeepRoutesInRegion true keeps western and eastern rail networks separate
  ↳ MinPassengers 3 Minimum or level requirement for min passengers.
  ↳ MaxPassengers 6 Upper limit for max passengers.
  ↳ StartRadius 55.0 Distance in game units that applies to start radius.
  ↳ ArrivalRadius 45.0 Distance in game units that applies to arrival radius.
  ↳ RequiredStopSpeed 0.8 Number for required stop speed (default 0.8).
  ↳ BoardingWalkTime 3500 Number for boarding walk time (default 3500).
  ↳ TurnaroundDelay 8000 Time setting for turnaround delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ PedCleanupDelay 12000 Time setting for ped cleanup delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ BasePay 0.42 Server-side fare calculation
  ↳ PayPerPassenger 0.10 Money value for pay per passenger. Rewards go through the economy multiplier of jrs_core.
  ↳ PayPerKilometer 0.14 Money value for pay per kilometer. Rewards go through the economy multiplier of jrs_core.
  ↳ MinimumTripTime 20 Minimum or level requirement for minimum trip time.
  ↳ PedModels table Game model or entity used for ped models.
BacchusBridgeDestroying table Table of bacchus bridge destroying entries. Add, remove or edit entries following the examples in the file.
  ↳ enabled true if true you will be able to blow up bacchus bridge!
  ↳ coords table coords of where you have to place the dynamite
  ↳ dynamiteItem "dynamite" db name of the dynamite item
  ↳ dynamiteItemAmount 2 amount needed to explode the bridge
  ↳ explosionTimer 30000 time before the explosion happens
Trains table Table of trains entries. Add, remove or edit entries following the examples in the file.
TrainDespawnDist 200 the maximum dist the conductor can be before the train despawns
StationBlipHash -1505442625 set the blip hash
StationBlipColor "BLIP_MODIFIER_MP_COLOR_32" White (RDO standard)
Stations table Table of stations entries. Add, remove or edit entries following the examples in the file.
TicketBooth table Table of ticket booth entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Item "train_ticket" Inventory items used by item. Names must exist in the jrs_items table.
  ↳ GeneralTicketPrice 2.50 Money value for general ticket price. Rewards go through the economy multiplier of jrs_core.
  ↳ ConsumeOnTrip true Switch for consume on trip: true = on, false = off (default true).
  ↳ Blip table Map blip or icon settings for blip.
  ↳ Destinations table Table of destinations entries. Add, remove or edit entries following the examples in the file.
LargeTrain table Table of large train entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ RouteName "big_loop" Text shown to the player for route name. Change it to translate or rebrand.
  ↳ AllowConductorTakeover true Allows conductor takeover: true = yes, false = no (default true).
  ↳ WhistleOnArrival true Switch for whistle on arrival: true = on, false = off (default true).
  ↳ WhistleOnDeparture true Switch for whistle on departure: true = on, false = off (default true).
  ↳ StopDuration 60 1 minute stop at every station
  ↳ TicketCheckDistance 15.0 Distance in game units that applies to ticket check distance.
  ↳ Blip table Map blip or icon settings for blip.
OnDemandTravel table Table of on demand travel entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ RequireTicketItem true If true, player MUST have a ticket item in inventory; if false, player can travel using ticket OR pay cash directly
  ↳ RequireAtTicketBooth true Player MUST be standing at the station ticket booth window
  ↳ MaxDistanceToTicketBooth 3.5 Maximum meters from ticket window to initiate travel
  ↳ AllowSkip false Disabled: [E] does not skip train journeys
  ↳ RelocateHorse true Automatically move player's active horse to destination station
  ↳ NotifyConductors true Send dispatch alert to online conductors
  ↳ ConductorWaitTimeout 10 Seconds before auto train departs if no conductor takes the dispatch
  ↳ TrainApproachEnabled true Train approaches smoothly along tracks to the platform instead of spawning on player's face
  ↳ TrainApproachSpeed 10.0 Speed (m/s) when approaching platform
  ↳ DepartureWaitSeconds 6 Seconds train waits at destination platform after disembarkation before departing
  ↳ DepartureDespawnDistance 160.0 Distance (meters) train moves away before despawning cleanly
  ↳ StationMasterNPC table Table of station master npc entries. Add, remove or edit entries following the examples in the file.
TrainRobbery table Idea 1: Train Robbery / Safe Heist (Without AI bots)
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ MinimumPolice 1 Minimum online lawmen required (police, sheriff, marshal)
  ↳ CooldownMinutes 30 Cooldown between robberies in minutes
  ↳ ExplosionTimerSeconds 25 Seconds after planting dynamite before the safe blows
  ↳ RequiredItem "dynamite" Item required to breach the safe
  ↳ MinCash 150.0 Money value for min cash. Rewards go through the economy multiplier of jrs_core.
  ↳ MaxCash 400.0 Money value for max cash. Rewards go through the economy multiplier of jrs_core.
  ↳ RewardItems table Money value for reward items. Rewards go through the economy multiplier of jrs_core.
  ↳ CarriageIndex 1 Baggage / freight car
  ↳ LawJobs table Who is allowed: jobs, groups or permissions for law jobs.
  ↳ BlipDuration 60 Seconds the emergency police blip flashes on the map
TrainFreightStash table Idea 2: Freight & Mail Cargo Stash
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ CarriageIndex 1 Baggage car
  ↳ Capacity 500 Maximum storage limit in kg
  ↳ StashId "train_freight_bigloop" Setting for stash id.
DiningCar table Idea 4: Dining Car / Saloon Refreshments

Paid (server only)   jrs_truck

Network-safe custom truck shell for RedM using jrs_core and jrs_inventory

Resource jrs_truck
Folder [JOBS]
Version 2.9.1
Author jrs team
Depends on jrs_core, jrs_inventory
Interface No
Languages ar, en
Code size 2,645 Lua lines
config/config.lua - 130 options#

General

Setting Default What it does
Debug false Debug output for debug: true = yes, false = no (default false).
REDEMPIRE table Table of redempire entries. Add, remove or edit entries following the examples in the file.
  ↳ CoreResource "jrs_core" Setting for core resource.
  ↳ InventoryResource "jrs_inventory" Setting for inventory resource.
  ↳ ItemName "truckr" Inventory items used by item name. Names must exist in the jrs_items table.
  ↳ CloseInventoryOnUse true Switch for close inventory on use: true = on, false = off (default true).
  ↳ RegistrationDelay 1500 Time setting for registration delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ RegistrationAttempts 20 Number for registration attempts (default 20).
  ↳ RegistrationRetryDelay 1000 Time setting for registration retry delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ NotificationDuration 4000 Time setting for notification duration. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Network table Table of network entries. Add, remove or edit entries following the examples in the file.
  ↳ EntityRegistrationTimeout 1500 Time allowed for a created entity to receive a network object.
  ↳ EntityRegistrationRetryDelay 25 Time setting for entity registration retry delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Spawn table World coordinates (x, y, z) used for spawn.
  ↳ BaseVehicleModel "coach4" Game model or entity used for base vehicle model.
  ↳ BodyModel "f15078" Game model or entity used for body model.
  ↳ WheelModel "f15078wheel" Game model or entity used for wheel model.
  ↳ DistanceInFront 4.0 Distance in game units that applies to distance in front.
  ↳ HeightOffset 0.15 Number for height offset (default 0.15).
  ↳ ClearRadius 3.0 Distance in game units that applies to clear radius.
  ↳ WarpIntoDriverSeat false Switch for warp into driver seat: true = on, false = off (default false).
  ↳ ModelLoadTimeout 10000 Time setting for model load timeout. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ RegistrationDelay 300 Time setting for registration delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ DefaultEngineState false Switch for default engine state: true = on, false = off (default false).
  ↳ OneTruckPerPlayer true Switch for one truck per player: true = on, false = off (default true).
BaseVehicleGuard table Table of base vehicle guard entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ DontAutoCreateDraftAnimals false Must remain false. RedM wagons need a draft animal for normal entry and driving. The horse is kept attached and made transparent instead of being deleted.
  ↳ ForceDraftAnimalAutoCreation true Forces draft animal auto creation: true = yes, false = no (default true).
  ↳ RequireDraftAnimal true Requires draft animal: true = yes, false = no (default true).
  ↳ MinimumDraftAnimals 1 Minimum or level requirement for minimum draft animals.
  ↳ DraftHarnessSlots 6 Upper limit for draft harness slots.
  ↳ DraftAnimalSpawnTimeout 3500 Time setting for draft animal spawn timeout. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ DraftAnimalSpawnRetryDelay 50 Time setting for draft animal spawn retry delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ HideBaseVehicle true Keep coach4 rendered but fully transparent. Do not use SetEntityVisible(false), because RedM may hide attached truck objects together with the parent.
  ↳ BaseVehicleAlpha 0 Number for base vehicle alpha (default 0).
  ↳ HideDraftAnimals true Keep harness animals alive and attached for vehicle functionality. Using the visibility flag (not only alpha 0) also hides most reins/harness geometry.
  ↳ UseDraftAnimalVisibilityFlag true Turns draft animal visibility flag on or off (default true).
  ↳ DraftAnimalAlpha 0 Game model or entity used for draft animal alpha.
  ↳ HideDraftAnimalReins true Hides draft animal reins: true = yes, false = no (default true).
  ↳ HarnessRopeGuard table Wagon harness traces are PHYSICS rope objects and are separate from the horse rein geometry handled by _HIDE_PED_REINS. Detect only ropes whose endpoints connect this coach/front area to its hidden draft animal.
  ↳ DisableDraftAnimalCollision true The harness horse remains logically attached so native wagon controls work, but it must not create an invisible collision area in front of the truck.
  ↳ CompletelyDisableDraftAnimalCollision true Switch for completely disable draft animal collision: true = on, false = off (default true).
  ↳ KeepDraftAnimalPhysics true Switch for keep draft animal physics: true = on, false = off (default true).
  ↳ PreventDraftAnimalRagdoll true Switch for prevent draft animal ragdoll: true = on, false = off (default true).
  ↳ ProtectDraftAnimals true Switch for protect draft animals: true = on, false = off (default true).
  ↳ RemoteScanInterval 1000 Nearby network trucks are rescanned, then hidden at a faster interval.
  ↳ VisibilityGuardInterval 100 Time setting for visibility guard interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ LocalVisualGuardInterval 50 Time setting for local visual guard interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Attachments table Table of attachments entries. Add, remove or edit entries following the examples in the file.
  ↳ Body table Table of body entries. Add, remove or edit entries following the examples in the file.
  ↳ Wheels table Table of wheels entries. Add, remove or edit entries following the examples in the file.
  ↳ Lights table Table of lights entries. Add, remove or edit entries following the examples in the file.
  ↳ Exhaust table Table of exhaust entries. Add, remove or edit entries following the examples in the file.
  ↳ AudioAnchor table Table of audio anchor entries. Add, remove or edit entries following the examples in the file.
DriverVisual table Table of driver visual entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ HideRealDriver true The real player must remain in coach4's driver seat so RedM keeps native wagon control. It is hidden locally and a visual clone is placed inside the truck cabin.
  ↳ NetworkedClone false Switch for networked clone: true = on, false = off (default false).
  ↳ EntryDelay 650 Time setting for entry delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ RevealDelay 100 Time setting for reveal delay. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ GuardInterval 50 Time setting for guard interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AnimationLoadTimeout 5000 Time setting for animation load timeout. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ AnimationDictionary "script_re@check_point@small_cart" Animation settings for animation dictionary.
  ↳ AnimationName "int_loop_driver" Text shown to the player for animation name. Change it to translate or rebrand.
  ↳ AnimationBlendIn 8.0 Animation settings for animation blend in.
  ↳ AnimationBlendOut 1.0 Animation settings for animation blend out.
  ↳ AnimationFlag 1 Animation settings for animation flag.
  ↳ AnimationPlaybackRate 0.1 Animation settings for animation playback rate.
  ↳ Offset vector3(-0.48, 0.17, 0.43) Driver position inside f15078. X is left/right, Y is front/back, Z is height.
  ↳ Rotation vector3(20.0, 20.0, 0.0) Setting for rotation.
Controls table Table of controls entries. Add, remove or edit entries following the examples in the file.
  ↳ ToggleEngine 0x8AAA0AD4 Left Alt
  ↳ SteerLeft 0x7065027D A
  ↳ SteerRight 0xB4E465B4 D
  ↳ Brake 0xD27782E3 S
WheelAnimation table Animation settings for wheel animation.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ UpdateInterval 20 Time setting for update interval. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ MaximumSteerAngle 30.0 Upper limit for maximum steer angle.
  ↳ SteeringSmoothing 7.0 Number for steering smoothing (default 7.0).
  ↳ RotationMultiplier 3.0 Rate or multiplier for rotation multiplier.
Lock table Table of lock entries. Add, remove or edit entries following the examples in the file.
  ↳ DefaultLocked true Switch for default locked: true = on, false = off (default true).
  ↳ InteractionDistance 8.0 Distance in game units that applies to interaction distance.
  ↳ BlockNotificationCooldown 2500 Time setting for block notification cooldown. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
Reset table Table of reset entries. Add, remove or edit entries following the examples in the file.
  ↳ MaximumDistance 8.0 Distance in game units that applies to maximum distance.
  ↳ MaximumSpeed 1.5 Upper limit for maximum speed.
Speedometer table Table of speedometer entries. Add, remove or edit entries following the examples in the file.
  ↳ Enabled true Turns enabled on or off (default true).
  ↳ Unit "MPH" MPH or KMH
  ↳ Position vector2(0.50, 0.91) World coordinates (x, y, z) used for position.
  ↳ TextScale 0.35 Text shown to the player for text scale. Change it to translate or rebrand.
Commands table Table of commands entries. Add, remove or edit entries following the examples in the file.
  ↳ Spawn table World coordinates (x, y, z) used for spawn.
  ↳ Delete "deletetruck" Setting for delete.
  ↳ Reset "resettruck" Setting for reset.
  ↳ Lock "trucklock" Setting for lock.
Audio table PMMS is optional. The truck works normally when this is disabled. Put reachable HTTP/HTTPS URLs below before enabling it.
  ↳ Enabled false Turns enabled on or off (default false).
  ↳ Resource "pmms" Setting for resource.
  ↳ Volume 0.25 Number for volume (default 0.25).
  ↳ StartUrl "" Setting for start url.
  ↳ IdleUrl "" Setting for idle url.
  ↳ StopUrl "" Setting for stop url.
  ↳ StartDurationMs 3800 Time setting for start duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ IdleDurationSeconds 30.0 Time setting for idle duration seconds. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ StopDurationMs 2200 Time setting for stop duration ms. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ MaximumDistance 35.0 Distance in game units that applies to maximum distance.
Messages table Text shown to the player for messages. Change it to translate or rebrand.
  ↳ Spawned "Truck spawned." Setting for spawned.
  ↳ Deleted "Truck removed." Setting for deleted.
  ↳ AlreadySpawning 'Your truck is already being... Setting for already spawning.
  ↳ SpawnFailed "The truck could not be spawned." World coordinates (x, y, z) used for spawn failed.
  ↳ SpawnBlocked "The spawn area is blocked." World coordinates (x, y, z) used for spawn blocked.
  ↳ MustBeOnFoot 'You must be on foot to spaw... Setting for must be on foot.
  ↳ MustBeAlive 'You cannot spawn the truck ... Setting for must be alive.
  ↳ NoTruck "You do not have an active truck." Setting for no truck.
  ↳ TooFar "You are too far from your truck." Setting for too far.
Notes from the README#
text
# jrs_truck 2.9.0
A rebuilt RedM truck resource for `jrs_core` and `jrs_inventory`.
## Main changes
- Removed teleport-based desync fixes.
- Removed explosions and unsafe anti-theft code.
- One active truck per player.
- Server-owned spawn registration and cleanup.
- Automatic cleanup when the player disconnects or the resource stops.
- Safe engine toggle, front lights, brake light, exhaust smoke, wheel animation and speedometer.
- Optional PMMS start/idle/stop audio with server-side ownership checks.
- Truck lock state uses OneSync state bags.
- Keeps the required draft horse attached so RedM allows normal wagon entry and driving.
- Makes the draft horse and its reins invisible instead of deleting or detaching it.
- Keeps the hidden base wagon and hidden horse transparent for all clients, including after entering water.
- Completely disables the hidden horse collision so the truck no longer has an invisible extension in front.
## Installation
1. Rename the folder to `jrs_truck`.
2. Run `install.sql`.
3. Copy `truckr.png` to the item image directory used by `jrs_inventory`.
4. Add this order to `server.cfg`:
'''cfg
ensure jrs_core
ensure jrs_inventory
ensure jrs_truck
'''
5. Give yourself the `truckr` item and use it.
## Commands
- `/deletetruck` removes your active truck.
- `/resettruck` places a nearby stopped truck upright.
- `/trucklock` locks or unlocks your active truck.
- `/spawntruck` is disabled by default and can be enabled in `config.lua` for testing.
## Controls
- `Left Alt`: start or stop the engine while sitting in the driver seat.
- Standard movement controls drive the base vehicle.
## Audio
PMMS audio is disabled by default because the original archive did not include the MP3 files.
Set reachable HTTP/HTTPS URLs in `Config.Audio` and set `Enabled = true` to use it.
## Notes
- OneSync must be enabled for network entity ownership and lock state bags.
- The driving control still comes from `coach4` and its hidden draft horse, while the horse collision is disabled.
- `Config.BaseVehicleGuard` controls water visibility protection and hidden draft-animal behavior.
- Body, wheel and light positions can be adjusted in `Config.Attachments`.
## 2.3 networking fix
- Checks `NETWORK_GET_ENTITY_IS_NETWORKED` before requesting a network ID.
- Registers entities through the RedM native hash when the Lua global is unavailable.

Paid (server only)   jrs_undertaker

Undertaker job (jrs_multijob

Resource jrs_undertaker
Folder [JOBS]
Version 1.0.1
Author jrs team
Depends on jrs_core, jrs_inventory, oxmysql
Interface No
Languages ar, en
Code size 571 Lua lines
config.lua - 26 options#

General

Setting Default What it does
Job "undertaker" must be the character's ACTIVE job (jrs_multijob)
Items table Inventory items used by items. Names must exist in the jrs_items table.
  ↳ Body table Table of body entries. Add, remove or edit entries following the examples in the file.
  ↳ Coffin table Table of coffin entries. Add, remove or edit entries following the examples in the file.
ShovelItem "shovel" Inventory items used by shovel item. Names must exist in the jrs_items table.
ShovelPrice 3.0 undertakers can buy one at any parlour (no NPC store sells shovels)
WrapPay 2.0 per body collected
ContractBonus 4.0 extra for a body from a parlour contract
BurialPay 12.0 per burial
JobXP table Who is allowed: jobs, groups or permissions for job xp.
Offerings table Optional offerings placed in the coffin while preparing: the first one the player carries is used automatically and raises the burial pay, so keep this list to cheap consumables. Missing items are ignored at start.
PrepareSeconds 10 Number for prepare seconds (default 10).
BurySeconds 14 Number for bury seconds (default 14).
WrapSeconds 5 Number for wrap seconds (default 5).
MaxBurialsPerHour 10 Upper limit for max burials per hour.
MaxWrapsPerHour 12 Upper limit for max wraps per hour.
Contract table Contract: a body is waiting somewhere around the parlour.
  ↳ MinDistance 250.0, MaxDistance = 600.0 Distance in game units that applies to min distance.
  ↳ SpawnWhenWithin 80.0 World coordinates (x, y, z) used for spawn when within.
  ↳ ExpireMinutes 20 Time setting for expire minutes. The unit (seconds, minutes or milliseconds) is usually in the option name or the comment of the neighbouring options.
  ↳ Models table Game model or entity used for models.
Parlours table Parlours: prep table (and contract desk). From the RDR2 undertaker shops.
Graves table Cemeteries where a prepared coffin can be buried.
GraveRadius 8.0 Distance in game units that applies to grave radius.
Blips table Map blip or icon settings for blips.
Keys table G / E / B
JRS Core · Free and open-source RedM framework · made by the JRS TEAM