Community

Developers

For community developers: how to join, the general package structure, the rules and where to get support for XXECLUB Script.

Community developers

XXECLUB has a community of developers who build their own projects for XXECLUB Script and share them with other members.

Join the Discord community with the official link below and ask your questions there.

When you share a project, add a short README with the project name, the release and game version you tested, the setup steps, the dependencies and the known limits. Say which parts you tested yourself.

Developer programme onboarding

Build a project in the developer folder, test it with the current release, and share it in the Discord community. There is no separate application form on this site; ask in the community if you need access, review or a place to publish.

Package structure

Each release is delivered as one archive. Extract all of it, keep the folder structure and leave the resources where they are. Do not copy single files between releases or mix two releases in one folder.

Layout of the current release

  • developer/ — your own Lua projects.
  • config/ — launcher and script settings.
  • modules/ — packaged script modules.
  • shards/ — script packages.
  • resource/ — interface resources.
  • cached/ — runtime cache; leave it alone unless support asks.
  • tier3/ — champion-module material.

SDK and API

Developer projects are Lua folders inside developer/. The documented entry point uses header.lua and main.lua, with Callback.Bind, CallbackType and Environment.LoadModule available to registered projects. The package ships a starter project and script examples; check them against the release you run.

Hooks and events

Register handlers at the project entry point with Callback.Bind. The starter documents CallbackType.Load and CallbackType.OnTick:

CallbackWhen it runsWhat it passes
CallbackType.LoadWhen the runtime loads the project.No documented arguments.
CallbackType.OnTickOn a runtime tick while the project is loaded.No documented arguments.

Keep tick handlers small. Do not assume a callback timing or argument contract that the package does not document.

Script structure

Create one folder per project under developer/. The starter uses a manifest and an entry point:

  • header.lua — project identifier, display name and load function.
  • main.lua — entry point; keep the first version small.
  • optional modules/ — additional files loaded from the project.

Use a stable snake-case identifier and a recognisable name. Keep the starter available for comparison.

Minimal script example

developer/hello world/header.lua:

return {
  id = 'hello_world',
  name = 'Hello World',
  load = function()
    return true
  end,
}

developer/hello world/main.lua:

print('hello world')

Load the project from ScriptManager; if it loaded, the developer output shows hello world.

Rules

  • A serial is personal and tied to your device. Do not share it.
  • Never post your serial, or leave it visible in a screenshot.
  • Private download links are personal and may expire. Do not repost them.
  • Do not resell or redistribute the release or its modules.
  • Test your project before sharing it, and say which release and game version you tested.
  • Give credit for third-party work and do not repost another developer's files without permission.

See Serial & device for how serials are delivered and set up.

Support

Ask in the Discord community through Support. Describe the smallest example that shows the problem, give the exact message and say which release and game version you use.

Changelog

Release notes are on Updates.