don't click here

Basic Questions & Answers thread

Discussion in 'Engineering & Reverse Engineering' started by Tweaker, May 29, 2008.

  1. Hanoch

    Hanoch

    Also known as TheKnock, Birashot Member
    491
    0
    0
    Israel
    everything
    So each line is $3F bytes? Looks like it works like the object's SST.

    Edit: There is a slight problem. The layout piece wont fully disappear untill Its off the screen. Instead, sonic would just fall "through" it.
     
  2. Azu

    Azu

    I must be stupid. Member
    Something I have been wondering about. Is it possible to change what objects are in the debug mode's cycle via the game asm language? For say like S3&Knuckles?
     
  3. Yes, but you'll have to give them their own PLC thinger so they appear correctly while you're cycling though them in debug.
     
  4. snkenjoi

    snkenjoi

    Tech Member
    89
    7
    8
    Of course it's possible. What you really meant to say was "can someone tell me how to".

    Go to DebugOffs in the disassembly.


    The fuck you talking about?
     
  5. MarkeyJester

    MarkeyJester

    You smash your heart against the rocks Resident Jester
    2,316
    565
    93
    Japan
    He means that each debug item requires it's own VRam location to read from, of which you might want to change in order to see each of the items correctly.
     
  6. Mastered Realm

    Mastered Realm

    Member
    3,878
    591
    93
    -
    That zone from Sonic Rush is called Point W only in that cutscene before it? I'm just curious =P. I mean, no title card or data in the rom refering to that... Ok that is more a tech question but making a topic just for it is just ridiculous.
     
  7. Maxd

    Maxd

    Member
    661
    0
    0
    Alabama
    Mixin'
    I'm trying to edit Tails' sprite in Sonic Crackers, but because there are no DLPCs I am having trouble ripping and replacing all of Tails
    sprites. Any help with figuring out what is wrong with it would be greatly appreciated.

    EDIT: spelling
     
  8. Hanoch

    Hanoch

    Also known as TheKnock, Birashot Member
    491
    0
    0
    Israel
    everything
    Remember I tried to remove the layout piece? Im trying to do the same thing with an object (obj11 the bridge)
    Now first it checks the X position of sonic and if the conditions are met, it will check the object's RAM untill its finds the object. It did find it, but it didn't delete it at all.

    Here is the code:

    Code (ASM):
    1.  
    2.                 cmpi.w  #$2A70,($FFFFD008).w
    3.     bcc.s   locret_6EE8
    4. ; code to check object's RAM
    5.     lea     ($FFFFD800).w,a1
    6.     move.w  #$5F,d6
    7. GHZ3Trans_Loop:
    8.                 tst.b   1(a1)
    9.                 bpl.s   GHZ3Trans_cont
    10.                 cmpi.b  #$11,(a1)
    11.                 beq.s   GHZ3Trans_Action
    12. GHZ3Trans_cont:
    13.                 lea     $40(a1),a1
    14.                 dbf     d6,GHZ3Trans_Loop
    15.                
    16. GHZ3Trans_Action:
    17.                 move.b  #$8,$24(a1)     ; also tried calling a different routine, and DeleteObject.
    18. ; code to do the scene here
    19.  
    It didn't work. The other routine I tried to call was routine $6 of the bridge object, which also deletes it.

    @Maxd: Im not sure anyone knows how to hack sonic crackers. You should ask MarkeyJester for help if you are reffering to his disassembly.
     
  9. Azu

    Azu

    I must be stupid. Member

    Explain a bit more please?
     
  10. MainMemory

    MainMemory

    Has-Been Modder Tech Member
    4,819
    408
    63
    Myself
  11. FraGag

    FraGag

    Tech Member
    If you want to delete the object in a1, use DeleteObject2 instead of DeleteObject.
     
  12. Hayate

    Hayate

    Tech Member
    There's a LOT of routines in the disassembly called "Delete", which don't actually delete the object - they merely check whether the object needs to be deleted, and objects that have these routines are usually using them most of the time already. As FraGag said, call DeleteObject2. Also, note that bridge objects spawn a new object for every log - so you'll need to delete all of them, not just the first one.
     
  13. Azu

    Azu

    I must be stupid. Member
    Most you guys use NotePad++ to view and edit ASM files right?
    [​IMG]

    I get these odd symbols.
     
  14. FraGag

    FraGag

    Tech Member
    This is caused by IDA Pro, which expected you to open the file using a DOS code page. You can ignore these (or remove them if they annoy you), since they are in comments, which are ignored by the assembler.
     
  15. Hayate

    Hayate

    Tech Member
    I use EditPlus, so I told it to open the file with DOS encoding, then changed the encoding to UTF-8 and saved it. The file got about 10% bigger, but it fixed all the wrong characters.

    I've never used Notepad++, but I expect it'd have equivalent features to do this.
     
  16. Paps/KKM

    Paps/KKM

    Welcome to the nExt level Member
    2,375
    151
    43
    Portugal
    IDW's Sonic the Hedgehog comic books
    So.

    I have no knowledge of hacking.

    How hard would it be for me to do a simple change of Sonic's sprites in S3K to his Sonic 2 sprites?
     
  17. S3K? You could use sonik sprite for that, but you'll need to change the palette. It won't change the animation scripts or mappings, so for some animations, such as balancing, you'll need to think something up.

    Another way is through hex, but I haven't really hacked S3K so I wouldn't know...
     
  18. HighFrictionZone

    HighFrictionZone

    Hi. Member
    855
    1
    16
    Katy, Texas
    Nothing
    Right, so. I have a Sonic 1 hack. Is nice, yes? Anywho, it was made with one of the older disassemblies, and I'm not going to port it to the new one because shut up.
    Anyway, my question(s):
    I've got a Mid-air action coded. It's pretty cool.
    Problem: I can't quite figure out how to prevent the player from spamming it mid-air.
    I've got the general idea worked out: at some point in time I insert code which runs whenever Sonic is on the ground and which sets a single byte variable to 1. Then, whenever the code which checks for my mid-air action runs, it has to check this variable to make sure that the air-action can be performed (IE: is 1) before the code runs, then set the variable to 0 after the code runs - such that it cannot be performed again until Sonic lands on something.

    Which is where I'm having trouble.
    1 ) I need an open variable or whatever. Someplace to store the "can sawnik has mid-air aktshun?" boolean.
    2 ) Where do I put the code to set this variable to 1 such that it runs whenever Sonic is on the ground.

    I've pretty much got it figured out otherwise.
     
  19. nineko

    nineko

    I am the Holy Cat Tech Member
    6,420
    585
    93
    italy
    "variable"...

    You don't have variables here, only RAM locations.
    Pick a free RAM location and use it to store your flag. The last 4 bytes of RAM, for example, are only used for the checksum check, and are unused afterwards. So if you put your flag in $FFFFFFFF you're safe and sound. I assume you know how to alter the value of a RAM location.
     
  20. E-122-Psi

    E-122-Psi

    Member
    2,536
    729
    93
    *Waves hand up* Oh, oh, me, me...

    Okay I'm trying to work out to program new moves and abilities for my Sally hack, here is the sprite sheet of the custom moves if it helps:

    [​IMG]

    [​IMG]
    [​IMG]
    [​IMG]

    The jump spin kick is little more than a mid air variation of the standing kick by the way.

    Basically the list of stuff I need to figure out how to work is:

    *How to change her jump animation (I think it was mentioned I somehow have to program two different animations for both her ascend and descend) and make it vulnerable to enemies.
    *Trigger her attack animation to activate with 'B' (and make a radius that hits obstacles).
    *Program the wall jump (akin to Mighty and Sonic Crackers).
    *Deactivate being able to spin via 'Down' button (though keep spinning for necessary forced activations like the Green Hill chutes).

    I know this is a lot to ask for so it's more of asking for help for ANY of them rather than ALL of them.