Basic Questions & Answers thread

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

  1. STE

    STE

    Member
    221
    0
    16
    So yeah, this is probably a really stupid question, but I decided to port something random using xm4smps, but it appears every time I load the voices I have, it seems to crash? Does running this on Windows 7 Home Premium 64-bit affect anything (Yes I have the 64 bit build)? Or are my voices just broken? Any help is apprectiated.

    also I've been gone a long time, doubt anybody will remember me because I'm a faggot xd
     
  2. Spanner

    Spanner

    The Tool Member
    Try using the 32-bit build. A few people have had similar issues though.
     
  3. Selbi

    Selbi

    The Euphonic Mess Member
    1,501
    52
    28
    Northern Germany
    Sonic ERaZor
    In Sonic 2, you need to load besides Mappings also the letters you want for Title Cards.
    For the "X got through Act Y" messages, the mappings are in "Mappings\Sprites\obj3A.bin". But is there also a location to load the letters you need? And if yes, where is it?
     
  4. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,744
    338
    63
    SonLVL
    Well, I might as well ask here...
    Can anybody give me a general idea of how to edit the HUD? I'd like to replace "TIME #:##" with "MISN ###/###".
    I'd also like to edit the results screen mappings so that it doesn't call Amy Tails, but last time I tried that it just crashed.

    Both of these are for Sonic 2.
     
  5. STE

    STE

    Member
    221
    0
    16
    Yeah, tried that, still getting the 'xm4smps.exe has stopped working' after I load any voices. I have also tried changing compatibility to Admin and XP SP2 and still no luck. I have used this on various other OSes, but I have never got this error before. I would try to load some other voices, but seeing as I have been gone a very long time these are all I have.
     
  6. GT Koopa

    GT Koopa

    Member
    2,021
    18
    18
    Elgin, IL
    Flicky Turncoat DX, T.L.W.S. Vs M.G.W.
    I am working on this as well, but to start use SonMapEd. I know this isn't much, but it should point you in the right direction.

    But the technical stuff of customising those numbers to work the way you want, I don't know how to do. Well I know where the code is it is just I don't understand it. For Sonic 1 anyway.
     
  7. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,744
    338
    63
    SonLVL
    Yeah, but the HUD comes up mostly as garbage graphics, and editing the results screen makes the game crash.

    Also, for some reason when Amy jumps on an object she gets Tails' height... where do I fix this?
     
  8. Thorn

    Thorn

    Tech Member
    335
    19
    18
    Home
    Sonic 2 Retro Remix
    To do HUD editing, you should try going into your game and getting an HUD with a few numbers on it (so that you see actual edited art, not blank space to the left of a 0 score/ring count or something), then performing a VRAM dump. Open the VRAM dump in SonMapEd as uncompressed art, and load the HUD's mappings. Delete all 8x8 tiles from the start to the tile just before the HUD art, and there you have it.

    Understand that this is great for changing mappings around and saving them, but you'll want to be sure to take care in saving the art. The reason you see garbage when you don't use a VRAM dump is because the letters and numbers are separate files in the disassembly and the numbers are added to VRAM only when relevant. You won't find 0123456789 in the VRAM dump and mapped; you'll find only the numbers on display at the time. You won't want to save the number art this way, and you'll want to delete excess tiles to save the letters.
     
  9. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,744
    338
    63
    SonLVL
    Right... so it seems like first, I'll have to add more spaces for the time digits, and move the ring digits. It looks like I would need 6 more tiles. Is the space after the ring digits used for anything? Alternately I could replace the score counter or something...
     
  10. E-122-Psi

    E-122-Psi

    Member
    2,470
    612
    93
    Okay more Sonic 2 related queries (thanx for the anim location Selbi):

    * Is it possible to extend the number of sprites you can input into animations, since the game doesn't seem to recognise any after $EF.

    * Anyone by any chance know how to code the spin dash to activate running upright in the same manner as the peel out from CD?
     
  11. Selbi

    Selbi

    The Euphonic Mess Member
    1,501
    52
    28
    Northern Germany
    Sonic ERaZor
    If I don't get you wrong, you want a peelout like code, meaning doing a move when pressing up+jump. You could somehow copy over the spindash's code, rename the labels and other code to whatever you want, and look for two lines, the first one:
    Code (ASM):
    1. Sonic_CheckSpindash:
    2.     tst.b   spindash_flag(a0)
    3.     bne.s   Sonic_UpdateSpindash
    4. --> cmpi.b  #8,anim(a0)
    5.     bne.s   return_1AC8C
    6.     ...
    When people say, press down+jump, what the system actually does, is to check if the looking down animation is being displayed. At the top of my head, the looking up animation was #7.

    The second line you want is:
    Code (ASM):
    1. Sonic_UpdateSpindash:
    2.     move.b  (Ctrl_1_Held_Logical).w,d0
    3. --> btst    #1,d0
    4.     bne.w   Sonic_ChargingSpindash
    Here it really checks if the down button is pressed. Bit #0 is the up button, so you want to change it to that.

    That should do it.
     
  12. Spanner

    Spanner

    The Tool Member
    As part of a hack I'm making which takes the piss out of Dimps, I'd like to have it so that when you hit the speed shoes monitor, the music restarts with a quicker tempo. I've tried various methods but they haven't worked, mostly some sound effects won't work for some reason.

    Anyone able to help me with this issue?
     
  13. E-122-Psi

    E-122-Psi

    Member
    2,470
    612
    93
    Not exactly. I'm actually fine with how it is activated (since Amy's SA2/3 peelout is down and jump as well). It's more getting it so the character boosts forward running rather than in roll mode after you let go.
     
  14. Selbi

    Selbi

    The Euphonic Mess Member
    1,501
    52
    28
    Northern Germany
    Sonic ERaZor
    SOTI: I went to "loc_12A22:", and added these lines before the actual music stuff:
    Code (ASM):
    1.     moveq   #0,d0           ; clear d0
    2.     move.b  #$82,d0         ; load music, which is going to be restarted
    3.     move.w  d0,(Level_Music).w  ; store level music
    4.     jsr PlayMusic       ; play level music
    Now you only need to find out the current act and set the correct music, instead of $82. Take a look in "Levels:" and find something releated to "MusicList". I'm sure you'll find it.

    Psi: Sorry, but I'm quite lost here, what do you want? Press up+jump to make something like an instant peelout, without charging?
     
  15. Tidbit

    Tidbit

    Member
    Are there any specific sizes needed for pcx files to import into SonED2 correctly? Because all the sizes that I've tried so far haven't worked.
     
  16. E-122-Psi

    E-122-Psi

    Member
    2,470
    612
    93
    Buttons and charging similar to the spin dash but sends the character running rather than rolling. Basically the peel out's end result with the spin dash's activation method.
     
  17. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,744
    338
    63
    SonLVL
    I have done exactly that:
    In Sonic_CheckSpindash, find
    Code (ASM):
    1. move.b  #9,anim(a0)
    change it to
    Code (ASM):
    1. move.b  #1,anim(a0) ;Use walking/running animation.
    then in Sonic_UpdateSpindash, find
    Code (ASM):
    1.     ; unleash the charged spindash and start rolling quickly:
    2.     move.b  #$E,y_radius(a0)
    3.     move.b  #7,x_radius(a0)
    4.     move.b  #2,anim(a0)
    5.     addq.w  #5,y_pos(a0)    ; add the difference between Sonic's rolling and standing heights
    change it to
    Code (ASM):
    1.     ; unleash the charged spindash and start rolling quickly:
    2. ;   move.b  #$E,y_radius(a0)
    3. ;   move.b  #7,x_radius(a0)
    4.     move.b  #$1,anim(a0)
    5. ;   addq.w  #5,y_pos(a0)    ; add the difference between Sonic's rolling and standing heights
    then a little down, comment out the line
    Code (ASM):
    1. bset    #2,status(a0)
    under Sonic_ChargingSpindash, find
    Code (ASM):
    1. move.w  #$900,anim(a0)
    and change it to
    Code (ASM):
    1. move.w  #$1,anim(a0)
    Then, under SAnim_WalkRun, find
    Code (ASM):
    1.     lea (SonAni_Run).l,a1   ; use running animation
    2.     cmpi.w  #$600,d2        ; is Sonic at running speed?
    3.     bcc.s   +           ; use running animation
    4.     lea (SonAni_Walk).l,a1  ; if yes, branch
    5.     add.b   d0,d0
    6. +
    and change it to
    Code (ASM):
    1.     lea (SonAni_Run).l,a1   ; use running animation
    2.     cmpi.w  #$600,d2        ; is Sonic at running speed?
    3.     bcc.s   +           ; use running animation
    4.     tst.b   spindash_flag(a0)       ; is Sonic spindashing?
    5.     bne.s +     ; use running animation
    6.     lea (SonAni_Walk).l,a1  ; if yes, branch
    7.     add.b   d0,d0
    8. +
    And that should get you a dash that charges like the spindash without rolling.
     
  18. E-122-Psi

    E-122-Psi

    Member
    2,470
    612
    93
    It works soundly thanx a lot. :D

    By the way anyone know how to extend the sprite list past $EF in the anim coding? Any sprite number past that isn't recognised and screws up the animation.
     
  19. Go to SAnim_Do2 and change
    Code (ASM):
    1.     cmpi.b  #$F0,d0
    to
    Code (ASM):
    1.     cmpi.b  #$FC,d0
    That should do the trick. ($FC, $FD, $FE and $FF are used to signal various types of animation ends. Actually I don't think $FC's used, but just to be on the safe side).
     
  20. GT Koopa

    GT Koopa

    Member
    2,021
    18
    18
    Elgin, IL
    Flicky Turncoat DX, T.L.W.S. Vs M.G.W.
    SONIC1.ASM(19333) : Error : Illegal value (-32798)
    bsr.w mvsoniconptfm
    Errors during pass 1 - pass 2 aborted

    Ok, I have a problem. I noticed that I keep getting this error when I fool with the code, however I could always backtrack one step and everything would be fine.

    However I have reach the point this error is showing and I have no idea why, and I can't build. The weird part is I had built successfully many times right before when fooling with the asm file. It appeared seemingly out of nowhere. All I did was touch up on art in SonMapEd. My immediate backup seems to be busted as well. I have one more backup, but it is really old. Can anyone help?