don't click here

Basic Questions & Answers thread

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

  1. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,651
    218
    43
    SonLVL
    You have to change everything like move.l #label,(a0) to instead change the byte routine(a0) and put all the labels into a jump table at the start of the object code. Then you'll probably have to change just about everything else that uses an offset from (a0) to the matching offset in S2 (the wiki can help here).
     
  2. Ell678

    Ell678

    Am I Annoying You? Member
    2,377
    19
    18
    Barrow, England
    Sonic Incursion
    I didn't want to make a new topic for this, so I hope here is good. Basically, I want to get the .png level layouts from my old hack, Sonic 1 Alt. Unfortunatly I don't have the disassembly or project files, and it seems a bit has changed since I last looked into hacking. Is anyone able to disassemble it, or point me in the right direction? Is it even possible? The code edits were minor - the hack was just focused on layouts.
     
  3. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,651
    218
    43
    SonLVL
    My website has a tool for generating PNGs of level layouts from savestates. Of course, that won't include any information about objects or animations.

    It could also be possible to get a savestate of a level, or do a little bit of disassembly, and retrieve the ROM addresses of each level's object layout data.
     
  4. Pulse0

    Pulse0

    20
    0
    0
    NYC (Currently)
    Sonic Neo Genesis
    I was wondering would any one be willing do a Sonic or Sonic 2 Hack, to remake Sonic Before the Sequel.
    for the 2016 hacking contest er whatever. I think id be cool, sure there would have to be some artistic license modifications, but if it did happen Mac users will be able to gain some of the experience.
    Here a some mock-ups to show "Proof of concept"
    [​IMG]
    [​IMG]
    [​IMG]
    (there are more but you know..)

    I'm just an Artist so its not like I have the know how to pull it off myself
     
  5. Pulse0

    Pulse0

    20
    0
    0
    NYC (Currently)
    Sonic Neo Genesis
    So like no one is interested in making a Sonic Before the Sequel Hack remake version? So mac people can enjoy?
    Even if you have a person who will take care of the Sprites?
    Even if you can share it on steam?
    Hacking contest?


    (sorry for the double post - no one replied)
     
  6. Fenrir

    Fenrir

    Eh. Member
    I'm certainly not speaking from experience here, but the limitations of a rom hack are significantly higher than that of the engine that BTS and ATS use. I mean sure, it wouldn't HAVE to be a one-to-one remake, but what would the point of making it be at that point? You'd pretty much be better off using those talents to make a completely original hack of your own rather than wasting them re-making something that already exists onto technically inferior hardware. That's like asking someone to port the original Halo back to the Doom Engine :v:/>

    There are plenty of other means to play BTS on a Mac for the record. I did it myself before I got my laptop when BTS ran its initial release. But this isn't the place to discuss that.

    For what it's worth, that's a pretty nice looking mockup.
     
  7. Clownacy

    Clownacy

    Tech Member
    937
    259
    63
    People won't make hacks just because you ask them to.
     
  8. Fenrir

    Fenrir

    Eh. Member
    I mean, yeah, that too of course.
     
  9. Pulse0

    Pulse0

    20
    0
    0
    NYC (Currently)
    Sonic Neo Genesis
    I'm not, I was just asking if anyone shared the same sentiment; and would be willing to do so as a thought.
    Honestly Id want to help if some one shared the sentiment and actually wanted to move with the idea

    Personally I wouldn't want it to be a 1:1 of BTS. The example screen shots were to show what it would like as a hack, the point of the visuals it make a "official looking" in between of sonic and sonic 2.
    Not only that there are glaring problems with BTS that could be corrected or streamlined.
    But after seeing Sonic Next Level a lot of the things in BTS can be mimicked in a hack and in some areas out right surpassing the original.
    But you know... I really just wanted an answer, anything would have sufficed, but this topic just went "dead" after I asked
     
  10. And that would be your answer :v:
     
  11. AURORA☆FIELDS

    AURORA☆FIELDS

    The cute one here Tech Member
    216
    24
    18
    Finland
    AMPS
    I can't speak for everyone of course, but nothing stops me from trying: NO.
     
  12. For what it's worth those mock up screenshots are pretty nice though.
     
  13. GerbilSoft

    GerbilSoft

    RickRotate'd. Administrator
    2,906
    40
    28
    USA
    rom-properties
    https://www.winehq.org/
     
  14. KingOfBunnies

    KingOfBunnies

    Member
    1,033
    149
    43
    Reposting from the Generations technical thread because I realized it probably fits better here.
     
  15. Hey all. I've been trying to learn basic ASM and to start off, I've been adding a few extra abilities to Sonic in Sonic 2. So far, I've managed to allow him to curl and uncurl at will in both the air and on the ground, and I've given him a custom animation for when he hits a spring.

    Anyway, right now, I'm trying to give him the Super Peel-Out from Sonic CD. The way I tried this was to duplicate the Spindash code, relabel everything, and change the flags to "peelout_flag" and "peelout_counter". Then, I added it to the list of modes that Sonic can be in, and I went into s2.constants.asm and added new flags for "peelout_flag" and "peelout_counter". I gave the flags the numbers $41 and $42 as I couldn't find anything else in the file with those numbers. When I tried it in game, it worked, but Tails' art was all screwed up, everytime Tails spawned or despawned, Sonic would rocket off as if I released a Peel-Out, and random other things would glitch up.

    Anyone have any idea what's going on? Is there something in the s2.constants.asm file that I'm doing wrong?
     
  16. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,651
    218
    43
    SonLVL
    Your problems are related to this line, below all the offset definitions in s2.constants.asm:
    object_size = $40 ; the size of an object

    That line means that every object gets $40 bytes (0 to $3F) of space to hold all its variables. When you use $41 and $42, you're causing the game to write outside of Sonic's RAM space and into Tails', whose object slot is right after Sonic's when he's the second player/CPU.

    If you look at the start of the definitions for Sonic and Tails' variables, you'll see "$1F, $20, and $21 are unused and available", so those are all safe to use for Sonic and Tails. You can use those variables for different things for each character (and should if you plan to give other characters abilites).

    You could also increase the object_size constant, but you should avoid doing that unless it's absolutely necessary as it could cause a problem somewhere.
     
  17. DigitalDuck

    DigitalDuck

    Arriving four years late. Member
    5,177
    299
    63
    Lincs, UK
    TurBoa, S1RL
    You could also just reuse the spindash flag and counter, since you can't do a spindash and a peelout at the same time. Just set the spindash flag to "2" or something when you're doing a peelout.
     
  18. Ok. This is what I'll do. I tried using the spindash flag and counter in the first place, but I must have been assigning it the same value as with the spindash itself. The peelout worked just fine, but the spindash released as so as I started to charge it. Thanks for the suggestion.
     
  19. flamewing

    flamewing

    Emerald Hunter Tech Member
    1,161
    65
    28
    France
    Sonic Classic Heroes; Sonic 2 Special Stage Editor; Sonic 3&K Heroes (on hold)
    I used -1 for the spindash flag in for Sonic's peelout in SCH; has the advantage that you can just do a tst, then bmi and bne.
     
  20. This is what I ended up doing and it worked like a charm. Thanks for the help everyone.

    EDIT: I have another unrelated problem now. Sorry to be asking so many simple questions, but I've tried for 2 days now to fix it on my own, and I've exhausted every idea I have to fix it.

    I've added a custom animation for when Sonic hits a spring, and it works perfectly fine for the most part. When I land on the ground, Sonic reverts to his walking animation as intended. However, when I land on an object, such as the bridges in EHZ, he stays in his spring animation until he comes to a complete stop. The animations start working fine again from there.

    Here is a video of what I mean.

    Anyone know what's causing it?