Zane Avernathy

  • Content count

  • Joined

  • Last visited

1 Follower

Profile Information

  • Gender

Previous Fields

  • Favorite Fire Emblem Game
    Sacred Stones

Member Badge

  • Members

Recent Profile Visitors

871 profile views
  1. Staff of Ages (Version 1.8 Coming Soon!)

    SoA is older, your names are entirely generic, and your claims are baseless. You might as well be dogpiled for using any of the names in that thread that're based on existing things. You do realize that 'Shon' is the name of a protagonist in one of the most well-known GBAFE fangames, right? This is a good way to get the FE hacking community to dislike you.
  2. Accepting Volunteers - Team Shingetsu

    I know this is really hard to understand, but different types of "coders" aren't useful in the same ways when making a project. Someone who knows THUMB assembly Someone who knows Python Someone who knows 65816 Someone who knows C, C+, etc Someone with experience using GBAFE's engine(s) Someone who does RPGMaker scripts etc. all do very, very different things. Are you looking for some type of programmer? Someone who can write events? Do you need some kind of external tool made? Don't get defensive, get specific. It sounds like you don't know anything at all about what you need.
  3. FEXNA (Currently In Private Beta)

    Making something in FEXNA will probably take just as much learning, reading, and effort.
  4. Last Promise-related permission.

    As far as permissions go: I doubt Blazer'd let you do it. As far as logic goes: This is a dumb idea. If you're having trouble repointing and expanding something, editing an existing hack is going to make things harder for you. Things won't be where or how you'd expect them to be. Many resources and tutorials simply won't work. You wouldn't buy a new car to replace a flat tire.
  5. Accepting Volunteers - Team Shingetsu

    Setting a goal is a good idea! Be sure to read all of the documentation that you can. Give this entire section of the forum a read, especially the resources and questions subforums. Be sure to check out, too, which houses a lot of technical info. I don't know exactly what you guys might have read, so I'm going to dump some common resources here as a starting point. Blazer's Ultimate Tutorial This is one of the most common starting points for GBAFE hackers. It's pretty old and uses outdated tech/methods, but is certainly a good starting point for figuring out how to work with GBAFE. Please note that the ideas, not the techniques are important. Tools and programs have changed. Arch's advice for hackers Big names talk big ideas here. Read this. Unified FE Hacking DB This is the wizards' playground. Although most of this isn't particularly useful for newcomers, there's a Toolbox folder containing a lot of common tools. This DB also has plenty of ASM, doc, and musings from talented people. I'm not about to go link the entire Resources subforum, but you should probably check it out.
  6. Emblem Chronicle VII

    For an explanation of how I went about extracting the map sprites, see here. I don't know anything about the battle animations. I don't see why this matters. Besides, it shouldn't take you long to check yourself, if you wanted to.
  7. FE5 Map Sprites

    Here's a writeup of how you'd go about extracting these yourself: Map sprites in FE5 are comprised of four pieces: An unknown moving sprite, a set of 3 idle sprites, a set of 16 moving sprites, and a variable number of combat sprites. I'll be going into detail for each of these. Each class within the game's class data has a byte for that class's default map sprite. The uppermost bit of this byte is a flag for whether the class uses mounted sprites. The unknown, moving, and combat sprites are selected by using this byte as an index for another table, but the idle sprites use this byte more directly. The formula to get this index from the default map sprite byte is: if default < 0x80: index = byte at 0x363AD+default else: index = byte at 0x363AD+((default&0x7F)+0x4B) If this index happens to be above 0x69, it is set to 1. To get the unknown sprite, the formula is: offset = 0x190000+(0x200*(index-1)) Each is a 32x32-pixel uncompressed 4bpp SNES image cut into four rows of four tiles each. Here's an example of how they're formatted within the ROM, scaled x4. In the ROM, the order of these rows is 1, 3, 2, 4, where row 1 is the top row. Each unknown sprite takes up 0x200 bytes. To get the idle sprites, the formula is: if default < 0x80: offset = 0x388000+(default*0x180) sprite is 16x16 pixels else: offset = 0x398000+((default&0x7F)*0x240) sprite is 16x24 pixels Both are 4bpp uncompressed SNES images. Here's an example of how the smaller sprites are formatted: And the larger ones: As you can see, these larger sprites are in the order 2, 3, 1. Moving sprites are where things start to get complicated. First, we get a short pointer to an animation data table: pointer_offset = 0x51D23+(2*index) The routines that read these short pointers expect the animation data table to be in the same bank, 0x8A (mapped). Each entry in this table consists of two long pointers followed by a byte. The first pointer is to the graphics, the second is for the animation's script. The byte determines the direction that the unit faces when initially selected. Possible values are: 00 - Left 01 - Right 02 - Down 03 - Up Graphics are compressed 4bpp SNES images. Format is the same as the unknown sprite, but repeated for each of the 16 moving sprites. Finally, there are the combat sprites. I don't actually know the specifics of these. The sprite index is used to select an entry in a short pointer table: pointer_offset = 0x26A89+(index*2) Like the moving sprites, the routines involved expect the animation data table in the same bank, 0x84 (mapped). Each entry is a set of 8 long pointers, one for each cardinal and diagonal direction. The graphics are compressed 4bpp SNES images. Their format varies, and I haven't gone looking for whatever determines how they're displayed.
  8. Emblem Chronicle VII

    I have not extracted or edited battle sprites yet, but they are compressed graphics cut into pieces with some kind of frame data that determines their placement.
  9. Accepting Volunteers - Team Shingetsu

    To be as blunt as possible, these topics are the ones that experienced hackers laugh at. If you want help, post your experience, skills, examples of things you've done, etc. If you have a team, list your team and do the same for them. If you have an idea, pitch it to us like you're actually asking someone to publish your story. If you can't do any of these, you'll never finish your project. I see new faces talk about "coders" a lot. Do you mean people who know Thumb Assembly? Maybe someone who knows GBAFE eventing? I think there are less talented music-oriented hackers than there are assembly hackers, so good luck with composers. What kind of artists? Portraits, battle spites, weapon icons, etc. are all pretty commonly changed in hacks thanks to easy-to-use tools, but could you work on more complicated things? Some tasks require knowledge outside of graphics themselves. "Designer" is such a general term that it's meaningless. What do you need designed? You need to be very clear with what you can and cannot do. How much do you know about hacking? What tools are you comfortable with? Are you confident that you can solve problems that will arise? Truthfully, the most important thing for a hacker isn't experience with a tool or knowledge of some task. You must be able to solve problems, debug your work, and hunt for information. This is exactly where it'd go. If you can't be straightforward to the people you ask for help from, none will ever help.
  10. Emblem Chronicle VII

    Current patch contains the chapters "Another Journey" and "Birds of a Feather", from FE7's HHM.
  11. Emblem Chronicle VII

    Matt's portrait was made by eise. Here's a list of portrait artists, which can also be seen after finishing the current patch:
  12. Emblem Chronicle VII

    I'm not interested in changing many mechanics. 1-99 hitrates, 1RN, staves missing, and a lot of other FE5 mechanics are here to stay, at least with current plans. If I decide to make any large mechanical changes in the future there'll definitely be some kind of warning.
  13. MORE OF THIS INCOMING. In all seriousness, here's the patch, which covers the first two chapters of Hector mode.
  14. Emblem Chronicle VII

    Hiya! I'm Zane. You might know me from my FE5 Menu Translation. Although work on the menu translation has essentially ceased, I've been steadily working on a project that uses it as its base. So, I'd like to introduce Emblem Chronicle VII (henceforth called ECVII): ECVII is essentially a demake of FE7 within FE5. It's a proof-of-concept, learning tool, and showcase all in one. I'm currently planning on making all of Hector mode, skipping Lyn mode. This release has two chapters. This isn't 1-to-1, however. I'm not looking to write Elibe fanfiction, but this won't ever be a cut/paste job from 7 to 5. Classes, enemies, maps, and dialogue, along with some other things, will likely be changed. Unit stats, skills, and classes are not final. This is partially due to the WIP nature of the hack, but is mainly just me figuring out how to play with FE5. Have some screenshots: Here's a patch: ECVII [12-1-17] This is for an unheadered, unedited FE5 ROM. I'm not responsible for anything past chapter 2. Please don't ask me why it's vanilla. I'd also like to reiterate that essentially none of this is final--if you have a suggestion, I'd like to hear it. If you've got a complaint about stats/levels, be thankful that they'll be getting smoothed out later. I'd like to thank everyone involved--I certainly couldn't do it without you: There are plenty of bugs in the current build. If you find one not listed here, let me know. I'll probably be releasing more tools, doc, and whatnot sometime soon. More info, plans, and screenshots are likely to be appended to this post shortly.
  15. Fe5 portrait address/pointers spreadsheet

    The format of the portrait table is actually [24-bit pointer to compressed graphics][8-bit palette index], rather than [16-bit pointer to compressed graphics][16-bit pointer to palette]