Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[solved] Platforming System States (Running, Walking, Standing)
#7
(07-02-2009, 02:57 AM)1477 Wrote:  @ Silva

Do you mind telling me where the running state ends, or how I may find the ending? Throwing me just the beginning is kinda harsh, especially since I have no clue how to look for the ending of any one feature, as ASM is just one long list of commands. Do I just look for an unconditional jump? Also, how does the engine detect input? How does it link to those stop frames?

By the way, since you probably aren't going to help very much in teaching me ASM, do you know where to find good tutorials (especially on weird commands like CDQ and FSTD that I've never seen before :D). I'm pretty sure you gave Nave a little bit more help than this...


~Solomon Leung

00406551 |. 83BC0F AC07000>|CMP DWORD PTR DS:[EDI+ECX+7AC],2
00406559 0F85 96020000 JNZ lf2_pers.004067F5

If state isn't equal to two, jump to 004067F5. That is probably the end.

Look at: http://spreadsheets.google.com/ccc?key=r...TUlwfdZHYQ . That lists the documented offsets for the lf2 objects. D0 = Right . In game that will look something like [eax+0d0] , obviously EAX can be something else, depending on where you are in the code.

cmp byte ptr ds:[eax+0d0],1
JNZ didn't_press_right

Stuff goes here!

didn't_press_right:

Continue rest of code

I guess that is how you can write your code. 0 = pressed, 1 = unpressed. You should also check the list to see the "Holding >" part. I'm guessing that is how Nave differentiates between "walking" and "running".

For asm tutorials > Google. I don't know any. If I ever encounter a command I don't know, and it is actually crucial(99% of the time it isn't), I google it :p.

Actually, most of the help I gave Nave was explaining how the idiv command worked, so that he could create 3xxxxxxxxxxxxxxxxxxxxxxx or something stupid like that, since he is using 5xxx, it probably means he gave up on it :p. Looking at your code from the dll thread, I already know you figured out how it works.

I think I'll repeat my self again. Finish the DC part first. Try to think about what you want. Nave new exactly what he wanted, so it was much easier for him to accomplish. You are just looking for code with no purpose, you don't even know what you are looking for. That is never a good thing.

PS: Finding the start of the code is always the hardest part...
[Image: doty7Xn.gif]

10 ʏᴇᴀʀs sɪɴᴄᴇ ɪʀᴄ ɢᴏᴏᴅ.ɪ ᴡᴀʟᴋ ᴛʜʀᴏᴜɢʜ ᴛʜᴇ ᴇᴍᴘᴛʏ sᴛʀᴇᴇᴛs ᴛʀʏɪɴɢ ᴛᴏ ᴛʜɪɴᴋ ᴏғ sᴏᴍᴇᴛʜɪɴɢ ᴇʟsᴇ ʙᴜᴛ ᴍʏ ᴘᴀᴛʜ ᴀʟᴡᴀʏs ʟᴇᴀᴅs ᴛᴏ ᴛʜᴇ ɪʀᴄ. ɪ sᴛᴀʀᴇ ᴀᴛ ᴛʜᴇ sᴄʀᴇᴇɴ ғᴏʀ ʜᴏᴜʀs ᴀɴᴅ ᴛʀʏ ᴛᴏ sᴜᴍᴍᴏɴ ᴛʜᴇ ɢᴏᴏᴅ ɪʀᴄ. ɪ ᴡᴀᴛᴄʜ ᴏᴛʜᴇʀ ɪʀᴄ ᴄʜᴀɴɴᴇʟs ʙᴜᴛ ɪᴛ ɪs ɴᴏ ɢᴏᴏᴅ. ɪ ᴘᴇsᴛᴇʀ ᴢᴏʀᴛ ᴀɴᴅ ᴛʀʏ ᴛᴏ ʀᴇsɪsᴛ ʜɪs sᴇxɪɴᴇss ʙᴜᴛ ɪᴛ ɪs ᴀʟʟ ᴍᴇᴀɴɪɴɢʟᴇss. ᴛʜᴇ ᴇɴᴅ ɪs ɴᴇᴀʀ.ɪ ᴛʜᴇɴ ᴜsᴜᴀʟʟʏ ʀᴇᴀᴅ sᴏᴍᴇ ᴏʟᴅ ɪʀᴄ ʟᴏɢs ᴀɴᴅ ᴄʀʏ ᴍʏsᴇʟғ ᴛᴏ sʟᴇᴇᴘ.


Reply
Thanks given by:


Messages In This Thread
RE: Platforming System States (Running, Walking, Standing) - by Boop - 07-02-2009, 06:55 AM



Users browsing this thread: 1 Guest(s)