> For the complete documentation index, see [llms.txt](https://arckytech.gitbook.io/arckys-poke-mart-guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://arckytech.gitbook.io/arckys-poke-mart-guide/settings-and-setup-file.md).

# Settings and Setup file

### Settings

* [Item Categories](/arckys-poke-mart-guide/settings-and-setup-file/item-categories.md)
* [Badges for Items](/arckys-poke-mart-guide/settings-and-setup-file/badges-for-items.md)
* [Discounts](/arckys-poke-mart-guide/settings-and-setup-file/discounts.md)
* [Bonus Items](/arckys-poke-mart-guide/settings-and-setup-file/bonus-items.md)
* [Item Limits](/arckys-poke-mart-guide/settings-and-setup-file/item-limits.md)
* [Seller Classes](/arckys-poke-mart-guide/settings-and-setup-file/speeches/seller-classes.md)

Since v1.4.0 giving each setting you want to use for a Mart of Shelf Event has changed a bit and it should be a lot easier now as the order you give the settings don't even matter anymore. (Except for the item list which should always come first.)

I'll explain the different possibilities of arguments you may give or not give to the mart command.

Using the example from [Setting up a Mart Event](/arckys-poke-mart-guide/setting-up-the-events/setting-up-a-mart-event.md).

```ruby
def pbSomeMart
  pbPokemonMart([
    :POKEBALL, :GREATBALL, :ULTRABALL,
    :ESCAPEROPE,
    :REPEL, :SUPERREPEL, :MAXREPEL,
    :GRASSMAIL, :FLAMEMAIL,
    :BUBBLEMAIL, :SPACEMAIL
  ])
end
```

Each individual argument is explained in it's respective Settings Page in this guide.

***

The first command we can add is a `speech: "string"` that let us use a [Seller Class](/arckys-poke-mart-guide/settings-and-setup-file/speeches/seller-classes.md).

```ruby
def pbSomeMart
  pbPokemonMart([
    :POKEBALL, :GREATBALL, :ULTRABALL,
    :ESCAPEROPE,
    :REPEL, :SUPERREPEL, :MAXREPEL,
    :GRASSMAIL, :FLAMEMAIL,
    :BUBBLEMAIL, :SPACEMAIL
  ], speech: "ProSeller")
end
```

The NPC will now use the speeches setup in ProSeller, again this is explained on the [Seller Classes](/arckys-poke-mart-guide/settings-and-setup-file/speeches/seller-classes.md) Page.

***

The second command we can add is a `useCat: Boolean` which is either `true` or `false` and let us either enable or disable the [Item Categories](/arckys-poke-mart-guide/settings-and-setup-file/item-categories.md).

```ruby
def pbSomeMart
  pbPokemonMart([
    :POKEBALL, :GREATBALL, :ULTRABALL,
    :ESCAPEROPE,
    :REPEL, :SUPERREPEL, :MAXREPEL,
    :GRASSMAIL, :FLAMEMAIL,
    :BUBBLEMAIL, :SPACEMAIL
  ], speech: "ProSeller", useCat: true)
end
```

***

The third command we can add is a `discount: Number` which refers to a Game Variable ID. This is explained on the [Discounts](/arckys-poke-mart-guide/settings-and-setup-file/discounts.md) page.

```ruby
def pbSomeMart
  pbPokemonMart([
    :POKEBALL, :GREATBALL, :ULTRABALL,
    :ESCAPEROPE,
    :REPEL, :SUPERREPEL, :MAXREPEL,
    :GRASSMAIL, :FLAMEMAIL,
    :BUBBLEMAIL, :SPACEMAIL
  ], speech: "ProSeller", useCat: true, discount: 26)
end
```

***

The fourth (new) command we can add is another `currency: "string"` to set the Currency the mart should use. The current possible values are: `"money", "gold", "coins", "battle points" and "bp"` (with of course **money and gold** being the same as well as **battle points and bp**).

```ruby
def pbSomeMart
  pbPokemonMart([
    :POKEBALL, :GREATBALL, :ULTRABALL,
    :ESCAPEROPE,
    :REPEL, :SUPERREPEL, :MAXREPEL,
    :GRASSMAIL, :FLAMEMAIL,
    :BUBBLEMAIL, :SPACEMAIL
  ], speech: "ProSeller", useCat: true, discount: 26, currency: "coins")
end
```

***

The fifth command we can add is `cantSell: Boolean` to disable Selling. This is disabled by default.

```ruby
def pbSomeMart
  pbPokemonMart([
    :POKEBALL, :GREATBALL, :ULTRABALL,
    :ESCAPEROPE,
    :REPEL, :SUPERREPEL, :MAXREPEL,
    :GRASSMAIL, :FLAMEMAIL,
    :BUBBLEMAIL, :SPACEMAIL
  ], speech: "ProSeller", useCat: true, discount: 26, currency: "money", cantSell: true)
end
```

***

The sixth command we can add is `billEnd: Boolean` which is used to make the script not ask for anything else after paying the bill. This is disabled by default (So after paying the bill, the script will use the `MenuReturnText` which is `"Is there anything else I can do for you?"` by default).

```ruby
def pbSomeMart
  pbPokemonMart([
    :POKEBALL, :GREATBALL, :ULTRABALL,
    :ESCAPEROPE,
    :REPEL, :SUPERREPEL, :MAXREPEL,
    :GRASSMAIL, :FLAMEMAIL,
    :BUBBLEMAIL, :SPACEMAIL
  ], speech: "ProSeller", useCat: true, discount: 26, currency: "money", cantSell: true, billEnd: true)
end
```

***

The seventh command we cann is `random: [String, Number]` which is used to enable random stock generating from the given stock array. The first parameter can either be daily, 2daily or weekly and is the time interval for the stock to change to a new random selection of items. The second parameter is the amount of items to be selected.

```ruby
def pbSomeMart
  pbPokemonMart([
    :POKEBALL, :GREATBALL, :ULTRABALL,
    :ESCAPEROPE,
    :REPEL, :SUPERREPEL, :MAXREPEL,
    :GRASSMAIL, :FLAMEMAIL,
    :BUBBLEMAIL, :SPACEMAIL
  ], speech: "ProSeller", useCat: true, discount: 26, currency: "money", cantSell: true, billEnd: true, random: ["daily", 5])
end
```

***

{% hint style="info" %}
The following settings can't be used for a shelf event: `useCat` , `cantSell` , `billEnd` and `random`. All the other settings are exactly the same as well as how to apply them.&#x20;
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://arckytech.gitbook.io/arckys-poke-mart-guide/settings-and-setup-file.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
