Changelog
v2.0.0·
- AddedSuppressor heat — visual heat glow on suppressor during sustained fire; three modes:
glow,light,particle - AddedWeapon inspect — hold
Ito inspect equipped weapon; overlay shows serial, condition tier (1–5), custom name, and ammo (exact or vague) - AddedLow ready — toggle between back-sling and chest-ready position with choreographed transition animation (default:
HOME) - AddedTactical sling — visible sling strap prop on torso while a long gun is slung; supports job-based model variants
- AddedWeapon safety — toggle fire safety (
END); disables firing while on safe; pill HUD indicator; state stored per-weapon by serial - AddedWeapon name — engrave a custom name on any weapon (saved in metadata, shown in inspect); configurable permission:
everyone/job/ace - AddedWeapon weight — movement speed penalty for carrying multiple long guns; three built-in presets (light / medium / heavy) or custom tuning
- AddedCharge weapon — RP gesture to rack the slide or charge the bolt; animation and sound broadcast to nearby players (
INSERT) - AddedShowcase poses — cycle through static poses for screenshots or gunshop displays via
/pose; sync via statebag - AddedVehicle trunk rack — stow and retrieve a rifle from a vehicle trunk with opening animation and oxmysql persistence
- AddedWeapon rack — fixed-location gun lockers rendered via GlobalState; optional item placement using
mbt_gunrackitem; soft oxmysql persistence - AddedShell casings — forensic shell casings per shot, persistent in-memory with serial and timestamp; examine and collect via ox_target
- AddedWeapon handoff — pass a weapon to a nearby player transferring all metadata (serial, condition, name); animated give/take with consent prompt
- AddedConcealed carry — hide weapons at the waistband; detection quality varies by clothing layer (bare / light / covered); random tell animations visible to others
- AddedPat down — LEO frisk mechanic; lists visible and concealed weapons with detection tier; consent required, bypassed if target is cuffed; supports webhook audit logging
- AddedAmmo sharing — share ammo with a nearby player; key-driven amount picker with configurable step and shift multiplier
- AddedChain of custody — forensic log of every player who carried a weapon by serial, stored in oxmysql; shown in the inspect overlay
- AddedSerials — guarantee every weapon has a unique serial at equip time; formats:
MBT-XXXXXXXXor ox-like; optional sweep on player join - AddedNo-draw zones — define sphere, box, or poly zones where weapons cannot be drawn; melee optionally excluded; HUD zone indicator
- AddedProp position editor — in-game NUI editor for all prop positions and slot variants with live preview and oxmysql save (
/mbt_trunktune) - AddedAdmin NUI dashboard —
/mbtslingopens a live panel for toggling all modules and managing no-draw zones without server restart - AddedQBox (
qbx_core) framework support via dedicated bridge - Addedqb-inventory support as alternative to ox_inventory (auto-detected at runtime)
- AddedBuilt-in localization: English, Italian, French (
locales/) - AddedTwo new weapon slots:
back2(heavy/launchers) andextinguisher - ChangedSmart vehicle hiding — weapon prop now stays visible on motorcycles, bicycles, and roofless vehicles; hidden only inside enclosed cars
- ChangedWeapon drop — death drop system replaced by unified WeaponDrop module with Discord webhook logging, visible on-ground prop, and configurable blinking despawn timer
- ChangedUnjam mechanic — unjamming is now key-driven (press
Ra configurable number of times) instead of automatic; adds physical interaction to the flow - Changedox_inventory is now a soft runtime dependency; the script loads without it if qb-inventory is detected
- Changedoxmysql added as soft dependency for persistence modules; features auto-disable gracefully if oxmysql is absent
- ChangedFolder structure rewritten to modular architecture (
core/,modules/,patches/); config split intoconfig.lua+default.lua
v1.1.4·
- FixedDeath-drop items now correctly use the configured
deathDropChanceprobability instead of always dropping - FixedSling animation not restoring after respawn in certain frameworks
- ChangedJamming cooldown timer is now per-weapon instead of global
- ChangedImproved sync reliability for sling state in high-player-count servers (OneSync Infinity)
v1.1.3·
- AddedNew
throwRangeconfig option to limit grenade/throwable distance - AddedExport
GetSlingSate(playerId)for third-party scripts - FixedHolster animation playing twice on fast equip/unequip
- FixedWeapon bone attachment offset wrong on MP female ped
v1.1.0·
- AddedWeapon jamming mechanic — configurable chance per weapon class, clear-jam animation
- AddedThrow mechanic for throwable weapons (grenades, molotovs)
- AddedDeath drop system — drops configured items on player death
- ChangedSling positions now fully configurable via
Config.Bonestable - ChangedMigrated from native events to ox_lib callbacks for better reliability
v1.0.0·
- AddedInitial release — visible weapon sling on back and side
- AddedHolster animations on weapon equip/unequip
- AddedSupport for ox_lib and ox_inventory
- AddedOneSync compatible