• 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?".
  • Forum moderator applications are now open! Click here for details.
  • 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.

Code: [EM] Dizzy's Hacked Engine

794
Posts
10
Years
I just checked, it overwritten stuff. I didn't realize what the more money meant. Isn't it more of just a few bytes changes? I found it on the Quick Research thread and it works for me. What's different in yours, DizzyHuevo?

The one in the Quick Research development thread doesn't properly display the amount of money when you buy/sell things.
 
794
Posts
10
Years
I just checked, it overwritten stuff. I didn't realize what the more money meant. Isn't it more of just a few bytes changes? I found it on the Quick Research thread and it works for me. What's different in yours, DizzyHuevo?

Fixed the problem with double battles. Was caused by the EVTrainers routine.
 
1
Posts
7
Years
  • Age 33
  • Seen Mar 23, 2023
I know you said that the attacking stats overpower the defenses at higher levels. How much impact does this have, and is there a way I can edit the equations to fix this?
 
794
Posts
10
Years
I know you said that the attacking stats overpower the defenses at higher levels. How much impact does this have, and is there a way I can edit the equations to fix this?

I actually didn't test it that much, but that's the feeling I got.
Anyway, the function calculating pokemon stats is at 0x08068D0C. The damage calculating one is at 0x806957C in a vanilla rom, tho it got rewritten in the Emerald Battle Engine.
 

Deokishisu

Mr. Magius
989
Posts
18
Years
Hey Dizzy. Just remembered that way, way back in the day I posted some suggestions in Touched's DSLN thread that you might think are intriguing and would fit into this project. I'm going to quote myself in a spoiler, as I made several posts over there. Comments in bold. I omitted stuff that obviously doesn't fit here, and crossed out stuff that might already be done or isn't totally feasible for this project.

Spoiler:
 
Last edited:

U.Flame

Maker of Short Games
1,326
Posts
15
Years
Something I've been interested in for a long while is multiplayer compatibility. There are many things that don't function in the game's multiplayer mode. If some could be fixed, we can greatly expand on the game's multiplayer capabilities.
 
794
Posts
10
Years
Something I've been interested in for a long while is multiplayer compatibility. There are many things that don't function in the game's multiplayer mode. If some could be fixed, we can greatly expand on the game's multiplayer capabilities.

What things don't function in multiplayer mode?
 

U.Flame

Maker of Short Games
1,326
Posts
15
Years
What things don't function in multiplayer mode?
HMs won't work in the overworld. Some like Flash and Strength won't function at all. Others, like Cut and Rock Smash may glitch something out. Water behaves like land. You can walk into it, you can't Surf, Dive, or Waterfall either.Warps and Map Connections won't work. Key Items can't be used. Secret Bases can't be entered.

Other problems may result in desynchronization, where different screens show different player placements. For example, if one player engages in a Pokemon battle, and another player moves around, the moving player will be in the same spot they were in before the battle when the battling player finishes. There is also link error issues when battling trainers with more than one Pokemon

I haven't really pinned down script behavior, as scripts can run but may function differently. One test script I made forces the player battle with a different Pokemon depending on gender. It functions in single player, but in multiplayer both genders fight the same thing, and the disappearance flag doesn't really work.

I've done extensive testing in the past, and should probably continue testing more of what can be and can't be done in multiplayer.
 
794
Posts
10
Years
HMs won't work in the overworld. Some like Flash and Strength won't function at all. Others, like Cut and Rock Smash may glitch something out. Water behaves like land. You can walk into it, you can't Surf, Dive, or Waterfall either.Warps and Map Connections won't work. Key Items can't be used. Secret Bases can't be entered.

Other problems may result in desynchronization, where different screens show different player placements. For example, if one player engages in a Pokemon battle, and another player moves around, the moving player will be in the same spot they were in before the battle when the battling player finishes. There is also link error issues when battling trainers with more than one Pokemon

I haven't really pinned down script behavior, as scripts can run but may function differently. One test script I made forces the player battle with a different Pokemon depending on gender. It functions in single player, but in multiplayer both genders fight the same thing, and the disappearance flag doesn't really work.

I've done extensive testing in the past, and should probably continue testing more of what can be and can't be done in multiplayer.

What? I'm sorry but I don't understand. I thought you meant link battles.
 

U.Flame

Maker of Short Games
1,326
Posts
15
Years
What? I'm sorry but I don't understand. I thought you meant link battles.
My bad, should've clarified. I'm referring to the overworld, such as the small room players are in before they take their seats and battle/trade. I've been expanding on that because I want players to be able to interact more than walking around and taking a seat.
 

BluRose

blu rass
811
Posts
9
Years
What? I'm sorry but I don't understand. I thought you meant link battles.
remember this? i took a little investment in it when i didn't even know that the game wasn't entirely run off of scripts albeit not posting about it at all
a multiplayer version of this game would be like amazing honestly, great time playing around with amigos
 
794
Posts
10
Years
remember this? i took a little investment in it when i didn't even know that the game wasn't entirely run off of scripts albeit not posting about it at all
a multiplayer version of this game would be like amazing honestly, great time playing around with amigos

My bad, should've clarified. I'm referring to the overworld, such as the small room players are in before they take their seats and battle/trade. I've been expanding on that because I want players to be able to interact more than walking around and taking a seat.

Judging by how small the union room is(so the player is always visible to another one no matter where he does) and the lack of scripts...I'm not sure tbh. It's either GF didn't bother with it or it's too much for GBA. I'll do some testing but it's gonna be hard, because you can't debug using link features.
 

U.Flame

Maker of Short Games
1,326
Posts
15
Years
Judging by how small the union room is(so the player is always visible to another one no matter where he does) and the lack of scripts...I'm not sure tbh. It's either GF didn't bother with it or it's too much for GBA. I'll do some testing but it's gonna be hard, because you can't debug using link features.

Ah I see. I actually didn't do much Union Room testing yet, most of the experiments were performed in the Mixing Records room. Mostly because 1 to 4 players can join and it's compatible with Ruby and Sapphire. I simply replaced that map with a bigger one and went wild on it.
 

Deokishisu

Mr. Magius
989
Posts
18
Years
Ah I see. I actually didn't do much Union Room testing yet, most of the experiments were performed in the Mixing Records room. Mostly because 1 to 4 players can join and it's compatible with Ruby and Sapphire. I simply replaced that map with a bigger one and went wild on it.

The Union Room isn't even a true link room; the other players cannot be seen moving around in real time in there. Instead, a stationary NPC spawns for each person nearby in the Union Room and that NPC is used as an interface to send requests to the player it is associated with. Does no one remember how this stuff all worked from back in the day when this was current?

I don't see why a more fully featured multiplayer room/multiplayer functionality wouldn't be possible on the GBA, Kirby Nightmare in Dreamland and the GBA Mario Kart can keep track of a ton of stuff while the players are offscreen from each other. They don't experience syncing issues, so I'm sure the GBA is capable of it. But I'm afraid that most of the issues come from sending the appropriate data to the other player. If an NPC moves on your screen, it should move on the other in the same direction. I suppose you could send one game's RNG state over and have the RNG switch its update method to something more static for the session and not based on inputs. That could sync up autonomous NPC movements in the OW. Then you have to send each player's interactions with the OW to the other. If you've ever had your friend talk to the lady in the link room from behind, you'll see that on their screen she turns to face your friend, but they're talking to her butt on your screen.

You mentioned Surf functionality doesn't work. I'm curious, do the spin tiles work? The ones from Viridian Gym? Is it that movement permissions/elevation changes are not being checked or is it that the game won't run Surf's behavior byte script?

And you mentioned checkgender not working correctly, but do other if statements work? Is checkgender only checking one player's gender? Does it do it correctly when both players are boys/girls?

Honestly, I don't think full-scale, always-on multiplayer is feasible at the moment, but if Dizzy can fix the synchronization issues that happen when a player is offscreen (even if he did nothing else), that would go a long way to having bigger multiplayer rooms, at least. I feel like I could make something workably fun to do in multiplayer within the limitations we currently have as long as desyncing in the OW wasn't an issue.

Imagine this, a Friend Safari-esque thing only accessible when you and your friend are linked. Some algorithm coverts some combo of you and your friend's IDs or names (which are sent over anyway) or something into a wild table entry so that you can catch cool Pokemon. The Pokemon available would be different for every combo, and thus different for every friend, and you can see your friend walking around and catching Pokemon! That's something that would work on one map, would not require doing anything that would break linking (assuming levelscripts and callasm work, which there's no reason they wouldn't), and is only hampered by desyncing issues in the OW.

If most of the scripting commands still work while linked, you could feasibly do basic multiplayer minigames too, if that's your aim.

This got long. I hope this isn't terribly offtopic.
 
Last edited:
794
Posts
10
Years
Bumping the thread to announce that lots of cool new features have been added. List of them is in the OP.

Also renamed it from Various Features to Dizzy's Hacked Engine, since it's very similar to the program that JPAN made back in the days. (and to get more views)
 

Trainer 781

Guest
0
Posts
Bumping the thread to announce that lots of cool new features have been added. List of them is in the OP.

Also renamed it from Various Features to Dizzy's Hacked Engine, since it's very similar to the program that JPAN made back in the days. (and to get more views)

You forgot to update your sig. :P
 
131
Posts
9
Years
  • Age 23
  • Seen yesterday
Does the Moon Ball routine work even if you've made new Pokemon evolve via Moon Stone? Say, if you made Umbreon a Moon Stone evolution, would it have an increased catch rate against Eevee?
 
Back
Top