Documentation
TebexDiscordYouTubeGitHub
  • Introduction
  • FIVEM FREE RESOURCES
    • BDSC
      • Guides
        • Core Setup
          • Installing BDSC
          • Configuring BDSC
        • Plugin Development
          • What is a Plugin?
          • Plugin Structure
          • Extending Player Objects
      • API
        • Functions
          • Player
          • Server
          • Client
          • Shared
        • Modules
          • Player Manager
          • Buckets
          • Plugins
        • UI Components
    • boii_utils
      • Installation
      • Configuration
      • Modules
      • API
        • Callbacks
        • Characters
        • Commands
        • Cooldowns
        • Debugging
        • Entities
        • Environment
        • Framework Bridge
        • Geometry
        • Items
        • Keys
        • Licences
        • Maths
        • Methods
        • Player
        • Requests
        • Strings
        • Tables
        • Timestamps
        • UI Bridges
        • Vehicles
        • Version
        • XP
        • UI Elements
  • FIVEM PAID RESOURCES
    • Page 2
Powered by GitBook
On this page
  • Why Plugins?
  • How Plugins Work
  • Extending Players
  1. FIVEM FREE RESOURCES
  2. BDSC
  3. Guides
  4. Plugin Development

What is a Plugin?

In BDSC, a plugin is a modular unit of functionality that extends the core framework. All gameplay systems — such as inventories, jobs, XP, shops, crafting, and more — are implemented as plugins. Nothing is hardcoded into the core.

A plugin is essentially just a resource — but located inside the core. This allows tighter integration, shared access to internal systems, and simpler development for small to mid-scale projects.

Plugins can:

  • Register new systems

  • Extend the player object

  • Hook into player load/unload

  • Add custom data, logic, and behaviour

Plugins are optional. You only load what your server needs.


Why Plugins?

BDSC is built around the idea that everything is optional and modular. Instead of forcing a specific feature set or gameplay style, plugins let you:

  • Add features without touching the core

  • Build servers around specific modes (e.g. survival, minigames, RP)

  • Replace or disable features cleanly

  • Maintain separation between systems


How Plugins Work

Plugins are loaded at runtime by the core plugins module. Each plugin:

  • Lives in its own folder under /plugins

  • Can include server, client, and shared code

  • Uses a specific file structure to be registered correctly


Extending Players

Plugins can extend players in three clean ways:

  • add_data(key, value) – Adds custom data

  • add_method(name, fn) – Adds a new method

  • add_extension(name, obj) – Attaches a full system or class

This allows plugins to define per-player logic without modifying the core or conflicting with other systems.

Last updated 1 day ago

See:

See:

Plugin Structure
Extending Player Objects