Questions regarding my hack I'm making

Discussion in 'Discussion and Q&A Archive' started by Arctiq, Jun 2, 2012.

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

    Arctiq OBJECTION! I WILL CROSS EXAMINE THE WITNESS' PET P Member

    Joined:
    Jun 2, 2012
    Messages:
    57
    Hello, everyone! Currently, I am making a hack called Robotniks Last Stand. It's a kind of "boss training" where you have to fight every boss from all the three games: Sonic 1, 2 and 3&K to get prepared for an ultimate enemy. As it stands right now, I am going to be the lead level designer. I have MissArtiste90 (http://www.youtube.com/user/MissArtiste90?feature=g-user-lik) helping me with the music portion of the hack. Check her out on her youtube page too! I was wondering if anyone would be kind enough as to help us with the graphics and the coding portion of the hack. If you are willing to help, leave a reply in the comments, or send me a pm <3! Also I just started hacking a week ago so I'm a complete noob at this stuff :) Also I need as much feedback as possible, just go easy on me, OK? :(


    I also have a few questions:


    #1: I know it's possible to use SonLVL to convert levels between hacks, but I was wondering how you actually use them in the SonLVL level editor?


    #2: Which is easier to hack in? Sonic 1 or Sonic 2? I'm thinking about hacking Sonic 1 but I would have to add the spin dash (which I already failed at trying to do xD)


    #3: Is it possible to convert music into a MIDI format, then converting it into a .bin format so that the Genesis can read it?


    #4: What type of hacking is easier: ASM hacking or Hex editing? I'm trying to learn ASM right now, though.
     
  2. MarkeyJester

    MarkeyJester ♡ ! Member

    Joined:
    Jun 27, 2009
    Messages:
    2,867
    Well firstly, welcome to SSRG, it's nice to have you here and willing to make something cool, I will say though that your idea has "sorta" been made before, check out Robotnik's Revenge for more details. As for your questions, I'll give em a shot:

    1. Sorry, I'm not familiar enough with SonLVL to tell you the possibilities, I've spent most of my time working with SonED, MainMemory is probably the best one to speak to on that subject.

    2. That one is a hard one to answer, this is simply because both have very good arguments for being the better one to work with. For example, Sonic 1 is easier in that it's simplicity makes it a perfect blank canvas to work on, and not much unique coding needs to be ripped out or replaced, Sonic 2 is easier in that it's engine is slightly more improved over Sonic 1, and hence is less likely the lag, it's really a matter of "preferrence" here though, so don't let anyone tell you one is easier than the other, you might find that you can do on one just as good as you can do on the other.

    3. That is also a hard one to answer, I'll say yes, it is possible, but I won't say it'll be easy, the Genesis doesn't have a direct music format you see, all of the music is controlled by software (i.e. programming), and all games on the Genesis/Mega Drive have different drivers for playback.

    4. ASM hacking would be considered easier, not because programming in general is easy, but because alteration of mnemonics (a.k.a. english words) is easier than hexadecimal values (a.k.a. Numbers). It will be a stiff hill to climb though, programming isn't something you can pick up on instantly, it requires thinking logically, but in the longest run, it's well worth it, you'll find the ease that it has over hexadecimal editing to be less stressful and yet, just as capable.
     
  3. Arctiq

    Arctiq OBJECTION! I WILL CROSS EXAMINE THE WITNESS' PET P Member

    Joined:
    Jun 2, 2012
    Messages:
    57
    I have heard about that hack from the Sonic Hack Showcase. I'm trying my best to make my hack stand out from this one. Once I get to be an expert in ASM (haha), I'll maybe even put cutscenes with dialogue text in it :)


    Also I have another question, is it possible to import the behavior of the giant rings from Sonic 3(&K) into Sonic 1 so they will appear all the time (Kind of like a level-selecty feel to it)?
     
  4. MarkeyJester

    MarkeyJester ♡ ! Member

    Joined:
    Jun 27, 2009
    Messages:
    2,867
    Of course it is possible, the one key thing to understand is that all of these games are running on the same machine, so the same rules and limitations are involved, some things might be more difficult that others, but all in all, anything should be possible to transport over. I'm glad to hear that you're going to make your hack unique in comparison to Colin's, I like seeing brand new things =)
     
  5. Arctiq

    Arctiq OBJECTION! I WILL CROSS EXAMINE THE WITNESS' PET P Member

    Joined:
    Jun 2, 2012
    Messages:
    57
    Also, do you guys have a wiki similar to Sonic Retro's wiki? With hacking guides?
     
  6. Spanner

    Spanner The Tool Member

    Joined:
    Aug 9, 2007
    Messages:
    2,570
    There is a guide section on our website, which is basically approved content of the tutorials forum.


    Nothing much other than that for now.
     
  7. MainMemory

    MainMemory Well-Known Member Member

    Joined:
    Mar 29, 2011
    Messages:
    922
    If you just want to look at the converted levels in SonLVL, you can use the INI file LevelConverter generates in the output folder. If you want to replace a level in a disassembly with one you've converted that's a more involved process which varies depending on the disassembly.
     
  8. Arctiq

    Arctiq OBJECTION! I WILL CROSS EXAMINE THE WITNESS' PET P Member

    Joined:
    Jun 2, 2012
    Messages:
    57
    I'm sorry, but you had me and then lost me xD I don't technically want to "replace" levels, more like... I'll just cut to the chase: I want to make it so I can use all of the boss objects into one level. If that is possible.
     
  9. Arctiq

    Arctiq OBJECTION! I WILL CROSS EXAMINE THE WITNESS' PET P Member

    Joined:
    Jun 2, 2012
    Messages:
    57
    Another question came to my mind. What are the differences between the 4 codes? It's like "Enigma", "Kosinski", "Nemesis" and "Saxman" I'm just always scared when I see those 4 things xD
     
  10. MainMemory

    MainMemory Well-Known Member Member

    Joined:
    Mar 29, 2011
    Messages:
    922
    That is entirely handled in the ASM file, SonLVL has nothing to do with it.
    Enigma is used to compress tilemaps, Nemesis is an art compression, Kosinski is a general purpose compression, and Saxman is used for Sonic 2's music.
     
  11. Arctiq

    Arctiq OBJECTION! I WILL CROSS EXAMINE THE WITNESS' PET P Member

    Joined:
    Jun 2, 2012
    Messages:
    57
    I know it's handled in the ASM file, but I mean like place the actual boss within the actual level. Or do you mean that the ASM file is what puts the boss in the level? o_O
     
  12. MainMemory

    MainMemory Well-Known Member Member

    Joined:
    Mar 29, 2011
    Messages:
    922
    Yes, the boss' position and movement is entirely hardcoded to that specific level at that specific location. Your project will involve a lot of ASM editing, especially if you're going to be porting bosses from the other two games. I really would not recommend it for a first hack unless you're really good at coding.
     
  13. Spanner

    Spanner The Tool Member

    Joined:
    Aug 9, 2007
    Messages:
    2,570
    I think you need to do a much smaller project, you have no idea on object porting and you'll find it to be a tough job.
     
  14. MarkeyJester

    MarkeyJester ♡ ! Member

    Joined:
    Jun 27, 2009
    Messages:
    2,867
    If you have questions that are as simple as that, then try to post them in this thread instead, that's our basic Q&A topic, if you have small questions you'd like an answer to, you'll get more people answering them in there than you will in here.


    I'll explain here though anyway, just be sure to post future small questions in there:


    All of those 4 names are the names of "compression formats", computer games often have most of their data (art, music, and even sometimes programming) compressed to save space. SEGA have had provided default formats for their programmers to use, and third party game productions if they had no desire to make their own format.


    The three main ones are:


    Nemesis (Named after the hacker who worked out the format) is a huffman varient compression format, it works with data sections that are 20 (hex) bytes big, and is designed specifically for 8x8 art tiles (which are 20 hex bytes each, which makes sense).


    Enigma (due to being cracked by Nemesis as well, he named this one Enigma, seeing as the first one was already named after him) is a run length encoding varient compression format, it has a word data that can be added to each word fragment during decompression, and is designed specifically to work with 2 byte sections for the mapping data.


    Kosinski (Named after the hacker who worked out the format) is an LZSS varient compression format, for repeated strings of data, to my knowledge, this wasn't specifically designed for anything purposely, other than reducing data size for any type of data the programmers insisted on, it does have a moduled version which is designed for sections of data. Because this format is based on the LZ method, it therefore works with uncompressed bytes of data that are repeated, and hence is the quickest to decompress, the compression size is not bad either considering it's simplicity.


    The other formats which had specific purposes are:


    Saxman (Named after the hacker who worked out the format) is (to my understanding) an LZ varient of some kind, I haven't looked at it much myself so forgive me for the vagueness and possibly incorrections, it was designed for Sonic 2's sound driver and sound data, which are compressed in the ROM, and decompressed when needed.


    Crackers (Named after the game it has only been seen in) is an LZSS varient (not to be confused with Kosinski), and has only been used for art data (the SEGA screen and the field screen art).
     
    Last edited by a moderator: Jun 3, 2012
  15. Arctiq

    Arctiq OBJECTION! I WILL CROSS EXAMINE THE WITNESS' PET P Member

    Joined:
    Jun 2, 2012
    Messages:
    57
    Don't worry, I like challenge :) It makes hacking fun!

    Wow Markey, thanks for that info! Now it all makes sense! (Kinda) xD
     
    Last edited by a moderator: Jun 3, 2012
  16. Spanner

    Spanner The Tool Member

    Joined:
    Aug 9, 2007
    Messages:
    2,570
    Double posting isn't a good idea you know. You could have had both quotes covered in one post, otherwise you'll burn your 20 posts very quickly.
     
  17. RetroX

    RetroX Active Member Member

    Joined:
    Jun 15, 2012
    Messages:
    46
    Location:
    United States
    #1 - Like Markey, I have absolutely no clue of what SonicLVL is, but for my hacks I like to use SonED (SonED2 is recommended but you need to find a tutorial on setting up GHZ). I use SonED though because I use HiveBrain 2005 and setting up SonED2 takes a while. I make 2 copies of my hack and edit the levels in one folder with SonED, split, and transfer.


    #2 - Not much experience with Sonic 2, but as you probably can see 60% of hacks are S1-based, 30% S2, and 10% S3. So my guess would be Sonic 1.


    #3 - It's hard, although you can find midi's of different songs on the internet and convert them to XM with OpenMPT. Make sure you have about 5-10 Channels because SMPS can't support more. I suggest 5 FM (Main Track), 3 PSG (Percussion), 1 DAC (Drums), and 1 Noise Channel (Hi-Hats). I use xm3smps OERG because it has a visual interface that is easier. Although you said someone is helping you with the songs, it's good to know.


    #4 - ASM, straight-up. It lets you edit the individual files and coding of the game. It's also easier to program than hex.


    Right now I'm busy making a hack but if you need a little help with the graphics I can help. I'm not good with level art but everything else I can do.


    Admin-- Sorry for the bump I didn't see the date.
     
    Last edited by a moderator: Jul 4, 2012
Thread Status:
Not open for further replies.