• Please stop embedding files/images from Discord. Discord has anti-hotlinking logic in place that breaks links to Discord hosted files and images when linked to from anywhere outside of Discord. There are a multitude of file/image hosting sites you can use instead.

    (more info here)

Quick Modding/Hacking Answers Thread

Feb 8, 2016 at 7:08 AM
Catz R cool
Modding Community Discord Moderator
"..."
Join Date: Nov 23, 2015
Location: Somewhere within a world far away from reality...
Posts: 381
Age: 24
Pronouns: he/him
Here's the code for damage:
PUSH [VALUE]
CALL 00419910
ADD ESP,4
So the damage code is in 419910.
Now let's check the data.
Address Hex dump Command
00419910 /$ 55 PUSH EBP
00419911 |. 8BEC MOV EBP,ESP
00419913 |. 83EC 08 SUB ESP,8
00419916 |. A1 E8E14900 MOV EAX,DWORD PTR DS:[49E1E8]
0041991B |. 83C8 02 OR EAX,00000002
0041991E |. 75 05 JNE SHORT 00419925
00419920 |. E9 23020000 JMP 00419B48
00419925 |> 0FB60D C8E649 MOVZX ECX,BYTE PTR DS:[49E6C8]
0041992C |. 85C9 TEST ECX,ECX
0041992E |. 74 05 JE SHORT 00419935
00419930 |. E9 13020000 JMP 00419B48
00419935 |> 6A 01 PUSH 1
00419937 |. 6A 10 PUSH 10
00419939 |. E8 026D0000 CALL 00420640
0041993E |. 83C4 08 ADD ESP,8
00419941 |. 0FB615 38E649 MOVZX EDX,BYTE PTR DS:[49E638]
00419948 |. 83E2 FE AND EDX,FFFFFFFE
0041994B |. 8815 38E64900 MOV BYTE PTR DS:[49E638],DL
00419951 |. C605 C8E64900 MOV BYTE PTR DS:[49E6C8],80
00419958 |. 833D 4CE64900 CMP DWORD PTR DS:[49E64C],1
0041995F |. 75 02 JNE SHORT 00419963
00419961 |. EB 0A JMP SHORT 0041996D
00419963 |> C705 70E64900 MOV DWORD PTR DS:[49E670],-400
0041996D |> 0FBF45 08 MOVSX EAX,WORD PTR SS:[ARG.1]
00419971 |. 0FBF0D CCE649 MOVSX ECX,WORD PTR DS:[49E6CC]
00419978 |. 2BC8 SUB ECX,EAX
0041997A |. 66:890D CCE64 MOV WORD PTR DS:[49E6CC],CX
00419981 |. 8B15 50E64900 MOV EDX,DWORD PTR DS:[49E650]
00419987 |. 81E2 80000000 AND EDX,00000080
0041998D |. 74 1C JE SHORT 004199AB
0041998F |. 0FBF05 CEE649 MOVSX EAX,WORD PTR DS:[49E6CE]
00419996 |. 85C0 TEST EAX,EAX
00419998 |. 7E 11 JLE SHORT 004199AB
0041999A |. 0FBF0D CEE649 MOVSX ECX,WORD PTR DS:[49E6CE]
004199A1 |. 83E9 01 SUB ECX,1
004199A4 |. 66:890D CEE64 MOV WORD PTR DS:[49E6CE],CX
004199AB |> 8B15 50E64900 MOV EDX,DWORD PTR DS:[49E650]
004199B1 |. 83E2 04 AND EDX,00000004
004199B4 |. 74 22 JE SHORT 004199D8
004199B6 |. A1 689C4900 MOV EAX,DWORD PTR DS:[499C68]
004199BB |. 6BC0 14 IMUL EAX,EAX,14
004199BE |. 8B88 D09B4900 MOV ECX,DWORD PTR DS:[EAX+499BD0]
004199C4 |. 2B4D 08 SUB ECX,DWORD PTR SS:[ARG.1]
004199C7 |. 8B15 689C4900 MOV EDX,DWORD PTR DS:[499C68]
004199CD |. 6BD2 14 IMUL EDX,EDX,14
004199D0 |. 898A D09B4900 MOV DWORD PTR DS:[EDX+499BD0],ECX
004199D6 |. EB 23 JMP SHORT 004199FB
004199D8 |> A1 689C4900 MOV EAX,DWORD PTR DS:[499C68]
004199DD |. 6BC0 14 IMUL EAX,EAX,14
004199E0 |. 8B4D 08 MOV ECX,DWORD PTR SS:[ARG.1]
004199E3 |. D1E1 SHL ECX,1
004199E5 |. 8B90 D09B4900 MOV EDX,DWORD PTR DS:[EAX+499BD0]
004199EB |. 2BD1 SUB EDX,ECX
004199ED |. A1 689C4900 MOV EAX,DWORD PTR DS:[499C68]
004199F2 |. 6BC0 14 IMUL EAX,EAX,14
004199F5 |. 8990 D09B4900 MOV DWORD PTR DS:[EAX+499BD0],EDX
004199FB |> 8B0D 689C4900 MOV ECX,DWORD PTR DS:[499C68]
00419A01 |. 6BC9 14 IMUL ECX,ECX,14
00419A04 |. 83B9 D09B4900 CMP DWORD PTR DS:[ECX+499BD0],0
00419A0B |. 0F8D DA000000 JGE 00419AEB
00419A11 |. 8B15 689C4900 MOV EDX,DWORD PTR DS:[499C68]
00419A17 |. 6BD2 14 IMUL EDX,EDX,14
00419A1A |. 83BA CC9B4900 CMP DWORD PTR DS:[EDX+499BCC],1
00419A21 |. 0F8E AC000000 JLE 00419AD3
00419A27 |. A1 689C4900 MOV EAX,DWORD PTR DS:[499C68]
00419A2C |. 6BC0 14 IMUL EAX,EAX,14
00419A2F |. 8B88 CC9B4900 MOV ECX,DWORD PTR DS:[EAX+499BCC]
00419A35 |. 83E9 01 SUB ECX,1
00419A38 |. 8B15 689C4900 MOV EDX,DWORD PTR DS:[499C68]
00419A3E |. 6BD2 14 IMUL EDX,EDX,14
00419A41 |. 898A CC9B4900 MOV DWORD PTR DS:[EDX+499BCC],ECX
00419A47 |. A1 689C4900 MOV EAX,DWORD PTR DS:[499C68]
00419A4C |. 6BC0 14 IMUL EAX,EAX,14
00419A4F |. 8B88 CC9B4900 MOV ECX,DWORD PTR DS:[EAX+499BCC]
00419A55 |. 83E9 01 SUB ECX,1
00419A58 |. 894D F8 MOV DWORD PTR SS:[LOCAL.2],ECX
00419A5B |. 8B15 689C4900 MOV EDX,DWORD PTR DS:[499C68]
00419A61 |. 6BD2 14 IMUL EDX,EDX,14
00419A64 |. 8B82 C89B4900 MOV EAX,DWORD PTR DS:[EDX+499BC8]
00419A6A |. 8945 FC MOV DWORD PTR SS:[LOCAL.1],EAX
00419A6D |. 8B4D FC MOV ECX,DWORD PTR SS:[LOCAL.1]
00419A70 |. 6BC9 0C IMUL ECX,ECX,0C
00419A73 |. 8B15 689C4900 MOV EDX,DWORD PTR DS:[499C68]
00419A79 |. 6BD2 14 IMUL EDX,EDX,14
00419A7C |. 8B45 F8 MOV EAX,DWORD PTR SS:[LOCAL.2]
00419A7F |. 8B8C81 603649 MOV ECX,DWORD PTR DS:[EAX*4+ECX+493660]
00419A86 |. 038A D09B4900 ADD ECX,DWORD PTR DS:[EDX+499BD0]
00419A8C |. 8B15 689C4900 MOV EDX,DWORD PTR DS:[499C68]
00419A92 |. 6BD2 14 IMUL EDX,EDX,14
00419A95 |. 898A D09B4900 MOV DWORD PTR DS:[EDX+499BD0],ECX
00419A9B |. 0FBF05 CCE649 MOVSX EAX,WORD PTR DS:[49E6CC]
00419AA2 |. 85C0 TEST EAX,EAX
00419AA4 |.^ 7E 2B JLE SHORT 00419AD1
00419AA6 |. 8B0D 689C4900 MOV ECX,DWORD PTR DS:[499C68]
00419AAC |. 6BC9 14 IMUL ECX,ECX,14
00419AAF |. 83B9 C89B4900 CMP DWORD PTR DS:[ECX+499BC8],0D
00419AB6 |.^ 74 19 JE SHORT 00419AD1
00419AB8 |. 6A 02 PUSH 2
00419ABA |. 6A 0A PUSH 0A
00419ABC |. 8B15 58E64900 MOV EDX,DWORD PTR DS:[49E658]
00419AC2 |. 52 PUSH EDX
00419AC3 |. A1 54E64900 MOV EAX,DWORD PTR DS:[49E654]
00419AC8 |. 50 PUSH EAX
00419AC9 |. E8 C211FFFF CALL 0040AC90
00419ACE |. 83C4 10 ADD ESP,10
00419AD1 |>^ EB 13 JMP SHORT 00419AE6
00419AD3 |> 8B0D 689C4900 MOV ECX,DWORD PTR DS:[499C68]
00419AD9 |. 6BC9 14 IMUL ECX,ECX,14
00419ADC |. C781 D09B4900 MOV DWORD PTR DS:[ECX+499BD0],0
00419AE6 |>^ E9 10FFFFFF JMP 004199FB
00419AEB |> 8B55 08 MOV EDX,DWORD PTR SS:[ARG.1]
00419AEE |. F7DA NEG EDX
00419AF0 |. 52 PUSH EDX
00419AF1 |. 68 58E64900 PUSH OFFSET 0049E658
00419AF6 |. 68 54E64900 PUSH OFFSET 0049E654
00419AFB |. E8 F0C00000 CALL 00425BF0
00419B00 |. 83C4 0C ADD ESP,0C
00419B03 |. 0FBF05 CCE649 MOVSX EAX,WORD PTR DS:[49E6CC]
00419B0A |. 85C0 TEST EAX,EAX
00419B0C |. 7F 3A JG SHORT 00419B48
00419B0E |. 6A 01 PUSH 1
00419B10 |. 6A 11 PUSH 11
00419B12 |. E8 296B0000 CALL 00420640
00419B17 |. 83C4 08 ADD ESP,8
00419B1A |. C605 38E64900 MOV BYTE PTR DS:[49E638],0
00419B21 |. 6A 40 PUSH 40
00419B23 |. 68 00140000 PUSH 1400
00419B28 |. 8B0D 58E64900 MOV ECX,DWORD PTR DS:[49E658]
00419B2E |. 51 PUSH ECX
00419B2F |. 8B15 54E64900 MOV EDX,DWORD PTR DS:[49E654]
00419B35 |. 52 PUSH EDX
00419B36 |. E8 15560500 CALL 0046F150
00419B3B |. 83C4 10 ADD ESP,10
00419B3E |. 6A 28 PUSH 28
00419B40 |. E8 4B7E0000 CALL 00421990
00419B45 |. 83C4 04 ADD ESP,4
00419B48 |> 8BE5 MOV ESP,EBP
00419B4A |. 5D POP EBP
00419B4B \. C3 RETN
EDIT: Looks like it removes XP as well; I think that you'll have to decipher the random stuff above for the XP I'm too lazy
EDIT: Also I think that the format thing doesn't work in this forum. Ceebs fixing it

If you want to remove HP without XP, you could always set a LI+ 000/ to add negative 1 health
or LI+00/9 for -2, LI+00/8 for -3, LI+00/7 for -4 etc.
Or you could remember the true negative values but I'm too lazy to check that either.​
 
Last edited:
Feb 14, 2016 at 5:08 AM
Junior Member
"Wow! The more I drink of this magical beverage, the more games I can play! Wheee!"
Join Date: Feb 11, 2016
Location:
Posts: 24
Pronouns: he/him
Does adding more maps to the game through cave editor (the most recent version, 0.99d, I believe) mess with the .exe file at all? I've run into a problem where after adding a few extra maps, the scripts don't work right on the higher numbered ones.
 
Last edited:
Feb 14, 2016 at 5:08 AM
In my body, in my head
Forum Moderator
"Life begins and ends with Nu."
Join Date: Aug 28, 2009
Location: The Purple Zone
Posts: 5998
Pronouns: he/him
do not add extra maps with cave editor
 
Feb 14, 2016 at 5:12 AM
Junior Member
"Wow! The more I drink of this magical beverage, the more games I can play! Wheee!"
Join Date: Feb 11, 2016
Location:
Posts: 24
Pronouns: he/him
do not add extra maps with cave editor
That is self-evident, I should think.
Is there any way I can add extra maps, or delete/replace the original ones en masse without having to go through the tedium of deleting/replacing the old ones individually?
 
Feb 14, 2016 at 5:19 AM
In my body, in my head
Forum Moderator
"Life begins and ends with Nu."
Join Date: Aug 28, 2009
Location: The Purple Zone
Posts: 5998
Pronouns: he/him
uhh.. with Booster's Lab?
 
Feb 14, 2016 at 5:35 AM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
I'd just recommend overwriting old maps as needed, since it's the least likely to mess up your executable.
 
Feb 14, 2016 at 4:12 PM
Based Member
"Life begins and ends with Nu."
Join Date: Dec 31, 2011
Location: United States
Posts: 2326
Age: 28
Pronouns: he/him
That is self-evident, I should think.
Is there any way I can add extra maps, or delete/replace the original ones en masse without having to go through the tedium of deleting/replacing the old ones individually?
To more directly answer your question, problems usually don't arise when you use Cave Editor's copy map feature and edit that copied map. If you use the "add map" feature, then this can make backgrounds have trouble displaying properly. Still, as GIR implied, it's really rare that you'll actually need to add a new map, so it's best to replace existing maps if you can. Also, I don't think Booster's Lab's add map feature is broken.
 
Feb 14, 2016 at 9:21 PM
Junior Member
"Fresh from the Bakery"
Join Date: Feb 9, 2016
Location:
Posts: 14
Pronouns: he/him
Q: Is there a way to skip the transition between screens?
 
Feb 15, 2016 at 3:29 PM
Junior Member
"Fresh from the Bakery"
Join Date: Feb 9, 2016
Location:
Posts: 14
Pronouns: he/him
You mean the fade out (<FAO) between rooms?
Well instead of:
Code:
<PRI<FAO0004<TRA0042:0094:0029:0080
Do:
Code:
<PRI<TRA0042:0094:0029:0080
And remove the fade in (<FAI) command from #0090, #0091, #0092, #0093 and #0094 if you really want to, but it won't change anything if you don't put a <FAO.
Thank you. I thought <FAI,<FAO meant "Fade In","Fade Out" for something else.
But, I can't find #0090.
 
Last edited:
Feb 15, 2016 at 3:32 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Pronouns: she/her
Oh important! If you're not using <FAO you shouldn't use <FAI either because otherwise it will still try to fade in but look really weird.
 
Feb 15, 2016 at 10:23 PM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
Where is the health Misery has to reach before she starts spawning the double/quadruple black rings around herself stored in the executable?
Probably a check in her enemyAI, I'd read it through to see if you can find it there if I were you.
 
Feb 16, 2016 at 5:59 AM
hi hi
"What're YOU lookin' at?"
Join Date: Oct 17, 2011
Location: probably somewhere else
Posts: 1111
Age: 27
Pronouns: maybe
@zxin

misery is not a big boss, she's an NPC kind of boss

p212633-0-cuhaqci.png

This is how much damage she can take before teleporting, edit the 50 (you can't exceed 7F so be careful here; unless you change the code a bit but I am too lazy to show you how atm)
e: okay, if you need this for some reason this should work for 80+
p212633-1-ocaxnuf.png

just fun stuff

As for the rings
p212633-2-nebn3g1.png

these two ^ & v
p212633-3-fzicp6h.png


cheers
 
Last edited:
Feb 16, 2016 at 7:26 AM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
Awesome, thanks. Still need help with the big bosses health, but this is a good start.
Also would someone be able to help me make the spur go trough solid entities?
I really would recommend you just take the time to learn ASM yourself, since finding a good hacker who is willing to help others with their projects on the forums will probably be difficult.
 
Feb 16, 2016 at 7:55 AM
hi hi
"What're YOU lookin' at?"
Join Date: Oct 17, 2011
Location: probably somewhere else
Posts: 1111
Age: 27
Pronouns: maybe
Awesome, thanks. Still need help with the big bosses health, but this is a good start.
Also would someone be able to help me make the spur go trough solid entities?
What do you mean by that? Because as far as I know Spur pierces the enemies (or does it only do that on kill?), and I can't really find any other meaning to that at the moment.
 
Feb 16, 2016 at 7:59 AM
Senior Member
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Jan 22, 2015
Location:
Posts: 249
I really would recommend you just take the time to learn ASM yourself, since finding a good hacker who is willing to help others with their projects on the forums will probably be difficult.
Other than me.
 
Feb 16, 2016 at 8:04 AM
The miracles of alchemy...!
Bobomb says: "I need a hug!"
Join Date: Jul 20, 2015
Location: Under sea level or something
Posts: 811
Age: 26
Pronouns: 菓子
What do you mean by that? Because as far as I know Spur pierces the enemies (or does it only do that on kill?), and I can't really find any other meaning to that at the moment.
solid entities
I think zxin refers to the invincible entities like Monster X's wheels, horizontal presses and most of Ballos during the second and third phases.
 
Feb 16, 2016 at 10:03 AM
hi hi
"What're YOU lookin' at?"
Join Date: Oct 17, 2011
Location: probably somewhere else
Posts: 1111
Age: 27
Pronouns: maybe
Indeed I do.
I want it to be able to go trough (with or without damaging) entities and bosses.
This might involve completely cutting out whatever checks for the solid entities.
That sounds at least a bit complicated. Well, I'm not touching it, I guess.
BUT:
Technically, you could make Spur fire an NPC instead of the bullet (the leading one) and make it spawn the trail bullets, I think that's the easiest solution to your problem, because NPCs can pass through other NPCs no matter what.
 
Feb 16, 2016 at 2:38 PM
Senior Member
"This is the greatest handgun ever made! You have to ask yourself, do I feel lucky?"
Join Date: Aug 15, 2015
Location: 0xDEADBEEF
Posts: 111
Pronouns: he/him
I tried. I really did. But for the love of hacking (and google), I cannot figure out how to into OllyDbg. D:
Basically my problem is, I noticed that OllyDbg doesn't show the entire executable's ASM code at once. It arbitrarily starts at 0x77A90000, and I cannot figure out how to make it show everything or how to jump to the proper address. [The inconsistencies in the Assembly Compendium's hex addresses is quite a prick in my side, but I think I can manage.]
 
Feb 16, 2016 at 3:01 PM
The miracles of alchemy...!
Bobomb says: "I need a hug!"
Join Date: Jul 20, 2015
Location: Under sea level or something
Posts: 811
Age: 26
Pronouns: 菓子
I tried. I really did. But for the love of hacking (and google), I cannot figure out how to into OllyDbg. D:
Basically my problem is, I noticed that OllyDbg doesn't show the entire executable's ASM code at once. It arbitrarily starts at 0x77A90000, and I cannot figure out how to make it show everything or how to jump to the proper address. [The inconsistencies in the Assembly Compendium's hex addresses is quite a prick in my side, but I think I can manage.]
You mean this?
p212643-0-z5pdahe.png

Might be a different version, but welp.
 
Back
Top