ThomasSpeedrunner Help Thread

Discussion in 'Discussion and Q&A Archive' started by ThomasThePencil, Jan 29, 2013.

Thread Status:
Not open for further replies.
  1. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    Quick question: Is it possible to use SMPS songs with the normal Sonic 2 sound driver? Or do I HAVE to port the Sonic 1 sound driver beforehand?
     
  2. nineko

    nineko I am the Holy Cat Member

    Joined:
    Mar 24, 2008
    Messages:
    1,902
    Location:
    italy
    Sonic 2 uses an SMPS driver too, so yes, of course, you can use custom SMPS songs with it. Compared to the Sonic 1 driver, it uses a few different flags, and it handles the tempo in a different way. Compared to most (all?) the other SMPS drivers, it uses compressed songs. Overall, Sonic 2's driver is probably the trickiest to work with.


    In this post I gave general tips about using custom songs in Sonic 3 & Knuckles, such as which tools can help you with that, I recommend you to read it since some concepts also apply to Sonic 2. Plus, you'll need something which can compress to the Saxman format, such as TSDC.


    If you end up deciding not to use Sonic 2's driver, don't give up to the temptation of using the Sonic 1 driver! If you really want to port another driver, port Sonic 3's or Sonic & Knuckles'.
     
    Last edited by a moderator: Feb 15, 2013
  3. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    I would use S3K's sound driver, but there is absolutely NO documentation on how to port it to S2. So unless somebody gives a guide on porting S3K's sound driver to S2, I'm afraid I'll need to use the Sonic 1 sound driver (because I really don't feel like screwing around with the Sonic 2 sound driver).

    EDIT: If you don't want me to use the Sonic 1 sound driver, then can you at least give me a guide for porting the S3/SK sound driver to Sonic 2 using the Hg disassembly (I'm guessing the answer is no, since almost nobody uses the Hg disassembly other than myself, so even an Xenowhirl-based guide will do. I could then adapt said guide to work with the Hg disassembly.)?
     
    Last edited by a moderator: Feb 15, 2013
  4. nineko

    nineko I am the Holy Cat Member

    Joined:
    Mar 24, 2008
    Messages:
    1,902
    Location:
    italy
    Sadly I never tried to port the Sonic 3 driver to Sonic 2, but you're right, apparently there are no guides for that. I found only a few unrelated things which might help: 1, 2, 3, 4, 5. But even with those, you'd still have a lot of work to do, so nevermind, just go ahead and use Sonic 1's driver, I guess.
     
    Last edited by a moderator: Feb 15, 2013
  5. redhotsonic

    redhotsonic Also known as RHS Member

    Joined:
    Aug 10, 2007
    Messages:
    2,969
    Location:
    England
    Why not download S3's disassembly yourself and study it and try to port it over? Yes, it's going to be tough and yes, it's going to take a lot of work and yes, it's going to take weeks, even months.


    But if you can do that, you can then make a guide and share it out. Then you will be well known for guiding people on using S3's driver rather than S1.
     
  6. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    I'm actually still thinking about adding Shadow, Mighty, and Amy to my hack, but although the possibility is still in the cards, it isn't very likely, and if it does happen, it won't be anytime soon. This is because I'm still in the process of:

    [a] revamping Corrosion Plant Zone's layouts to make them less, you know, "hold right to win", as some would say about the current layouts :/

    coding the secret character and making his sprites, which I know is gonna be a pain in the arse to do XD


    [c] finding a decent program that I can freely edit art with


    [d] coming up with a new name for Sky Chase Zone (not much of a problem, but it's still fairly important)


    So...yeah, I'd definitely say this is a difficult hack to make :p
     
    Last edited by a moderator: Feb 15, 2013
  7. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    On a different matter, can someone help me with adding the Super Peel-Out to Sonic's moveset? I have this for Obj01_MdNormal:


    Code:
    
    
    Obj01_MdNormal:
    
        bsr.w    Sonic_CheckSpindash
    
        bsr.w    Sonic_CheckSuperPeelOut
    
        bsr.w    Sonic_Jump
    
        bsr.w    Sonic_SlopeResist
    
        bsr.w    Sonic_Move
    
        bsr.w    Sonic_Roll
    
        bsr.w    Sonic_LevelBound
    
        jsr      (ObjectMove).l
    
        bsr.w    AnglePos
    
        bsr.w    Sonic_SlopeRepel
    
    
    
    
    I have a "Sonic_CheckSuperPeelOut:" label, but all I have under it is an rts. Can someone please tell me what I should put under the aforementioned label? If you can, I say thank you in advance.
     
    Last edited by a moderator: Feb 15, 2013
  8. Ravenfreak

    Ravenfreak Still hacking the 8-bit titles Member

    Joined:
    Feb 10, 2010
    Messages:
    410
    Location:
    O'Fallon, MO
    The super peel-out is very similar to the Spindash, so you could virtually just use the Spindash code but just slightly modify it. Plus you'd need to add the animations as well.
     
  9. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    Not necessarily. Three major differences here:

    1. - The spindash allows for multiple charges, while the Super Peel-Out can only be charged once.
    2. - The spindash shoots Sonic off in a rolling state, while the Super Peel-Out shoots Sonic off in a super-fast running state.
    3. - The spindash's animation is in the Sonic 2 disassembly by default, while the Super Peel-Out does not have any disassembly assigned to it because there are no disassemblies of Sonic CD.
    How do I overcome these problems?
     
    Last edited by a moderator: Feb 16, 2013
  10. SuperEgg

    SuperEgg I'm a guy that knows that you know that I know Member

    Joined:
    Oct 17, 2009
    Messages:
    Location:
    THE BEST GOD DAMN STATE OF TEXAS
    Just port the Sonic 2 beta version of the spindash. It's pretty similar enough
     
  11. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    I don't see how the S2B spindash and the Super Peel-Out are similar, but if you insist, I'll give it a go.
     
  12. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    What the hell does this code:


    Code:
    
    
    Sonic_Spindash: ; Offset_0x010560:
    
                    tst.b   $0039(A0)
    
                    bne.s   Offset_0x010594
    
                    cmpi.b  #$08, $001C(A0)
    
                    bne.s   Offset_0x010592
    
                    move.b  ($FFFFF603).w, D0
    
                    andi.b  #$70, D0
    
                    beq     Offset_0x010592
    
                    move.b  #$09, $001C(A0)
    
                    move.w  #$00BE, D0
    
                    jsr     (Play_Sfx)              ; Offset_0x0014C6
    
                    addq.l  #$04, A7
    
                    move.b  #$01, $0039(A0)
    
    Offset_0x010592:
    
                    rts
    
    Offset_0x010594:
    
                    move.b  ($FFFFF602).w, D0
    
                    btst    #$01, D0
    
                    bne.s   Offset_0x0105DA
    
                    move.b  #$0E, $0016(A0)
    
                    move.b  #$07, $0017(A0)
    
                    move.b  #$02, $001C(A0)
    
                    addq.w  #$05, $000C(A0)
    
                    move.b  #$00, $0039(A0)
    
                    move.w  #$2000, ($FFFFEED0).w
    
                    move.w  #$0800, $0014(A0)
    
                    btst    #$00, $0022(A0)
    
                    beq.s   Offset_0x0105D2
    
                    neg.w   $0014(A0)
    
    Offset_0x0105D2:
    
                    bset    #$02, $0022(A0)
    
                    rts
    
    Offset_0x0105DA:
    
                    move.b  ($FFFFF603).w, D0
    
                    andi.b  #$70, D0
    
                    beq     Offset_0x0105E8
    
                    nop
    
    Offset_0x0105E8:
    
                    addq.l  #$04, A7
    
                    rts
    
    
    
    
    have in common with the Super Peel-Out?
     
    Last edited by a moderator: Feb 16, 2013
  13. SuperEgg

    SuperEgg I'm a guy that knows that you know that I know Member

    Joined:
    Oct 17, 2009
    Messages:
    Location:
    THE BEST GOD DAMN STATE OF TEXAS
    If you give me a half a day, I could have an answer for you.
     
  14. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    I don't have a very large amount of time, so i will need a way to retrieve the Super Peel-Out code from Sonic CD or similar. Does anyone have knowledge of the code making up the Super Peel-Out? (I'd prefer a Sonic 2-prepared version of said code, but a Sonic 1 version could potentially work also.)
     
  15. SuperEgg

    SuperEgg I'm a guy that knows that you know that I know Member

    Joined:
    Oct 17, 2009
    Messages:
    Location:
    THE BEST GOD DAMN STATE OF TEXAS
    Yeah....no. Nobody has made a full Sonic CD disassembly, or if somebody has, released it. The only way you're gonna get the Peelout is if you code it yourself. I may release some unfinished code later that way you can play around with it, but as far from Sonic CD, you're barking up the wrong tree.

    Why don't you have a large amount of time? Are you in a hurry to release your hack? If so, I suggest you slow down there, otherwise you could possibly see a repeat of Sonic 2 Ultimate.
     
  16. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    Damn. That doesn't give me very much hope.

    Actually, there are three different moves I want to implement, and they're all quite important:

    Sonic:

    - Super Peel-Out

    - Jumpdash/Homing Attack

    Tails:

    - Flight

    ...

    Of course, there's also the fact that I'm currently coding my special character and trying to find a decent program to make his sprites with, plus I'm revamping several current level layouts (I've got Corrosion Plant Act 1's revamp in progress). So I need to be able to test new abilities and level layouts without taking too much time. The special character is going to have several different moves and I will need a lot of time to test him when the time comes. So yeah.
     
  17. MainMemory

    MainMemory Well-Known Member Member

    Joined:
    Mar 29, 2011
    Messages:
    922
    ThomasSpeedrunner, it seems like you're averse to even trying to understand how the game works. I was able to turn Sonic's spindash into a peel-out analogue (using his normal running animation) in my first hack, just by looking around the code.
     
  18. ThomasThePencil

    ThomasThePencil resident psycho Member

    Joined:
    Jan 29, 2013
    Messages:
    910
    Location:
    the united states. where else?
    You see, I've actually got lots of new abilities planned for the special character.

    And what does "averse" mean? 
     
  19. Spanner

    Spanner The Tool Member

    Joined:
    Aug 9, 2007
    Messages:
    2,570
    Why don't you figure things out yourself for once rather than get other people to do everything for you all the time? Because that's all I've seen from you. Do something yourself for once because people aren't going to help you all the time, in fact they will probably have stopped now.
     
  20. SuperEgg

    SuperEgg I'm a guy that knows that you know that I know Member

    Joined:
    Oct 17, 2009
    Messages:
    Location:
    THE BEST GOD DAMN STATE OF TEXAS
    Sigh, were to start. I'm just gonna make a checklist, if you don't mind.....

    1. There has only been two people helping you out, MainMemory and I. The fact that over five pages of this thread is you asking questions is scary. I realize you are new to the site, hacking, and this shit in general, but still, FIVE FUCKING PAGES? How can you even justify that?

    2. This isn't just directed at you, this is directed at all these new little fuckerz that join every fucking minute and just ask questions without ANY insight or effort on your part. I swear, I come on here and I see.....  "I can't port Knucklz, Plz help me" or "I have this out of branch error, that is bsr, what should I do now?" OR.... "How can I port in musicz into Sonic gamez? I've just started hacking and really want to add it in. HELP PLEAZE!?!?!?!?1?!!?!?!?"

    And some people think I'm exaggerating when I say a lot of the recent hackers coming into the scene are just painfully dumb. This is the kind of shit I see, and it frightenz me. There are guides for a reason people.

    3. Stop being a pussy and experiment. Nearly 80% of the decent and above hackers in the scene do it. You can't just expect somebody to know it and you just ask. It's ridiculous. Nearly half the stuff I do is purely based on experiment.

    "Hmm, if I do A, then B will happen." If it doesn't, then play around. The best way to code something is to experiment. No questions ask.

    4. LEARN THE FUCKING LANGUAGE! Sweet Baby Jesus on rye, I CAN NOT address this point enough. Seriously, if you don't want to read a monotonous guide on instructions, play around with it. I've literally learned half of the language just by pure studying what each line does if you change it. 

    5. If the two above aren't the reasons you keep asking, then you're fucking lazy. If you expect people to just hand you shit on a FUCKING silver platter, then you and every other newb are dead fucking wrong. I swear, you people can't do shit because you're to lazy, then get the fuck out.

    There is my rant, I shall be awaiting my suspension now.
     
    Last edited by a moderator: Feb 17, 2013
Thread Status:
Not open for further replies.