Skeetendo

’Cause all games were better on the GBC

You are not logged in.

#1 2020-04-24 21:30:58

ajgropius
New member
Registered: 2019-06-21
Post 3/3

Pokémon Strawberry -- Need Help Getting Started

Hi, everyone. I would like to create my own ROM hack called Pokémon Strawberry. However, I am having a lot of trouble understanding assembly, and need someone to help me understand what to do (i.e.: write things down in "step 1, step 2" format). Here are my questions.

1. How do I edit the title screen? I've looked at some relatively outdated tutorials for this, but I don't see anything about how to do it the assembly way. (for example, I would like the title screen to have a pink background, read "Pokémon Strawberry Version", and have a Mew in the middle of the screen)

2. How do I make being a girl the default trainer? As in, I don't want there to be a choice between being a girl or a boy.

3. How do I add new moves and move animations?

4. How do I add/change types?

5. How do I add in custom sprites (e.g.: new Pokémon, overworld sprite for the player, new trainer sprites and gym layouts?)

6. How do I add in modern cries for post-Gen II Pokémon?

7. How do I compile the ROM to test it and/or play it? I know RGBDS has something to do with it, but I'm struggling with figuring it out.

8. Do my notes in assembly have to be on github for the compilation to work?

9. Who can help with the debugging/balancing aspect of the game? I want this game to be rather polished upon completion.

Thank you so much for your help in advance--for anyone who helps with these tutorials, I'll credit you for them! I really hope that I get to make this into what I'm visualizing. I look forward to hearing back from anyone.

Offline

#2 2020-04-26 20:38:13

Danny-E 33
Administrator
Registered: 2012-06-09
Post 1,160/1,188

Re: Pokémon Strawberry -- Need Help Getting Started

I'll start this by saying I am not nearly as familiar with pokecrystal as I am with pokered. So I can usually point you in the right direction, but I can't always give you very specific answers when it comes to Crystal-specific features.
(Although you did not specify, I assume you are using pokecrystal due to your gender selection question.)

ajgropius wrote:

7. How do I compile the ROM to test it and/or play it? I know RGBDS has something to do with it, but I'm struggling with figuring it out.

This should have been the first question on your list :)
You need to take a look at INSTALL.md

rgbds is a collection of 4 tools: rgbasm, rgbfix, rgbgfx, and rgblink.
As a beginner, it is not necessary to fully understand rgbds at the start.
There is a script in the repository called "Makefile".
Running this script will assemble the rom using rgbds.
All the necessary instructions are in INSTALL.md.

The place to start is:
1. Install rgbds
2. Clone pokecrystal
3. Assemble the rom using unmodified source code

This ensures you have a reliable setup in place to build the rom. Then you can modify the source code.

ajgropius wrote:

1. How do I edit the title screen? I've looked at some relatively outdated tutorials for this, but I don't see anything about how to do it the assembly way. (for example, I would like the title screen to have a pink background, read "Pokémon Strawberry Version", and have a Mew in the middle of the screen)

This is a pretty broad question since there are many components to the title screen. You should start by familiarizing yourself with the title screen code.
Take a look at engine/movie/title.asm and see how the graphics tiles are loaded into VRAM, how those tiles are placed on the screen, and how the palettes are assigned. The better you understand it, the better you can come up with a plan to create something different.

ajgropius wrote:

2. How do I make being a girl the default trainer? As in, I don't want there to be a choice between being a girl or a boy.

This could be accomplished by editing the code that prompts the user to make a selection.
Take a look at engine/menus/init_gender.asm

ajgropius wrote:

3. How do I add new moves and move animations?

The place to start is to understand the existing data structure.
Take a look at the files in data/moves/

ajgropius wrote:

4. How do I add/change types?

The place to start is to understand the existing data structure.
Take a look at the files in data/types/

ajgropius wrote:

5. How do I add in custom sprites (e.g.: new Pokémon, overworld sprite for the player, new trainer sprites and gym layouts?)

Well Pokemon sprites, overworld sprites, trainer sprites, and gym layouts are all 4 different subjects.

For Pokemon sprites (assuming you mean battle sprites), take a look at gfx/pokemon/ and gfx/pics.asm

For overworld sprites, take a look at gfx/sprites/ and gfx/sprites.asm

For trainer sprites (assuming you mean battle sprites), take a look at gfx/trainers/ and gfx/pics.asm

For map layouts, take a look at maps/ (and look into a pokecrystal map editor like Polished Map).

ajgropius wrote:

6. How do I add in modern cries for post-Gen II Pokémon?

I'm not quite sure what you mean by "modern".

If you mean cries that "fit" within the existing cry system, then take a look at audio/cries.asm and data/pokemon/cries.asm

If you mean adding cries that are more "sophisticated" then you need to take a look at the code that produces the sound while the game is running.
Take a look at audio/engine.asm - but of course, you need to stay within the limitations of the hardware. Still, it's always possible to make it more complex than it originally is in Crystal.

ajgropius wrote:

8. Do my notes in assembly have to be on github for the compilation to work?

It is not necessary to push you changes to Github in order to build the rom.

ajgropius wrote:

9. Who can help with the debugging/balancing aspect of the game? I want this game to be rather polished upon completion.

The job of debugging and balancing is mostly your job. I love to help but only you can make your game :)



For now, I have only given "places to start" because the questions are broad. Once you take a look at the suggested files, feel free to post additional questions about what you are stuck on.

Offline

Board footer

Powered by FluxBB