Features

Shop and items

In most bots a shop item is a name and a price. In Guaca an item is a small program: requirements that decide who may buy or use it, and an ordered list of actions that run when they do.

Requirements

  • · has the Players role
  • · net worth ≥ 5,000

On purchase

  • · give Avocado Green
  • · reply “Looking fresh!”

7 days later

  • · Avocado Green comes off
One item, three parts: who may buy it, what happens when they do, and what undoes itself later.

Buying and using

  • /shop lists what is for sale, cheapest first. /buy pays from cash; if the money is in the bank, the reply says to /withdraw first.
  • An item can have limited stock, a per-member limit, and can be hidden from /shop while still existing.
  • Items that stay in the inventory show up in /inventory, with expiry times for anything temporary. Usable ones are spent with /use.

# economy

luig used /buy

Guaca APP Today at 13:30
You bought 1x 🥑 Avocado Green for 🥑 2,000.
Role granted: <@&200>
Expires in 7 days.
Cash
🥑 1,250
The reply to /buy for a seven-day colour role.

Requirements

Checked at the moment someone tries to buy or use the item. All of an item’s requirements must pass.

RequirementPasses when
Has a roleMust have all of these roles, at least one of them, or none of them.
Is wealthy enoughNet worth of at least an amount (cash + bank + farm reserve).
Owns another itemMust own a number of another item, or must not own it at all.

Actions

Nine kinds, run in the order you arrange them. Each one fires on purchase, on /use, or both.

ActionWhat it does
RespondReplies with a message you write.
Give rolesGrants one or more roles, optionally for a set time.
Remove rolesTakes roles away, optionally for a set time.
PayAdds money to the member’s balance.
ChargeTakes money from the member’s balance.
Give itemsHands over another item, optionally for a set time.
Take itemsConsumes another item the member owns.
Streak freezeAdds freezes that protect a /daily streak.
Clear game cooldownsResets the waiting time on every game.

Timed reversal

Give a role or item action a duration (for example 7 days) and the opposite is scheduled at the moment of purchase: the role comes off, or the item is taken back, on time, even if the member never opens Discord again.

That is what keeps a shop useful in month three. A permanent role drains currency once; a seven-day role drains it for as long as people want to keep wearing it.

Colours and exclusive groups

Put several role items in the same exclusive group, such as name colours, and a member can own many but wear only one at a time. /color switches between the ones they own for free, without buying again.

Making items

Dashboard → Shop items is the full editor: name, description, emoji, price, stock, per-member limit, exclusive group, whether it stays in the inventory, whether it can be used, whether it is listed, and every requirement and action.

/item create is the quick version from Discord: a name, a price, and at most one role, with an optional duration, stock, limit, emoji and description. Anything more goes through the dashboard.

New servers start with two items: a Streak Shield (3,000) that absorbs one missed /daily, and an Extra Chip (400) that clears your game cooldowns when used. They are named in the server’s language, and you can edit or delete them.
A role action only works if the role sits below Guaca’s own role. See role order.

Commands