GameGrid

Economy, Linking and Chat Bridge Troubleshooting

The shop is empty, /link does nothing, the item never arrived, the chat channel stays quiet, the map is blank. What each one actually means and what fixes it.

Start here

Run /economy-setup in Discord. It makes no changes; it reports what actually exists — the currency, how many shop items there are, how many players have linked, whether auto-earn is on — and lists what is missing. Most problems in this article are visible in that one reply.

Then check the obvious two: is the server running, and is the player in question actually connected to it? Almost everything in the economy needs both.

Related reading: Server Economy Overview, Linking Discord Accounts, Purchases, Delivery and Refunds.

/shop says there is nothing in the shop

Nothing is for sale until it has a price. Loading the item catalog is not the same as putting things in the shop.

Open Economy → Shop, use the In Shop quick filter, and see whether anything is listed. If not, type a price into an item's Price box and press Enter.

If the whole table is empty, click Scan Game Items — and start the server first, because every game gives a better list from a running server.

If items are priced but /shop still shows nothing, check you are asking about the right server: /shop server-id:<id>, or set the channel or guild default with /config.

Check the item's Enabled tick. An unticked item keeps its price and disappears from the shop.

A player typed !link and nothing happened

This is the most common problem in the economy, and the game gives no feedback either way, so it always looks like silence.

/link alone links nothing — it only issues a code. The player has to type !link and that code in the game's own chat, on the server, within ten minutes.

The message must be exactly !link then the code and nothing else. !link ABC1234 thanks does not match. Capitals do not matter.

They must be connected to the game server when they type it. Typing it into Discord, the panel console or a bridged channel does nothing.

Test whether the platform can see ordinary chat at all: link a channel with /chat-link and have somebody talk in game, or open the Chat tab on the Game Tools page for Palworld and Valheim. If ordinary chat does not arrive, !link cannot either — and that is the real fault.

Per game: 7 Days to Die needs Telnet enabled in Settings. Minecraft needs the server to have been started at least once. Palworld needs UE4SS and PalDefender installed and a restart afterwards. Valheim needs the server started at least once, and with only one player online it needs the Capture Chat With One Player Online setting left on.

If it still will not take, link the player by hand: Economy → Links → + Add Manually, with their Discord user ID and their exact in-game name. A manual link works exactly like a code link.

A purchase went through but the item never arrived

Open Economy → Transactions and read the Delivery column on that row.

Hourglass (pending) for more than a few seconds, or a dash — the delivery is being retried automatically. That happens when the player is offline, the server is stopped or restarting, or the host was briefly unreachable. Get the player onto a running server and it lands. The platform keeps trying for 24 hours before giving up.

Red cross (failed) — it has either given up or hit something retrying cannot fix. Fix the cause, then use the Retry button on that row.

Green tick but nothing in the inventory — check the ground at the player's feet. On Minecraft, a full inventory means the item is dropped rather than not given. On 7 Days to Die the tick means the command was sent, not that it was confirmed, so check the item id is one the server actually has.

The usual causes of a hard failure: an item id the server does not have (re-scan the catalog and re-price it), a link that names no usable player (remove it and link again), a quantity the game itself refuses, and — on Palworld — PalDefender not installed or not restarted into.

If you cannot make it land, Refund the transaction. That credits the coins back. It does not take the item out of the player's inventory if it did eventually arrive, so check before refunding.

Every purchase on one server is failing

That is a server-level cause, not a per-player one.

Is the server running? Nothing delivers to a stopped server on any game.

Palworld: is UE4SS and PalDefender installed, and has the server been restarted since installing? Check Game Tools → UE4SS.

Valheim: is the bridge reachable? Open Game Tools — if it is not, the page says which of the reasons it is and every one of them is fixed by the next restart.

Minecraft: has the server been restarted since it was created? RCON is written into the server config at every start, and an instance that has never started has no command channel.

7 Days to Die: is Telnet enabled in Settings?

Did you change games on this server? A shop is built for one game's item ids and they do not carry over. Re-scan and re-price.

Renaming the currency does not stick

Use /economy-config currency-name:Gold in Discord. Only the person who ran /setup and the Discord server owner can run it.

The Currency Settings card on the Economy Overview tab renames it too. It reads the stored name back and only says "Currency renamed" once the new name is actually saved; if the server did not store it, the card says that nothing was changed.

The name is capped at 32 characters.

Auto-earn is on and nobody is earning

Work through these in order — the first two are the usual answer.

Has the player linked? Auto-earn only ever pays into a wallet, and a wallet is created by a verified link. An unlinked player earns nothing and does not appear in the Wallets tab. Check Economy → Links.

Can your game pay that reward? A reward your game does not report will never pay, whatever the number says. Palworld reports no kills or deaths; Valheim reports no kills or level. The panel and /economy-earn now hide the ones your game cannot pay — if a reward is missing from your settings, that is why. Full table: Per-game economy support.

Is it Windrose? Windrose links by character name rather than by a code typed in game — the player fills in the character option on /link and then joins the server. Windrose Plus also has to be installed, because it is what publishes the player list the link is confirmed against. See Windrose Economy and Shop.

Has the daily cap been hit? Auto-earn stops for the rest of the day at the maximum daily earn cap. Awards you make by hand are not counted against it.

Is the server actually reachable? Kills, deaths, level and Minecraft playtime are read from the running server every minute — over Telnet on 7 Days to Die, over RCON on Minecraft, over the REST API on Palworld. A stopped or unreachable server credits nothing, and nothing is lost: these are counters, so the total is still there when it comes back.

Waiting on the first hour? Playtime pays per whole hour. A player 40 minutes in has earned nothing yet.

Brand new to the server? A player's first reading pays nothing by design — it records where they are so the platform does not pay out their entire history at once.

Expecting event participation? Only Valheim pays it today. The other games report no event participation, so on them the reward never pays; the setting is kept for when they do.

Use /award — by hand, or from your own tooling through the Customer API — for anything the above does not cover. See Wallets, Awards and Auto-Earn.

A bot command answers with a permission or scope error

There are two separate gates and the message tells you which one you hit.

"You do not have permission" is the Discord side: your role's bot access level. /config role <role> Read Only covers players; the admin commands need Full Access. /economy-setup and /economy-config answer only to the person who ran /setup and the Discord server owner, whatever their role.

A scope error is the API key side. Economy commands need economy:read and economy:write; the admin ones need economy:admin. Scopes cannot be added to an existing key — create a new one with the right scopes and re-run /setup.

"Not set up. Run /setup first." means no API key is linked to this Discord server at all.

If a command answers about the wrong server, or says it does not know which server you mean, set one: /config default-server, or bind the channel with /config channel-server.

The Discord chat channel stays empty

Re-run /chat-link on the same channel. It re-checks the server and its answer usually names the problem outright.

The game-side requirements are the same as for !link, in the section above — the chat bridge and account linking read the same feed.

If in-game chat reaches Discord but Discord messages never reach the game, the game-to-Discord half working proves the link is fine; raise the other direction with support.

If the channel was deleted, or the bot lost permission to post in it, the bridge stops trying. Re-run /chat-link on a channel the bot can post in.

Do not run /chat-link and the API webhook bridge into the same channel — every message arrives twice.

The live map is blank

7 Days to Die — if the badge says OFF, click Enable Map Rendering. If it says ON (restart pending), restart the server; the setting is only read when the game starts. Tiles only exist where players have explored *since* rendering was turned on, so gaps next to a complete-looking in-game map are expected — travelling back through the area writes them.

Minecraft — the map reads the world's region files, so a world that has never been generated or explored has nothing to draw. Start the server once and have somebody move around. The panel names which of those it is.

Palworld — player markers come from Palworld's own API, so a stopped server shows none. Pals and base camps need the GameData API, which the map's own button switches on with a restart.

Valheim — a progress bar on a new world is normal; the world is being drawn once and cached. If the tools say the bridge is unreachable, the reason on screen is fixed by the next restart in every case.

Minecraft again — player markers need RCON, which the platform switches on at the next restart. Players in another dimension are listed beside the map rather than drawn on it, and a player whose position could not be read is listed as online with no position.