Configuration
BeeKeeping settings live in /hivesetup.
Staff change settings with /hivesetup. A save applies immediately. No restart.
The first time the panel opens, a short guide walks Access, Swarms, Shops, Honey, Bee trap, Suit, Genetics, Saving, VIP, and Logs. You can leave it and use the full page list whenever you want.
Pages
| Page | What it controls |
|---|---|
| Hives | Owner-only or allowlist access, hive types and models, max hives per player (0 = unlimited), own-hive blips, honey minigame (slide, none, ox, or a supported third-party), debug |
| Placement | Max place distance, place time, minimum distance between hives, allowed ground materials |
| Wild swarms | stationary, randomized, or off. Locations, stings, respawn, catch limits, who can see them |
| Shops | Keeper stands (ped, prop, or box), stock and prices, honey and wax sell prices, PayTo (bank or cash), context menu fallback |
| Honey zones | Map polygons per region, and priority when regions overlap. Outside every region the hive makes default honey |
| Separator | On or off, world spots staff place (each named for its street, with a teleport button), an optional map blip on every spot (on by default), combs per batch, crank turns. Players cannot place or pick one up |
| Production | Minutes per tick, max honey / wax / workers, worker loss chance |
| Saving and cleanup | shutdown or timed saving, inactive hive wipe days |
| VIP hives | Extra slots. VIP from an identifier list, ACE groups, Discord roles, or the hook |
| Logs | ox (ox_lib logger), discord (webhook), or custom (SendBeeLog). Per-action toggles |
shutdown writes hives when the resource stops or the server restarts. A crash loses changes since boot. Use timed if that matters.
Zone and location editing uses the built-in map in the panel. Place the points, then save.
Player flow
- Use a hive item. Ground has to be allowed, and the spot has to sit outside blocked zones, far enough from the next hive, and under the personal cap.
- Add workers and a queen. Production ticks only while the hive is closed, the queen is alive, workers are above zero, and honey / wax are not already full.
- Open the hive to extract. The slide minigame clears cells until 2 percent or fewer remain, or times out at 120 seconds. Fail or timeout stings unless
OnMinigameFailedreturns true. - Honey type follows the region the hive sits in. With the separator on, the hive gives
honeycomb. At a separator the player drags the frames from a tray onto the drum, then holds the crank handle and circles the mouse to spin it. The same view carries on to the faucet, where they move a jar under the stream until it is full, one jar for each 20 honey. - Wild swarms sting unless the suit is on. Place a
bee_trapin the sting zone, wait, then collect. A queen is about a 10 percent catch by default. - Sell honey and wax at the shop. Shop location ids have to match a stock list entry.
Strains
Queens carry a strain that changes honey, wax, lifespan, and how they do in each region. Shipped strains include Balanced Stock, Prolific Forager, Wax Weaver, the regional blooms, Hardy Stock, Docile Matriarch, Urban Scout, Iron Comb, Storm Chaser, Wild Feral, plus Amber Legacy and Golden Royal (those two are staff grants). Players read them with beekeeping_guide. New strains from the builder are stored in the database.
Open files
These stay editable. They hold code, not the panel data. A change here needs a resource restart.
| Function | File | Role |
|---|---|---|
Config.IsHiveAdmin(src) | open/server/custom.lua | Who can open /hivesetup |
Config.IsPlayerHiveVip(src) | open/server/custom.lua | Return true to grant VIP slots |
SendBeeLog(src, action, message) | open/server/custom.lua | Used when the log provider is custom |
RollQueenTrait(src, zone) | open/server/custom.lua | Return a trait id, or '' for the default roll |
ResolveHoneyRewardItem(...) | open/server/custom.lua | Return another item name, or false to give nothing |
OnTrapCatch(src, swarmId, context) | open/server/custom.lua | After a successful swarm catch |
OnMinigameFailed() | open/client/custom.lua | Return true to skip the sting |
OnAttachHoneycomb() / OnAttachHiveSmoker() | open/client/custom.lua | Return true to skip the built-in prop |
ApplyBeekeeperSuit / RestoreBeekeeperSuit | open/client/custom.lua | Your own clothing. Return true when you handled it |
Honey minigame backends live in resource/open/client/minigames.lua.
SQL
No file to import. On start the resource creates and migrates:
mrnewb_beekeepingmrnewb_beekeeping_separator_statemrnewb_beekeeping_trapsMrNewb__Settings(shared by all MrNewb resources; holds the saved panel settings and custom strains)
Separators have no table of their own. Their spots are saved with the panel settings, and mrnewb_beekeeping_separator_state only holds what is currently in a drum. A mrnewb_beekeeping_separators table left over from an older version is unused and safe to drop.
Older hive rows in mrnewb_beekeeping are converted automatically. Restart once if the console says it converted.
Item names are set in the panel (hive types, separator, trap, suit, strain guide, honey variants). If you rename one, register that name and add a matching image.