summaryrefslogtreecommitdiff
path: root/Edit-the-wild-encounters.md
blob: 0785b51e9de30546fb22f974af9b62cfd52c11f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
This tutorial is for how to edit the wild encounters of a map. 
## Contents
- [Understanding how wild encounters work](#understanding-how-wild-encounters-work)
- [1. Picking the map to edit](#1-picking-the-map-to-edit)
- [2. Modifying the list](#2-modifying-the-list)

## Understanding how wild encounters work
Each slot in a wild encounter list has a set percentage, as shown below:
```diff
 db $32, $00 ; 20% Chance
 db $65, $02 ; 20% Chance
 db $8C, $04 ; 15% Chance
 db $A5, $06 ; 10% Chance
 db $BE, $08 ; 10% Chance
 db $D7, $0A ; 10% Chance
 db $E4, $0C ; 5% Chance
 db $F1, $0E ; 5% Chance
 db $FC, $10 ; 4% Chance
 db $FF, $12 ; 1% Chance
```
As such, when modifying a list of encounters for a map, these are the percentages each slot will have. For example, I´ll put the percentages in the comments of the Route 1 encounter list:
```diff 
 Route1WildMons:
       	 def_grass_wildmons 25 ; encounter rate
	 db 3,PIDGEY ; 20%
	 db 3,RATTATA ; 20%
	 db 3,RATTATA ; 15%
	 db 2,RATTATA ; 10%
	 db 2,PIDGEY ; 10%
	 db 3,PIDGEY ; 10%
	 db 3,PIDGEY ; 5%
	 db 4,RATTATA ; 5%
	 db 4,PIDGEY ; 4%
	 db 5,PIDGEY ; 1%
	 end_grass_wildmons

	 def_water_wildmons 0 ; encounter rate
	 end_water_wildmons
```
Also, **you may only have 10 wild encounters listed in a vanilla Pokered disassembly.** Methods exist to increase the number of slots, but those methods are outside the purpose of this tutorial.

## 1. Picking the map to edit
All wild encounter lists are located in [data/wild/maps](../blob/master/data/wild/maps). They are named based on the maps they are for. So, route1.asm is for Route 1, Route2.asm is for Route 2, etc.

## 2. Modifying the list

The list entries are formatted in this order: db LEVEL, POKEMON
As such, modifying the level and Pokemon fields will make different Pokemon show up on that map.
For example, say we wanted Route 1 to have some Spearow spawn.
Edit [data/wild/maps/Route1.asm](../blob/master/data/wild/maps/route1.asm)
```diff
 Route1WildMons:
	 def_grass_wildmons 25
	 db 3,PIDGEY
	 db 3,RATTATA
	 db 3,RATTATA
	 db 2,RATTATA
	 db 2,PIDGEY
-	 db 3,PIDGEY
+        db 3,SPEAROW
	 db 3,PIDGEY
	 db 4,RATTATA
	 db 4,PIDGEY
-	 db 5,PIDGEY
+        db 10,SPEAROW
	 end_grass_wildmons
```
You should now have a grasp on how to edit wild encounter lists.