Skip to main content

Selling

Information

The selling module offers a way for players to sell their items and dinos trough your discord server. The true power of this module is that it allows you to create a marketplace for your players to trade their items and dinos with each other.

When a player uses the /sell command it creates a sale embed in the sales channel where other players can react to by clicking on the button below. When someone clicks on the button the module will create a private negotiation channel where the 2 players can negotiate the sale.

Once both players have completed the trade the seller can click on the Complete Sale button in the private channel to complete the sale. The module will then remove the sale embed from the sales channel and the private negotiation channel. This way you can keep your sales channel clean and only show active sales.

If the buyer or seller does not complete the sale or cancel the sale the negotiation channel will be deleted and the sale will stay available in the sales channel.

Command(s)

<> Required () Optional

/sell <item> <amount> <price> <map> (info) (image) - Creates a sale message in the sales channel.

Configuration

The configuration options are located in the config.js file under the selling section inside the modules object.

Options

config.js → modules → selling
selling: {
enabled: true, // Whether or not the selling module will be enabled.
channel_id: '1145295241352597575', // The ID of the channel where the selling messages will be sent.
category_id: '1139515434522116179', // The ID of the category where the negotiation channels will be created.
negotiation_duration_hours: 1, // The amount of hours the negotiation channels will last.
embed_title: '{username} is selling!', // The title of the selling embed.
embed_description: 'New item has been listed', // The description of the selling embed.
embed_footer_text: 'Selling by {username}', // The footer of the selling embed.
embed_footer_icon: '', // The footer icon of the report embed.
embed_author_name: '', // The author name of the report embed.
embed_author_url: '', // The author url of the report embed.
embed_author_icon: '', // The author icon of the report embed.
embed_color: '#77B255', // The color of the selling embed.
embed_timestamp: true, // Whether or not the selling embed will have a timestamp.
embed_url: '', // The url of the responder embed
embed_fields: [
// To delete all fields just leave the array empty. []
{
name: 'Item', // The name of the field.
value: '```{item}```', // The value of the field.
inline: false, // Whether or not the field will be inline.
},
{
name: 'Amount', // The name of the field.
value: '```{amount}```', // The value of the field.
inline: true, // Whether or not the field will be inline.
},
{
name: 'Price', // The name of the field.
value: '```{price}```', // The value of the field.
inline: true, // Whether or not the field will be inline.
},
{
name: 'Map', // The name of the field.
value: '```{map}```', // The value of the field.
inline: true, // Whether or not the field will be inline.
},
{
name: 'Info', // The name of the field.
value: '```{info}```', // The value of the field.
inline: false, // Whether or not the field will be inline.
},
],
}
Additional information

Embed fields → The embed fields are a list of fields. Each field has its own configuration options. To remove all the fields you can set the embed_fields option to an empty array ([]). To add more fields you can copy the field object and change the information and place it in the array.

Placeholders

This is a list of all the placeholders that you can use in the configuration shown above.

PlaceholderDescription
{user}The user who created the sale.
{username}The username of the user who created the sale.
{userpfp}The profile picture of the user who created the sale.
{item}The item that is being sold.
{amount}The amount of items that are being sold.
{price}The price of the item.
{map}The map where the item is located.
{info}The info of the item.

Translations

The translations are located in the translation.js file. The translations are prefixed with module_selling_.

translation.js
module_selling_command_name: 'sell',
module_selling_command_description: 'Sell an item or dino',
module_selling_command_option_item_name: 'item',
module_selling_command_option_item_description: 'The item or dino that is being sold',
module_selling_command_option_amount_name: 'amount',
module_selling_command_option_amount_description: 'The amount of the item or dino that is being sold',
module_selling_command_option_price_name: 'price',
module_selling_command_option_price_description: 'The price of the item or dino that is being sold',
module_selling_command_option_map_name: 'map',
module_selling_command_option_map_description: 'The map where the item or dino that is being sold is located',
module_selling_command_option_info_name: 'info',
module_selling_command_option_info_description: 'Additional info about the item or dino that is being sold',
module_selling_command_option_image_name: 'image',
module_selling_command_option_image_description: 'The image of the item or dino that is being sold',
module_selling_invalid_channel: '❌ Could not find the selling channel!',
module_selling_no_info: 'No info provided',
module_selling_button_buy: 'Buy Item/Dino',
module_selling_success: '✅ Successfully created sale in {channel}',
module_selling_deleted: '❌ This sale no longer exists',
module_selling_only_owner_can_decline: '❌ Only the owner of the sale can decline the sale',
module_selling_only_owner_can_accept: '❌ Only the owner of the sale can accept the sale',
module_selling_cant_buy_own: "❌ You cannot buy your own items or dino's",
module_selling_already_negotiating: '❌ This sale is already in negotiation.',
module_selling_negotiation_channel_topic: 'Negotiation for sale case {id}',
module_selling_negotiation_embed_title: 'Sales Negotiation',
module_selling_negotiation_embed_description:
'This channel is for negotiating the sale of **{item}**.\n\n**Sale Information:**\nItem: `{item}`\nAmount: `{amount}`\nPrice: `{price}`\nMap: `{map}`\nInfo: `{info}`\nImage: {image}\n\nPlease use this channel to discuss the details of the sale. Once you have come to an agreement, please use the buttons below to accept or decline the sale.\n\nIf you have any questions, please contact a member of staff.',
module_selling_negotiation_embed_footer: 'Sale ID: {id}',
module_selling_negotiation_button_complete: 'Complete Sale',
module_selling_negotiation_button_decline: 'Decline Sale',
module_selling_claimed: '✅ Successfully claimed the sale, you can now negotiate in {channel}',
module_selling_completed_embed_title: 'Sale completed',
module_selling_completed_embed_description: 'The sale has been completed by {user}.\n\nThis channel will be deleted in {time}.',
module_selling_completed_embed_footer: 'Sale ID: {id} • Completed',
module_selling_completed_dm_embed_title: 'Sale completed',
module_selling_completed_dm_embed_description: 'Your sale has been completed by {user}. You can read the sale negotiation below.',
module_selling_completed_dm_embed_footer: 'Sale ID: {id} • Completed',
module_selling_declined_embed_title: 'Sale declined',
module_selling_declined_embed_description: 'The sale has been declined by {user}.\n\nThis channel will be deleted in {time}.',
module_selling_declined_embed_footer: 'Sale ID: {id} • Declined',
module_selling_declined_dm_embed_title: 'Sale declined',
module_selling_negotiation_deleting_embed_title: 'Sale Negotiation deleting!',
module_selling_negotiation_deleting_embed_description: 'Your sale negotiation channel will be deleted in {time}.',
module_selling_negotiation_deleting_embed_footer: 'This channel will be deleted in 10 seconds',
module_selling_negotiation_closing_embed_title: 'Sale Negotiation ending soon!',
module_selling_negotiation_closing_embed_description: 'Your sale negotiation channel is about to be deleted in {time}.',
module_selling_negotiation_closing_embed_footer: 'This channel will be deleted soon',

Showcase

Sale example message

Sale example message