Skip to content

ompgo-dev/ompgo

Repository files navigation

ompgo

Go runtime and bindings for building open.mp components with CGO.

What this is

  • Go runtime that loads open.mp C-API and dispatches events to your gamemode.
  • Generated Go bindings for open.mp functions and events.
  • A simple pattern for building a single Go shared library component.

Quick start

  1. Write a main package that registers a gamemode and exports the required component entry points.
  2. Build with -buildmode=c-shared.
  3. Copy the .so into your server’s components folder.

Docs

Dependency workflow

  • The upstream open.mp C API now lives in the git submodule at third_party/openmp-capi.
  • The repo builds from committed snapshots in tools/codegen/data/openmp-capi and pkg/runtime/include/ompcapi.h.
  • Use task sync:openmp-capi to copy api.json, events.json, and ompcapi.h from the submodule into those committed paths.
  • Use task update:openmp-capi to update the submodule and refresh the committed snapshots in one step.

Examples

Packages

  • ompgo-streamer - Recreates the streamer plugin using ompgo
  • ompgo-extras - A bunch of helper packages for common gamemode workflows. (command and dialog routers, and textdraw builder)

About

ompgo is an sdk/framework for building gamemodes/components for open.mp in golang

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages