Impulse Server Manager
Automatically create, start, and stop backend servers with Velocity
📖About Impulse Server Manager
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?
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
- First and third party brokers - Cores to drive your servers no matter how they are deployed, via Docker, JAR files,
or something else. We are actively working on expanding our selection but you can find the full list
here - 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
Documentation
For more detailed information on how to use Impulse, see our documentation.
For API documentation, see our KDocs.
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:
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!
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.