Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for ArsonClub

Automatically create, start, and stop backend servers with Velocity

Report Impulse?

Impulse

Impulse is a plugin for the Minecraft server proxy Velocity. It adds the ability to dynamically start and stop servers on demand as players join and leave. Why run a server that is only used for a few hours a day?

Installation

In short, download our latest release from one of our sources and place it in your Velocity plugins folder. For more detailed instructions see our installation guide.

Sources:

Documentation

For more detailed information on how to use Impulse, see our documentation. For API documentation, see our KDocs.

Quick Start

Tip

Looking for a more in-depth guide? See our Getting Started documentation.

The following configuration should get you started with a simple lobby server.

Step 1: Configure Velocity

Simply add the server to your velocity config as normal.

player-info-forwarding = "modern"

[servers]
lobby = "127.0.0.1:25566"

try = ["lobby"]

Step 2: Configure Impulse

Configure impulse so it know how to manage your server

instanceName: Bones
servers:
  - name: lobby
    inactiveTimeout: 300
    type: docker
    docker:
      image: itzg/minecraft-server
      portBindings:
        - "25566:25565"
      env:
        ONLINE_MODE: "FALSE"
        TYPE: "FABRIC"
        EULA: "TRUE"
        MODRINTH_PROJECTS: "fabricproxy-lite"
        DIFFICULTY: "PEACEFUL"
        ALLOW_NETHER: "FALSE"
        MODE: "adventure"
      volumes:
        - "/srv/lobby:/data"

Step 3: Configure the MC Server

Add some config to allow for modern forwarding

# create the file /srv/lobby/config/FabricProxy-Lite.toml
hackOnlineMode = true
hackEarlySend = false
hackMessageChain = true
disconnectMessage = "This server requires you to connect through the proxy."
secret = "<YOUR SECRET FROM forwarding.secret FILE>"

Step 4: Connect

Simply start your velocity proxy and connect to it from your Minecraft client. If you run into issues check our documentation or open an issue!

Key Features

Impulse has many features to make managing your servers easy! Some highlights include:

  • Dynamic server creation and destruction - only run servers when your players are connected
  • Automatic hot reload of configuration - update how impulse runs a server automatically, without a reload command!
  • Unmanaged server support - plays nice with any static servers you have configured in Velocity
  • Custom events - broadcasts custom events that allow you to extend Impulse's functionality
  • Third party Broker support - Implement your own Broker or use someone else's to manage your servers
  • FOSS - Impulse is commited to being free and open source always

Getting Help

If your having problems with Impulse, experiencing a bug, or just want to recommend a feature, feel free to open an issue! I will do my best to respond.

Contributing

All contributions are welcome! For more specific instructions see our contributing page.

For specifics on adding creating your own broker to integrate with another server platform see our guide.

Information

CategoryMiscellaneous
Published onJanuary 12, 2025
LicenseAGPL
Downloads19
Stars1
Watchers1

Pinned Versions

External Links

Members

Avatar for Dabb1e

Dabb1e

Admin