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

Code: Move Resource Thread

218
Posts
10
Years
  • Seen Nov 12, 2021
And one more thing, I've found a "setword" command being already existed in BSP. I just dunno if this is exactly what we are mostly using to call a free RAM location and a string. However, the existing setword command doesn't have its index number display but it gets the same description. But, I assure it isn't (if Jambo also made the command so why the callasm isn't included in the unmodified BSP). I think we should stop using "setword" on "setword 0x203E320 0x89CDCDC" and use "loadstring" or something else or whatever might anyone want unless we can modify the program to replace "setword" into something else."

I don't think this is usable as it doesn't even have index number
 
275
Posts
8
Years
Sup people!
I'm checking every move in MrDollSteak's Rombase and making some changes I felt were right.
For that, I'm starting to need more effect byte slots. I haven't started adding effects, but I'll definitely add some effects soon.
But a lot other will be useless, as I'm changing what the moves do.
Can I write an effect byte and overwrite an already existing effect byte with it?
Beyond that, I tried giving "Meditate", for example, the same effect byte of "Ancientpower", but with 100% of Effect chance, plus as a Status move. When I use it in-game, it does work, as all my stats are always raised. But I get damaged with a recoil-like effect. Why can't I turn a Status move into a Physical/Special and vice-versa? Is every byte used for either a damaging and a non-damaging move? Also tried that with "Toxic", giving it damage and turning it into Special".
Also, I didn't understand why "Quick Attack" had a byte for it (103). Isn't it only and increased priority move, with no secondary effect other than damage? Why does it have an effect byte?
Last, but not least, how do I turn a move into a 2-turn move and choose the right message or vice-versa? I tried turning "Brave Bird" a 2-turn move, like "Fly", but when I test it, it says my Pokémon used "Dive" or "Dig". How do I make it display the right message?
Something similar happened to turning "Teleport" into a "Protect"-like move, as the Pokémon never came back after it "Teleported", but it was still attacking, but I believe it's because of the animation asonly the sprite wasn't being displayed. Can anyone confirm that to me?
Thanks, sorry for the big text! =D
 
Last edited:
417
Posts
9
Years
  • Age 33
  • Seen Nov 20, 2016
Sup people!
I'm checking every move in MrDollSteak's Rombase and making some changes I felt were right.
For that, I'm starting to need more effect byte slots. I haven't started adding effects, but I'll definitely add some effects soon.
But a lot other will be useless, as I'm changing what the moves do.
Can I write an effect byte and overwrite an already existing effect byte with it?
While you technically can just replace them, be cautioned. I don't think it would be a great idea to use old effect bytes for completely different things. I believe the specific bytes are coded into AI move making decisions. As a result, the AI will use moves with the new effect when it is appropriate to use moves that had the old effect. That's why it is often better to add branches to similar new effects such as Quiver Dance being added as a Calm Mind branch or Roost with Recover. I'm not sure how much research has been done into AI logic on new effect bytes.
 
457
Posts
10
Years
  • Age 28
  • Seen Apr 9, 2024
I don't think this is usable as it doesn't even have index number

Right. When I compile a script as "setword", example I have a script with "setword 0x203E320 0x89CDCEC". I compiled it and after decompiling, it appeared like this:

setbyte 0x203E320 0x8
setbyte 0x203E320 0x9C
setbyte 0x203E320 0xDC
setbyte 0x203E320 0xEC

There are no problems on compiling but if only I can figure out to edit the current command list. So that is why I'm using a new label instead of setword. Sorry for not mentioning this before.
 
275
Posts
8
Years
While you technically can just replace them, be cautioned. I don't think it would be a great idea to use old effect bytes for completely different things. I believe the specific bytes are coded into AI move making decisions. As a result, the AI will use moves with the new effect when it is appropriate to use moves that had the old effect. That's why it is often better to add branches to similar new effects such as Quiver Dance being added as a Calm Mind branch or Roost with Recover. I'm not sure how much research has been done into AI logic on new effect bytes.

Thanks azurile13! Always helpful!
When I get to that, I'll check if it's possible or not and report back.
Anyone has anything on the animations?
 
457
Posts
10
Years
  • Age 28
  • Seen Apr 9, 2024
What does effect byte 103 do?

It is actually the same as Pound (having the same pointer to the battle script). The trick that making Quick Attack, Aqua Jet, Bullet Punch, Extremespeed etc. (those are the moves using effect 103) goes first is their priority values (can be seen though in G3T).
 
Last edited:
275
Posts
8
Years
It is actually the same as Pound (having the same pointer to the battle script). The trick that making Quick Attack, Aqua Jet, Bullet Punch, Extremespeed etc. (those are the moves using effect 103) goes first is their priority values (can be seen though in G3T).

Ok, so they have increased priority and move first in their respective priority. I thought that but thought it was ridiculous to think that. Also G3T's ini only displays it as ""Quick Attack" Effect".
Thanks man!
 
5,256
Posts
16
Years
Spoiler:

Just so you guys know, I've updated the effects for Brine and Assurance (they were done poorly before, which led to the moves hitting basically regardless of whether the target is in the air, etc.). They're also slightly more efficient, too.
 
Last edited:
5,256
Posts
16
Years
Here is the effect for acupressure:
Acupressure (Set the targeting scheme to '2' so that the move it can select any target bank):
Script:
Spoiler:


Asm at GGGGGG:
Spoiler:


ASM at HHHHHH
Spoiler:


ASM at IIIIII:
Spoiler:


The first ASM adjusts the target, if accidentally selected by the player or AI that is out of the range of acupressure i.e opponent's team, to the required range. (If somebody has the knowledge of hacking the targeting scheme then this ASM would not be required).

The seconds ASM checks for maximization of all stats and ally's substitute.

The third ASM randomly selects the boosting byte.

Spoiler:


I made it so that the correct colour for the stat animation shows. It's not very efficient, though.
 

Cataclyptic

Everything I say is a lie
169
Posts
9
Years
I'm trying to make it so that two turn animations like Sky Attack and SolarBeam do both thier animations in one turn as opposed to two. Mr. Doll Steak has told me that the there are actually two pointers to these moves when you go to the offset, so I tried to do that.

I found out that Sky Attack's animation was at 2C8FA8 which lead to a pointer 7B D1 2C 08. There was another pointer after this, which was DA 4B 2D 08, but when I replaced Sky Attack's pointer with thesecond one (believing it to be animation #2 of the move) it instead used the Transform animation. Also I think it broke Pound (I'll look into it in a sec...). Then I tried going to 2CD17B, where the pointer for Sky Attack led me, and all I see is a bunch of hex values that look nothing like pointers.

Can someone please clarify this for me? I'd appreciate it.
 

MrDollSteak

Formerly known as 11bayerf1
858
Posts
15
Years
I'm trying to make it so that two turn animations like Sky Attack and SolarBeam do both thier animations in one turn as opposed to two. Mr. Doll Steak has told me that the there are actually two pointers to these moves when you go to the offset, so I tried to do that.

I found out that Sky Attack's animation was at 2C8FA8 which lead to a pointer 7B D1 2C 08. There was another pointer after this, which was DA 4B 2D 08, but when I replaced Sky Attack's pointer with thesecond one (believing it to be animation #2 of the move) it instead used the Transform animation. Also I think it broke Pound (I'll look into it in a sec...). Then I tried going to 2CD17B, where the pointer for Sky Attack led me, and all I see is a bunch of hex values that look nothing like pointers.

Can someone please clarify this for me? I'd appreciate it.

The hex values are the move animation. I'd recommend reading the thread about creating new move animations to try and understand it a bit better.
 

MrDollSteak

Formerly known as 11bayerf1
858
Posts
15
Years
Surf, Dicharge etc. (Moves that target both foes and ally in Doubles)

That's awesome KDS! Do these work with the modified absorption routines that I've put on the ability resource thread? or do I have to alter those?
 

Trainer 781

Guest
0
Posts
That's awesome KDS! Do these work with the modified absorption routines that I've put on the ability resource thread? or do I have to alter those?

You need to alter the Battle Scripts in the routines to branch to xRRRRRR for Multitarget moves. For e.g in the Sap Sipper Battle Script if the move ID is that of Petal Blizzard you branch to xRRRRRR after the Stat Boost.

The last battle script in the spoiler does the same thing for Water Absorb, Volt Absorb and Flash Fire
 

MrDollSteak

Formerly known as 11bayerf1
858
Posts
15
Years
You need to alter the Battle Scripts in the routines to branch to xRRRRRR for Multitarget moves. For e.g in the Sap Sipper Battle Script if the move ID is that of Petal Blizzard you branch to xRRRRRR after the Stat Boost.

The last battle script in the spoiler does the same thing for Water Absorb, Volt Absorb and Flash Fire

By RRRRRR do you mean the very first one? I'm a bit confused by having a seperate one for Surf, and then one that goes to Petal Blizzard when that's the same location as Surf, though I guess it has to point somewhere. Also that one seems to be called XXXXXX?
 

Trainer 781

Guest
0
Posts
By RRRRRR do you mean the very first one? I'm a bit confused by having a seperate one for Surf, and then one that goes to Petal Blizzard when that's the same location as Surf, though I guess it has to point somewhere. Also that one seems to be called XXXXXX?

Yeah, inserting this can become confusing.
RRRRRR is in the midway of the second battle script at MMMMMM. It is highlighted in light red color.
For which BS are you confused between Petsl Blizzard and Surf?
 

MrDollSteak

Formerly known as 11bayerf1
858
Posts
15
Years
Yeah, inserting this can become confusing.
RRRRRR is in the midway of the second battle script at MMMMMM. It is highlighted in light red color.
For which BS are you confused between Petsl Blizzard and Surf?

Nevermind about the Petal Blizzard and Surf thing.

So when I point to RRRRRR do I point to the first byte in Red? or to 49 02 10?
 

Trainer 781

Guest
0
Posts
Nevermind about the Petal Blizzard and Surf thing.

So when I point to RRRRRR do I point to the first byte in Red? or to 49 02 10?

The first red one.
'49 02 10' is highlighted because this is going to change when things like Rocky Helmet, Weakness Policy etc. will bi coded.
 
Last edited:
34
Posts
9
Years
  • Age 34
  • Seen Jun 26, 2016
Im trying to find the animation for the second turn of sky attack. The explanation in the threads don't apply to 2 turn moves. What do i do? Solarbeam and razorwind would be nice too but i just need the general idea of how to find the pointer for the second turn part not the glowing stuff. Thanks.
 

Exodrake

The Manliest Chick that Ever Manlied
163
Posts
10
Years
  • Age 30
  • Seen Nov 30, 2016
I posted this in Beginner's Lounge but it got ignored so I'm going to post it here since it's relevant. This is an animation for V-Create, but it freezes the game after the animation finishes so I'm posting it here for debugging purposes, not for use at this time.

Spoiler:


This animation was made using MrDollSteak's Rombase, and uses his Head Smash animation combined with Flame Wheel.

Here's a video showing what the animation looks like, and the freeze after its execution, in case this is diagnostically helpful (I set Flare Blitz to use the animation temporarily for testing convenience).
 
Back
Top