Brew Society: Comprehensive Society Management
Brew Society is the most advanced and flexible UI based society system on the market.Features
- Create and manage societies with ease
- Permissions for each grade
- Transaction history in the society menu where bills and loans also getting displayed
- Storage can be upgraded with building stages
- Create societies with just one command
- Place a wardrobe and storage as sperate points
- Server owner can enable opening blips so that society blips can be toggled between red and green
- Paycheck system that can set to daily or every x minutes which the owner of the company can set
- Add paychecks that doesnt get removed from a society ledger instead gets generated
- Paychecks dont get added to your inventory, instead you go to paycheck stations and collect your paycheck there
- Fully UI based
- Note system in society menu
- Billing system
- Aritcle management system that will later can be used to write bills in a sperate addon script
- Block that users that are not unemployed cant be hired until they quit their old job
- Same database structure to still use syn shops with company management - This could get changed in the future due to updates of syn_shops
Create a new society
Easiest method: Step 1: use open creator command This opens a custom ui where you can create the society, with ranks and permissions and all other settings.Step 1: create the society This adds the society to the database and local storage.
Translation
To translate the society script you need to edit the lang file in the language folder, the index.html in the html folder and also the translation.js in the html folder.Commands
All commands are gated byConfig.CommandSystem feature flags (and additional feature flags like Config.UseSynShops, Config.OpeningBlips, Config.UseBellStation, or Config.Debug). This document lists each command, its purpose, arguments, permissions, and notes.
Notation:
<int>integer argument<string>string argument- Optional arguments shown in brackets
[arg] - Boss-only refers to society rank with
isBoss = true
/createsociety <job> <useBlip> <blipSprite> <maxStorageSize> <useDirectPayment> <placementRange> <label...>
Config flag: Config.CommandSystem.createSociety.enabled
/addrank <job>
Config flag: Config.CommandSystem.addRank.enabled
/toggleblip
Config flags: Config.OpeningBlips AND Config.CommandSystem.toggleblip.enabled
Permission: Player must have toggleBlip permission in current job rank.
/placestorage
Config flag: Config.CommandSystem.placeStorage.enabled
Permission: Boss-only (isBoss = true) within placementRange radius of boss coordinates.
/placewardrobe
Config flag: Config.CommandSystem.placeWardrobe.enabled
Permission: Boss-only; same distance/range rules as /placestorage.
/writebill
Config flag: Config.CommandSystem.writebill.enabled
Permission: Must have writeBills permission in current society.
Interactive flow: opens bill creator, then target player accepts/refuses.
/duty
Config flag: Config.CommandSystem.duty.enabled
/hireplayer <targetId>
Config flag: Config.CommandSystem.hirePlayer.enabled
Permission: Must have hirePlayer permission.
Additional logic: Can be blocked if target already has a job (Config.BlockHiringPlayerWithJob).
/setjob <targetId> <job> <jobgrade>
Config flag: Config.CommandSystem.setJob.enabled
Admin/privileged usage implied (registered with restricted flag = true).
/opencreator
Config flag: Config.CommandSystem.openCreator.enabled
Access: Steam identifier must be in Config.AccessSteamIdsForCreator.
/listcalls
Config flags: Config.UseBellStation AND Config.CommandSystem.listCalls.enabled
/checkdutystatus <targetId>
Config flag: Config.CommandSystem.checkDutyStatus.enabled
Restricted (registered with admin flag = true).
Debug-Only Commands (require Config.Debug = true)
Provided for development/testing.
/resetMenuLock <sourceId>
/checkJobSalary <job>
/setLoanForJob <job> <jobgrade> <loan>
/initScriptbyPlayers
Permission Summary
Permissions checked against current player’s society rank:toggleBlipfor/toggleblipisBoss(rank flag) for placement commandswriteBillsfor/writebillhirePlayerfor/hireplayerOther commands rely on config flags or admin registration (restricted = true).
Notes
- Society range placement uses
placementRangefrom society ledger and compares against boss coordinates. - Bill creation uses a confirmation modal
- Hiring respects blocking config to prevent hiring players already employed.
- Creator UI access uses SteamID whitelist.
- Debug commands should not be exposed in production.
Exports
generateJobRanks(society)
insertIntoSocietyShops(society, slots, name, coords, rank, blip)
This function is only available when you use syn_shops for VORP and enable the config option Config.UseSynShops.
society_shops table in the database.
insertIntoSociety(job, ledger, storageLimit, storageCoords, wardrobeCoords, daily)
society_ledger and in-memory state.
