Modules
Looking for a game
One queue across every server running Dispresso. Post a request, get a DM from whoever is interested.
Looking for a game is one queue shared by every server running Dispresso. You post what you want to play, it lands in the requests channel of every server that has one, and anybody who presses Interested opens a chat between the two of you: on the site under Chats, and in the Dispresso bot's DMs. Reply in either place and the other person gets it.
Or just tell the bot#
set up lfg
make the lfg posts go to #lfg
dispresso add an lfg board in #comp-pc for valorant
dispresso send seeding cards to #seeding for rust and squad
dispresso what lfg boards do we have
turn off lfgThat is the one requests channel. Sorting the queue into boards by game, mode and platform, and naming a channel as a squad seeding channel, are both said the same way, the same write !lfgboard and !seed make. Start with dispresso or mention it. It asks for anything it still needs, writes the same settings the dashboard writes, and the whole list of sentences is on Talk to Dispresso.
Where to set it up#
On the dashboard at /dashboard/<your server>/lfg: the requests channel, and the boards below it. Switch the module on there and name the channel, and every 18+ request from every server lands in it. The LFG tile in /botdashboard is the same switch, and its Set up on site button opens that page. Switched off, or with no channel named, your server posts nothing, though your members can still queue and read the queue with the commands.
Sort the queue into channels#
!lfgboard add #lfg-comp-pc marvel rivals comp pc makes a channel a board for one game, mode and platform, and every request that matches lands there from every server running Dispresso. Leave the mode off for every mode of the game, leave the game off for everything else: a channel with no game takes the games and modes your server has no channel for, so a request lands once. !lfgboard panel #channel puts a Find a group button in it: press it, say how many and which positions, and your request goes out without typing a word. The panel keeps itself at the bottom of the channel: when people talk under it, it is posted again below the new messages and the old copy is deleted, so the channel never fills up with dead panels. !lfg typed in a board channel does the same. !lfgboard list, !lfgboard remove #channel. Manage Server, with the module on. The same boards are on the LFG page of the dashboard.
A voice channel for every request#
!lfgboard rooms Voice Channels names a category, and a request posted in your server then gets its own voice channel in it, called something like MR VC 1 - Alex, with room for as many people as they asked for plus themselves. Whoever posted it is moved in when they are already in voice, and the card carries a way in for everybody else. Somebody joining takes one of the spots, so the request counts down as the room fills, and a request that fills closes itself and pulls its cards. Drag the channel's user limit and the request follows it. The room goes when the request is over. !lfgboard rooms off stops making them, and the rooms already open stay until their request ends. It is the same temporary channel the Voice Rooms module makes, so the person who posted has the usual owner controls on it. The same setting is on the LFG page of the dashboard.
Who is posted there: a board shows 18+ requests unless you say otherwise. !lfgboard audience #channel under18 shows under 18 requests instead. Use a separate channel for each age group; mixed boards are not allowed because everyone who can read a Discord channel can see every card in it. Chats and buttons stay in the request's own age group, and an under 18 request never names a server or carries a voice invite. The same setting is on the LFG page of the dashboard.
Modes: !lfg marvel rivals comp pc duelist names the mode; comp, ranked and competitive all mean competitive, quick play and qp quick play. !lfgqueue marvel rivals comp narrows by it. The site's composer and filters have the same modes. Games without modes have none.
Your in-game name: !lfgname marvel rivals YourName remembers your name for that game, and every request you post for it carries it, here and on the site; the site's composer has the same field and fills it in for you. !lfgname marvel rivals off forgets it. Names go through the same word filter as notes.
Region, rank, mic and vibe: !lfg marvel rivals comp pc duelist na diamond mic chill says where you play from (na, na west, eu, eu east, asia, oce, south america, middle east, africa), your rank from the game's own ladder (a rank the game does not have is refused, not stored), whether you have a mic (mic, no mic), a language (es, spanish, pt...) and the vibe you want (chill, competitive, learning, grinding). None of it is required. The card says only what you set, and after you post, the confirmation carries a Details row with the same picks: change one there and every card already posted is redrawn. !lfgqueue marvel rivals na mic narrows the queue by them. Set them once and forget the form: !lfgprofile region na east, !lfgprofile mic on, !lfgprofile language es, !lfgprofile vibe chill, and every request you post fills in what you left empty, here and on the site; a request that says otherwise changes only that request unless you press Save to my profile. !lfgprofile shows it, !lfgprofile off forgets it, and the same profile is on the site under Yours. Your rank is per game and goes on each request. A game with no ladder takes a rank in your own words, through the word filter.
Where somebody adds you: a profile also keeps one handle per platform. !lfgprofile riot Gnikss#NA1 remembers it, and the same works for steam, epic, xbox, psn, battlenet, activision, ea, ubisoft, nintendo, roblox and minecraft; !lfgprofile riot off forgets one. This is not your in-game name, which is per game and set with !lfgname: a handle is where a person adds you, so one Steam name covers every Steam game at once. You type them yourself and nobody checks them with Riot, Steam or anyone else, so they are worth exactly what you write, and a card draws at most four of them. !lfgprofile games valorant, apex says what you are around for, up to six, and !lfgprofile pages on (or brews, or discord) attaches your own Dispresso page, your Brews profile or your Discord username to your requests. Nothing here points off Dispresso and nothing takes somebody else's link. Your picture and your age group are already yours from the account, shown on the editor and never typed into it.
Where you are: a request typed in a server says which server, and if you are sitting in a voice channel there, which one. With !lfgboard voice #channel on, cards from that server carry a Join their voice button, a two hour invite the bot makes when it has Create Invite in that voice channel. An under 18 request never says which server or voice channel it came from and never carries an invite, whichever channel shows it.
Teams in a channel: !lfgboard teams #channel marvel rivals posts a card when a team for that game is made or opens spots: its name, tag, games, open spots, how to get in, a link to its page and an Apply button that starts the same application the team page takes, questions included.
Commands#
Slash commands are the canonical way to play; the ! spelling is an alias
Both spellings run the same code and show the same answer. The slash form lives under a group where there are many verbs, and a group opens its menu at its home: type /zoo home, /eco home or /gang home. A standalone command opens its home when you leave the argument off, the way bare /zoobattle does. Here: !lfg is /lfg post, !lfgqueue is /lfg queue, !lfgchat is /lfg chat, !lfgboard add is /lfg board add. The commands page shows the pair on every row.
!lfg valorant /lfg post queue for a game; it asks for enough to fill a team
!lfg apex console /lfg post a platform word at the end narrows it: pc, console, mobile
!lfg valorant duelist controller ask for those positions, in any order
!lfg valorant pc 18+ /lfg post mark it for adults only (18+ group only)
!lfg valorant na diamond mic chill region, rank, mic and vibe, in any order
!lfgqueue /lfg queue who is looking, across every server
!lfgqueue valorant /lfg queue just that game
!lfgqueue valorant duelist who wants a duelist
!lfgqueue valorant na mic only NA East with a mic
!lfgprofile region na east remember your region; mic on, language es, vibe chill the same way
!lfgprofile riot Gnikss#NA1 where somebody adds you; steam, epic, xbox, psn and more
!lfgprofile games valorant, apex what you are around for, up to six
!lfgprofile pages on attach your own Dispresso page; brews on, discord on the same way
!lfgprofile /lfg profile show it; !lfgprofile off forgets it
!lfggames /lfg games what people are queueing for right now
!lfgstop /lfg stop take every request of yours out
!lfgstop valorant /lfg stop just that one
!lfgchat /lfg chat your chats; !lfgchat 2 switches which one your DM replies go to
!lfgchat off /lfg chat put your DMs back to normal
!lfgteam /lfg team your teams and invites; !lfgteam chat TAG hello talks to the team
!lfgname /lfg name the in-game name you go by for a game
!lfgboard add /lfg board add sort the queue into this server's channels (Manage Server)
!scrim /lfg scrim list the scrims on offer, with a button to take one
!scrim post marvel rivals best of three offer a slot for your team
!scrim off 12 /lfg scrim off call off a scrim your team posted
!squadseed add #chat rust squad tell a channel when a quiet game server needs players (Manage Server)
!squadseed list /lfg seeding list the channels here that receive them
!squadseed remove #chat /lfg seeding remove stop them in a channelA request lasts six hours, then closes on its own. You can be in up to five queues at a time, one per game. Positions are per game: Valorant has duelist, controller and the rest, a game without positions has none to pick, and the site's composer and filters offer the same ones as chips.
Chats#
When somebody presses Interested, a chat opens between the two of you: on the site under Chats, and in the bot's DMs. You see each other's names and nothing else unless one of you presses Share my Discord. In Discord, reply to the bot's chat DM and it goes to the person; !lfgchat lists your chats, !lfgchat 2 switches which one your replies go to, !lfgchat off puts your DMs back to normal, and share, leave, mute and unmute do what they say. Lines go through the same word filter as chat, links other than dispresso.co and Discord invites are removed, and a line that trips automatic review closes the chat. Seven days of silence and a chat is read only.
Every chat on the site has a voice room in it. Press Join voice and the people already in that chat can talk; nobody outside it can, because a seat is claimed against the chat and a chat only ever holds people from one age group. It needs no download and no second account, and it runs on the same connection the messages already use. Voice is between the browsers themselves, which a network that blocks it outright can still refuse, and a chat that cannot connect still has its messages.
Ages#
The queue is split into 18+ and under 18, and the two never see each other. The bot asks your age the first time you queue and remembers it, the same answer every other age aware feature uses. Only 18+ requests are ever posted to a channel; under 18 requests are shown to under 18s through !lfgqueue and are never broadcast. Chats follow the same rule: a chat only ever holds people from one age group, and a DM is never relayed to somebody whose age record no longer matches it.
18+ only is a mark inside the 18+ group, for requests and teams meant for adults who ask for that (!lfg valorant 18+, or the box on the site). It is not a way to reach the other age group; nothing is.
On the site#
The same queue is at dispresso.co/lfg. Sign in with Discord and you see your own age group's requests, can post one with a game, a platform, how many you want and a short note, and can press I'm interested on somebody else's. That press opens the same chat the Discord button opens, on the site and in the bot's DMs, with your name and nothing else. A request posted on the site lands in the same server channels a !lfg one does, and shows up in !lfgqueue; a request typed in Discord shows up on the site. Take one down from either place. Your chats are under /lfg/chats, with an unread mark on the tab.
Teams, clans and orgs live under /lfg/teams. A team is a name, a two to five letter tag, up to five games, the platforms and region it plays in, and a way in: open to anybody, apply with up to five questions the owner writes, or invite only. A captain accepts or declines applications, invites people by Dispresso username or Discord id, and can remove members; editing the team, making and demoting captains, handing the team over and disbanding it stay with the owner. A person can own three teams and be on ten; a team holds fifty. Your teams, applications, invites and open requests are all on /lfg/mine.
Every team has a group chat for its members: Team chat on the team page, or !lfgteam chat TAG hello in Discord, with the same DM relay as a match chat. A team can link one of its owner's Dispresso server listings, so the team page carries the server and its invite. !lfgteam shows your teams and invites, and the verbs show, invite, apps, accept, decline, join, leave, kick, captain, demote, handover, disband, mute and unmute run the team from Discord. Making a team is on the site.
Zoo Battles is one of the games, and a Zoo Battle team is in both places at once. Make a team in the zoo and it appears under /lfg/teams with the same name and roster, so people can find it; accept somebody there and they are on the zoo team too. Playing has not moved: !zooteam, /zoo and the zoo page still run the queue, the line-up, the fight and the ladder. The age rule below is why a roster can differ by a name: an LFG team is one age group, so a teammate in the other one stays on the zoo team and plays, and is not listed on the LFG side. A team whose captain has not given their date of birth has no LFG team until they do.
Teams follow the same age rule as the queue: a team belongs to the age group of whoever made it, is only ever listed to that group, and only people in that group can join, apply or be invited. Names, tags, descriptions and questions go through the same word filter as chat and are looked at again by automatic review after saving; a team that fails review is hidden until its owner edits the wording. Anybody can report a team or a request with the Report link on it, and reports reach the same staff panel as everything else on the site.
Scrims#
A scrim is one team asking another for a match. The board is at /lfg/scrims, and it holds the game, the mode, how many a side, the region, the time, the maps and anything the team wanted to add. One accept books it and it comes off the board, so two teams can never both think they have it.
The maps are the game's own list wherever we keep one, so Valorant, CS2, Overwatch 2, Rainbow Six Siege, Apex, Marvel Rivals and Squad are picked from a list rather than typed. Games whose whole pool changes with each title take a typed line instead.
In Discord, !scrim shows what is on offer with a Take button on each one you could take, !scrim post marvel rivals offers a slot, and !scrim off 12 calls yours off. Only a team's owner or a captain may post or take one: it is a commitment to turn up, and that is not any member's to make. Somebody who runs several teams is sent to the site, where they can pick which team they are speaking for.
Gaming Events#
A Discord community can put its own events on the LFG board: tournaments, game nights, community sessions. The board is at /lfg/events and it shows the time, the server's name, the game, how many are going and a way in.
It is the same event you schedule with /event, not a copy: move it by an hour and the board moves with it, cancel it and it comes off. Add share:True on /event schedule, or use the Show your events on LFG panel on the server's Events page, which is also where the invite link and the game go. An event drops off the board on its own once it has started.
Unlike the queue and the teams, the events board is not split by age group. An event is a server's public gathering rather than an introduction between two people, so it follows the same rule the server directory does: a host can mark an event 18+, and then nobody under 18 sees it anywhere on Dispresso. Everything else is shown to everybody.
Seeding: a quiet game server asking for players#
The same idea pointed at a game server instead of a person. Somebody who runs a Rust, Squad or Hell Let Loose server can ask Dispresso to tell people when it empties out, and a Discord server can ask to hear about it. The channel gets one card with a Connect button, and it is cleared when the server fills up again.
Nobody receives one without asking. A server manager adds a channel on the Looking for a game page of the server's dashboard, or with !squadseed add #channel in Discord, and can name the games that channel cares about or leave it empty for all of them. The owner's side is in Squad seeding.
- !lfgalso /lfg post`!lfg marvel rivals comp pc duelist na diamond mic chill` puts you in the queue for a game, naming the mode, platform, positions, region, rank, mic and vibe; typed in a board channel it needs no game word.
- !lfgqueuealso /lfg queue`!lfgqueue` shows who is looking, across every server; `!lfgqueue marvel rivals na mic` narrows it by game, mode, position, region, rank, mic and vibe.
- !lfggamesalso /lfg games`!lfggames` shows what people are queueing for.
- !lfgstopalso /lfg stop`!lfgstop` takes your requests out of the queue.
- !lfgnamealso /lfg name`!lfgname marvel rivals YourName` remembers your in-game name for a game, so your requests carry it.
- !lfgprofilealso /lfg profile`!lfgprofile region na east`, `mic on`, `language es`, `vibe chill` remembers them once; every request fills in what you leave empty. `!lfgprofile riot Gnikss#NA1` is where somebody adds you, and steam, epic, xbox, psn, battlenet, activision, ea, ubisoft, nintendo, roblox and minecraft work the same way; you type them yourself and nobody checks them with Riot or Steam. `!lfgprofile games valorant, apex` says what you play, and `pages on`, `brews on` or `discord on` attaches your own Dispresso page. `!lfgprofile off` forgets all of it.
- !lfgboardalso /lfg board listStaff: `!lfgboard add #lfg-comp-pc marvel rivals comp pc` sorts the queue into this server's channels; `teams`, `panel`, `voice`, `list`, `remove`.
- !lfgchatalso /lfg chatYour LFG chats in the bot's DMs: reply to a chat card and it goes to the person, or type `!lfgchat anyone on tonight` to say a line without replying to anything. `!lfgchat 2` switches which chat your replies go to, `!lfgchat off` puts your DMs back to normal. It works in the bot's DMs at any time.
- !lfgteamalso /lfg teamYour teams and invites from Discord; `!lfgteam chat TAG hello` talks to the team.
- !scrimalso /lfg scrim listScrims: `!scrim` shows the matches on offer for your age group with a button to take one, `!scrim post marvel rivals best of three` offers a slot for your team, `!scrim off 12` calls yours off. The board is at dispresso.co/lfg/scrims, where you can also set a time, a size and the maps from the game's own list.
- !seedalso /seed listStaff: `!seed add #game-servers rust squad` sends that channel one card whenever a listed game server drops below the count its owner set, with a Join button on it, cleared when the server fills up again. `list` and `remove #channel` are the other two, and `pingrole #chat @Seeders` pings a role on every card there. Anybody can press Grab Seeder Role on the card to join or leave. If the channel has no role yet, someone with Manage Server can press Create Seeder Role. `follow #chat <server>` narrows a channel to exact servers and `gamerole #chat squad @Squad` gives one game its own ping role. Anybody can run `!seed browse` to look through the queue. The same channels are on the LFG page of this server's dashboard, /botdashboard, and /server home.