Mods / Discord Pigeon To Ingame
- Tags:
- Author:
- SiiMeR
- Side:
- Both
- Created:
- May 24th at 7:02 PM
- Last modified:
- Jun 9th at 8:23 PM
- Downloads:
- 1497
-
Recommended download (for Vintage Story 1.22.0-pre.1 - 1.22.3):
discordpigeontoingame_2.2.0.zip 1-click install
Allows players to send in-game messages to each other directly from Discord. Messages are composed through a Discord slash command and delivered as signed parchments, carried by pigeon, so the recipient must be standing somewhere with a clear view of the sky.
This mod is intended for roleplay and community servers that want to reduce metagaming and powergaming on Discord by giving players a proper in-game alternative. It increases the amount of information that lives within the world itself rather than outside it.
Features
- Send a pigeon from Discord to any linked player on the server. Pigeons are delivered as signed parchments after a configurable delay (
DeliveryDelayMinutes, default 5 minutes) - Pigeons are delivered directly into your inventory. If you have no room, a chat notification will let you know. Step outside and run
/discordpigeon receiveonce you've cleared some space - You can only send a pigeon once every
PigeonCooldownMinutes(default 30 minutes). Server admins can grant shorter cooldowns to specific Discord roles viaPigeonCooldownMinutesPerRoleOverride - Pigeons can only be delivered if the recipient has a clear view of the sky. If they are indoors or underground they will see: "You feel like a pigeon is trying to find you but cannot see you from the sky." Once outside, the pigeon can be claimed with
/discordpigeon receive
- When a pigeon arrives, a sound plays for the recipient and nearby players
- All sent pigeons are recorded in the server logs. Optionally they can also be forwarded to a Discord channel for staff oversight (
AuditChannelId) - Players link their Discord account to their in-game name once using
/pigeon link, optionally restricted to a specific Discord role (LinkRoleId). From then on, they can send and receive pigeons. - After linking, players can also view their sent pigeon history with
/pigeon list. Staff (users who have theModerationRoleId) can also view the history of other players (both sent and received pigeons in this case) using/pigeon list <Discord User> - Staff can also link other players through the
/pigeon link username:<VS Username> user:<Discord User>command
Commands
All commands are Discord slash commands.
/pigeon link <username>- link your Discord account to your Vintage Story player name/pigeon send- send a pigeon to a player, either by Discord mention or by Vintage Story username/pigeon list (page)- view your sent and received pigeon history. 10 entries per page are shown to not run into rate limiting issues./pigeon list [user] (page)- (moderation role only) view another player's pigeon history
Setup
This mod requires you to create and host your own Discord bot. It cannot work without one.
- Go to the Discord Developer Portal and create a new application
- Under Bot, create a bot and copy the token
- Under OAuth2, generate an invite URL with the
botandapplications.commandsscopes and theSend MessagesandUse Slash Commandspermissions, then invite it to your server - Install the mod on your server and start it once to generate the config file
- Fill in the config file (see below) and restart
To copy Discord IDs, enable Developer Mode in Discord under Settings → Advanced → Developer Mode. You can then right-click any server, channel, role, or user and select Copy ID.
- Guild ID - right-click your server name and select Copy Server ID
- Channel ID - right-click any text channel and select Copy Channel ID
- Role ID - go to Server Settings → Roles, right-click the role and select Copy Role ID
Configuration
The config file is located at VintagestoryData/ModConfig/discordpigeontoingame.json.
{ "BotToken": "YOUR_TOKEN", // The token from Setup step 2. "GuildId": 719244890449510462, // Your Discord server ID (a.k.a Guild ID). "AuditChannelId": 719244890449510465, // The channel ID where the audit log is posted every time a pigeon is sent. "LinkRoleId": 1233511716722315358, // The role ID required to use the /pigeons link command. If you want members to be able to self-onboard, set this to something everyone has, like a Member role. "ModerationRoleId": 1233511716722315358, // The role ID required to use the /pigeons list <username> command. "DeliveryDelayMinutes": 5, // The amount of IRL minutes it takes for the pigeon to reach the recipient. "PigeonCooldownMinutes": 30, // The amount of IRL minutes it takes for a new pigeon to be able to be sent (per-person). This is shown in Discord as well. "DmFallbackEnabled": false, // If late delivery of pigeon message contents in DMs is enabled (useful in cases players can't log on for extended periods of time) "DmFallbackDelayMinutes": 240, // How many minutes after sending will the late delivery take place "PigeonMessageCharacterLimit": 500, // Allows you to make messages limited in length. "CanPigeonSelf": false, // Allows players to mark themselves as a recipient. "PigeonCooldownMinutesPerRoleOverride": { // Allows you to define different cooldowns per role (for example if you wanted to make Nobles and Rulers be able to send a pigeon every 10 minutes). If no match here, the default is used. 1233511716722315358: 10, // Discord Role ID to minutes mapping 1233511716722315358: 20 }, "PlayerMappings": { // Discord ID to Vintage Story UID mapping. Will be populated by /pigeons link command. "225999245147242506": "g1U2RO0yyLzWikUwC6Jmuzw2" }}| Mod Version | Mod Identifier | For Game version | Downloads | Released | Changelog | Download | 1-click mod install* |
|---|---|---|---|---|---|---|---|
| 2.2.0 | discordpigeontoingame | 59 | Jun 9th at 8:21 PM | discordpigeontoingame_2.2.0.zip | 1-click install | ||
|
Optional setting DmFallbackEnabled added to allow players to receive late delivery of contents of pigeons in DMs; Show pigeon cooldown before sending | |||||||
| 2.0.0 | discordpigeontoingame | 590 | May 24th at 8:11 PM | discordpigeontoingame_2.0.0.zip | 1-click install | ||
|
* 1.22 | |||||||
| 1.2.0 | discordpigeontoingame | 558 | Jun 9th at 8:18 PM | discordpigeontoingame_1.2.0.zip | 1-click install | ||
|
Optional setting DmFallbackEnabled added to allow players to receive late delivery of pigeons in DMs; Show pigeon cooldown before sending | |||||||
| 1.1.0 | discordpigeontoingame | 259 | May 31st at 6:12 PM | discordpigeontoingame_1.1.0.zip | 1-click install | ||
|
Send a DM to user to notify them of pigeon in case they are not able to receive it. | |||||||
| 1.0.1 | discordpigeontoingame | 11 | May 29th at 3:56 PM | discordpigeontoingame_1.0.1.zip | 1-click install | ||
|
ILRepack all the dependencies into one so that the Discord.NET deps wouldn't mess with the native game DLLs | |||||||
| 1.0.0 | discordpigeontoingame | 20 | May 24th at 8:02 PM | discordpigeontoingame_1.0.0.zip | 1-click install | ||
|
First release | |||||||


Cool mod does a pigeon as an entity deliver it? if so pls add a short video would be epic ty
Nope not yet, this is a magical mod that spawns a parchment in your hand when a discord command is ran.
But I got something cooking :P
Champ! Looking forward to it!
SiiMeR I’ve dreamed of someone making a mod like this, but it’s missing one feature - a proper global chat instead of only private messages.
Here’s how I imagine it working:
A player creates a separate chat, for example serverchat. All in-game global chat messages get mirrored into that channel.
Then, if a Discord user links their game account to Discord - for example by joining the game and typing /link discord - the player receives a code, which they then paste into the Discord chat. After that, the accounts are linked.
Now the player can type messages directly into the Discord serverchat, and those messages get sent straight into the in-game global chat.
At the same time, if the player types /m [playername] [text], the message would instead be sent as a private message.
If you implement this, I will literally pray in your name :D
Whispering and global chat already exists in this mod https://mods.vintagestory.at/theessentials
Damn! Thanks!!)
This looks really cool!