JRS COREДокументация
Скрипты

Core

10 скриптов в папке [CORE]

The foundation: framework, inventory, chat, progress bar, radial menu and the loading screen.

В этой папке 10 скриптов. Выберите скрипт во вкладках ниже.

Free (included in JRS Core)   jrs_backpacks

JRS Core backpacks - wearable backpacks, each with its own storage

Resource jrs_backpacks
Folder [CORE]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core, jrs_inventory
Interface No
Code size 959 строк Lua
config.lua - 6 опций#

General

Setting Default What it does
Language "en" 'en' or 'ar'
OneBackpackOnly true carrying two backpacks blocks opening them
UseCooldown 2 seconds between two opens
WearCheck 10 seconds: the prop on your back follows what you carry
Backpacks table item = inventory item, slots = storage size, model/position/rotation = the prop on the back
ByItem table Предметы инвентаря для by item. Имена должны быть в таблице jrs_items.

Paid (server only)   jrs_charwipe

jrs full character wipe: clears every character-owned row (bank, houses, stores, businesses, jobs...) when a character is deleted, plus an orphan sweep for characters deleted by any other path

Resource jrs_charwipe
Folder [CORE]
Version 1.0.0
Author jrs team
Depends on jrs_core, oxmysql
Interface No
Code size 466 строк Lua

Commands

  • /charwipe
  • /charwipe_scan
  • /charwipe_sweep

Exports

SweepOrphans, WipeCharacter

config.lua - 47 опций#

NOT touched (by request): the account itself and the pause-menu store

Setting Default What it does
Database "jrsCore" Настройка для database.
CharacterTable "jrs_characters" Настройка для character table.
CharacterIdColumn "charidentifier" Настройка для character id column.
ColumnRegex 'char(acter)?_?id\|charidenti... Columns treated as "belongs to a character" (MariaDB REGEXP, case-insensitive).
Sweep table Orphan sweep: finds character ids referenced in any target column that no longer exist in jrs_characters and wipes them. Catches deletes that skipped the hooks (txAdmin, HeidiSQL, old commands).
  ↳ OnStart true Переключатель для on start: true = вкл., false = выкл. (по умолчанию true).
  ↳ StartDelaySeconds 90 let every other resource finish loading first
  ↳ IntervalMinutes 30 0 = only on start / command
  ↳ MaxCharactersPerSweep 300 safety brake: refuse a sweep bigger than this
SkipTablePatterns table Never touched. Lua patterns matched against the table name.
SkipTables table Таблица записей skip tables. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ jrs_characters true deleted atomically by jrs_character itself
  ↳ jrs_character_creator true deleted atomically by jrs_character itself
  ↳ jrs_barber true deleted atomically by jrs_character itself
  ↳ jrs_barber_preset true deleted atomically by jrs_character itself
  ↳ jrs_clothing_current true deleted atomically by jrs_character itself
  ↳ jrs_clothing_outfits true deleted atomically by jrs_character itself
  ↳ jrs_clothing_wearables true managed by jrs_clothing
  ↳ jrs_appearance_legacy_backup true migration backup
  ↳ jrs_appearance_onboarding true onboarding tracker
  ↳ jrs_id_numbers true deleted atomically by jrs_character itself
  ↳ jrs_uniforms true staff-made uniform catalogue
  ↳ jrs_weapon_packages true store weapon packs (created_charidentifier = author)
  ↳ jrs_stable_admin_horse_templates true admin catalogue
  ↳ jrs_auction_houses true world auction houses
  ↳ jrs_newspapers true Переключатель для jrs newspapers: true = вкл., false = выкл. (по умолчанию true).
  ↳ jrs_newspaper_publications true Переключатель для jrs newspaper publications: true = вкл., false = выкл. (по умолчанию true).
  ↳ jrs_government_salaries true Переключатель для jrs government salaries: true = вкл., false = выкл. (по умолчанию true).
  ↳ jrs_government_salary_grades true Переключатель для jrs government salary grades: true = вкл., false = выкл. (по умолчанию true).
  ↳ jrs_government_taxes true Переключатель для jrs government taxes: true = вкл., false = выкл. (по умолчанию true).
  ↳ jrs_government_facilities true Переключатель для jrs government facilities: true = вкл., false = выкл. (по умолчанию true).
  ↳ jrs_government_votes true Переключатель для jrs government votes: true = вкл., false = выкл. (по умолчанию true).
  ↳ jrs_trade_orders true Rows that can hold OTHER players' money in escrow: deleting them would lose the buyer's / bidder's payment. Their own expiry/settle logic runs.
  ↳ jrs_auction_listings true Переключатель для jrs auction listings: true = вкл., false = выкл. (по умолчанию true).
  ↳ jrs_auction_bids true Переключатель для jrs auction bids: true = вкл., false = выкл. (по умолчанию true).
SkipColumnPatterns table Columns that only record WHO DID something to someone else's row. Deleting on them would wipe other players' data, so they are left alone.
Reset table World entities: the row stays (it is a place on the map), only the owner fields are cleared so it can be bought again. table.column = SET clause.
  ↳ jrs_player_stores.buyer_charidentifier - Настройка для jrs player stores.buyer charidentifier.
  ↳ jrs_properties.charidentifier - Настройка для jrs properties.charidentifier.
  ↳ jrs_business.charidentifier - Настройка для jrs business.charidentifier.
  ↳ jrs_mining_mines.owner_charid - Настройка для jrs mining mines.owner charid.
  ↳ jrs_government_cities.governor_charid "governor_charid=NULL" Настройка для jrs government cities.governor charid.
  ↳ jrs_government_cities.deputy_charid "deputy_charid=NULL" Настройка для jrs government cities.deputy charid.
  ↳ jrs_government_cities.owner_charid "owner_charid=NULL" Настройка для jrs government cities.owner charid.
  ↳ jrs_families.home_owner_charid "home_owner_charid=NULL" Настройка для jrs families.home owner charid.
ExtraDeletes table Extra deletes for tables skipped above (only the owning column).
CommandAce "command.charwipe" ACE needed to run the commands in game (console always allowed).

Free (included in JRS Core)   jrs_core

JRS unified core: core + native notifications + optional toast + inputs + menu + character services + bounded RPC

Resource jrs_core
Folder [CORE]
Version 2.5.6-habitats
Author jrs team
Depends on oxmysql
Interface Yes (NUI)
Languages ar, en
Code size 30,234 Lua lines

Commands

  • /blippool
  • /cash
  • /challenges
  • /corehud
  • /crosshair
  • /daily
  • /fixmouse
  • /fixwheel
  • /gold
  • /hudgate
  • /hudshow
  • /jrs_crosshair
  • /jrs_wheel_additem
  • /jrs_wheel_removeitem
  • /jrswildlife
  • /paddiag
  • /showhud
  • /testcorebar
  • /testlevelhud
  • /wheeldiag

Exports

AcquireUI, AddDirtyMoney, AddGold, AddGoldNuggets, AddJob, AddJobXP, AddLevel, AddMetadata, AddMoney, AddSkillXP, AddXP, ApplyBankFeeRate, ApplyDoctorFeeRate, ApplyGameplaySettings, ApplyJobPayBonus, ApplyRewardBonus, ApplySellBonus, ApplyShopDiscount, ApplyStableFeeRate, ApplyTax, ApplyTaxReduction, ApplyTravelDiscount, ApplyXPBoost, CalculateTax, CanAssignCharacterJob, CanCreateBlip, CanCreateCharacter, CanUseCommand, CancelProgressBar, ClearNotifications

Database tables

IF

config/animals.lua - 10 опций#

General

Setting Default What it does
Animals table Игровая модель или сущность для animals.
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ ambientFrequency 0.4 Red Dead Online style wildlife: sparse, a few animals near the player. 1.0 = full story-mode density (far too many). ~0.4 matches RDO free roam.
  ↳ scenarioFrequency 0.4 Настройки анимации для scenario frequency.
  ↳ pedRangeMultiplier 1.0 Расстояние в игровых единицах для ped range multiplier.
  ↳ cityFrequency 0.0 Animal density used while the local player is standing inside ANY jrs_safezone (cities, towns, camps, RP zones, house safezones). Wildlife and predators should never wander through or spawn inside safezones.
  ↳ Spawner table Ambient Wildlife Spawner Ensures wild animals spawn abundantly and naturally across all biomes in the wilderness.
  ↳ Predators table Predator quota. Keeps bears, wolves, cougars, panthers active in the wilderness.
  ↳ carcassQuality 1 Carcass/pelt quality given to spawner animals (0 poor, 1 good, 2 perfect). Script-created peds have no real kill quality and read back 'Ruined'.
  ↳ Pools table Regional animal pools (aligned 100% with jrs_hunting animal catalog) Prey only: bears/wolves/cougars/big alligators come ONLY from the rare Predators quota above, so the normal top-up never spawns extra predators.
config/character_service.lua - 1 опций#

General

Setting Default What it does
CharacterService Config.CharacterService or { Настройка для character service.
config/config.lua - 223 опций#

General

Setting Default What it does
defaultlang "ar" Available: en, ar
Onesync true Переключатель для onesync: true = вкл., false = выкл. (по умолчанию true).
Info_print false Переключатель для info print: true = вкл., false = выкл. (по умолчанию false).
JobIdentity table Require an issued jrs_idcard for every new job assignment (including admins). Unemployed remains available for firing/quitting. Existing jobs are not removed.
Char_Count 1 accounts too, not just new ones. Max 5. Keep this in step with Config.Creator.Slots.default in [character]/jrs_character/config/config.lua, which reads this value.
Eagle_Eye true Переключатель для eagle eye: true = вкл., false = выкл. (по умолчанию true).
Whitelist true Enable whitelist checks
MaxHealth 10 10 is max value, 0 is empty core for the players.
MaxStamina 10 10 is max value, 0 is empty core for the players.
StartMoney 35.00 Starter Cash ($35.00)
StartGold 0.15 RDO Exact Starter Gold (0.15 Gold)
StartDirtyMoney 0 Starting illegal/dirty money balance for new characters
CurrencyTypes table Currency types used by jrs_core
  ↳ Money 0 Сумма денег для money. Награды проходят через экономический множитель jrs_core.
  ↳ Gold 1 Сумма денег для gold. Награды проходят через экономический множитель jrs_core.
  ↳ Rol 2 Число для rol (по умолчанию 2).
  ↳ DirtyMoney 3 Сумма денег для dirty money. Награды проходят через экономический множитель jrs_core.
StartItems table Official Red Dead Online Starter Kit (Items & Arrows, No Firearm Ammo, No Lasso)
  ↳ Bread 3 Число для bread (по умолчанию 3).
  ↳ consumable_kidneybeans_can 2 Число для consumable kidneybeans can (по умолчанию 2).
  ↳ water 3 Число для water (по умолчанию 3).
  ↳ consumable_coffee 1 Число для consumable coffee (по умолчанию 1).
  ↳ ammoarrownormal 5 Число для ammoarrownormal (по умолчанию 5).
StartWeapons table Starter Weapon: ONLY Bow & Loaded Arrows (No firearms, no lasso)
Traffic table Legacy static density fallback. Used only when Config.Performance.Enabled = false.
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ pedFrequency 0.05 Humans only. Animals are controlled separately in config/animals.lua.
  ↳ trafficFrequency 0.0 Ambient/random/parked wagons.
MapDiscoveries table Unlock map discoveries/landmarks for every player. Set enabled = false to keep the normal game discovery behavior.
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ disableOnResourceStop true Restore discoveries to disabled when jrs_core stops.
  ↳ debug false Debug output for debug: true = да, false = нет (по умолчанию false).
MiniMap table minimap mode. mode options: "small", "medium", "hidden"
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ mode "hidden" "hidden": the native map is off; jrs_metabolism's map compass is the minimap.
  ↳ showOnMountOrVehicle true Always show radar/minimap when riding a horse or wagon/vehicle
  ↳ vehicleMode "small" Radar mode when on horse or in wagon ("small" or "medium")
  ↳ lockMode true Prevent players from opening the native radar-mode selector.
  ↳ applyDelay 1500 Delay before applying the mode after the character becomes ready.
  ↳ restoreOnResourceStop true Show the radar again if jrs_core is stopped/restarted.
  ↳ debug false Debug output for debug: true = да, false = нет (по умолчанию false).
MapObject false If true, a map object will be attached to the players hand when opening the map.
NegativeValueOnAccounts false Переключатель для negative value on accounts: true = вкл., false = выкл. (по умолчанию false).
MaxPlayers nil اضبطه على nil ليطابق تلقائياً sv_maxclients من server.cfg
CurrencyMoneySymbol "$ " Currency display symbols
CurrencyGoldSymbol "𝕲 " Сумма денег для currency gold symbol. Награды проходят через экономический множитель jrs_core.
CurrencyDirtyMoneySymbol "$ " Сумма денег для currency dirty money symbol. Награды проходят через экономический множитель jrs_core.
CurrencyXpSymbol "LV " HUD now displays the calculated level, not raw XP
HudUpdateInterval 5000 ms between HUD data requests
HudReadyDelay 9000 legacy compatibility only; CharacterReady now controls HUD visibility
HudDebug false HUD debug prints (true = show prints in F8 console) Keep this false in normal play: true makes the HUD spam the console every Config.HudUpdateInterval with the money/job/level payload.
LevelHud table Level / XP presentation copied from alfie_level UI only. The XP system, database and commands still belong entirely to jrs_core.
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ peekControlHash 0xAC4BD4F1 TAB: opens weapon wheel & peeks Level HUD on top left like RDO
  ↳ showOnPauseMenu false Only show on TAB
  ↳ pollIdleMs 100 Число для poll idle ms (по умолчанию 100).
  ↳ showLevelToast false Toast disabled so it only shows on TAB
  ↳ toastDurationMs 4000 Настройка времени для toast duration ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
  ↳ clearChatOnPeek false Переключатель для clear chat on peek: true = вкл., false = выкл. (по умолчанию false).
  ↳ autoShowOnUpdate false Disabled: Level HUD only shows when TAB is pressed
  ↳ autoShowDurationMs 4500 Настройка времени для auto show duration ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
DoubleXP table Global timed XP multiplier. All global XP and per-script/job XP granted through jrs_core AddXP/AddJobXP/events/API is multiplied while the event is active. RemoveXP, RemoveJobXP, SetXP and SetJobXP are unchanged.
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ tableName "jrs_double_xp_state" created automatically
  ↳ maxMultiplier 10.0 Верхний предел для max multiplier.
  ↳ maxDurationMinutes 10080 7 days
  ↳ announceStart true Переключатель для announce start: true = вкл., false = выкл. (по умолчанию true).
  ↳ announceEnd true Переключатель для announce end: true = вкл., false = выкл. (по умолчанию true).
  ↳ exemptReasonPrefixes table picked at random) is scheduled to begin after a random delay. Skipped if an admin event is already running when the timer fires. XP reasons (prefix match, case-insensitive) that are never multiplied.
  ↳ autoEvent table Таблица записей auto event. Добавляйте, удаляйте или меняйте записи по примерам в файле.
Hud table HUD element visibility toggles (master toggles from server)
  ↳ enabled true master toggle: true allows HUD & editor to work
  ↳ PlayerGold true gold display
  ↳ PlayerMoney true money display
  ↳ PlayerDirtyMoney true dirty / illegal money display
  ↳ id true player ID
  ↳ job true job/role
  ↳ xp true LV row on the compact HUD
  ↳ town true current town
  ↳ pvp true PVP ON/OFF row
  ↳ doubleXpHud true timed Double XP event banner
HudDefaultLayout table Default layout for the compact HUD's per-character layout table. All core HUD elements are permanently inactive (visible = false / "غير نشط") across the server, editor, and database, so they never clutter the screen.
  ↳ PlayerGold table Сумма денег для player gold. Награды проходят через экономический множитель jrs_core.
  ↳ PlayerMoney table Сумма денег для player money. Награды проходят через экономический множитель jrs_core.
  ↳ PlayerDirtyMoney table Сумма денег для player dirty money. Награды проходят через экономический множитель jrs_core.
  ↳ id table Таблица записей id. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ job table Кому разрешено: работы, группы или права для job.
  ↳ xp table Таблица записей xp. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ town table Таблица записей town. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ pvp table Таблица записей pvp. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ doubleXpHud table Таблица записей double xp hud. Добавляйте, удаляйте или меняйте записи по примерам в файле.

UI only, on purpose. Animations and scripted cameras are not detected: they

Setting Default What it does
HudGate table have no dependable "finished" signal, so one script leaving a ped animated would hide the HUD permanently. Scripts whose UI takes no NUI focus report it themselves with TriggerEvent('jrs_hud:busy', '<resource>', true/false).
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ checkInterval 100 ms between detection passes
  ↳ releaseDelayMs 250 wait this long after the UI closes before showing the HUD again
  ↳ maxBlockMs 60000 HUD can never disappear permanently. Long enough that a real menu session is never cut short; scripts that watch a UI flag also refresh it while their UI stays open. /hudshow clears every blocker at once.
  ↳ autoHide table Таблица записей auto hide. Добавляйте, удаляйте или меняйте записи по примерам в файле.
HudEditor table Players can use /editcorehud to move, resize, show or hide compact HUD elements. Position, size and visibility are stored per character in jrs_core_hud_layouts.
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ command "editcorehud" Настройка для command.
  ↳ visibilityCheckInterval 150 Настройка времени для visibility check interval. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.

Set enabled = false if jrs_metabolism is not on this server: the button

Setting Default What it does
  ↳ link table then never appears at all. It is ALSO hidden automatically whenever that resource is missing or stopped, so a server without it can never end up showing a button that does nothing.

مدمج مباشرة داخل الكور وقسم تعديل الهود (/editcorehud)

Setting Default What it does
JrsCrosshair table Enabled: تفعيل أو إيقاف نظام مؤشر التصويب بالكامل من السيرفر (true / false) EnableCommand: تفعيل أو إيقاف أمر الاختصار المباشر /jrs_crosshair Command: اسم الأمر المستخدم للاختصار (افتراضياً: "jrs_crosshair")
  ↳ Enabled true تفعيل/تعطيل مؤشر التصويب بالكامل (Master switch)
  ↳ EnableCommand false إيقاف أمر الاختصار المباشر، والتعديل يكون من هود الكور فقط (/editcorehud)
  ↳ Command "jrs_crosshair" اسم الأمر الأساسي (/jrs_crosshair أو /crosshair)
  ↳ Debug false طباعة سجلات التصحيح في الكونسول (Debug logs)
Crosshair Config.JrsCrosshair Настройка для crosshair.
PlayerInteractions table Player-to-player interactions used by jrs_inventory. Enabled is the master switch; individual actions can also be disabled.
  ↳ Enabled true Включает или выключает enabled (по умолчанию true).
  ↳ GiveHand true Переключатель для give hand: true = вкл., false = выкл. (по умолчанию true).
  ↳ GiveSlap true Переключатель для give slap: true = вкл., false = выкл. (по умолчанию true).
  ↳ TakeHostage true Переключатель для take hostage: true = вкл., false = выкл. (по умолчанию true).
  ↳ GiveHandControlHash INPUT_CONTEXT_X Клавиша или элемент управления для give hand control hash. Управление задаётся hash-значениями из списка ввода игры.
  ↳ GiveSlapControlHash INPUT_INTERACT_OPTION1 Клавиша или элемент управления для give slap control hash. Управление задаётся hash-значениями из списка ввода игры.
  ↳ TakeHostageControlHash INPUT_PROMPT_PAGE_NEXT Клавиша или элемент управления для take hostage control hash. Управление задаётся hash-значениями из списка ввода игры.
  ↳ ReleaseControlHash 0x07CE1E61 Клавиша или элемент управления для release control hash. Управление задаётся hash-значениями из списка ввода игры.
  ↳ SocialActionCooldownMs 2000 Настройка времени для social action cooldown ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
  ↳ HostageTakeCooldownMs 1000 Настройка времени для hostage take cooldown ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
CoordsSaveTimerOnesync 180000 3 min, interval for onesync mode (reduced from 10 min to ensure coords are fresh on player drop)
CoordsSaveTimerLegacy 60000 1 min, interval for legacy mode
CoordsSaveDistance 10.0 min distance moved before saving coords
CoordsSaveSkipZones table Мировые координаты (x, y, z) для coords save skip zones.
HealInnerCore 100 Heal player values
HealOuterHealth 600 Число для heal outer health (по умолчанию 600).
HealStaminaFlag 1065330373 Число для heal stamina flag (по умолчанию 1065330373).
TeleportFadeOut 500 Teleport settings
TeleportFadeIn 650 Число для teleport fade in (по умолчанию 650).
TeleportWait 1000 Настройка времени для teleport wait. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
TeleportStartHeight 650.0 Число для teleport start height (по умолчанию 650.0).
TeleportStartPoint 750.0 Мировые координаты (x, y, z) для teleport start point.
DefaultSpawnCoords table New character default values
DefaultCharacterStatus '&#123;"Hunger":100.0, "Thirst":1... Настройка для default character status.
DevMode false Dev mode (extra prints)
PlayerCountInterval 30000 30 s in ms (Discord presence player count refresh)
Commands table Command names
  ↳ addwhitelist "addwh" Настройка для addwhitelist.
  ↳ removewhitelist "removewh" Настройка для removewhitelist.
  ↳ checkwhitelist "checkwh" Настройка для checkwhitelist.
  ↳ setjob "addjob" Настройка для setjob.
  ↳ setchar "addchar" Настройка для setchar.
  ↳ delchar "delchar" Настройка для delchar.
  ↳ setgroup "addgroup" Настройка для setgroup.
  ↳ getplayers "getplayers" Настройка для getplayers.
  ↳ listPlayers "listPlayers" Настройка для list players.
  ↳ giveitem "additem" Настройка для giveitem.
  ↳ giveweapon "addweapon" Настройка для giveweapon.
  ↳ givemoney "addmoney" Настройка для givemoney.
  ↳ addxp "addxp" Настройка для addxp.
  ↳ removexp "removexp" Настройка для removexp.
  ↳ setxp "setxp" Настройка для setxp.
  ↳ setlevel "setlevel" Настройка для setlevel.
  ↳ addlevel "addlevel" Настройка для addlevel.
  ↳ doublexp "doublexp" /doublexp 2 60 | /doublexp status | /doublexp stop
  ↳ revive "revive" Настройка для revive.
  ↳ tpm "tpm" teleport to a player: /tpm [id] -- teleport to the map waypoint
  ↳ setlang "setlang" set another player's language: /setlang [id] [en|ar]
  ↳ language "language" admin self language switch: /language [en|ar]
AdminGroups table Groups allowed to use administrator commands. Keys are case-insensitive; set a value to false to disable that group.
  ↳ owner true Переключатель для owner: true = вкл., false = выкл. (по умолчанию true).
  ↳ admin true Переключатель для admin: true = вкл., false = выкл. (по умолчанию true).
  ↳ support true Переключатель для support: true = вкл., false = выкл. (по умолчанию true).
CoreOwners table also written back to the database on connect, so jrs_admin (which maps core owner -> server_owner) and every /command permission sees full access. Add more identifiers as ['steam:...'] = true (license:/discord: also work).
GroupSyncIntervalMs 15000 Re-check users.group for connected players with one batched database query. This keeps permission groups correct even after a manual DB edit while a player is online. Set to 0 to disable automatic refresh.
CommandPermissions table Admin only: { "admin" } Owner + admin: { "owner", "admin" } All staff: { "owner", "admin", "support" }
  ↳ addwhitelist table Таблица записей addwhitelist. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ removewhitelist table Таблица записей removewhitelist. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ checkwhitelist table Таблица записей checkwhitelist. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ setjob table Таблица записей setjob. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ setchar table Таблица записей setchar. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ delchar table Таблица записей delchar. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ setgroup table Таблица записей setgroup. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ giveitem table Таблица записей giveitem. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ giveweapon table Таблица записей giveweapon. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ givemoney table Таблица записей givemoney. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ addxp table Таблица записей addxp. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ removexp table Таблица записей removexp. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ setxp table Таблица записей setxp. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ setlevel table Таблица записей setlevel. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ addlevel table Таблица записей addlevel. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ revive table Таблица записей revive. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ doublexp table Таблица записей doublexp. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ tpm table Таблица записей tpm. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ performance table Таблица записей performance. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ setlang table Таблица записей setlang. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ language table Язык интерфейса этого скрипта (en или ar).
PlayerDropped table Player disconnect marker Integrated replacement for the old standalone jrs_playerDropped resource.
  ↳ Enabled true master switch for the entire feature
  ↳ Lifetime 300 seconds a disconnect marker remains active
  ↳ UpdateInterval 10000 client position snapshot interval (ms)
  ↳ MaxActiveSigns 50 safety limit for simultaneous disconnect markers
  ↳ UsePed true spawn a frozen ped at the last player position
  ↳ PedModel "mp_male" fallback model if the player's model cannot be loaded
  ↳ PedCollision false false prevents disconnect peds blocking players
  ↳ SpawnDistance 80.0 only create the local ped/board inside this distance
  ↳ DrawDistance 25.0 3D text visibility distance
  ↳ ManagerInterval 250 idle manager interval when no text is being drawn (ms)
  ↳ ModelLoadTimeout 5000 Настройка времени для model load timeout. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
  ↳ UseBoard true Включает или выключает board (по умолчанию true).
  ↳ BoardModel "P_BOARD01X" Игровая модель или сущность для board model.
  ↳ BoardPedBone 18905 Игровая модель или сущность для board ped bone.
  ↳ BoardBoneIndex 0x49D9 fallback bone index
  ↳ BoardOffset table Таблица записей board offset. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ BoardRotation table Таблица записей board rotation. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ TextHeight 1.15 Текст, который видит игрок для text height. Измените для перевода или ребрендинга.
  ↳ TextScale 0.30 Текст, который видит игрок для text scale. Измените для перевода или ребрендинга.
  ↳ TextFont 25 Текст, который видит игрок для text font. Измените для перевода или ребрендинга.
  ↳ ShowServerId true Shows server id: true = да, false = нет (по умолчанию true).
  ↳ ShowCharacterId true Shows character id: true = да, false = нет (по умолчанию true).
  ↳ ShowReason true Shows reason: true = да, false = нет (по умолчанию true).
  ↳ ShowDisconnectTime true Shows disconnect time: true = да, false = нет (по умолчанию true).
  ↳ TimeFormat "%H:%M" Настройка для time format.
Feed table Native RDR2 award / toast banners blocker (integrated from jrs_feed)
  ↳ Enabled true Включает или выключает enabled (по умолчанию true).
  ↳ HideAwardToasts true Hide Survivalist / Collector / Sharpshooter award banners
  ↳ HideAppLinkToasts true Hide "Hold F1 for details" toast style
  ↳ HideFeedToast true Extra native toast slot (0xDAABF7FD)
  ↳ HideFeedLhmToast true Extra native toast slot (0xD211C444)
  ↳ ClearOnChallengeEvents true Clear toast channels when challenge/award event fires
  ↳ KeepHidden true Keep running a light hide loop
  ↳ HideInterval 0 Hide loop interval in ms (0 = every frame)
  ↳ DisableToastChannels true Suppress native toast channels (1 and 6)
config/daily_challenges.lua - 10 опций#

General

Setting Default What it does
DailyChallenges table Таблица записей daily challenges. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ Enabled true Включает или выключает enabled (по умолчанию true).
  ↳ SlotsCount 7 7 challenges per day, matching RDO
  ↳ Streak table Streak multipliers (consecutive days completed) RDO: Base (1.0x), 7 days (1.5x), 14 days (2.0x), 21+ days (2.5x)
  ↳ BaseGold 0.20 0.20 gold bars per task
  ↳ BaseCash 15.00 $15 cash per task
  ↳ BaseXp 200 200 account XP
  ↳ AllCompletedBonusGold 0.60 bonus so total day reaches up to 2.0 - 2.5 Gold
  ↳ AllCompletedBonusCash 50.00 Сумма денег для all completed bonus cash. Награды проходят через экономический множитель jrs_core.
  ↳ ChallengePool table Available challenge pool mapped to activities & jobs
config/economy.lua - 1 опций#

All scripts should reference this central matrix for item prices, job base

Setting Default What it does
Economy Config.Economy or &#123;&#125; Настройка для economy.
config/feed.lua - 11 опций#

General

Setting Default What it does
Feed table Таблица записей feed. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ Enabled true Включает или выключает enabled (по умолчанию true).
  ↳ HideAwardToasts true Hides award toasts: true = да, false = нет (по умолчанию true).
  ↳ HideAppLinkToasts true Hides app link toasts: true = да, false = нет (по умолчанию true).
  ↳ HideFeedToast true Hides feed toast: true = да, false = нет (по умолчанию true).
  ↳ HideFeedLhmToast true Hides feed lhm toast: true = да, false = нет (по умолчанию true).
  ↳ ClearOnChallengeEvents true Переключатель для clear on challenge events: true = вкл., false = выкл. (по умолчанию true).
  ↳ KeepHidden true Переключатель для keep hidden: true = вкл., false = выкл. (по умолчанию true).
  ↳ HideInterval 0 Настройка времени для hide interval. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
  ↳ DisableToastChannels true Turns off toast channels: true = да, false = нет (по умолчанию true).
  ↳ ToggleCommand "toggleawards" Настройка для toggle command.
Notes from the README#
text
# REDEMPIRE Core
## Unified API
All new integrations should load one API object on the side where they run. The
older exports are still supported for backwards compatibility.
'''lua
-- server
local REDEMPIRE = exports.jrs_core:getCoreApi()
local character = REDEMPIRE.GetCharacter(source)
REDEMPIRE.AddMoney(source, 25)
REDEMPIRE.AddXP(source, 10, 'mission_reward')
REDEMPIRE.NotifyRightTip(source, 'Reward received', 3000)
'''
'''lua
-- client
local REDEMPIRE = exports.jrs_core:getCoreApi()
REDEMPIRE.NotifyRightTip('Ready', 3000)
REDEMPIRE.SetCustomDestination(vector3(0.0, 0.0, 0.0), 'Destination')
REDEMPIRE.Rpc('jrs:getPlayerData', function(playerData)
    print(json.encode(playerData))
end, {})
'''
REDEMPIRE Core is the main framework resource for a RedM server. It handles player connections, character state, money, gold, and dirty money, jobs, groups, XP 
**Resource:** `jrs_core`
**Version:** `1.0.10`
**Game:** RedM / Red Dead Redemption 2
**Author:** jrs
---
## Main Features
- Character loading and authoritative character-ready state.
- Player money, gold, dirty money, job, grade, group, inventory data, coordinates, and metadata.
- XP and level system with configurable requirements up to level 100.
- Compact HUD for gold, money, player ID, job, level, and town.
- Per-character HUD position, size, and visibility saving.
- HUD editor command with move, resize, visibility, reset, save, and cancel controls.
- Right-to-left compact HUD slots: the icon starts on the right and the text extends to the left.
- Reset All restores the original default HUD layout and default element sizes.
- Automatic fallback icon when a job-specific image does not exist.
- RedM notification API for client and server resources.
- Server callbacks and client RPC support.
- Input wheel item synchronization.
- Custom 3D waypoint support.
- Map discovery unlocking.
- Steam, Discord, whitelist, and double-connection checks.
- Administrator commands with per-group permissions.
---

Free (included in JRS Core)   jrs_essentials

JRS Core essentials - AFK kick, pointing, eagle eye per job, first-person aiming and small fixes

Resource jrs_essentials
Folder [CORE]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core
Interface No
Code size 1,007 Lua lines
config.lua - 14 опций#

General

Setting Default What it does
Language "en" 'en' or 'ar'
Afk table AFK kick (staff groups are never kicked)
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ seconds 1800 Число для seconds (по умолчанию 1800).
  ↳ warnAt table Таблица записей warn at. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ exempt table Таблица записей exempt. Добавляйте, удаляйте или меняйте записи по примерам в файле.
Pointing table Hold B to point
EagleEye table Eagle eye: everyone = true leaves it to jrs_core (gameplay.EagleEye); false = only the jobs listed
  ↳ everyone true Переключатель для everyone: true = вкл., false = выкл. (по умолчанию true).
  ↳ jobs table Кому разрешено: работы, группы или права для jobs.
FirstPersonAiming false force first person while free-aiming
HideChallengeEvents true hide RDO challenge / reward pop-ups
StopAutoShuffle true passenger does not slide into the driver seat
DrownFix true stops peds drowning / boats sinking on spawn

Free (included in JRS Core)   jrs_inventory

JRS Inventory unified resource: inventory + weapons + storage + ground + robbery + transactional trade

Resource jrs_inventory
Folder [CORE]
Version 2.4.6
Author jrs team
Depends on jrs_core, oxmysql, uiprompt
Interface Yes (NUI)
Languages ar, en
Code size 20,008 Lua lines

Commands

  • /reloaditems

Exports

AcquireInventoryLock, CanTradeWith, CancelTrade, CloseInv, GetFreeWeight, GetItemDescription, GetItemLabel, GetItemLabelEnglish, GetMaxWeapons, GetMaxWeight, GetTradeSession, GetWeaponTable, InventoryTransaction, IsBagWeaponHash, IsInventoryLocked, IsTradeOpen, IsTrading, OpenPlayerInventoryAdmin, RegisterInventoryHook, RegisterTradeValidator, RegisterUsableItem, ReleaseInventoryLock, ReopenTrade, StartTrade, UnequipAllWeapons, UseItemFromWheel, WheelItemInfo, addItem, addItemSync, canAcquireItem

Database tables

jrs_trade_orders

config/config.lua - 155 опций#

General

Setting Default What it does
defaultlang "ar" Fallback only. The live language is per player and comes from jrs_core.
Max_Items 50 kg (base capacity at level 1, scales to 300 with level perks)
Max_Weapons 4 base weapons at level 1, scales to 7 with level perks
MaxOwnedItems table summed). Enforced centrally in AddInventoryItemDirect so it applies no matter how the item is acquired (store purchase, admin give, crafting, quest reward, player trade, ground pickup, etc).
  ↳ hoe 1 Число для hoe (по умолчанию 1).
  ↳ wellpumpnbx 1 Число для wellpumpnbx (по умолчанию 1).
  ↳ pickaxe 1 one per player (players stacked/duped extras)
CountUnknownWeaponsTowardLimit false unknown/orphan DB weapon names do not consume capacity
WeaponSerials table Permanent weapon serial numbers
  ↳ Prefix "REDEMPIRE" serial prefix, e.g. REDEMPIRE-20260804-...
  ↳ RandomLength 8 random part length
  ↳ AutoMigrate true add/backfill the serial_number DB column automatically
  ↳ MaintenanceIntervalMs 300000 lightweight mode: legacy serial maintenance every 5 minutes
Metadata table Inventory UI feature settings Server-authoritative item metadata system
  ↳ Enabled true Включает или выключает enabled (по умолчанию true).
  ↳ ApplyDatabaseDefaults true parse items.metadata JSON as defaults for each item instance
  ↳ DefaultDurability 100 Число для default durability (по умолчанию 100).
  ↳ DurabilityMin 0 Минимум или требуемый уровень для durability min.
  ↳ DurabilityMax 100 Верхний предел для durability max.
  ↳ PreventUseWhenBroken true block item usage when durability reaches 0
  ↳ MaxDepth 5 Верхний предел для max depth.
  ↳ MaxKeys 32 Верхний предел для max keys.
  ↳ MaxStringLength 256 Верхний предел для max string length.
  ↳ MaxEncodedLength 2048 Верхний предел для max encoded length.
  ↳ LogChanges false enable only when you want a Discord audit entry for every metadata mutation
  ↳ UniqueKeys table Metadata keys that make an item a unique instance instead of a stack. This prevents one durability value from being shared by several tools.
  ↳ CategoryDefaults table Optional defaults by item category. Category names are case-insensitive. Every item in the EQUIPMENT category starts with 100% durability automatically.
  ↳ ItemDefaults table Optional per-item default metadata. DB items.metadata JSON is merged first, category defaults are merged next, then values here override them. Example: ItemDefaults = { pickaxe = { durability = 100 } }
Trade table Secure player trading button inside the inventory UI. The button is shown only when Enabled=true AND the configured trade resource is started.
  ↳ Enabled true Включает или выключает enabled (по умолчанию true).
  ↳ Resource "jrs_inventory" Настройка для resource.
  ↳ SelectorDistance 5.0 nearby-player mouse selector range used when starting a trade
InventoryUI table Таблица записей inventory ui. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ DamagedThreshold 30 items/weapons at or below this condition appear in DAMAGED filter
  ↳ WeightWarningPercent 80 yellow weight warning
  ↳ WeightCriticalPercent 95 red critical weight warning
  ↳ WeightWarningSound true play one short UI warning sound when a threshold is crossed
  ↳ MultiActionDelayMs 120 pause after each answered multi-select transfer (server cooldown is 100)
PersonalItems table Personal-only items. Names are case-insensitive. They can be used and arranged in the owner's bag/hotbar, but cannot be dropped, given to another player, or moved into storage.
NoTransferItems table to sell them is the job NPC (farming store / mining shop / lumber NPC) or the mining orders, and other players buy them from that NPC's Player Market. Storage (house, wagon, stash) is still allowed.
WeaponLimitByJob table override Max_Weapons per job/group (key = job or group, value = max weapons)
  ↳ default 7 NOT used for weapon slots anymore: jrs_core level perks give 4 -> 7; job entries below only ever raise it
  ↳ police 10 Число для police (по умолчанию 10).
  ↳ sheriff 10 Число для sheriff (по умолчанию 10).
  ↳ admin 10 Кому разрешено: работы, группы или права для admin.
WeaponLimitByJobPrefix table Prefix overrides: any job whose name starts with the key gets this limit (all ranks). gunsmith covers gunsmith + every gunsmith_<city> store job.
  ↳ gunsmith 20 Число для gunsmith (по умолчанию 20).
openinv 0xC1989F95 I (legacy control-hash fallback)
OpenInventoryCommand "inv" /inv command that opens the inventory
PickupControlHash 0x27D1C284 INPUT_PICKUP control used for ground/prop item pickup prompts
PickupDistance 7.0 max distance (units) to search for nearby ground drops / interactable peds
InteractionDistance 2.0 max distance (units) for close-range interactions (looting, storage, trading)
PlayerTransferDistance 4.5 maximum server-verified distance for giving items, weapons, money, or gold to another player
InteractionDistance 4.5 general player-to-player interaction check radius
GroundInteractionDistance 1.5 Ground list visibility and server-validated pickup range
GroundPromptDistance 0.7 world pickup prompt appears only when standing directly over the drop
GroundWorldPromptEnabled false world PICK UP prompt stays disabled; pickup is through the inventory GROUND panel only
GroundSpawnWorldProps true spawn a lightweight world prop for each nearby ground drop
GroundPropStreamDistance 35.0 create local drop props only near the player
GroundPropDespawnDistance 45.0 remove local props after leaving this range
GroundPropStreamRefreshMs 1000 lightweight prop streaming refresh
AllowMoneyGroundDrop true true: players can drop cash on the ground; false: server blocks it
AllowGoldGroundDrop true true: players can drop gold on the ground; false: server blocks it
AllowDirtyMoneyGroundDrop true true: players can drop dirty/illegal money on the ground; false: server blocks it
AllowMoneyToStorage true true: allow depositing cash into storage; false: block it
AllowGoldToStorage true true: allow depositing gold into storage; false: block it
AllowDirtyMoneyToStorage true true: allow depositing dirty/illegal money into storage; false: block it
WeaponHolsterControlHash 0x52D29063 toggle-holster key for dual-wielded pistols/revolvers
LanternToggleControlHash 0x53296B75 toggle key for the davy lantern melee weapon
WeaponSlot1ControlHash 0xE6F612E4 Клавиша или элемент управления для weapon slot1 control hash. Управление задаётся hash-значениями из списка ввода игры.
WeaponSlot2ControlHash 0x1CE6D9EB Клавиша или элемент управления для weapon slot2 control hash. Управление задаётся hash-значениями из списка ввода игры.
WeaponSlot3ControlHash 0x4F49CC4C Клавиша или элемент управления для weapon slot3 control hash. Управление задаётся hash-значениями из списка ввода игры.
WeaponSlot4ControlHash 0x8F9F9E58 Клавиша или элемент управления для weapon slot4 control hash. Управление задаётся hash-значениями из списка ввода игры.
WeaponSlot5ControlHash 0xAB62E997 Клавиша или элемент управления для weapon slot5 control hash. Управление задаётся hash-значениями из списка ввода игры.
HotbarUseCooldownMs 400 prevents one key press from firing the same slot repeatedly
WeightSpeedEnabled true Carried-weight movement penalty. Set to false to disable the system completely and restore normal movement.
WeightSpeedPenalty table RedM movement uses SET_PED_MAX_MOVE_BLEND_RATIO for the carried-weight cap. Lower values are slower. 0.0 means no weight cap / normal movement. These are the original REDEMPIRE inventory values that were used by the working system
DefaultMoveSpeed 0.0 0.0 = no weight restriction below every threshold
NormalMoveBlendRatio 3.0 restore full normal locomotion when no penalty is active
ActionCooldownMs 100 minimum delay between repeated give/transfer/drop requests from the same player
Performance table Lightweight runtime tuning. These values keep controls responsive while avoiding expensive native/player scans every few milliseconds when nothing is happening.
  ↳ OpenKeyIdleMs 50 holster / lantern polling; inventory I key has its own one-control frame watcher
  ↳ OpenKeyUiMs 250 no gameplay polling is needed quickly while NUI owns focus
  ↳ GroundNoDropsMs 2000 nothing exists on the ground: sleep almost completely
  ↳ GroundFarScanMs 600 drops exist, but none is within the near radius
  ↳ GroundMidScanMs 100 a drop is within GroundMidDistance
  ↳ GroundMidDistance 3.0 Расстояние в игровых единицах для ground mid distance.
  ↳ GroundNearScanMs 15 only while actually standing on the pickup prompt
  ↳ HotbarIdleMs 500 no assigned hotbar slots => no control natives are called
  ↳ HotbarActiveMs 25 assigned slot controls remain responsive without a 100 Hz loop
  ↳ SocialIdleMs 350 target scanner while not aiming at another player
  ↳ SocialTargetMs 15 fast only while a valid player interaction prompt is visible
  ↳ RobberyNoPlayersMs 1500 only yourself online/streamed locally
  ↳ RobberyIdleScanMs 750 no nearby searchable target
  ↳ RobberyMidScanMs 150 another player is within RobberyMidDistance
  ↳ RobberyMidDistance 3.0 Расстояние в игровых единицах для robbery mid distance.
  ↳ RobberyNearMs 15 fast only while the Search prompt is actually visible
  ↳ GiveSelectorRefreshMs 100 selector exists only while choosing a recipient
  ↳ PedPromptNameRefreshMs 15000 Citizen (ID) name refresh; does not need a high rate
  ↳ MoveSpeedRefreshMs 1000 weight speed check; value is only applied when it changes
  ↳ AmmoSaveActiveMs 5000 ammo is sampled only while an inventory weapon is equipped
  ↳ AmmoSaveIdleMs 15000 no equipped weapon => do not scan ammo types; only re-check state
AntiDupe table Anti-duplication / lag-switch protection
  ↳ Enabled true Включает или выключает enabled (по умолчанию true).
  ↳ OperationReplayWindowMs 120000 Число для operation replay window ms (по умолчанию 120000).
  ↳ LockTimeoutMs 30000 Настройка времени для lock timeout ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
  ↳ LegacyReplayWindowMs 1500 Число для legacy replay window ms (по умолчанию 1500).
  ↳ LogBlockedActions true Logs blocked actions: true = да, false = нет (по умолчанию true).
  ↳ MaxViolationsBeforeDrop 0 Верхний предел для max violations before drop.
Security table Server-authoritative request validation. These limits are intentionally generous for normal play and only block spammed, malformed, or oversized client payloads. REDEMPIRE is the only supported framework.
  ↳ RequestWindowMs 5000 Число для request window ms (по умолчанию 5000).
  ↳ RequestLimits table Таблица записей request limits. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ MaxLayoutEntries 256 Верхний предел для max layout entries.
  ↳ MaxLayoutSlot 512 Верхний предел для max layout slot.
  ↳ MaxHotbarPayloadBytes 4096 Верхний предел для max hotbar payload bytes.
  ↳ MaxUseArgsBytes 4096 Верхний предел для max use args bytes.
  ↳ MaxLayoutPayloadBytes 65536 Верхний предел для max layout payload bytes.
  ↳ MaxAmmoPayloadBytes 8192 Верхний предел для max ammo payload bytes.
  ↳ MaxAmmoEntries 32 Верхний предел для max ammo entries.
  ↳ MaxAmmoPerType 999 Верхний предел для max ammo per type.
config/robbery.lua - 20 опций#

General

Setting Default What it does
Robbery table REDEMPIRE Inventory - Player robbery / search settings This system is fully integrated into jrs_inventory. No separate robbery resource is required.
  ↳ Enabled true Включает или выключает enabled (по умолчанию true).
  ↳ PromptControlHash 0x27D1C284 INPUT_PICKUP / E-style prompt used by this server
  ↳ PromptDistance 0.75 Расстояние в игровых единицах для prompt distance.
  ↳ ServerDistance 2.0 Расстояние в игровых единицах для server distance.
  ↳ SessionTimeoutMs 30000 Настройка времени для session timeout ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
  ↳ ActionCooldownMs 100 Настройка времени для action cooldown ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
  ↳ MaxTransferAmount 100000 Верхний предел для max transfer amount.
  ↳ LockTargetToOneSearcher true Переключатель для lock target to one searcher: true = вкл., false = выкл. (по умолчанию true).
  ↳ AllowItems true What can be taken from the searched player
  ↳ AllowWeapons true Allows weapons: true = да, false = нет (по умолчанию true).
  ↳ AllowMoney true Allows money: true = да, false = нет (по умолчанию true).
  ↳ MoneyStealPercent 0.10 Robbers can only steal up to 10% of victim cash
  ↳ MoneyStealWindowMinutes 30 that 10% is a total per victim for this long, not per take
  ↳ AllowGold true Allows gold: true = да, false = нет (по умолчанию true).
  ↳ AllowDirtyMoney true Allows dirty money: true = да, false = нет (по умолчанию true).
  ↳ BlockPersonalItems true Prevent items configured as personal / non-removable from being stolen
  ↳ Restrictions table Таблица записей restrictions. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ ShowWeaponSerial true Shows weapon serial: true = да, false = нет (по умолчанию true).
  ↳ Debug false Debug output for debug: true = да, false = нет (по умолчанию false).
Notes from the README#
text
# jrs_inventory
## v1.6.30 - Storage transfer slots + centered inventory navigation
- Centered Inventory search directly below the title.
- Category filter and action tabs are separated into clear rows.
- Storage uses five real columns with visible slot numbers.
- Drag player Inventory -> Storage and Storage -> player Inventory with source-aware drop targets.
- Dropping onto an empty Storage slot persists that Storage slot; dropping Storage content onto a free player slot requests that exact player slot.
- Empty Storage slot drops persist the selected Storage slot in the storage JSON.
- Added clear PLAYER INVENTORY / STORAGE transfer labels and lightweight drop feedback.
- Keeps wallet, gold, dirty money, clothing, ground and hotbar hidden in Storage mode.
- REDEMPIRE Core only.
# v1.6.9 - Quick slots + three inventory sounds
- REDEMPIRE Core only.
- Uses exactly three local MP3 assets inside the normal Inventory: open, close, and click.
- Removed the old hover sound and the generated weight-warning beep. Storage/robbery/other NUI surfaces remain silent.
- Fixed the open sound order so it plays after the inventory becomes visible; close sound plays before the normal inventory hides.
- Rebuilt Quick Slots 1-5: drag inventory items/weapons to assign, drag filled quick slots to swap, and right-click a quick slot to clear it.
- Quick-slot drag/drop is rebound after every inventory render, fixing slots that stopped accepting drops after a refresh.
- Hotbar state is validated client-side and server-side, deduplicated, repaired after legitimate stack-ID changes, and authoritatively synced back to the client
- Active 1-5 input is checked every frame only while at least one quick slot is assigned; an empty hotbar keeps the long idle sleep.
## v1.6.8 - Compact connected / instant-open inventory
- REDEMPIRE Core only.
- Restores the older compact panel dimensions while keeping Clothing, Inventory, Ground, Wallet and slots 1-5 connected.
- Opens immediately from the synchronized client cache; authoritative inventory/ground data refreshes in the background.
- The inventory sound set is local and scoped to the normal Inventory view only.
- Drag/drop uses shorter, low-cost feedback settings for smoother slot movement.
## v1.6.7 - Connected responsive inventory UI
- Matched the supplied wide reference layout: Clothing + Inventory + Ground in one aligned three-column composition.
- Wallet is attached below Clothing; Quick Slots are attached below Inventory.
- Hotbar keys are 1 through 5.
- Added a dedicated local menu-open sound (`html/sounds/ui_open.mp3`).
- Removed the visible NUI loading overlay; panels appear only when authoritative inventory data is ready.
- Kept all assets local and preserved REDEMPIRE Core-only integration and server-authoritative transfer/security logic.
- Responsive single-scale layout keeps the complete UI visible on common 16:9, 16:10, ultrawide, 2K and 4K screens.
# jrs_inventory v1.6.5 - RedM Native Instant Open
This build removes `RegisterKeyMapping` from the inventory open flow and uses the RedM control hash (`Config.openinv`) directly. A dedicated one-control-per-fra
## Ultra-Low Idle Pass (v1.6.3)
This build targets the case where Resource Monitor showed more client time while the inventory was closed than while NUI was open. The remaining idle work was m
- Empty hotbar: no hotbar control natives are called; the loop sleeps for 500ms.
- Active hotbar: polling reduced from 10ms to 25ms and only assigned slots are checked.
- Hotbar polling no longer allocates temporary Lua tables every cycle.
- Inventory/holster/lantern polling reduced to 50ms while closed and 250ms while NUI owns focus.
- Holster and lantern actions are edge-triggered so holding a key does not repeat expensive weapon natives.
- Ground scanner sleeps for 2 seconds when no drops exist, and reads player coordinates only once per scan when drops do exist.
- Ground scanning now uses distance tiers (far / near / prompt) instead of one aggressive idle rate.

Free (included in JRS Core)   jrs_loadingscreen

JRS Loading Screen - RedM / jrs_core compatible

Resource jrs_loadingscreen
Folder [CORE]
Version 2.10.0
Author JRS
Interface No
Languages ar, en
Code size 1,535 Lua lines

Exports

GetDisplayPlayerCount, GetListedMaxClients, GetListedPlayerCount, GetPlayerAvatarUrl, IncludeBots, IsLoadingScreenActive

config/server.lua - 23 опций#

General

Setting Default What it does
ProfileLookup table Таблица записей profile lookup. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ httpTimeoutMs 5000 Prevent a slow Steam/Discord endpoint from holding a player in the connecting state indefinitely. Timed-out lookups fall back normally.
PlayerAvatar table steam = Steam only -> local default image discord = Discord only -> local default image default = always use the local default image
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ source "auto" Настройка для source.
  ↳ defaultAvatar "assets/images/default_avatar.jpg" Настройка для default avatar.
  ↳ communityFallback true If the Web API key is missing or the API lookup fails, try the public Steam Community profile XML as a best-effort fallback.
  ↳ cacheSeconds 900 Avoid repeated Steam API requests when a player reconnects.
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ guildId '1060162210367807498' Настройка для guild id.
  ↳ roles table Use Discord snowflakes as strings.

2.10.0: the main source is now the Cfx server list itself (the same number

Setting Default What it does
PlayerCount table The count goes up at once but only goes down after a lower number has been seen for dropAfterSeconds in a row, and never in the first bootGraceSeconds after a restart, so a slow API or a restart never flashes "2/80".
  ↳ includeBots true Переключатель для include bots: true = вкл., false = выкл. (по умолчанию true).
  ↳ holdSeconds 21600 Число для hold seconds (по умолчанию 21600).
  ↳ useServerListCount true Cfx server list (cfx.re/join/<code>). Empty = read it from the CONNECT button in jrs_core/config/config.lua. "set jrs_cfx_join_id" overrides.
  ↳ cfxJoinId "8eeyxqv" Настройка для cfx join id.
  ↳ listRefreshMs 60000 Число для list refresh ms (по умолчанию 60000).
  ↳ useDynamicJson true Local /dynamic.json (second source).
  ↳ url 'http://127.0.0.1:30120/dyna... Настройка для url.
  ↳ refreshMs 15000 Число для refresh ms (по умолчанию 15000).
  ↳ freshSeconds 180 a reading counts as live for this long
  ↳ dropAfterSeconds 600 lower number must last 10 min before it shows
  ↳ bootGraceSeconds 600 no drops in the first 10 min after a restart
config/shared.lua - 27 опций#

General

Setting Default What it does
Debug false Debug output for debug: true = да, false = нет (по умолчанию false).
JRS table Таблица записей jrs. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ coreResource "jrs_core" Настройка для core resource.
  ↳ characterResource "jrs_character" Настройка для character resource.
  ↳ characterCloseEvent "jrs_loadingscreen:client:close" Primary handoff: jrs_character fires this only after the Character Selector or Character Creator NUI confirms that it has actually been painted.
  ↳ characterSelectionReadyEvent 'jrs_loadingscreen:client:ch... Настройка для character selection ready event.
  ↳ characterDismissedEvent 'jrs_character:client:loadin... Настройка для character dismissed event.
  ↳ characterSkipShowEvent 'jrs_character:client:loadin... Настройка для character skip show event.
  ↳ characterCursorClaimEvent 'jrs_character:client:claimS... Настройка для character cursor claim event.
  ↳ coreReadyEvent "jrs_core:client:characterReady" Legacy / emergency signals kept only as compatibility fallbacks.
  ↳ selectedCharacterEvent "jrs:SelectedCharacter" Настройка для selected character event.
  ↳ finalReadyEvent "jrs_character:isPlayerReady" Настройка для final ready event.
  ↳ legacyReadyEvent "jrs:isPlayerReady" Настройка для legacy ready event.
  ↳ legacyReadyEventLower "jrs:isPlayerready" Настройка для legacy ready event lower.
  ↳ closeAfterInitialSpawnMs 450 If jrs_character is not running, preserve the old standalone behavior.
  ↳ standaloneWatchdogMs 30000 Число для standalone watchdog ms (по умолчанию 30000).
  ↳ characterUiFallbackMs 240000 When jrs_character is running we intentionally wait for its explicit UI-ready event. This long watchdog is only a last-resort recovery for a broken creator.
  ↳ readyBackupDelayMs 100 Настройка времени для ready backup delay ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
  ↳ manualCloseDelayMs 100 Настройка времени для manual close delay ms. Единица (секунды, минуты или миллисекунды) обычно указана в имени опции или в комментарии соседних опций.
CharacterSkip table Character selector handoff. The selector can finish rendering behind the loading screen, then expose a SKIP button. If the player does nothing the loading screen is dismissed automatically after the configured duration.
  ↳ holdAfterSelectorReady false Keep false for the normal JRS flow: selector-ready immediately closes the manual loading screen, then jrs_character takes exclusive mouse focus. Set true only if you intentionally want the legacy 60-second SKIP overlay.
  ↳ enabled true Включает или выключает enabled (по умолчанию true).
  ↳ buttonText _U('skip_button') Клавиша или элемент управления для button text. Управление задаётся hash-значениями из списка ввода игры.
  ↳ autoCloseSeconds 60 Число для auto close seconds (по умолчанию 60).
Dev table Таблица записей dev. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ enabled false Включает или выключает enabled (по умолчанию false).
  ↳ forceCloseCommand "jrs_loading_close" Настройка для force close command.
Notes from the README#
text
# jrs_loadingscreen 2.5.0
JRS loading screen for RedM with direct `jrs_core` / `jrs_character` handoff.
## Start order
'''cfg
ensure jrs_core
ensure jrs_loadingscreen
ensure jrs_character
'''
## Main configuration
UI/media settings are in `web/config_main.js`.
### Video
'''js
VIDEO: {
    ENABLE: true,
    VIDEO: "background.mp4",
    MUTE_VIDEO: false,
},
'''
When video is enabled, the image slideshow is automatically inactive at runtime.
The first local image remains available only as an instant fallback while the MP4 starts.
### Images
'''js
IMAGES: {
    ENABLE_SLIDER: true,
    SLIDER_DURATION: 10000,
    ENABLE_OVERLAY: true,
    OVERLAY_FRAME_DURATION: 80,
    ENABLE_BORDER_IMAGE: true,
    IMAGE_LIST: [
        { NAME: "image_1.jpg" },
    ],
},
'''
Images are used only when `VIDEO.ENABLE` is `false`.
### Audio
`MUSIC.VOLUME` is the initial master volume (0-100). The volume slider controls both
music and audible video audio. Mute also controls both sources.
`VIDEO.MUTE_VIDEO = true` is a hard lock: shared controls will never unmute that video.
When video audio is enabled, music does not auto-play over it. If `MUSIC.ENABLE` is
`false`, only the master Mute/Volume controls remain visible; music-only transport
buttons are hidden.
The player's master mute/volume choices are stored locally by the loading screen.
## Character Selection / SKIP
With the matching JRS character integration:
1. Character Selection paints behind the loading screen.

Free (included in JRS Core)   jrs_minigame

Resource jrs_minigame
Folder [CORE]
Version 1.0.0
Author JRS TEAM
Interface Yes (NUI)
Code size 156 строк Lua

Free (included in JRS Core)   jrs_progressbar

A tool to use within your scripts for jrs core framework

Resource jrs_progressbar
Folder [CORE]
Version 1.2.1
Author JRS TEAM
Interface Yes (NUI)
Code size 127 строк Lua

Exports

CancelAll, CancelNext, initiate

Free (included in JRS Core)   jrs_radialmenu

JRS Core radial menu - hold F6 for quick actions

Resource jrs_radialmenu
Folder [CORE]
Version 1.0.0
Author JRS TEAM
Depends on jrs_core
Interface Yes (NUI)
Code size 1,065 Lua lines

Exports

AddOption, RemoveOption

config.lua - 9 опций#

General

Setting Default What it does
Language "en" 'en' or 'ar'
Key 0x3C0A40F2 F6
HoldToOpen true true: hold the key, release to close | false: tap to open
LawJobs table jobs that get the work section
MedicJobs table Кому разрешено: работы, группы или права для medic jobs.

menu (titles are locale keys, resolved when the menu opens)

Setting Default What it does
MenuItems table type = 'command' | 'client' (TriggerEvent) | 'server' (TriggerServerEvent)
JobInteractions table Кому разрешено: работы, группы или права для job interactions.
  ↳ law table Таблица записей law. Добавляйте, удаляйте или меняйте записи по примерам в файле.
  ↳ medic table Таблица записей medic. Добавляйте, удаляйте или меняйте записи по примерам в файле.

Paid (server only)   jrs_servertag

jrs Discord Server Tag - wear the RED tag, earn time-based tiers, XP/reward/discount bonuses and daily gifts

Resource jrs_servertag
Folder [CORE]
Version 1.1.0
Author jrs team
Depends on /onesync, jrs_core, oxmysql
Interface No
Languages ar, en
Code size 764 строк Lua

Commands

  • /servertag_debug
  • /servertag_sethours
  • /tagboost

Exports

ClaimGifts, GetPanelData, GetTagPerks, IsWearingTag, RecheckTag

Database tables

jrs_servertag_users

config.lua - 25 опций#

A player who wears this server's tag on Discord (Settings > Profiles >

Setting Default What it does
Enabled true Включает или выключает enabled (по умолчанию true).
RecheckSeconds 600 How often a connected player's tag is re-checked on Discord (seconds). Discord is rate limited; the queue below spaces the calls out.
RequestGapMs 1300 minimum gap between Discord calls
TickSeconds 60 Time is credited in this step (seconds). Must divide RecheckSeconds sensibly.
StreakMinMinutes 20 A day counts for the streak once the player wore the tag this long (minutes).
StreakStepXp 0.005 Streak bonus: +StreakStepXp XP% per streak day, capped.
StreakMaxXp 0.10 Верхний предел для streak max xp.
StreakGraceDays 1 If the tag is not worn for this many days the streak resets (1 = must wear daily).
LoseProgressOnRemoveDays 0 Optional: wipe accumulated time after N days without the tag. 0 = never.
Command "servertag" Chat command players use to see their tag status / claim the daily gift.
ClaimCommand "tagclaim" Настройка для claim command.
TagText "RED" The text shown to players who do not wear the tag.
InviteText 'discord.gg/juXXDnUfar' Текст, который видит игрок для invite text. Измените для перевода или ребрендинга.
Tiers table daily { money = $, gold = g, items = { {name,count}, ... } } once per day weekly same shape, once per ISO week (once per ISO week) unlock one-time gift the first time the tier is reached
MaxExtra table Hard caps so tag perks stack safely on top of level perks.
Currency table Money/gold currency ids used by jrs_core addMoney: 0 = cash, 1 = gold.
Debug false Debug output for debug: true = да, false = нет (по умолчанию false).

Anti-AFK: time only counts while the player keeps moving (metres per tick).

Setting Default What it does
AfkMinMove 1.5 Минимум или требуемый уровень для afk min move.
AfkMaxIdleMinutes 5 Верхний предел для afk max idle minutes.
UnlockMinMinutes 30 No unlock/first gifts before the account wore the tag this long (stops fake-account farming).
WeeklyGoal table Weekly goal: wear the tag this many hours in one week, then /tagclaim pays the reward.
TopCount 5 /tagtop leaderboard size and cache time.
TopCacheSeconds 60 Число для top cache seconds (по умолчанию 60).
TopCommand "tagtop" Настройка для top command.
BoostMaxExtraXp 1.00 Admin boost event (console): tagboost &lt;minutes&gt; &lt;extraXpPercent&gt; e.g. tagboost 60 50 adds +50% XP for every player wearing the tag. tagboost 0 ends it.
JRS Core · Бесплатный фреймворк RedM с открытым кодом · JRS TEAM