Mar 8, 2011 at 6:26 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
It's impossible without assembly hacking

Assembly is the answer to every question

Even if the answer isn't assembly I can make it the answer

with assembly

I should go to sleep now.
 
Mar 8, 2011 at 6:29 AM
Lvl 1
Forum Moderator
"Life begins and ends with Nu."
Join Date: May 28, 2008
Location: PMMM MMO
Posts: 3713
Age: 32
Mar 8, 2011 at 6:32 AM
Absentee Modder
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Sep 7, 2010
Location: Outside your window. No no, don't check, it's okay
Posts: 272
Age: 29
Yeah, I thought that some assembly would be required.
I'm assuming you know how to do it, Nox? Please tell an assembly noob how to do it! It doesn't have to be me! Any assembly noob!
 
Mar 8, 2011 at 9:44 AM
Senior Member
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Jan 21, 2011
Location:
Posts: 249
Those little blade slashes have their own bullet ID. Set the damage to 0, and they should stop hurting stuff. In cave editor, "weapon ID 8 (24)" are the blade slashes.
 
Mar 8, 2011 at 12:50 PM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
I think he's referring to the effect when you fire the bullet, correct? What level is the blade?
 
Mar 8, 2011 at 2:06 PM
Absentee Modder
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Sep 7, 2010
Location: Outside your window. No no, don't check, it's okay
Posts: 272
Age: 29
Lace is correct. Level one, but it happens with any level of any weapon.
 
Mar 8, 2011 at 4:08 PM
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
Code:
00406BE0  |.  6A 00         PUSH 0                                   ; /Arg4 = 00000000
00406BE2  |.  6A 03         PUSH 3                                   ; |Arg3 = 00000003
00406BE4  |.  8B4D 08       MOV ECX,[EBP+8]                          ; |
00406BE7  |.  8B51 14       MOV EDX,[ECX+14]                         ; |
00406BEA  |.  52            PUSH EDX                                 ; |Arg2
00406BEB  |.  8B45 08       MOV EAX,[EBP+8]                          ; |
00406BEE  |.  8B48 10       MOV ECX,[EAX+10]                         ; |
00406BF1  |.  51            PUSH ECX                                 ; |Arg1
00406BF2  |.  E8 99400000   CALL TitleV3.0040AC90                    ; \TitleV3.0040AC90
00406BF7  |.  83C4 10       ADD ESP,10

This is the bad thing.

Code:
00406BE0     /E9 5E020000   JMP TitleV3.00406E43
00406BE5     |90            NOP
00406BE6     |90            NOP
00406BE7     |8B51 14       MOV EDX,[ECX+14]
00406BEA     |52            PUSH EDX
00406BEB     |8B45 08       MOV EAX,[EBP+8]
00406BEE     |8B48 10       MOV ECX,[EAX+10]                         ; |
00406BF1  |. |51            PUSH ECX                                 ; |Arg1
00406BF2  |. |E8 99400000   CALL TitleV3.0040AC90                    ; \TitleV3.0040AC90
00406BF7  |. |83C4 10       ADD ESP,10

This is how we fix it.
 
Mar 9, 2011 at 2:34 PM
Absentee Modder
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Sep 7, 2010
Location: Outside your window. No no, don't check, it's okay
Posts: 272
Age: 29
Thanks, Nox! I am further in your debt!
 
Mar 10, 2011 at 4:12 AM
I don't anymore.
"I'm sorry Mario, but your princess is in another castle."
Join Date: Aug 9, 2010
Location: Greener Pastures
Posts: 1190
Age: 30
I made the Nemesis at level 1 not spawn the smoke by setting that CALL so it would spawn an entity 0 instead. My issue is that, while it doesn't make the smoke any more, when every I fire the nemesis it makes a bunch of invisible entities that don't remove themselves and reach the max level of entities, which has been messing up one of my boss fights. So what is the prefered method of removing the smoke from the Nemesis?
 
Mar 10, 2011 at 4:12 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
NOP the hell out of it :orangebell:
 
Mar 10, 2011 at 4:32 AM
I don't anymore.
"I'm sorry Mario, but your princess is in another castle."
Join Date: Aug 9, 2010
Location: Greener Pastures
Posts: 1190
Age: 30
Much like every other time I did so, I had no success. The game crashed, could you give me the specific offsets to NOP?
 
Mar 10, 2011 at 4:35 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
If you're removing a function call, NOP everything from the first PUSH, to the ADD ESP after the CALL and that should be safe 98% of the time if it's a call to a function that returns void (which this one is)
 
Mar 10, 2011 at 4:42 AM
I don't anymore.
"I'm sorry Mario, but your princess is in another castle."
Join Date: Aug 9, 2010
Location: Greener Pastures
Posts: 1190
Age: 30
I belive I may have NOP'd the wrong offsets then, as I have figured out how CALL functions work, And did do it from those points. Was the smoke located in the gun or bullet code? And would it spawn an animated effect or an entity? It's been a while since .comi made that edit.
 
Mar 10, 2011 at 4:47 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
HyMyNameIsMatt said:
I belive I may have NOP'd the wrong offsets then, as I have figured out how CALL functions work, And did do it from those points. Was the smoke located in the gun or bullet code? And would it spawn an animated effect or an entity? It's been a while since .comi made that edit.

The smoke is located in the bullet code and it spawns an entity.
I haven't looked, .orgi just know.
 
Mar 10, 2011 at 4:58 AM
I don't anymore.
"I'm sorry Mario, but your princess is in another castle."
Join Date: Aug 9, 2010
Location: Greener Pastures
Posts: 1190
Age: 30
I trust you. I just renenbered that there is a rundum # generator CALL right before each entity CALL. Do those need to be NOP'd as well? Because if not, then I've hit a dead end.
 
Mar 10, 2011 at 5:09 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
A call to Random() can be left in, but if you want to take it out it will make no difference. Just make sure there's no wild PUSH or ADD ESP and it should be okay.
 
Mar 10, 2011 at 5:22 AM
I don't anymore.
"I'm sorry Mario, but your princess is in another castle."
Join Date: Aug 9, 2010
Location: Greener Pastures
Posts: 1190
Age: 30
I got it. As it turns out, deleting the random # generators made the game crash. Before I accidentaly deleted one of them and that made it crash. Crashing sucks. Thanks for the help.
 
Mar 10, 2011 at 6:33 PM
Senior Member
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Jan 21, 2011
Location:
Posts: 249
Code:
CPU Disasm
Address   Hex dump          Command                                  Comments
0042F5B5  |.  66:894A 50    MOV WORD PTR DS:[EDX+50],CX

What does the 'CX' mean/do?
 
Mar 10, 2011 at 6:38 PM
graters gonna grate
"Heavy swords for sale. Suitable for most RPG Protagonists. Apply now!"
Join Date: Jul 2, 2008
Location: &
Posts: 1886
Age: 31
CX refers to the lower 16-bits of the 32-bit ECX register. So, for example, if ECX contained the 4 bytes: 34 AF 6E 05, CX would be the 6E 05 part.

Good to know I'm not completely useless when it comes to assembly xD
 
Mar 11, 2011 at 2:19 AM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
GO CHEESE! :heart:
Yeah, as far as the main registers, CX is the lower half of ECX, CH is the upper half of CX, and CL is the lower half of CX. Same with EAX and EDX. I assume you're familiar with those/the special use registers?
 
Top