# Detailed Advanced Configuration

When deploying the game, click "▸ Advanced Configuration" to expand the advanced settings panel. This chapter explains in detail the meaning and recommended values of each configuration item.

***

## Randomness source

The random number source determines how the game generates random numbers to decide win or loss.

| Mode           | How it works                                                                                       | Security                                                                     | Available networks      |
| -------------- | -------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ----------------------- |
| **Oracle**     | The oracle service generates random numbers and ensures fairness through a commit-reveal mechanism | <p>⭐⭐⭐⭐⭐ </p><p>Verifiable fairness</p>                                      | BSC, Base, HyperEVM     |
| **Prevrandao** | Use the Ethereum block's prevrandao value as the random number                                     | <p>⭐⭐⭐⭐⭐</p><p>The Ethereum mainnet is extremely difficult to manipulate</p> | Currently Ethereum only |

{% hint style="info" %}
**Oracle mode is recommended**. Oracle mode provides verifiably fair random numbers, and players can verify each result on-chain. For a detailed comparison, please refer to[Oracle vs Prevrandao](/dapp.meme-en/technical-overview/oracle-vs-prevrandao.md).
{% endhint %}

### Special notes for the Ethereum network

On the Ethereum network, Oracle mode is not yet available, so Prevrandao mode is used by default. In Prevrandao mode, "EOA only" will be forced on to enhance security.

***

## EOA only allowed

| Settings             | Description                                                                                         |
| -------------------- | --------------------------------------------------------------------------------------------------- |
| **Enabled**(default) | Only externally owned accounts (wallet addresses) can place bets; smart contracts cannot place bets |
| **Off**              | Allow smart contracts to call the betting function                                                  |

{% hint style="warning" %}
**Forced on in Prevrandao mode**. Because a smart contract can read the prevrandao value and decide whether to place a bet within the same transaction, this would break game fairness.
{% endhint %}

***

## Bet limits

| Parameter       | Default value | Description                          |
| --------------- | ------------- | ------------------------------------ |
| **Minimum bet** | 1             | Minimum amount per bet (token units) |
| **Maximum bet** | 999999999     | Maximum amount per bet (token units) |

* The minimum bet must be less than the maximum bet
* All amounts must be less than the pool cap

{% hint style="info" %}
**Recommendation**: Set a reasonable betting range based on your token's value. For example, if the token price is $0.001, setting the minimum bet to 100 (about $0.1) is reasonable.
{% endhint %}

***

## Stake limits

| Parameter         | Default value | Description                            |
| ----------------- | ------------- | -------------------------------------- |
| **Minimum stake** | 10            | Minimum amount per stake (token units) |
| **Maximum stake** | 999999999     | Maximum amount per stake (token units) |

* The minimum stake must be less than the maximum stake
* All amounts must be less than the pool cap

***

## Pool cap

| Parameter    | Default value | Description                                    |
| ------------ | ------------- | ---------------------------------------------- |
| **Pool cap** | 9999999999    | Maximum total token amount allowed in the pool |

The pool cap limits the total amount of tokens deposited by all shareholders. When the pool reaches the cap, new stake operations will be rejected.

{% hint style="info" %}
**Recommendation**: Setting a reasonable cap can control the game's risk exposure. The larger the cap, the higher the single-bet maximum the game can withstand.
{% endhint %}

***

## Maximum number of shareholders

| Parameter                          | Default value | Range   |
| ---------------------------------- | ------------- | ------- |
| **Maximum number of shareholders** | 100           | 1 - 100 |

Limits the number of shareholders that can stake at the same time. Once the limit is reached, new users cannot stake unless an existing shareholder exits.

***

## Owner fee rate

| Parameter          | Default value | Range   |
| ------------------ | ------------- | ------- |
| **Owner fee rate** | 1%            | 0% - 9% |

The fee rate taken from each bet, owned by the game creator (owner).

* The fee rate is calculated in basis points (BPS), 1% = 100 BPS
* No more than 9% (as specified by the contract code)
* After the game is decentralized, the fee is automatically set to 0%

{% hint style="info" %}
**Recommendation**: Setting the fee to 1-3% is reasonable. Too high a fee will reduce player participation.
{% endhint %}

***

## Decentralized mode

| Settings         | Description                                                                                                             |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------- |
| **Off**(default) | The game has an administrator (owner) who can manage game parameters                                                    |
| **Enabled**      | ⚠️ **Irreversible!** Set the owner to the zero address (burn address) and permanently give up administrative privileges |

After enabling decentralized mode:

* The owner fee is automatically set to 0%
* No further administrative operations can be performed (withdrawals, shareholder removal, parameter adjustments, etc.)
* The game will run entirely automatically by smart contracts and be fully decentralized
* **This action cannot be undone**

{% hint style="danger" %}
**⚠️ Irreversible operation**: After enabling decentralized mode, you will permanently lose administrative control of the game. Please decide only after fully understanding the consequences. You can also decentralize at any time after deployment through[management panel](/dapp.meme-en/manage-games.md).
{% endhint %}

***

## Summary of configuration recommendations

| Scenario                           | Recommended configuration                          |
| ---------------------------------- | -------------------------------------------------- |
| **First deployment for beginners** | Use all default values                             |
| **Officially operated game**       | Oracle mode + reasonable betting limits + 1-3% fee |
| **Community-trusted game**         | Decentralize after deployment + 0% fee             |
| **High-value token game**          | Set lower pool and betting caps                    |


---

# Agent Instructions: 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://docs.dapp.meme/dapp.meme-en/create-a-game/detailed-advanced-configuration.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.
