FairgroundAPI

A WebSocket API and Web Dashboard to remotely control rides.

Download as .zip Download as .tar.gz View on GitHub

🎡 FairgroundAPI

Welcome to the FairgroundAPI! This is a BepInEx / IL2CPP mod for the game Fairground Online that exposes the control panels of in-game rides via a WebSocket and a beautiful Web Dashboard. It enables you to control rides from your desktop browser, a mobile tablet, or even a physical hardware controller!



✨ Features

📦 Installation

Note: You must have BepInEx 6 Bleeding Edge (IL2CPP version) installed in your game directory. Read the Installation Guide if you need help.

  1. Go to the Releases page and download the latest .zip file.
  2. Extract both FairgroundAPI.dll and websocket-sharp.dll into your BepInEx/plugins/ folder.
  3. Keep the web folder anywhere on your PC (or host it locally).
  4. Launch the game, walk up to a ride, take control, and then simply double-click web/index.html to open your control panel!

⚙️ Configuration

After running the game with the plugin installed for the first time, an auto-generated configuration file will appear at BepInEx/config/com.invalidluca.fairground.api.cfg. You can edit this file to change:

📖 API Documentation

Do you want to build your own custom dashboard, a Discord integration, or a physical hardware controller (like Arduino/ESP32)?

We have fully documented the entire WebSocket interface (JSON payloads in and out).
Tip: The included Web Dashboard (web/index.html) features a live Developer API Reference tab that automatically lists every single component on the ride you are currently controlling, complete with click-to-copy API names and JSON examples!

👉 Read the API Documentation here

🤝 Contributing & Issues

Found a bug or have a feature request? Please open an issue on GitHub. Pull requests are also highly welcome! If you want to contribute to the project, feel free to fork the repository, make your changes, and submit a PR.

💬 Support & Feedback

If you have any questions, encounter bugs, or need help implementing the API, feel free to reach out.

Discord: @invalidluca