StarTools is a modular, dynamic development toolkit designed to work seamlessly with any major RedM framework and inventory/notification system.
- ✅ Framework auto-detection: VORP, RSG, RedM:RP, QBCore, Custom
- ✅ Inventory integration: VORP Inventory, RSG Inventory, QBCore, RedM:RP, Custom
- ✅ Notification bridge: Supports VORP, RSG, RedM:RP, ox_lib, jo_lib, and custom fallback
- ✅ Unified star API: Write scripts once, use on any framework
- ✅ Client + Server bridge support
- ✅ Modules: Animations, Notifications
- ✅ Debug mode: Enables detailed bridge load logs
- ✅ Test Commands:
/star_test
– shows detected framework/inventory, tests player data & money/star_notifytest
– triggers various notification types using the active system
star_tools/
├── framework/ ← framework-specific logic (client/server)
├── inventory/ ← inventory bridge files (server)
├── notifications/ ← notification systems (client/server)
├── modules/ ← shared logic: animations, notifications
├── server/ ← server utils, test commands
├── client/ ← client utils
├── shared/ ← shared constants, utils
├── star.lua ← global shared object
├── config.lua ← config options
├── fxmanifest.lua
- Place
star_tools
inside your server'sresources/
folder. - Add this line to your
server.cfg
:ensure star_tools
- Start your server. If
Config.Debug = true
, you’ll see which bridge modules were loaded.
Config = {}
-- Set your framework manually or use "auto"
Config.Framework = "auto"
-- Enable or disable console bridge logs
Config.Debug = true
-- Get player data
local data = star.getPlayerData(source)
-- Add/remove currency
star.addMoney(source, 100)
star.removeMoney(source, 20)
-- Add inventory item (if inventory system supports it)
star.addInventoryItem(source, "bread", 1)
-- Send notifications
star.notifyLeft(source, "Welcome", "You joined the server", "generic_textures", "tick", 4000, "COLOR_WHITE")
-- Trigger animation (client)
star.playAnimation('amb_work@world_human_hammering@male_a@idle_a', 'idle_a')
- Logs full player data (from your framework)
- Adds money and item (if supported)
- Confirms inventory and framework bridges are working
- Sends:
- NotifyLeft
- NotifyTip
- NotifyCenter
- NotifyObjective
- NotifySimpleTop
✅ Uses whatever notification system is detected.
- VORP (
vorp_core
) - RSG (
rsg_core
) - RedM:RP (
redem_roleplay
) - QBCore (
qb-core
) - Custom (fallback logic with debug messages)
-
ox_lib
(client + server via event) -
jo_lib
(client) -
vorp_core
(client + server) -
rsg_core
(client + server) -
redem_roleplay
(fallback via chat message) - Custom (prints to console)
Each init.lua
dynamically detects active resources at runtime:
framework/init.lua
: detects active frameworkinventory/init.lua
: loads inventory bridge for that frameworknotifications/init.lua
: detects ox_lib, jo_lib, vorp, rsg, redmrp, or fallback
Each bridge file implements the star.
functions for consistency.
All code is namespaced via star.
so you can plug it into any of your scripts without conflicts.
Example:
if star.getJob then
print("Player job: " .. star.getJob(source))
end
You can now use star_tools
as a base for:
- universal job menus
- inventory-based shops
- framework-agnostic UI systems
- and more...
Created with love for devs who want to write clean, flexible code.
Happy scripting!