> For the complete documentation index, see [llms.txt](https://wiki.apexcobblemon.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.apexcobblemon.com/features/battling/battle-factory.md).

# Battle Factory

{% columns %}
{% column width="58.333333333333336%" %}
Battle Factory is a Battle Frontier challenge built around temporary rental Pokémon. Your regular party is vaulted for the duration of each run, requiring you to build, scout, and improve a generated team while battling through consecutive NPC Trainers.
{% endcolumn %}

{% column width="41.666666666666664%" %}

<figure><img src="https://722257079-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDZYUul2mf9zcdDxeTpsK%2Fuploads%2FvJ6GnbADwUGFVYmJTRbd%2Fbattle_factory_gui.png?alt=media&amp;token=274898c6-9707-479d-b686-ce63f68c964e" alt="" width="308"><figcaption><p><em>Battle Factory menu</em></p></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

## Starting a Run

Travel to the Battle Factory NPC at `/warp battlefactory` to open the main menu. Before beginning, select a **Mode** and **Battle Format**.

You will then be presented with 6 randomly generated rental Pokémon from the current round's species pools. The number of Pokémon selected depends on the chosen format.

<table><thead><tr><th width="130" align="center">Format</th><th width="130" align="center">Rental Team</th><th width="130" align="center">Opponent Team</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center">Singles</td><td align="center">Choose 3</td><td align="center">3 Pokémon</td><td align="center">Standard one-player Single Battles</td></tr><tr><td align="center">Doubles</td><td align="center">Choose 4</td><td align="center">4 Pokémon</td><td align="center">Standard one-player Double Battles</td></tr><tr><td align="center">Multi</td><td align="center">Each player chooses 2</td><td align="center">4 Pokémon</td><td align="center">Two players battle together, each controlling their own rentals</td></tr></tbody></table>

## How Runs Work

Each round consists of 7 consecutive Trainer battles. Opposing teams are randomly generated from the same tiered species pools as your available rentals, ensuring both sides have access to Pokémon of a similar strength.

Before each battle, the Factory Analyst reveals limited information about the opposing team. Scouting information becomes less specific during later rounds as the challenge increases.

After each victory, your rental team is fully healed and you may choose one of the following options:

* **Continue:** Advance to the next battle and optionally trade one rental Pokémon.
* **Rest:** Pause the run for up to 3 days. Resuming the run refreshes the 3-day storage period.
* **Retire:** End the run and keep all rewards earned during the streak.

Losing a battle immediately ends the run and locks in your final Battle Point and reward payout. Every 7th victory completes the current round and advances the run to the next difficulty level.

Opponent skill also increases with each round. Early-round Trainers play loosely, while later Trainers will switch, predict, and punish mistakes. Factory Heads are more skilled than the Trainers in the surrounding rounds, and Infinite Mode opponents continue from where Standard Mode leaves off.

* After a loss, a **20 minute** cooldown applies before a new run can begin.
* After completing a run, a **60 minute** cooldown applies instead.
* If a battle fails to start or gets stuck, a battle restart is available once per round.

## Rental Pokémon

All rental Pokémon are generated specifically for the Battle Factory. Each Pokémon's moves, held item, ability, nature, and EV spread are generated from competitive **Random Battle** sets, and available species, IVs, and overall team strength improve as you advance through later rounds.

The following restrictions apply when teams are generated:

* The initial 6 rental options are always different species and cannot contain duplicate held items.
* Opposing teams cannot contain a species or held item already present on your current rental team.
* Rental options are selected from the same species pools available to the opponents in that round.
* In Multi Battles, Species Clause and Item Clause apply across both players' combined teams. The same held item may still appear once on each side of the battle.

## Opening Reroll

When the initial rental offer is generated, you may spend ![:battle\_point:](https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56)**5** to reroll one of the 6 available Pokémon. One reroll is available per run: only the selected slot is replaced, and this option is not available for later rental offers or trades.

## Trading Pokémon

After each victory, selecting **Continue** allows you to trade exactly one current rental Pokémon for one Pokémon used by the defeated Trainer.

The offered Pokémon's species is shown, but its ability and stat spread remain hidden until the trade is confirmed. In Multi Battles, each player independently receives one trade opportunity after the victory.

## Modes

### Standard Mode

{% columns %}
{% column width="58.333333333333336%" %}
Standard Mode is a fixed Level 50 challenge designed around gradual progression. All rental and opponent Pokémon are normalized to Level 50, regardless of their normal level or evolution stage.

Generated Pokémon use the same IV value across all 6 stats. IVs and available species pools improve each round, preventing the strongest Pokémon and Legendary-tier species from appearing too early.
{% endcolumn %}

{% column width="41.666666666666664%" %}

<table data-search="false"><thead><tr><th width="90" align="center">Round</th><th width="90" align="center">Total Wins</th><th width="90" align="center">IV in Each Stat</th></tr></thead><tbody><tr><td align="center">1</td><td align="center">7</td><td align="center">3</td></tr><tr><td align="center">2</td><td align="center">14</td><td align="center">6</td></tr><tr><td align="center">3</td><td align="center">21</td><td align="center">9</td></tr><tr><td align="center">4</td><td align="center">28</td><td align="center">12</td></tr><tr><td align="center">5</td><td align="center">35</td><td align="center">15</td></tr><tr><td align="center">6</td><td align="center">42</td><td align="center">21</td></tr><tr><td align="center">7</td><td align="center">49</td><td align="center">31</td></tr></tbody></table>
{% endcolumn %}
{% endcolumns %}

### **Factory Heads**

Factory Heads are special Trainers encountered at major milestones. Each Factory Head is drawn from **Roxanne**, **Brock**, **Roark**, and **Byron**, and is more skilled than the Trainers in the surrounding rounds.

<table><thead><tr><th width="100" align="center">Battle</th><th width="250" align="center">Reward</th><th align="center">Team Details</th></tr></thead><tbody><tr><td align="center">21</td><td align="center">Silver Knowledge Badge</td><td align="center">Uses the current round's species pools with 12 IVs in each stat</td></tr><tr><td align="center">49</td><td align="center">Gold Knowledge Badge</td><td align="center">Uses the current round's species pools with 31 IVs in each stat and may include Legendary Pokémon</td></tr></tbody></table>

The 49th battle is the final possible battle in Standard Mode. After completing Standard Mode, it becomes unavailable until the next monthly reset and Infinite Mode is unlocked for the remainder of the month.

### Infinite Mode

{% columns %}
{% column width="58.333333333333336%" %}
Infinite Mode is an endless Level 100 challenge that continues until you lose or retire. It can only be entered after completing Standard Mode during the current month.

Generated Pokémon use uniform IVs that increase each round until reaching 31 in every stat at round 12. A Factory Head is encountered every 21 victories, alternating between **Silver** and **Gold** Knowledge Badge rewards, with progressively stronger species pools and opponent skill as the streak increases. Factory Head Pokémon always have **31** IVs in every stat.

Species from the Legendary pool cannot appear on opposing teams before round **13** (victory **85**), and gradually become more common as the streak continues while always remaining rare.
{% endcolumn %}

{% column width="41.666666666666664%" %}

<table data-search="false"><thead><tr><th width="90" align="center">Round</th><th width="90" align="center">Total Wins</th><th width="90" align="center">IV in Each Stat</th></tr></thead><tbody><tr><td align="center">1</td><td align="center">7</td><td align="center">3</td></tr><tr><td align="center">2</td><td align="center">14</td><td align="center">6</td></tr><tr><td align="center">3</td><td align="center">21</td><td align="center">9</td></tr><tr><td align="center">4</td><td align="center">28</td><td align="center">12</td></tr><tr><td align="center">5</td><td align="center">35</td><td align="center">15</td></tr><tr><td align="center">6</td><td align="center">42</td><td align="center">18</td></tr><tr><td align="center">7</td><td align="center">49</td><td align="center">21</td></tr><tr><td align="center">8</td><td align="center">56</td><td align="center">24</td></tr><tr><td align="center">9</td><td align="center">63</td><td align="center">27</td></tr><tr><td align="center">10</td><td align="center">70</td><td align="center">29</td></tr><tr><td align="center">11</td><td align="center">77</td><td align="center">30</td></tr><tr><td align="center">12+</td><td align="center">84+</td><td align="center">31</td></tr></tbody></table>
{% endcolumn %}
{% endcolumns %}

## Species Pools

Rental and opponent teams are generated from 4 progressively stronger species pools, composed by Smogon tier. Later pools become available as the current mode and round allow.

<table><thead><tr><th width="299" align="center">Pool</th><th align="center">Composition</th></tr></thead><tbody><tr><td align="center">Easy</td><td align="center">RU species</td></tr><tr><td align="center">Medium</td><td align="center">RUBL and UU species</td></tr><tr><td align="center">Hard</td><td align="center">UUBL and OU species</td></tr><tr><td align="center">Legendary</td><td align="center">Uber species, including Legendary Pokémon</td></tr></tbody></table>

In Standard Mode, each round draws from the pools using the following weights:

<table data-search="false"><thead><tr><th width="149" align="center">Round</th><th width="149" align="center">Easy</th><th align="center">Medium</th><th align="center">Hard</th><th align="center">Legendary</th></tr></thead><tbody><tr><td align="center">1</td><td align="center">100%</td><td align="center">-</td><td align="center">-</td><td align="center">-</td></tr><tr><td align="center">2</td><td align="center">80%</td><td align="center">20%</td><td align="center">-</td><td align="center">-</td></tr><tr><td align="center">3</td><td align="center">55%</td><td align="center">40%</td><td align="center">5%</td><td align="center">-</td></tr><tr><td align="center">4</td><td align="center">30%</td><td align="center">55%</td><td align="center">15%</td><td align="center">-</td></tr><tr><td align="center">5</td><td align="center">10%</td><td align="center">60%</td><td align="center">30%</td><td align="center">-</td></tr><tr><td align="center">6</td><td align="center">-</td><td align="center">50%</td><td align="center">50%</td><td align="center">-</td></tr><tr><td align="center">7</td><td align="center">-</td><td align="center">15%</td><td align="center">75%</td><td align="center">10%</td></tr></tbody></table>

In Infinite Mode, the pool weights shift continuously as the streak increases: Easy species fade out after the first rounds, Hard species are introduced from round **4**, and Legendary pool species cannot appear before round **13**.

## Scouting

The Factory Analyst provides information about the next opposing team before each battle. A round represents a set of 7 battles, beginning with Round 1.

<table><thead><tr><th width="187" align="center">Round</th><th align="center">Single Battle</th><th align="center">Double Battle</th><th align="center">Multi Battle</th></tr></thead><tbody><tr><td align="center">1</td><td align="center">Names of all 3 opponents</td><td align="center">Names of all 4 opponents</td><td align="center">Names of all 4 opponents</td></tr><tr><td align="center">2</td><td align="center">Names of the first 2 opponents</td><td align="center">Names of both lead Pokémon</td><td align="center">Names of both lead Pokémon</td></tr><tr><td align="center">3</td><td align="center">Lead Pokémon's name and first move</td><td align="center">Right-most lead's name and first move</td><td align="center">First move of both lead Pokémon</td></tr><tr><td align="center">4</td><td align="center">Lead Pokémon's first move</td><td align="center">Right-most lead's first move</td><td align="center">Right-most lead's first move</td></tr><tr><td align="center">5+</td><td align="center">Most common opposing type</td><td align="center">Most common opposing type</td><td align="center">Most common opposing type</td></tr></tbody></table>

## Rewards and Progression

Battle Points are earned after each completed round of 7 battles in both modes, with the reward increasing each round:

<table><thead><tr><th width="187" align="center">Round</th><th width="75" align="center">1</th><th width="75" align="center">2</th><th width="75" align="center">3</th><th width="75" align="center">4</th><th width="75" align="center">5</th><th width="75" align="center">6</th><th width="75" align="center">7</th></tr></thead><tbody><tr><td align="center">Standard</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">20</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">40</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">60</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">80</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">100</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">120</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">140</td></tr><tr><td align="center">Infinite</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">40</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">80</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">120</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">160</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">200</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">200</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:">200</td></tr></tbody></table>

* A full Standard Mode clear awards a total of ![:battle\_point:](https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56)**560**.
* Infinite Mode round rewards are capped at ![:battle\_point:](https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56)**200**. After victory **49**, the reward gradually declines over the following 4 rounds, settling at a flat ![:battle\_point:](https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56)**70** per round.

Your final accumulated rewards are secured when the run ends through a loss or retirement.

## Knowledge Badges

Knowledge Badges are physical soulbound items earned from Factory Heads in both modes.

* In Standard Mode, the **Silver Knowledge Badge** is awarded after defeating the Factory Head on Battle 21, and the **Gold Knowledge Badge** after defeating the Factory Head on Battle 49.
* In Infinite Mode, Factory Heads alternate between awarding **Silver** and **Gold** Knowledge Badges every 21 victories.

Knowledge Badges can be taken outside the Battle Factory and spent on special items in the Battle Factory Shop.

Defeating Factory Heads in either mode also progresses the **Factory Battler** badge, found on the Battling page of `/badges`. The badge has **8** phases, requiring **3** to **100** total Factory Head victories.

## Battle Factory Shop

The Battle Factory Shop is located near the Battle Factory spawn area. Access is permanently unlocked after completing Standard Mode at least once.

<table data-search="false"><thead><tr><th align="center">Item</th><th align="center">Cost</th></tr></thead><tbody><tr><td align="center">Bottle Cap (specific stat)</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:"><strong>250</strong> + 1 Silver Knowledge Badge</td></tr><tr><td align="center">Silver Bottle Cap (stat of your choice)</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:"><strong>300</strong> + 1 Silver Knowledge Badge</td></tr><tr><td align="center">Gold Bottle Cap (Hyper Trains all six IVs)</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:"><strong>1,400</strong> + 1 Gold Knowledge Badge</td></tr><tr><td align="center">Ultra Key</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:"><strong>300</strong> + 1 Silver Knowledge Badge</td></tr><tr><td align="center">Cosmetic Key</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:"><strong>800</strong> + 1 Gold Knowledge Badge</td></tr><tr><td align="center">Shiny Key</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:"><strong>1,250</strong> + 1 Gold Knowledge Badge</td></tr><tr><td align="center">Legend Key</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:"><strong>4,000</strong> + 3 Gold Knowledge Badges</td></tr><tr><td align="center">Mega Stone (weekly rotation)</td><td align="center"><img src="https://cdn.discordapp.com/emojis/1250586559015686296.webp?size=56" alt=":battle_point:"><strong>1,200</strong> + 2 Silver Knowledge Badges</td></tr></tbody></table>

A rotating selection of **5 Mega Stones**, drawn from all **47**, is available each week alongside the permanent stock.

## Monthly Reset

The Standard Mode reward track resets on the 1st of each month. Players must complete Standard Mode again after each reset to regain access to Infinite Mode for that month.


---

# 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, and the optional `goal` query parameter:

```
GET https://wiki.apexcobblemon.com/features/battling/battle-factory.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
