HyMyNameIsMatt said:
Under any other circumstance that would work, but I need to change it for the water from the Core fight, (yes I'm still on that) and a custom entity wouldn't move in the same ways as the original water. The only issue I'm really having is that entity 191 is in charge of moving the water, and The background set up only handles the way the frame errects get established. I simply can't find any CALL's the activate the under water timer because whater entity 191 is moving seems to elude me. I think it may be called or jumped to from the actual waters code which handles its other stuff.
God I hate ASM. While we're here, do you know how to increase the max image size to something bbigger than 320 x 240?
There's calls to 40C1D0 that initalizes an area for images, change the numbers that are called to make them larger or smaller. The first value pushed is the number of the image object. The underwater timer isn't activated by calls, it's by flag 0x100
Code:
CPU Disasm
Address Hex dump Command Comments
004186A1 |> \A1 909C4900 mov eax,[499C90]
004186A6 |. 05 00080000 add eax,800
004186AB |. 3905 58E64900 cmp [49E658],eax
004186B1 |. 7E 12 jle short 004186C5
004186B3 |. 8B0D 3CE64900 mov ecx,[49E63C]
004186B9 |. 81C9 00010000 or ecx,00000100
004186BF |. 890D 3CE64900 mov [49E63C],ecx
004186C5 |> 8BE5 mov esp,ebp
That is the code that checks whether the player is below the global water line. The code for setting "in water" via hitting tiles is different. This is located at the very tail end of the tile checking algorithm.
Lace said:
@nox, what about monster sine-wave?
what about it? >.>
HyMyNameIsMatt said:
I was editing some values on the level 3 bubbler's bullets, but after words the game began to crash whenever the weapon levels up from level 1 to level 2 the game crashes. I went back and changed everything back, but that didn't seem to help. Did editng some of those values change other values, (they were the pushes for CALL 40f350.)
Typically the only way to actually crash the game is to access out of bounds memory, divide by zero, or screw up the stack (which eventually causes one of the above to happen). If you justed edit the push to 40F350, I'm not sure how you could break it, besides changing the ADD ESP or the # of pushes given to the function.
Malpercio said:
hex edits will absolutely fuck you over unless you're careful where you type. unless you can figure out what got changed, i hope you have backups.
the part of me that knows SNES ASM says if the values you edited were in a subroutine, make sure you've pulled as many times as you pushed a value from/onto the stack. i dunno if that applies to x86 ASM tho.
This is true, but in my experience at least it's not a major concern because I dont' deal with stack push/pop beyond framing a function and using calls. If I want to access or store something on the stack, I'll MOV [ebp-n]
LunarSoul said:
Hey, I was wondering if there was a way to create a new boss? Is there some sort of group of TSC scripts to use? Or is there something you must hack? (I use CE, if it's any difference.)
Also, I tried to create a new map, but there's no background. Is there a way to fix this?
#1, please use the Quick answers thread for future questions (I merged it for you)
To create a new boss battle with a standard entity, simply use the TSC command <BSLXXXX where X is the entity's event number, as well give them the flag "Run script on death" and then in your TSC make event X what happens when they die (speech, explode, play fanfare, etc.)