The foundation: framework, inventory, chat, progress bar, radial menu and the loading screen.
هذا المجلد فيه 10 سكربت. اختر سكربت من التبويبات تحت.
مجاني (موجود مع JRS Core) jrs_backpacks
الشنط في JRS Core - شنط تلبسها وكل وحدة لها تخزين خاص
| الريسورس | jrs_backpacks |
| المجلد | [CORE] |
| الإصدار | 1.0.0 |
| المطوّر | JRS TEAM |
| يعتمد على | jrs_core, jrs_inventory |
| الواجهة | لا |
| حجم الكود | 959 سطر Lua |
config.lua - 6 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
Language |
"en" |
'en' أو '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. |
مدفوع (السيرفر فقط) 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
| الريسورس | jrs_charwipe |
| المجلد | [CORE] |
| الإصدار | 1.0.0 |
| المطوّر | jrs team |
| يعتمد على | jrs_core, oxmysql |
| الواجهة | لا |
| حجم الكود | 466 سطر Lua |
الأوامر
/charwipe/charwipe_scan/charwipe_sweep
الـ Exports
SweepOrphans, WipeCharacter
config.lua - 47 إعداد#
NOT touched (by request): the account itself and the pause-menu store
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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 |
يحذفه jrs_character نفسه دفعة واحدة |
↳ jrs_character_creator |
true |
يحذفه jrs_character نفسه دفعة واحدة |
↳ jrs_barber |
true |
يحذفه jrs_character نفسه دفعة واحدة |
↳ jrs_barber_preset |
true |
يحذفه jrs_character نفسه دفعة واحدة |
↳ jrs_clothing_current |
true |
يحذفه jrs_character نفسه دفعة واحدة |
↳ jrs_clothing_outfits |
true |
يحذفه jrs_character نفسه دفعة واحدة |
↳ 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 |
يحذفه jrs_character نفسه دفعة واحدة |
↳ 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). |
مجاني (موجود مع JRS Core) jrs_core
JRS core الموحّد: الكور + الإشعارات الأصلية + toast اختياري + المدخلات + القائمة + خدمات الشخصيات + RPC محدود
| الريسورس | jrs_core |
| المجلد | [CORE] |
| الإصدار | 2.5.6-habitats |
| المطوّر | jrs team |
| يعتمد على | oxmysql |
| الواجهة | نعم (NUI) |
| اللغات | ar, en |
| حجم الكود | 30,234 Lua lines |
الأوامر
/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
جداول قاعدة البيانات
IF
config/animals.lua - 10 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
CharacterService |
Config.CharacterService or { |
إعداد لـ character service. |
config/config.lua - 223 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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 أعلى قيمة، و0 يعني الكور فاضي عند اللاعب. |
MaxStamina |
10 |
10 أعلى قيمة، و0 يعني الكور فاضي عند اللاعب. |
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: 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: 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 أيام |
↳ 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
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
↳ 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)
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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 |
'{"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 |
يعرض server id: true = نعم، false = لا (الافتراضي true). |
↳ ShowCharacterId |
true |
يعرض character id: true = نعم، false = لا (الافتراضي true). |
↳ ShowReason |
true |
يعرض reason: true = نعم، false = لا (الافتراضي true). |
↳ ShowDisconnectTime |
true |
يعرض 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 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
Economy |
Config.Economy or {} |
إعداد لـ economy. |
config/feed.lua - 11 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
Feed |
table |
جدول عناصر feed. أضف أو احذف أو عدّل العناصر على نفس أمثلة الملف. |
↳ Enabled |
true |
يشغّل أو يطفّي enabled (الافتراضي true). |
↳ HideAwardToasts |
true |
يخفي award toasts: true = نعم، false = لا (الافتراضي true). |
↳ HideAppLinkToasts |
true |
يخفي app link toasts: true = نعم، false = لا (الافتراضي true). |
↳ HideFeedToast |
true |
يخفي feed toast: true = نعم، false = لا (الافتراضي true). |
↳ HideFeedLhmToast |
true |
يخفي 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 |
يطفّي toast channels: true = نعم، false = لا (الافتراضي true). |
↳ ToggleCommand |
"toggleawards" |
إعداد لـ toggle command. |
ملاحظات من ملف README#
# 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.
---مجاني (موجود مع JRS Core) jrs_essentials
الأساسيات في JRS Core - طرد الـ AFK، الإشارة، عين النسر حسب الوظيفة، التصويب بالمنظور الأول وإصلاحات صغيرة
| الريسورس | jrs_essentials |
| المجلد | [CORE] |
| الإصدار | 1.0.0 |
| المطوّر | JRS TEAM |
| يعتمد على | jrs_core |
| الواجهة | لا |
| حجم الكود | 1,007 Lua lines |
config.lua - 14 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
Language |
"en" |
'en' أو '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 |
مجاني (موجود مع JRS Core) jrs_inventory
ريسورس JRS Inventory الموحّد: المخزون + الأسلحة + التخزين + الأرض + السرقة + التبادل الآمن
| الريسورس | jrs_inventory |
| المجلد | [CORE] |
| الإصدار | 2.4.6 |
| المطوّر | jrs team |
| يعتمد على | jrs_core, oxmysql, uiprompt |
| الواجهة | نعم (NUI) |
| اللغات | ar, en |
| حجم الكود | 20,008 Lua lines |
الأوامر
/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
جداول قاعدة البيانات
jrs_trade_orders
config/config.lua - 155 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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 |
يسجّل 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 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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 |
يسمح بـ weapons: true = نعم، false = لا (الافتراضي true). |
↳ AllowMoney |
true |
يسمح بـ 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 |
يسمح بـ gold: true = نعم، false = لا (الافتراضي true). |
↳ AllowDirtyMoney |
true |
يسمح بـ dirty money: true = نعم، false = لا (الافتراضي true). |
↳ BlockPersonalItems |
true |
Prevent items configured as personal / non-removable from being stolen |
↳ Restrictions |
table |
جدول عناصر restrictions. أضف أو احذف أو عدّل العناصر على نفس أمثلة الملف. |
↳ ShowWeaponSerial |
true |
يعرض weapon serial: true = نعم، false = لا (الافتراضي true). |
↳ Debug |
false |
رسائل التصحيح لـ debug: true = نعم، false = لا (الافتراضي false). |
ملاحظات من ملف README#
# 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.مجاني (موجود مع JRS Core) jrs_loadingscreen
شاشة التحميل JRS - متوافقة مع RedM و jrs_core
| الريسورس | jrs_loadingscreen |
| المجلد | [CORE] |
| الإصدار | 2.10.0 |
| المطوّر | JRS |
| الواجهة | لا |
| اللغات | ar, en |
| حجم الكود | 1,535 Lua lines |
الـ Exports
GetDisplayPlayerCount, GetListedMaxClients, GetListedPlayerCount, GetPlayerAvatarUrl, IncludeBots, IsLoadingScreenActive
config/server.lua - 23 إعداد#
عام
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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 |
ملاحظات من ملف README#
# 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.مجاني (موجود مع JRS Core) jrs_minigame
| الريسورس | jrs_minigame |
| المجلد | [CORE] |
| الإصدار | 1.0.0 |
| المطوّر | JRS TEAM |
| الواجهة | نعم (NUI) |
| حجم الكود | 156 سطر Lua |
مجاني (موجود مع JRS Core) jrs_progressbar
أداة تستخدمها داخل سكربتاتك لفريمورك jrs core
| الريسورس | jrs_progressbar |
| المجلد | [CORE] |
| الإصدار | 1.2.1 |
| المطوّر | JRS TEAM |
| الواجهة | نعم (NUI) |
| حجم الكود | 127 سطر Lua |
الـ Exports
CancelAll, CancelNext, initiate
مدفوع (السيرفر فقط) jrs_servertag
تاق سيرفر Discord من jrs - البس تاق RED واكسب مستويات حسب الوقت، مكافآت XP وخصومات وهدايا يومية
| الريسورس | jrs_servertag |
| المجلد | [CORE] |
| الإصدار | 1.1.0 |
| المطوّر | jrs team |
| يعتمد على | /onesync, jrs_core, oxmysql |
| الواجهة | لا |
| اللغات | ar, en |
| حجم الكود | 764 سطر Lua |
الأوامر
/servertag_debug/servertag_sethours/tagboost
الـ Exports
ClaimGifts, GetPanelData, GetTagPerks, IsWearingTag, RecheckTag
جداول قاعدة البيانات
jrs_servertag_users
config.lua - 25 إعداد#
A player who wears this server's tag on Discord (Settings > Profiles >
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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: true = نعم، false = لا (الافتراضي false). |
Anti-AFK: time only counts while the player keeps moving (metres per tick).
| الإعداد | الافتراضي | وظيفته |
|---|---|---|
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 <minutes> <extraXpPercent> e.g. tagboost 60 50 adds +50% XP for every player wearing the tag. tagboost 0 ends it. |