Finding people to play with across Discord should not require this much effort. LunaLink was built to close that gap, one cross-server command at a time.
Servers are siloed. LFG channels only reach people already in your community. Coordinating across multiple servers means juggling invites, links, and hoping people have DMs open.
If your friends play different games across different servers, finding someone to actually play with on any given night involves a lot of pinging and waiting. Most LFG solutions are either tied to a single server or require you to join yet another community just to find a match.
LunaLink was built around a different idea: what if one bot could sit in all your servers at once, build a shared pool of available players, and let anyone search that whole pool with a single command?
The cross-server search means that when you run /findparty, you are not limited to whoever happens to be in the same server you are in right now. You are searching the full network, and the game search is powered by IGDB, so you are picking from a real database of over 200,000 games with live autocomplete as you type.
The DM relay solves the communication side without requiring a shared server. Once your party forms, the bot becomes the relay point. Everyone talks through their DMs with LunaLink, and messages are forwarded to the whole party. No server invites. No sharing personal contact details. Just coordination.
Beyond that, LunaLink handles scheduling so you can set up a party in advance, reporting so bad actors can be flagged, and Patreon-linked premium so subscriptions manage themselves automatically. The goal was to make the whole process from “I want to play something” to “I am in a party with people” as short as possible.
The whole flow takes less than a minute once the bot is in your server.
Invite the bot to your server. No configuration needed. It starts listening for commands immediately.
Run /available to open an interactive form. Search your game via IGDB, pick your mode, party size, and expiry, then hit Go Live.
When a player hits Join on your listing, both of you get a DM from LunaLink setting up the party relay.
Message LunaLink directly to talk to your party. Everything gets relayed. No shared server needed.
LunaLink is a Node.js bot with a SQLite database, IGDB integration for game data, and a live admin dashboard.
The bot runs as a single persistent Node.js process, managed by PM2 in production for automatic restarts and logging.
Uses V2 components, slash commands with autocomplete, button and select menu interactions, and DM channel partials for reading direct messages.
All listings, party members, usage records, premium accounts, reports, and scheduled parties are stored in a local SQLite database via better-sqlite3.
Game search and autocomplete are powered by IGDB. /randomgame also pulls live from IGDB filtered by rating and popularity.
Users link their Patreon account via /linkpatreon. Webhooks from Patreon automatically grant or revoke premium when subscriptions change.
LunaLink runs on a private VPS. The live dashboard is at stats.lunalink.uk.
Add LunaLink to your server and see how fast you can fill a party.
Add LunaLink to Discord