• 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.

[Pokeemerald] About the basics of Git and starting a project with the Pokeemerald-expansion

5
Posts
6
Years
Hey,

So, i've followed all the steps so far but whenever i try the "make" command, i keep coming up with these errors and i'm at a bit of a loss on what to do here, was hoping you might be able to give me some pointers.

duhGx8O.png


p.s I'm fairly new to all this, just a heads-up.

Thanks in advance :)
 

Lunos

Random Uruguayan User
3,114
Posts
15
Years
Hey,

So, i've followed all the steps so far but whenever i try the "make" command, i keep coming up with these errors and i'm at a bit of a loss on what to do here, was hoping you might be able to give me some pointers.

duhGx8O.png


p.s I'm fairly new to all this, just a heads-up.

Thanks in advance :)
There is no such item as a "Leeky Barb". You clearly screwed up your renames.
It's ITEM_LEEK and ITEM_STICKY_BARB.
 
3
Posts
1
Years
  • Age 24
  • Seen Jun 14, 2022
Hi, I have followed the tutorial exactly a few times, and I keep coming across the same error each time when I try to build the ROM. It appears there is a merge conflict that you do not have documented in the main post. Here is the error code I keep getting:

https://imgur.com/HGC2MEQ

When I look at the event.inc file the merge conflict appears to be caused by the Kubfu evolution macro from the pokemon_expansion branch and the totem macro from the battle_engine branch. I have tried deleting the Kubfu macro while keeping the totem macro and vice versa. I have also tried keeping both adn keeping neither. This causes the error regarding the event.inc file to be fixed, but the event_scripts.o still fails to build. I assume there must be some greater issue causing the error. Regardless, here is the code for the macro file:

https://imgur.com/8O6puWn
https://imgur.com/07c6qiG

Thank you for any help. I really appreciate the tutorial.
 
1
Posts
3
Years
  • Age 32
  • Seen Sep 1, 2022
Hi, I have followed the tutorial exactly a few times, and I keep coming across the same error each time when I try to build the ROM. It appears there is a merge conflict that you do not have documented in the main post. Here is the error code I keep getting:

https://imgur.com/HGC2MEQ

When I look at the event.inc file the merge conflict appears to be caused by the Kubfu evolution macro from the pokemon_expansion branch and the totem macro from the battle_engine branch. I have tried deleting the Kubfu macro while keeping the totem macro and vice versa. I have also tried keeping both adn keeping neither. This causes the error regarding the event.inc file to be fixed, but the event_scripts.o still fails to build. I assume there must be some greater issue causing the error. Regardless, here is the code for the macro file:

https://imgur.com/8O6puWn
https://imgur.com/07c6qiG

Thank you for any help. I really appreciate the tutorial.

It looks like the ".macro totemboost_evas2" right above the "@ Attempts to trigger a special evolution" line is losing its ".endm" on the last image you posted. Which could cause you to get an error like "Unexpected end of file". I suggest setting up a github repo as that will help other's help you.
 
Last edited:
3
Posts
1
Years
  • Age 24
  • Seen Jun 14, 2022
Yes, I figured out that the .endm was pushed down by the addition of the Kubfu evolution macro, which was causing the totem boost to not end like you said. However, it still did not solve the error code regarding the failure to build the event_script.o file.

I will work on getting a repo set up later today. This is my first time using git, so I have had to figure it all out.
 

Lunos

Random Uruguayan User
3,114
Posts
15
Years
Yes, I figured out that the .endm was pushed down by the addition of the Kubfu evolution macro, which was causing the totem boost to not end like you said. However, it still did not solve the error code regarding the failure to build the event_script.o file.

I will work on getting a repo set up later today. This is my first time using git, so I have had to figure it all out.
That file, asm/macros/event.inc, is also sensible to End of Line formats.
The file's last line must have an LF format, which you can check with text editors like Notepad++ (View -> Show Symbols -> End of Line).
P0JEHr7.png

Others like Sublime Text handle it automatically. In those cases you just need to delete the last line which should be an empty one, and then press enter to re-create it.
 
51
Posts
9
Years
  • Age 38
  • Seen Dec 20, 2022
In addition to the 'asm/macros/event.inc' merge conflict, I am also getting one for 'data/specials.inc', right at the end of the file:
<<<<<<< HEAD
def_special SetTotemBoost
=======
def_special TrySpecialOverworldEvo
>>>>>>> ade935f6cfedcc109f61251dfcf1fa423c07f91e

Also, in the first set of merge conflicts in this tutorial, another merge conflict that isn't addressed is 'src/item.c', once again at the end of the file:
Spoiler:
In the case of item.c, I'm assuming it's just a case of removing the three lines added by Git. For the other stuff, I'm not sure though. Started out modding this game years ago with hex editors etc. Finally trying to dive into the decomp of Emerald and not too sure how to proceed from here. Hope to see an update of this great tutorial soon.
 

Lunos

Random Uruguayan User
3,114
Posts
15
Years
In addition to the 'asm/macros/event.inc' merge conflict, I am also getting one for 'data/specials.inc', right at the end of the file:
<<<<<<< HEAD
def_special SetTotemBoost
=======
def_special TrySpecialOverworldEvo
>>>>>>> ade935f6cfedcc109f61251dfcf1fa423c07f91e
You need to keep both macros, but separate them properly.
Grab the battle_engine's asm/macros/event.inc and plug in the pokemon_expansion's TrySpecialOverworldEvo after the end of the SetTotemBoost macro.
Also, in the first set of merge conflicts in this tutorial, another merge conflict that isn't addressed is 'src/item.c', once again at the end of the file:
Spoiler:
In the case of item.c, I'm assuming it's just a case of removing the three lines added by Git.
That conflict should no longer exist.
Thanks for bringing this up. I'll make sure to fix it up with a PR for the battle_engine and then look into updating the tutorial.
 
51
Posts
9
Years
  • Age 38
  • Seen Dec 20, 2022
Thank you for that, followed your instructions there. If I'm not being a pain, the error I'm receiving upon trying to build now appears to point to the 'src/battle_gfx_sfx_util.c' file from the second stage of merge conflicts. I was actually unsure what exactly to do here because your instructions were:

Spoiler:

The problem is, this appears to already be done in the copy from the master branch that you linked. If it helps at all, this is the error from what I can tell (I'm new to this so I hope I'm reading the whole thing right):

Spoiler:
 

Lunos

Random Uruguayan User
3,114
Posts
15
Years
Hello.
Around a month ago, ROM Hacking Hideout started a poll to measure the way in which people made use of the Pokeemerald-expansion.
Whether they used the Master branch, or they merged the 3 branches manually, whether they merged only 2 out of the 3, etc.
The results of that poll showed that the huge majority of the people used the Master branch, a certain number merged the 3 feature branches manually, and a low amount of people did anything else.

As a result, it was decided development for the Pokeemerald-expansion will now happen in the Master branch and the individual branches will be ditched.
That means no more BATTLE_ENGINE, ITEM_EXPANSION and POKEMON_EXPANSION labels to represent the individual branches anymore.
The declaration of the labels was kept, but every usage of them outside of include/constants/expansion_branches.h was removed from the code.

This also very likely means a lot of merge conflicts to deal with once people start to pull the new Master branch for projects that made custom changes in the same areas that the expansion branches used to modify.

And of course, this means there is no longer a need for the majority of this tutorial either.
The PR was already merged so the jump was already made. All the Pull Requests that weren't merged yet had their target branch changed to point towards the Master branch as well.

I'll be modifying the main post later today. It'll be a glorified "setting up a GitHub repository" tutorial pretty much, but whatever.
 
Last edited:

Lunos

Random Uruguayan User
3,114
Posts
15
Years
I'll be modifying the main post later today.
- Me, almost 2 months ago.​
4XrxYJ6.jpg


So anyway, I updated the tutorial. I've been working on it for the past few days when I was reminded that I forgot to update it.
If anyone sees any mistakes, let me know.

EDIT: Oh yeah, I changed the title too.
Since there's no longer a need to merge separate feature branches manually, I didn't feel like the previous title for this thread was a good fit.
I still made sure to talk briefly about the history of these branches and mention DizzyEgg plenty though. None of this would have happened without him, so it's only natural.

EDIT2: Oh yeah, I forgot to say that a copy of this tutorial will be kept as a Gist in my GitHub account.
I already linked it in the main post.
If I have to update this tutorial in the future, the gist will be updated as well.
https://gist.github.com/LOuroboros/c592c047ee8e8babf8a7b32713f982ad

EDIT3: I realized earlier today that I forgot to talk about merge conflicts. I'll edit the main post either later today or tomorrow.
Don't worry, I'm leaving a quick note this time so I won't forget
Apr3PBd.png

 
Last edited:

Lunos

Random Uruguayan User
3,114
Posts
15
Years


EDIT3: I realized earlier today that I forgot to talk about merge conflicts. I'll edit the main post either later today or tomorrow.
Well, it took me an extra day, but it's done.
To be fair, this time I have a valid excuse; I formatted my PC yesterday.
I like to do that at least once per year, and yesterday when I woke up I made a backup of my important stuff and formatted Windows because why not.
Of course, I completely forgot about the Sticky Note I made reminding me to update the tutorial.

But nevermind that, both the main post and the gist have been updated to talk about and explain merge conflicts.
To see the edits directly, check the Revisions tab in the gist.
 
Back
Top