BDSC
A lightweight, modern server core designed for maximum flexibility.
Not a Roleplay Framework
BDSC is not a traditional server framework. It ships with no jobs, inventories, or gameplay logic.
What your server does is entirely defined by the plugins you choose to load — or build yourself.
What Is BDSC?
Normally? BOII Development Server Core When it’s running smoothly? Barebones Done Smart & Clean When it refuses to co-operate? Bug-Driven Sh*tfest of Chaos.
BDSC is a lightweight server foundation designed for developers who want control. It doesn’t care what your server does — it just gives you a clean, flexible structure to build on.
No jobs. No inventory. No economy. No drama.
You get the boring but essential stuff:
Player management
Object extensions
A couple of handy utilities Everything else? You decide.
Who It’s For
BDSC was built for internal use on BOII projects — survival, minigames, experiments. But it’s now open and modular enough to support anything.
If you're tired of bloated RP frameworks or want a clean, no-bullshit starting point, this is for you.
You get:
A stable foundation
A consistent object system
A fully extensible runtime
Zero assumptions about your gameplay
Use it. Fork it. Rewrite it. Just don’t make it worse.
What It Provides
BDSC handles:
Player management and object lifecycle
Extension hooks for runtime systems
Server/client-safe data syncing
Core exports for structured access
Some basic utlity functions
No hardcoded gameplay. No required systems. No enforced dependencies. You build what matters — BDSC stays out of the way.
Ideal Use Cases
BDSC is framework-agnostic and gameplay-neutral. Perfect for:
Custom survival servers
Minigame or PvP modes
Custom RP frameworks
Experimental mechanics
Hybrid / mashup servers
If you’re building something new, this is the foundation to do it clean.
Player Extensions
BDSC supports extending player objects at runtime - without breaking structure:
player:add_data("stats", { health = 100 }, true)
player:add_method("stats", "get_health", function(self) return self:get_data("stats").health end)
player:run_method("stats", "get_health")
All data/methods are namespaced, and replicated data syncs automatically to clients if marked as such.
Structure
Everything is modular and clearly separated.
bashCopyEditcore/
│
├── lib/ # Utility functions (e.g. utils.lua)
│
├── player/ # Main player system
│ ├── events.lua # Join/leave, sync, client handlers
│ ├── factory.lua # Creates player objects
│ ├── methods.lua # Public/private extension logic
│ ├── registry.lua # Player storage, save/remove/get
│
├── locales/ # Translation files
│ └── en.lua
│
├── finalise.lua # Exports and locks bdsc namespace
├── fxmanifest.lua # Resource manifest
└── init.lua # Core bootloader
Want to add inventory? Authentication? Stats?
Just attach logic using add_data
and add_method
on player objects - no plugin boilerplate required.
Quick Install
BDSC isn’t a full framework — it’s a clean server core. You don’t need to install databases, jobs, inventories, or other bloated systems.
To get started:
Last updated