Sonic 3C(ustomizable)

Discussion in 'Engineering & Reverse Engineering' started by Hayate, Jan 2, 2010.

Thread Status:
Not open for further replies.
  1. E-122-Psi

    E-122-Psi

    Member
    2,115
    298
    63
    <!--quoteo(post=462155:date=Jun 1 2010, 05:44 PM:name=Hayate)--><div class='quotetop'>QUOTE (Hayate @ Jun 1 2010, 05:44 PM) <a href="index.php?act=findpost&pid=462155">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo(post=462138:date=Jun 1 2010, 10:17 PM:name=E-122-Psi)--><div class='quotetop'>QUOTE (E-122-Psi @ Jun 1 2010, 10:17 PM) <a href="index.php?act=findpost&pid=462138">[​IMG]</a></div><div class='quotemain'><!--quotec-->Playing with Amy is fun but I'd advise having her hammer move activate with a certain button rather than Down and Jump.<!--QuoteEnd--></div><!--QuoteEEnd-->

    The reason I used Down+Jump was to avoid using more than one button, since that nerfs debug mode. I will, however, add an option sometime to put both her air and ground attacks exclusively on one button (A, B or C, whichever you like) with the other buttons being used for jump.<!--QuoteEnd--></div><!--QuoteEEnd-->

    Ah, makes sense (I have that problem when making multiple button hacks too). By the way, is the hammer a separate object? As I noticed that if the attack hits with Amy rather than the hammer she gets hurt. This makes things a bit fiddly, I'd advise either just making Amy's object attack during the animation or using a larger object (maybe like the hearts in Advance).

    I'm fine with either button, given recent discussions however, I'd heavily advise B.

    <!--quoteo(post=462155:date=Jun 1 2010, 05:44 PM:name=Hayate)--><div class='quotetop'>QUOTE (Hayate @ Jun 1 2010, 05:44 PM) <a href="index.php?act=findpost&pid=462155">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->By the way will Tails be able to fly Knux around like with Sonic in the final version? (the Marble Garden glitch suggests it is somehow possible).<!--QuoteEnd--></div><!--QuoteEEnd-->

    Ironically the first feature I implemented after releasing 1.1 was making Tails be able to grab anybody. On the contrary to what nineko said, it was the easiest fix ever: I just had to comment out two lines which checked whether the character was Sonic and Tails together.
    <!--QuoteEnd--></div><!--QuoteEEnd-->

    I eagerly await revision 1.2. :)

    *twiddles thumbs, looks at watch*
     
  2. Hayate

    Hayate

    Tech Member
    <!--quoteo(post=462182:date=Jun 1 2010, 11:32 PM:name=E-122-Psi)--><div class='quotetop'>QUOTE (E-122-Psi @ Jun 1 2010, 11:32 PM) <a href="index.php?act=findpost&pid=462182">[​IMG]</a></div><div class='quotemain'><!--quotec-->By the way, is the hammer a separate object? As I noticed that if the attack hits with Amy rather than the hammer she gets hurt.<!--QuoteEnd--></div><!--QuoteEEnd-->

    Nope, there is no hammer object (unless debug mode is on, in which case it does create an object which shows a ring sprite at the hammer's location, but this doesn't actually do anything gameplay-wise).

    The hammer position is stored relative to Amy's position in Amy's SST. Collisions are done with a special routine which adds the positions and then behaves similarly to TouchResponse.

    The fact that Amy can still get hurt while attacking is entirely intentional. Playing as Amy is supposed to require more skill and timing than Sonic, if you don't want to lose your rings.

    I had fun practicing landing on the AIZ midboss with the correct timing to score six hits in a single jump, I hope other players will enjoy this challenge (in all bosses, of course!) too :)

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->I'm fine with either button, given recent discussions however, I'd heavily advise B.<!--QuoteEnd--></div><!--QuoteEEnd-->

    I wasn't asking you which button I should use - the option of A, B, C or the default Down+Jump will be given in the customizer.
     
  3. E-122-Psi

    E-122-Psi

    Member
    2,115
    298
    63
    You mean like it recognises which sprites and/or directions Amy is in and checks them as invincible? It's a nice idea, but even then I would maybe enable a little more time and freedom for her attack, or edit her radius when using the move, it seems a tad too precise.

    Well with any button, you're saving a lot of commotion anyway. :v:
     
  4. Hayate

    Hayate

    Tech Member
    <!--quoteo(post=462199:date=Jun 1 2010, 11:49 PM:name=E-122-Psi)--><div class='quotetop'>QUOTE (E-122-Psi @ Jun 1 2010, 11:49 PM) <a href="index.php?act=findpost&pid=462199">[​IMG]</a></div><div class='quotemain'><!--quotec-->You mean like it recognises which sprites and/or directions Amy is in and checks them as invincible?<!--QuoteEnd--></div><!--QuoteEEnd-->

    Well, it doesn't check directions or animation frames. It just tells enemies to die if they're in a certain box, which is always on a certain side of Amy, so if she jumps into something from that side, the enemy dies before it can hurt her.
     
  5. DigitalDuck

    DigitalDuck

    Arriving four years late. Member
    5,034
    191
    43
    Lincs, UK
    TurBoa, S1RL
    <!--quoteo(post=462196:date=Jun 1 2010, 11:45 PM:name=Hayate)--><div class='quotetop'>QUOTE (Hayate @ Jun 1 2010, 11:45 PM) <a href="index.php?act=findpost&pid=462196">[​IMG]</a></div><div class='quotemain'><!--quotec-->I wasn't asking you which button I should use - the option of A, B, C or the default Down+Jump will be given in the customizer.<!--QuoteEnd--></div><!--QuoteEEnd-->

    I'd recommend using B as the 'default' option, though.
     
  6. <!--quoteo(post=462155:date=Jun 1 2010, 05:44 PM:name=Hayate)--><div class='quotetop'>QUOTE (Hayate @ Jun 1 2010, 05:44 PM) <a href="index.php?act=findpost&pid=462155">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Also Knux dies upon entering his boss area in Angel Island in co-op mode (you probably know this already but to be safe).<!--QuoteEnd--></div><!--QuoteEEnd-->

    Every character apart from Knuckles alone dies when entering this area. I remember investigating this thoroughly before my hiatus, and couldn't find any reason why this happens. So unless someone else finds the answer or I magically stumble upon something, I don't think this will be fixed any time soon, I'm afraid.
    <!--QuoteEnd--></div><!--QuoteEEnd-->

    I don't know how much help this will be...but in Sonic 3 alone... <a href="http://www.youtube.com/watch?v=ZTUYiC69pa4" target="_blank">Sonic lives in Knuckles' half</a>.
     
  7. Aberdorf

    Aberdorf

    Member
    21
    0
    1
    1967
    Are you planning of making an equivalent of those options (.exe) for the Mac OS X?

    I really like this thing, never finished Sonic 3 or Sonic & Knuckles (or Sonic 3 & Knuckles), so right in time to finish the game, in time for Sonic 4.

    Thanks a lot.
     
  8. Great that this is still being worked on. I like amy, but can we have her use her hammer to destroy blocks? I want to get the speed shoes, but she can't hit it. :(
     
  9. SMTP

    SMTP

    Tech Member
    <!--quoteo(post=462303:date=Jun 1 2010, 10:41 PM:name=RGamer2009)--><div class='quotetop'>QUOTE (RGamer2009 @ Jun 1 2010, 10:41 PM) <a href="index.php?act=findpost&pid=462303">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo(post=462155:date=Jun 1 2010, 05:44 PM:name=Hayate)--><div class='quotetop'>QUOTE (Hayate @ Jun 1 2010, 05:44 PM) <a href="index.php?act=findpost&pid=462155">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Also Knux dies upon entering his boss area in Angel Island in co-op mode (you probably know this already but to be safe).<!--QuoteEnd--></div><!--QuoteEEnd-->

    Every character apart from Knuckles alone dies when entering this area. I remember investigating this thoroughly before my hiatus, and couldn't find any reason why this happens. So unless someone else finds the answer or I magically stumble upon something, I don't think this will be fixed any time soon, I'm afraid.
    <!--QuoteEnd--></div><!--QuoteEEnd-->

    I don't know how much help this will be...but in Sonic 3 alone... <a href="http://www.youtube.com/watch?v=ZTUYiC69pa4" target="_blank">Sonic lives in Knuckles' half</a>.
    <!--QuoteEnd--></div><!--QuoteEEnd-->

    Thats because the coding for Knuckles' boss/screen resizing isnt in Sonic 3 Alone...
     
  10. <!--quoteo(post=462060:date=Jun 1 2010, 11:02 PM:name=Selbi)--><div class='quotetop'>QUOTE (Selbi @ Jun 1 2010, 11:02 PM) <a href="index.php?act=findpost&pid=462060">[​IMG]</a></div><div class='quotemain'><!--quotec-->So this is a bugfixed and slightly customized version of S3 right? It shouldn't be too hard, so you might wanna have a look at this (unless you wanna keep hidden stuff like this in):
    <a href="http://www.youtube.com/watch?v=GNdl8neiCBo" target="_blank">http://www.youtube.com/watch?v=GNdl8neiCBo</a>

    Can't say anything else to it, really. This is the first time I read this topic, I always just clicked "mark as read" before. :v:<!--QuoteEnd--></div><!--QuoteEEnd-->
    Just for reference, the coordinates of all the double rings in S3K are:

    Code (Text):
    1. AIZ 1
    2. 1EB0 04C4
    3.  
    4. HCZ 2
    5. 2040 01D6
    6.  
    7. ICZ 1
    8. 4E34 01AC
    9. 4E4C 01AC
    10.  
    11. FBZ 2
    12. 2964 08B8
    13.  
    14. LRZ 1
    15. 12A8 0660
    16. 12C8 0660
    17. 12E8 0660
    18. 1308 0660
    19. 23D8 0578
     
  11. Hayate

    Hayate

    Tech Member
    <!--quoteo(post=462310:date=Jun 2 2010, 03:53 AM:name=Aberdorf)--><div class='quotetop'>QUOTE (Aberdorf @ Jun 2 2010, 03:53 AM) <a href="index.php?act=findpost&pid=462310">[​IMG]</a></div><div class='quotemain'><!--quotec-->Are you planning of making an equivalent of those options (.exe) for the Mac OS X?<!--QuoteEnd--></div><!--QuoteEEnd-->

    I can't compile to Mac, but I will release the source code for the customizer with the next major release (I.e. 2.0). Alternatively, you could use WINE.


    <!--quoteo(post=462329:date=Jun 2 2010, 04:50 AM:name=Magickoopa24)--><div class='quotetop'>QUOTE (Magickoopa24 @ Jun 2 2010, 04:50 AM) <a href="index.php?act=findpost&pid=462329">[​IMG]</a></div><div class='quotemain'><!--quotec-->Great that this is still being worked on. I like amy, but can we have her use her hammer to destroy blocks? I want to get the speed shoes, but she can't hit it. :(<!--QuoteEnd--></div><!--QuoteEEnd-->

    Her hammer is supposed to destroy all kinds of breakable blocks, including Knuckles-only ones. However, some haven't been programmed to react to the hammer yet, and strangely, some will break whenever the hammer is swung no matter where on the screen the hammer is (e.g. MGZ breakable blocks).

    <!--quoteo(post=462394:date=Jun 2 2010, 09:44 AM:name=shobiz)--><div class='quotetop'>QUOTE (shobiz @ Jun 2 2010, 09:44 AM) <a href="index.php?act=findpost&pid=462394">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo(post=462060:date=Jun 1 2010, 11:02 PM:name=Selbi)--><div class='quotetop'>QUOTE (Selbi @ Jun 1 2010, 11:02 PM) <a href="index.php?act=findpost&pid=462060">[​IMG]</a></div><div class='quotemain'><!--quotec-->So this is a bugfixed and slightly customized version of S3 right? It shouldn't be too hard, so you might wanna have a look at this (unless you wanna keep hidden stuff like this in):
    <a href="http://www.youtube.com/watch?v=GNdl8neiCBo" target="_blank">http://www.youtube.com/watch?v=GNdl8neiCBo</a>

    Can't say anything else to it, really. This is the first time I read this topic, I always just clicked "mark as read" before. :v:<!--QuoteEnd--></div><!--QuoteEEnd-->
    Just for reference, the coordinates of all the double rings in S3K are:

    [...]
    <!--QuoteEnd--></div><!--QuoteEEnd-->

    I'll fix them if/when I do anything with the ring layouts. It's not exactly a priority, though!
     
  12. <!--quoteo(post=462155:date=Jun 2 2010, 02:44 AM:name=Hayate)--><div class='quotetop'>QUOTE (Hayate @ Jun 2 2010, 02:44 AM) <a href="index.php?act=findpost&pid=462155">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Also Knux dies upon entering his boss area in Angel Island in co-op mode (you probably know this already but to be safe).<!--QuoteEnd--></div><!--QuoteEEnd-->
    Every character apart from Knuckles alone dies when entering this area. I remember investigating this thoroughly before my hiatus, and couldn't find any reason why this happens. So unless someone else finds the answer or I magically stumble upon something, I don't think this will be fixed any time soon, I'm afraid.<!--QuoteEnd--></div><!--QuoteEEnd-->
    It's just a simple DSR issue - if you look at loc_1C64E (in Stealth's disasm) you'll see

    <!--g1--><div class='geshitop'>Syntax Highlighted Code: ASM</div><div class='codemain'><!--eg1--><pre class="asm" style="font-family:monospace;"> <span style="color: #00bfff;">cmpi</span>.<span style="color: #00bfff;">w</span> <span style="color: #ff0000;">#</span><span style="color: #ff0000;">3</span>,<span style="">(</span><span style="color: #ff0000;">$</span><span style="color: #ff0000;">FFFFFF08</span><span style="">)</span>.<span style="color: #00bfff;">w</span>
    <span style="color: #00bfff;">bne</span>.<span style="color: #00bfff;">s</span> loc_1C660</pre><!--gc2--><!--ICAgICAgICAgICAgICAgIGNtcGkudyAgIzMsKCYjMDM2O0ZGRkZGRjA4KS53CiAgICAgICAgICAgICAg
    ICBibmUucyAgIGxvY18xQzY2MA==--><!--egc2--><!--g2--></div><!--eg2-->
    Changing the first line to

    <!--g1--><div class='geshitop'>Syntax Highlighted Code: ASM</div><div class='codemain'><!--eg1--><pre class="asm" style="font-family:monospace;"> <span style="color: #00bfff;">cmpi</span>.<span style="color: #00bfff;">b</span> <span style="color: #ff0000;">#</span><span style="color: #ff0000;">2</span>,<span style="">(</span><span style="color: #ff0000;">$</span><span style="color: #ff0000;">FFFFB038</span><span style="">)</span>.<span style="color: #00bfff;">w</span></pre><!--gc2--><!--ICAgICAgICAgICAgICAgIGNtcGkuYiAgIzIsKCYjMDM2O0ZGRkZCMDM4KS53--><!--egc2--><!--g2--></div><!--eg2-->
    will make it check if Knuckles is the main character instead of checking if the player mode is Knuckles alone and fix the problem.
     
  13. Hayate

    Hayate

    Tech Member
    Thanks for finding that! I was looking all over the level scripts but I didn't know there was a standard DSR as well (why SEGA didn't just put the standard DSR in the level events is beyond me).

    It also doesn't help that the scroll manager (which calls the DSR) is called "Restart_From_Starpost" in the disasm... I've checked every line of code in it and nowhere does it do any restarting from starposts.

    I'll change it so that it chooses the path based on the current Y screen location, rather than character, because Amy should be able to go either way.
     
  14. Yeah, having 3 separate event routines (DSR, LevelEvents, TriggerEvents) gets kinda confusing. Pretty cool hack btw, Amy takes a little getting used to but she's fun after that.
     
  15. Hayate

    Hayate

    Tech Member
    ...Um.

    This is going to be harder than I thought.

    [​IMG]
     
  16. Chaos Knux

    Chaos Knux

    Stable avatar temporary. Randomizer site down. Misfit
    It's alright Hayate.
    <!--id1--><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/3WlRC2EbFZI&"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/3WlRC2EbFZI&" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object><!--id2-->
    Just try to get the characters to stay in their own slots first.
     
  17. E-122-Psi

    E-122-Psi

    Member
    2,115
    298
    63
    Sorry if this has already been asked but will you be adding anymore moves to Amy (eg. her high jump or hammer dash from Advance)?

    Also will you be adding anything to Competition Mode (eg. glide and climb to Knux or playable 'mini Amy')? Those two are probably a stretch to make but it's worth asking.
     
  18. Hayate

    Hayate

    Tech Member
    <!--quoteo(post=462462:date=Jun 2 2010, 04:54 PM:name=Chaos Knux)--><div class='quotetop'>QUOTE (Chaos Knux @ Jun 2 2010, 04:54 PM) <a href="index.php?act=findpost&pid=462462">[​IMG]</a></div><div class='quotemain'><!--quotec-->It's alright Hayate.

    <a href="http://www.youtube.com/watch?v=3WlRC2EbFZI" target="_blank">http://www.youtube.com/watch?v=3WlRC2EbFZI</a>

    Just try to get the characters to stay in their own slots first.<!--QuoteEnd--></div><!--QuoteEEnd-->

    I laughed all the way through that video. That was awesome.

    I haven't tested special stages AT ALL in this hack yet, but it makes sense for Sonic to show up for the other characters. I dunno what's up with the glitches on the results screen though.

    The other things in the video have been fixed, though (other than the appearances of Sonic's and Knuckles' sprites for Amy's missing animations).

    <!--quoteo(post=462473:date=Jun 2 2010, 05:46 PM:name=E-122-Psi)--><div class='quotetop'>QUOTE (E-122-Psi @ Jun 2 2010, 05:46 PM) <a href="index.php?act=findpost&pid=462473">[​IMG]</a></div><div class='quotemain'><!--quotec-->Sorry if this has already been asked but will you be adding anymore moves to Amy (eg. her high jump or hammer dash from Advance)?<!--QuoteEnd--></div><!--QuoteEEnd-->

    She already has a high jump. I intend to implement the Advance behaviour of gaining extra spring height if you hit a spring with her hammer though.

    If by the hammer dash you mean the attack she can do while running without losing speed, I /might/ implement that. I have been thinking about it.

    There are no other moves I'm intending to add though.

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Also will you be adding anything to Competition Mode (eg. glide and climb to Knux or playable 'mini Amy')? Those two are probably a stretch to make but it's worth asking.<!--QuoteEnd--></div><!--QuoteEEnd-->

    I won't be adding anything to Competition Mode, and I might just remove it completely because of the amount of space it takes up (I'm going to need quite a bit of extra space for new levels/parts of levels). I don't think anyone would really miss it if I got rid of it - you could just play original S3K if you wanted to play the 2P levels.
     
  19. E-122-Psi

    E-122-Psi

    Member
    2,115
    298
    63
    <!--quoteo(post=462477:date=Jun 2 2010, 12:06 PM:name=Hayate)--><div class='quotetop'>QUOTE (Hayate @ Jun 2 2010, 12:06 PM) <a href="index.php?act=findpost&pid=462477">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo(post=462473:date=Jun 2 2010, 05:46 PM:name=E-122-Psi)--><div class='quotetop'>QUOTE (E-122-Psi @ Jun 2 2010, 05:46 PM) <a href="index.php?act=findpost&pid=462473">[​IMG]</a></div><div class='quotemain'><!--quotec-->Sorry if this has already been asked but will you be adding anymore moves to Amy (eg. her high jump or hammer dash from Advance)?<!--QuoteEnd--></div><!--QuoteEEnd-->

    She already has a high jump. I intend to implement the Advance behaviour of gaining extra spring height if you hit a spring with her hammer though.

    If by the hammer dash you mean the attack she can do while running without losing speed, I /might/ implement that. I have been thinking about it.

    There are no other moves I'm intending to add though.<!--QuoteEnd--></div><!--QuoteEEnd-->

    You have? How do you activate it, since I take it's not activated by Down and hammer like Advance due to that button combo being used (or is this something implemented after Rev 1.1's release?).

    Actually I was talking about the downward dash in Advance after you jump-hammer while holding Down.

    <!--quoteo(post=462477:date=Jun 2 2010, 12:06 PM:name=Hayate)--><div class='quotetop'>QUOTE (Hayate @ Jun 2 2010, 12:06 PM) <a href="index.php?act=findpost&pid=462477">[​IMG]</a></div><div class='quotemain'><!--quotec--><!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Also will you be adding anything to Competition Mode (eg. glide and climb to Knux or playable 'mini Amy')? Those two are probably a stretch to make but it's worth asking.<!--QuoteEnd--></div><!--QuoteEEnd-->

    I won't be adding anything to Competition Mode, and I might just remove it completely because of the amount of space it takes up (I'm going to need quite a bit of extra space for new levels/parts of levels). I don't think anyone would really miss it if I got rid of it - you could just play original S3K if you wanted to play the 2P levels.
    <!--QuoteEnd--></div><!--QuoteEEnd-->

    Makes sense, if it's not going to have anything new and it could be used for extra areas and secrets it may be worth it. You upgraded co-op so multiplayer does profit in another manner I guess.
     
  20. Hayate

    Hayate

    Tech Member
    <!--quoteo(post=462480:date=Jun 2 2010, 06:25 PM:name=E-122-Psi)--><div class='quotetop'>QUOTE (E-122-Psi @ Jun 2 2010, 06:25 PM) <a href="index.php?act=findpost&pid=462480">[​IMG]</a></div><div class='quotemain'><!--quotec-->You have? How do you activate it, since I take it's not activated by Down and hammer like Advance due to that button combo being used (or is this something implemented after Rev 1.1's release?).<!--QuoteEnd--></div><!--QuoteEEnd-->

    I meant that her jump height is already a lot higher, so you really don't need the alternate high jump move.

    <!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->Actually I was talking about the downward dash in Advance after you jump-hammer while holding Down.<!--QuoteEnd--></div><!--QuoteEEnd-->

    Oh, that one. No, I don't intend to add that.
     
Thread Status:
Not open for further replies.