SCP: Classified Site Plugin API
  • Quick Start
  • DOCS
    • Folder Structure
    • Creating Plugin Project
    • Creating New Player Class
    • Creating New Item Class
    • Creating New Room Event
    • Creating Additional Networked Class
    • Creating New Admin Panel Menu
    • Abilities
    • Replacing Game Logic
    • Plugin Classes/Game Classes Limitations
  • ID's
    • Inventory Image ID
    • Material ID
    • Team ID
    • Hook ID
  • Game C# Classes
    • ACES
    • AdminPanel
    • Button
    • Config
    • CustomLogger
    • DamageHandler
    • DeadBox
    • DoorManager
    • HitBox
    • HookManager
    • IInteractable
    • InputController
    • ItemPickup
    • Lever
    • NetRoom
    • NetworkedButton
    • NetworkedEvent
    • Player
    • PlayerUtilities
    • ResourcesManager
    • ScriptHelper
    • Trigger
    • UIManager
    • Door
    • SupportManager
    • RoundManager
    • Elevator
  • Another C# Classes
    • Rooms
    • Player Classes
    • Items
    • Admin Panel
Powered by GitBook
On this page
  • Folders, File Structure
  • Resources
  • Platform names
  • Plugins Sync
  1. DOCS

Folder Structure

Folders, File Structure

DLL files must be placed under folder Plugins, you cant place DLL files under subdirectories, otherwise plugin will not load.

Example

SERVER ROOT/
    Plugins/
        server/
            some_import_data.bin
        client/
            [PLATFORM_NAME]/
                some_important_sound.ogg
        FirstPlugin.dll
        SecondPlugin.dll

Resources

There two types of resources that must be placed in their named folder:

  • "server" - this resources can be accessed only on server side.

  • "client" - this resources can be accessed only on client side.

Platform names

Possible values:

  • Windows

  • Linux

  • OSX

  • Android

  • iOS

You can load this resources from plugins using ScriptHelper.LoadClip/LoadTexture/LoadText/LoadData/LoadBundle

Plugins Sync

Connecting to server splitted into three steps:

  1. Account identification.

  2. Plugin synchronization.

  3. Acquiring server info.

Account identification step used to get user info and communicate with master server before player was created on server. Plugin identifation step used to send all server plugins and their client/shared resources before player was created, to make sure that rooms/items/players will properly load plugin classes. Acquiring server info step used to get all another game information from server.

PreviousQuick StartNextCreating Plugin Project

Last updated 1 year ago