Category: hacking

  • Hacking Academy

    Pilot Program Launched

    For clymax’s projects, click here. You can also follow him on YouTube.

    For different hacker roles, click here.

    Are you a beginner interested in learning how to hack roms of your favorite games? Having trouble grasping assembly coding on your own? Read on!

    Registration

    1. To join the hacking academy, the player warrants that he or she is new to romhacking. Coding experience in another discipline, e.g., web development, is OK.
    2. The player must not have had any publicly released hacks in the player’s name, in a way that credits the player as a hacker.
    3. The player must have passion for or fondness for the Final Fantasy franchise.
    4. Sign-ups are taken via a dedicated thread in the Discord. Please note, a player may be denied entry for any reason or for no reason.
    5. Especially for the pilot, enrollment may be limited and subject to availability.

    Making Your Hack

    1. If a player is accepted into the academy, the player will be given one calendar year to make a new romhack.
    2. The romhack should be of one of the following games: Final Fantasy I-VI.
    3. The romhack should be for one of the following systems: NES, SNES, and GBA. To be clear, Pixel Remaster (Steam/PC) versions are not accepted.
    4. The romhack can be any type of hack. Examples include comprehensive, improvement, levels, graphics, sound, bugfix, etc.
    5. The player is required to submit a hack description and seek approval by one or more mentors before commencing work on the hack.
    6. Please note, hack descriptions that correspond closely to a feature in one of clymax’s private hacks will likely not be approved.
    7. Important: for the Assembly Hacker route, assembly coding MUST be used in making the hack. Using an assembler and using binary editing are both OK. To be clear, only using game-specific tools is not acceptable for purposes of this program. Using such tools in conjunction with assembly coding is OK. Using game-neutral tools is always OK. For the Data Hacker route (if it is offered in the future), assembly coding is not necessarily required, but proficiency with a debugger is required to be shown.
    8. Choice of debugger must be approved by one or more mentors. This is to ensure availability of a mentor well-versed in the debugger chosen by the player.

    Evaluation and Awards

    1. The player is required to submit the hack by the one-year deadline for evaluation by one or more mentors. The player may be required to explain how the hack was made.
    2. Hacks will be graded on a pass/fail basis. Please note, the decision is final and cannot be appealed.
    3. If the hack passes evaluation, the player will receive the “Certified Hacker” title from FFV Central’s Hacking Academy. Title recipients will be memorialized on the website. The title will also have a corresponding website badge and a Discord role. The hack that passes evaluation will also be commemorated in a Hacking Academy Hall of Hacks on the website. This will also constitute the player’s graduation from the Hacking Academy.
    4. The player retains any and all rights related to his or her work on the hack. We kindly ask that FFV Central be given credit alongside the player in the hack, but this by no means a requirement and is up to the player.
    5. Terms of the program are subject to change from time to time to suit the needs of program.

    So, what do you think? Comment below, or come check us out on Discord.

    This post has been viewed 94 time(s).

  • Life Force NES to SNES Port

    Plus MSU-1 Support for CD Audio

    Rumbleminze, a fan of all things retro tech, is co-author of the Kid Icarus Randomizer romhack and whose recent work includes porting NES games to run natively on the SNES. You can follow these and other projects via Rumbleminze’s IAGithubYouTube, or Ko-Fi.

    Writes Rumbleminze, the port author, in his release post:

    Excited to release version 1.0 of my SNES port of the NES game Life Force! A classic Konami Shoot-em-up, now with no sprite flicker, no slowdown, FIVE sick CD Quality soundtracks . . . 8 palettes, difficulty selection, and optional lives adjustment!

    This post has been viewed 26 time(s).

  • Commission a Game Mod

    Custom Hack of Your Game of Choice

    To request a custom hack, visit the help channel of our Discord and create a topic.

    Our available modders for commissions are listed below.

    Please note that acceptance of a request is subject to a modder’s discretion.

    clymax

    Specialties: mechanics hacks, custom cheats, bugfixes

    Platforms: NES, SNES

    Flat-fee commissions available here.

    Portfolio: link

    Modder B

    Specialties: graphical hacks, audio hacks, bugfixes, translation hacks, custom cheats, spritework

    Platforms: SNES, GBA

    Modder C

    Specialties: script edits, font replacement, spritework, translation hacks, scripting, web patchers

    Platforms: SNES

    Modder D

    Specialties: scripting, custom cheats

    Platforms: 3rd-gen to 5th-gen consoles

    RoSoDude

    Specialties: mechanics hacks

    Platforms: SNES, PSX, PC

    Portfolio: link

    This post has been viewed 64 time(s).

  • Porting NES Games to SNES

    By Rumbleminze on April 15, 2024. Reproduced with permission.

    Rumbleminze, a fan of all things retro tech, is co-author of the Kid Icarus Randomizer romhack and whose recent work includes porting NES games to run natively on the SNES. You can follow these and other projects via Rumbleminze’s IAGithub, YouTube, or Ko-Fi.

    Intro

    This [post] is going to go over the process I use to port NES games to the Super Nintendo. Something to keep in mind while we go through this process: I’m by no means an expert on all these things. But I do know what’s worked for me. If you have ideas on ways to improve it, I’d love to hear them! Please reach out to me on Bsky.

    Why though?

    The most frequent question I get is “why?”. There are a lot of great reasons for porting games from the NES to the SNES. Here’s a few:

    1. eliminate slowdown
    2. eliminate sprite flicker
    3. allow for MSU-1 enhancements like CD quality music and videos
    4. Take advantage of FastROM cartridge chips
    5. Up-rez-ing the sprites to 16-bit
    6. better video output on SNES instead of NES
    7. Much, much more room for romhacks/enhancements
    8. Most importantly, it’s fun!! Finding ways to port these games is, to me, like solving a big puzzle.

    The Overall Process

    To accomplish my ports, I follow this general approach:

    1. Take the original NES ROM, and break it up into it’s requisite memory banks by creating .asm files for each bank.
    2. Use a buildable SNES game skeleton, with the NES games memory banks mapped to various convienent banks in the SNES game.
    3. Hook up the SNES skeleton to jump to the NES initialization/nmi at the proper times
    4. Slowly replace routines of the NES byte code with decompiled assembly, aquired from running the NES game in Mesen2.
    5. Find and modify the NES specific logic and tile graphics to work on the nes. Especially things like:
      • All writes to Video Memory
      • Deal with differences in screen resolution / BG size / Mirroring
      • Update audio to use Membler’s 2A03 emulator
      • Properly handle bank switching

    [Editor’s note: for the remainder of this post, covering tools, goals, and limitations, please visit Rumbleminze’s blog.]

    This post has been viewed 31 time(s).