• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

pokecrystal For Dummies

510
Posts
11
Years
  • Seen Apr 19, 2024
Yes, but not with regular Notepad since it can't open them. These are ASM files, so you'll need something like Notepad++, Visual Studio Code, Expression Web, Brackets, etc...
 
70
Posts
7
Years
  • Age 31
  • Seen Aug 13, 2019
Yes, but not with regular Notepad since it can't open them. These are ASM files, so you'll need something like Notepad++, Visual Studio Code, Expression Web, Brackets, etc...

Thanks for the tip, it's very helpful, I'll try to edit them via Notepad++
 

1490797911

pgattic
8
Posts
7
Years
  • Age 21
  • Seen Jan 18, 2023
Hey sorry I'm kind of a noob at assembly, but bow do I assemble my code after editing? What tools do you recommend for Windows 10 or Ubuntu? (I have and am willing to use either.)
 
1
Posts
10
Years
  • Seen Feb 27, 2019
Hey sorry I'm kind of a noob at assembly, but bow do I assemble my code after editing? What tools do you recommend for Windows 10 or Ubuntu? (I have and am willing to use either.)

(In Ubuntu) you simply type the command "make" in the pokecrystal folder assuming you installed everything correctly
 
1
Posts
9
Years
  • Age 23
  • Seen Jun 9, 2021
I'm currently having a problem where trying to create a map in Crowdmap does not display a list of map groups. Does anyone know how I can fix this?
 
2
Posts
3
Years
  • Age 28
  • WV
  • Seen Nov 7, 2020
What is the feasibility of removing a pokemon from the gen 2 games and adding more from later generations? I added Shuppet and Banette as 252 and 253. I would like to add more and Sub out the legendary birds but I am having difficulty sorting through where they would need removed from the code. Any help would be greatly appreciated!
 
27
Posts
3
Years
  • Age 27
  • Seen Mar 3, 2024
What is the feasibility of removing a pokemon from the gen 2 games and adding more from later generations? I added Shuppet and Banette as 252 and 253. I would like to add more and Sub out the legendary birds but I am having difficulty sorting through where they would need removed from the code. Any help would be greatly appreciated!

This is actually the main thing I'm doing in my hack. It's quite easy though you're bound to run into some problems. I would heavily heavily heavily recommend using Notepad++ as it has an invaluable "replace all in opened files" function with case specificity. Let's say you're gonna replace Gastly with Duskull. First, make the base stat and dex entry files for Duskull, and get its sprites/footprints in the right places. Check that tutorial on adding a new mon on the pret wiki as a refresher.
Next, open all these files in Notepad++: (note: I deleted the animation system, so there may some files associated with that)
Code:
constants/pokemon_constants.asm
data/events/bug_contest_winners.asm
data/pokemon/cries.asm
data/pokemon/names.asm
data/pokemon/base_stats.asm
data/pokemon/evos_attacks_pointer.asm
data/pokemon/evos_attacks.asm
data/pokemon/egg_move_pointers.asm
data/pokemon/egg_moves.asm
data/pokemon/dex_entries.asm
data/pokemon/dex_order_new.asm
data/pokemon/dex_order_alpha.asm
data/pokemon/ezchat_order.asm
data/pokemon/pic_pointers.asm
data/pokemon/palettes.asm
data/pokemon/gen1_order.asm
data/pokemon/unused_pic_banks.asm
data/radio/buenas_passwords.asm
data/wild/johto_grass.asm
data/wild/kanto_grass.asm
data/wild/fish.asm
data/wild/johto_water.asm
data/wild/kanto_water.asm
data/wild/treemons.asm
data/wild/treemons_asleep.asm
data/wild/bug_contest_mons.asm
data/wild/swarm_grass.asm
data/wild/flee_mons.asm
data/trainers/parties.asm
data/battle_tower/parties.asm
data/sprites/spritemons.asm
gfx/footprints.asm
gfx/pics.asm

Now hit ctrl+f in Notepad++. Go to the "replace" tab. This is critical: MAKE SURE MATCH WHOLE WORD ONLY, MATCH CASE, AND WRAP AROUND ARE CLICKED. Once that's done, type in "GASTLY" (all caps are a must) in the "find what" box and "DUSKULL" (all caps again) in the "replace with" box. Click "Replace All in Opened Documents". Now do the same procedure with "gastly" (all lower case is a must) and "duskull". Now UNCHECK MATCH WHOLE WORD ONLY, type in "Gastly" and "Duskull" (case specific again), clicking "Replace All in Opened Documents". This is about 90% of the work! Run `make`. You may get some errors about "unidentified constant GASTLY", and it'll point you to where you'll need to replace Gastly with Duskull in the code. The file's not gonna make and you'll have to do some case-specific alterations for these cases: any mon that's a special or static encounter (Snorlax, Electrode, Sudowoodo, cover legends, etc), shows up in the overworld (like Strawberry the Pidgey), in-game trade , mons with personal items (Marowak, Pikachu, Chansey), and Ditto.

Some misc notes: the Togepi egg expects the Togepi replacement to have the same EXP group (EXP_FAST) otherwise an weird underflow error occurs where it goes to level 3, learning all its moves along the way. I'm sure there's a fix for this beyond "make sure the Togepi replacement has EXP_FAST".
 
Last edited:

Grimeweasel

Grime Weasel
3
Posts
3
Years
  • Age 31
  • UK
  • Seen Jan 8, 2021
I'm sure someone has asked this question before. I did have a look.before asking his. But can anyone point me in the direction of how to increase the maximum number of Pokémon available? From 252 to say 300
 

Grimeweasel

Grime Weasel
3
Posts
3
Years
  • Age 31
  • UK
  • Seen Jan 8, 2021
hey, this thread has been super helpful, ive been going through the turorials.

the adding new location and landmark one is a little starnge. i managed to get the global termal outside to connect to goldenrod, but i could not get inside. so im wondering what and how to go about setting doors?

also a followed the how to add a new trainer class to the game. and when i tried adding it into the map to battle them it would say that the trainer type was not recgonized
 
2
Posts
3
Years
  • Age 28
  • WV
  • Seen Nov 7, 2020
Thanks to Giant Pigeon I was able to get those extra mons added. Your guide was pretty much Idiot proof, even I couldn't have messed it up. lol

The next thing I was curious whether anyone has tried was switching up elite 4 members by day of the week. For example in the first Elite 4 room where you battle Will, on Wednesday, Thursday, and Friday I am switching the trainer to Loreli. I am using the same scripts that GameFreak used for Santos of Saturday, Freda of Friday and etc...

So far my big snag is making Will disappear from the room on Wednesday, Thursday, and Friday. I suspect something in the MapScripts with the SCENE_DEFAULT keeps him in that room.

Alternatively, I have thought about adding a new Elite 4 Room with Loreli but getting WARP to work based on the day has not really worked for me either.

I am totally open to ideas. Thanks everyone!
 
3
Posts
8
Years
  • Age 27
  • Seen Dec 26, 2020
Hi, I'm new in this thing of Disassembly, I was editing a sprite, and I put in the "Trainers" folder. But cygwin says this error :"Section 'Pics 15' grew too big (max size = 0x4000 bytes, reached 0x401A).
make: *** [Makefile:102: gfx/pics.o] Error 1" Anyone knows how to fix it?
 

Lunos

Random Uruguayan User
3,114
Posts
15
Years
Hi, I'm new in this thing of Disassembly, I was editing a sprite, and I put in the "Trainers" folder. But cygwin says this error :"Section 'Pics 15' grew too big (max size = 0x4000 bytes, reached 0x401A).
make: *** [Makefile:102: gfx/pics.o] Error 1" Anyone knows how to fix it?
Well, the error is telling you that your sprite's file size it too big, so the first thing you'll want to do is to make sure that it has a max. of 4 colors and that its dimensions are 56x56 px.
 
4
Posts
5
Years
Hi, I'm new in this thing of Disassembly, I was editing a sprite, and I put in the "Trainers" folder. But cygwin says this error :"Section 'Pics 15' grew too big (max size = 0x4000 bytes, reached 0x401A).
make: *** [Makefile:102: gfx/pics.o] Error 1" Anyone knows how to fix it?

I got the same error when I exchanged the Fearow back sprite with a Breloom back sprite. Then I just opened the file pokecrystal\gfx\pics.asm (I'm on another PC but I hope the address is correct) and moved the Fearow back pic from section 15 to the first of the free sections (19-24, if I remember correctly).
Until now I've exchanged several sprites like this and only got this error one other time but there might be a limit preventing you from exchanging all sprites like this because the free sections might not be enough. For me it's no problem since I plan to add only a few #MON from later generations.
 
Last edited:

d4rk

Oh my Arceus!
318
Posts
12
Years
Hey there, I'm finding out abt this series of tuts, but I feel like they only brush chapters on adding global features.
It still a consequential work and I'm benefit a lot from it, but I'd like to know whether someone found chapters abt programming sequences and events particularly?

Also I'd like to know which order I need to use for adding features.

So far I'm thinking:

implenting fairy type (if needed)
re-defining type match-ups
planning moves
adding moves
implementing phys/spec split
implementing new pokemons and their base stats
implementing new pokemons' evolutions and movesets
update trainer data (what happens if not edited? does it identify pokémon and moves by their internal IDs?)
update gift and trade pokémons (what happens if not edited? does it identify pokémon and moves by their internal IDs?)

can you confirm,

and also I'd like to know whether any define writes which Pokémon will get out of the egg in the base stats, or if it only defined by the "evolutions" line?

finally, I also have doubts about the memory of the game,
for example can it handle bigger moveset lists? and a bigger amount of maps/locations?
because in the movepool editor and in the map editor, one can't just add a new item to the list just like that.
 
Last edited:
Back
Top