News: 11 March 2016 - Forum Rules

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Spindaboy

Pages: [1] 2 3 4 5 6 ... 9
Updated as of 9/30/21. See OP.

I was operating under the assumption that it would be closed source. That changes it completely. I really hope this works out.

Just to clarify once again, the game itself will be closed-source while the editor is planned to be open source (though this is ultimately up to YourNerdyJoe as that aspect of development is entirely his own creation).

It sounds like you have a passion for creating a story with a set of characters that you thought up. Why not just go for that? Use RPG Maker to at least put out the first chapter so that people can catch the vision for your project. Don't worry about wasted effort; if you actually create a full game, you'll waste FAR more effort than THAT. Also, don't worry about people stealing your ideas; if they're good enough to steal, then you'll have your crew in no time flat. For inspiration, look into the fan game Final Fantasy: The Blackmoon Prophecy I and II, which have the same premise as your idea.

Funnily enough the project actually did originate as an RPG Maker project when I first thought of it a few years back, though at that time I didn't I really have a concise idea of what I wanted it to be. I then contemplated doing a ROM hack but released the changes/additions necessary warranted their own engine built from the ground up, hence the reason for this post.

Just to clarify, people stealing my ideas wasn't my concern about putting more information out there. I was simply afraid of catching Square's attention and having to shut down the project prematurely. After speaking with the creator of BMP (who hasn't ever heard a word from anyone at Square) recently, however, I've warmed up to the idea and will likely put together a site, subreddit, etc. to start sharing some of the nearly 200 page long design document I have sitting on my PC :laugh:

There are tons of free art assets with very reasonable licensing. alone has everything you'd need, and there are no shortage of spriters and musicians to modify those assets to suit your needs. Even then there are plenty of assets from games like Wesnoth that are open source.

It really seems like you're making this as difficult and risky as possible for yourself, for no discernible benefit.

Like I said, I acknowledge that this is not the most logical decision if I want to be 'safe' about things. However I'm not making a product to be sold, I'm making it for my fans like myself as a passion project - fans who are tired of being neglected by Square and crave a new Final Fantasy title specifically. Whether it be plot, graphics, music, etc., if it isn't indistinguishable from the classic FF titles in quite literally every way, shape, and form, it misses the entire point. Hence why I am deliberately filtering every suggestion/idea I get through my refined intuition of what makes classic FF what it is, and any idea that doesn't pass is discarded for the sake of remaining as close to the source material as possible (absolutely NO creative liberties are being taken here aside from those related to the original characters/plot). The finished product conforming not just to my own vision but also the vision of FFI-VI is of the upmost importance. In other words, if it's not explicitly and in no uncertain terms Final Fantasy, I have no interest in publishing it.

Literally, the only thing you have to do to make this game and your work (along with the work of other people helping you) 100% legal is to change the title. It is also a mark of respect for the original autors of retro Final Fantasy games (most of them are not Square Enix employees anymore) to not take over the name of their games. Copying the concept in a new franchise is perfectly fine and has already been done dozens of times.

I don't think many people are wishing to contribute if there is a high risk that they'll recieve a C&D and that would make all their work done during free time to trash.

So this is something I've been recommended by several people now and I'd like to preface this by saying that I understand why doing so would the safer decision. Even if I did change the branding however, virtually every weapon, spell, job, etc. is explicitly Final Fantasy, not to mention the fact that nearly all graphics/music are taken straight from the GBA FF titles.

Setting that aside though, I am personally invested in this being released as a continuation of the classic FF style. Ever since the jump to 3D, classic FF has been pushed aside and what I believe to be the core of the classic titles was never seen again after VI (with two notable exceptions, namely The After Years and Dimensions, not counting spin offs/remakes/ports). So much so, in fact, that I believe VII onward to be connected to the originals in name only. I could write an entire video essay (and probably will at some point tbh) about this irreversible transition, but the point is that I intend to make this the truest FF game since the originals - yes, even more than Square's own titles - and that is the reason I am both unabashed and resolute in my calling this a Final Fantasy game (tangent over).

After recently speaking with the creator of the Blackmoon Prophecy games (arguably the largest and most successful FF fan games out there) my concerns about the project getting shut down have actually abated a fair bit. Apparently, while Square has taken down fan games of some of their other properties, there hasn't been a single instance of them taking down an FF one. That's not to say that it could never happen, of course, especially if the project does grow significantly in popularity, but I'll likely be more open to releasing details from here on out. I still stand by my original thinking though which was basically that, assuming the game does gain enough traction, it will be hosted on various sites across the internet long before Square catches wind of it. Therefore it wouldn't matter whether or not I took down the original link since the project would already be available for download in so many other places.

5. What sprite sizes do you want to use?
Same as FFIV/V so 16x24 for battle sprite and 16x16 for overworld sprites (characters only of course).

You know that Final Fantasy is a registered trademark and that you cannot just take the franchise (and logo) without Square Enix' approval, right ? The only exception is if this is clearly a parody of their games.

Right, I am 100% expecting to get hit with a C&D shortly after the the game is released which is why I attached virtually no details to this post. I'd like to keep it under wraps until the full-release so I don't catch the attention of Square's lawyers prematurely.

I'd be interested in the sound/music part ;)

PM sent! :thumbsup:

Releasing an editor too? Neat. Wonder if it'd be possible to finally have FF3 on GBA this way without having to use an emulator.

Funnily enough I was thinking of doing just that :laugh: And it should even easier once the pixel remasters come out next month!

Are you planning to open source it?

The game itself will not be open source however the dev who's making the all-in-one editor says he's likely to release it alongside the game when they're both completed. It'll be akin to an RPG Maker for GBA homebrew.

And you expect someone to do all of this for free?

Correct. Not because I wouldn't be willing to pay, but because offering compensation for work is against forum policy it seems. Against all odds though someone interested in the programming position reached out to me via PM not too long after I initially posted which I have to admit was way sooner than I had anticipated!

- 9/30/2021 Update -

Hey everyone! Just wanted to give a quick update. The game engine officially entered development in late June and planning for the project (story, world, etc.) is nearly complete. At this time I would like provide more details on the three remaining positions:

1) Graphic Artist Filled!

The graphic artist is responsible for creating battle sprites, overworld sprites, and character portraits using both concept art and existing references. Work will ideally be done using YY-CHR or the artist's graphics editor of choice.

2) Map Designer

The map designer is in charge of creating the town and dungeon maps based on the descriptions of the locations as well as existing references. Maps will be created in Tiled, a free and easy to use map editor, as this is the format the dev has programmed support for. Experience with map design from the classic Final Fantasy titles (I-VI) is heavily preferred.

3) Music Transcriber Filled!

The music transcriber is in charge of creating sheet music and a corresponding MIDI file for each composition assigned. The specifics of the MIDI file have yet to be determined and audio will likely not be implemented until the latter stages of development. Many tracks have already been documented and had MIDIs created, so not all tracks will require this process.

Please don't hesitate to reach out! Feel free to contact me anytime on discord at Spindaboy#1831 :)
- Original Post -

Hey all, I've had a project I've been designing on and off for a few years now and am finally looking for staff to assist in the implementation phase. I will only be providing a brief synopsis of the project and skills I am searching for as I'd like to keep the details of the project confidential for the time being.

The project is being developed as a Game Boy Advance game under the title Final Fantasy: A New Beginning. The gameplay draws heavily from the classic Final Fantasy titles (I-VI) though the scenario is being written from scratch with the exception of some recurring locations, plot points, etc. mixed in. The majority of assets will be taken straight from the GBA ports of Final Fantasy IV and Final Fantasy V, including sprites, tilesets, sound effects, and music. Original concept art of the characters is also being created. The project will be released for free online, ideally sometime within the next 2~3 years, though this is a very rough estimate.

This work is ultimately a labor of love and as such requires that those involved be motivated solely by the completion of the project. I realize this is a monumental task for anyone, much less for free, however I do believe there exist fans, few as they may be, who are as dedicated to a revival of these classic titles as I am. It's my hope that through this post I might be able to find one of the few individuals who possesses both the skill and ambition needed to make this project a reality.

For those who are interested in assisting in the project's development but lack the necessary programming skills, there are still a few miscellaneous positions that need to be filled. Among them is a composer capable of translating tracks from various FF games into sheet music by ear for conversion into MIDI format (this could technically be separated into two roles), a pixel artist to assist with designing sprites of the original characters, and finally a map designer with a good understanding of what classic FF map design typically looks like.

I'll be checking this post for replies though you can also contact me directly if you'd like by either sending a PM or shooting me an email at

ROM Hacking Discussion / Re: FFI (NES) Armor Indices
« on: April 30, 2021, 02:02:23 pm »
So it looks like the isEquipLegal function occupies this little snippet right here. I can't seem to find where exactly the values lie though. Is there something I missing here?

Code: [Select]
    SBC #$01          ; subtract 1 from the item ID to make it zero based
    ASL A             ; double it
    STA tmp           ; tmp = (2*item_id)

    LDA cursor        ; get the cursor
    ASL A
    ASL A
    ASL A
    ASL A
    AND #$C0          ; shift and mask to get usable character index
    TAX               ; put char index in X

    LDA ch_class, X   ; get the character's class
    ASL A             ; double it (2 bytes for equip permissions)
    TAX               ; and put in X to index the equip bit

    LDA lut_ClassEquipBit, X        ; get the class permissions bit position word
    STA tmp+4                       ;  and put in tmp+4,5
    LDA lut_ClassEquipBit+1, X
    STA tmp+5

    LDY equipoffset              ; now, see if we're dealing with weapons or armor
    CPY #ch_weapons-ch_stats
    BNE @Armor

    LDX tmp                        ; get the weapon id (*2)
    LDA lut_WeaponPermissions, X   ; use it to get the weapon permissions word (low byte)
    AND tmp+4                      ; mask with low byte of class permissions
    STA tmp                        ;  temporarily store result
    LDA lut_WeaponPermissions+1, X ; then do the same with the high byte of the permissions word
    AND tmp+5                      ;  mask with high byte of class permissions
    ORA tmp                        ; then combine with results of low mask
                          ;  here... any nonzero value will indicate that the item cannot be equipped

    CMP #$01              ; compare with 1 (any nonzero value will set C)
    BCC :+                ; if C is set (can't equip)....
      RTS                 ;   ... just exit.  otherwise...

:   LDA cursor            ; get the cursor (character id*4)
    AND #$0C              ; isolate the character bits
    TAX                   ; and put in X for indexing

    LDA item_box, X       ; unequip all weapons
    AND #$7F
    STA item_box, X
    LDA item_box+1, X
    AND #$7F
    STA item_box+1, X
    LDA item_box+2, X
    AND #$7F
    STA item_box+2, X
    LDA item_box+3, X
    AND #$7F
    STA item_box+3, X

    RTS                   ; then exit (C is still clear, indicating item can be equipped)

    LDX tmp                       ; get the armor id (*2)
    LDA lut_ArmorPermissions, X   ; use it to get the armor permissions word
    AND tmp+4                     ;  and mask it with the class permissions word
    STA tmp
    LDA lut_ArmorPermissions+1, X
    AND tmp+5
    ORA tmp               ; and OR both high and low bytes of result together.  A nonzero result here indicates
                          ;  armor cannot be equipped

    CMP #$01              ; compare with 1 (any nonzero value sets C)
    BCC :+                ; if armor can't be equipped....
      RTS                 ; .. just exit.  Otherwise...

:   TXA                   ; get back the armor_id*2
    LSR A                 ; /2 to restore armor_id
    TAX                   ; and put back in X

    LDA lut_ArmorTypes, X ; use armor ID to index and find out what kind of armor it is (body, helmet, shield, etc)
    STA tmp+2             ; store armor type in tmp+2

    LDA cursor            ; store current cursor in tmp (seems dumb... we could just reference cursor directly)
    STA tmp
    AND #$0C              ; mask out the charater bits  (char ID * 4)
    STA tmp+1             ;  store that in tmp+1  (loop's item to unequip)

    LDY #$04              ; set Y (loop counter) to 4 (loop 4 times)

    LDA tmp+1             ; get the loop item index
    CMP tmp               ; compare to the item we're trying to equip
    BEQ @ArmorSkip        ; if they're equal, skip over this item (seems pointless... the item we're checking wouldn't be equipped)

    LDX tmp+1             ; put loop item index in X
    LDA item_box, X       ;  use it to get that item from the item_box
    BPL @ArmorSkip        ; if that item is not equipped, skip it

    SEC                   ; otherwise (it is equipped), subtract $81 to get the armor ID
    SBC #$81
    TAX                   ; put armor ID in X
    LDA lut_ArmorTypes, X ; use that to look up what type of armor this is

    CMP tmp+2             ; compare that to the type of armor we're trying to equip
    BNE @ArmorSkip        ; if it doesn't match (different kind of armor), skip it

                          ; otherwise... it's a match!  need to unequip it.
    LDX tmp+1             ; get this loop item index in X
    LDA item_box, X       ; use it to get the item from the item box
    AND #$7F              ;    unequip it
    STA item_box, X       ;    then write it back

    INC tmp+1             ; increment our loop item counter (to examine next item in the item box)
    DEY                   ; decrement our loop counter
    BNE @ArmorLoop        ; and keep looping until it expires

    CLC                   ; once we're done with all that, CLC to indicate the item can be equipped
    RTS                   ; and exit

ROM Hacking Discussion / Re: FFI (NES) Armor Indices
« on: April 29, 2021, 02:16:49 pm »
Ever heard of a hex editor?

Allow me to rephrase, does anyone know how to locate the values?

ROM Hacking Discussion / Re: FFI (NES) Armor Indices
« on: April 28, 2021, 07:56:43 pm »
Hmmm do you if there's any way to modify the values used in the function with a ROM that's already been assembled?

ROM Hacking Discussion / FFI (NES) Armor Indices
« on: April 28, 2021, 04:58:51 pm »
So I noticed Final Fantasy seems to determine which slots are reserved for which armor pieces (e.g. slots 1-16 are reserved for body armor) via their placement in the ROM rather than by an attribute attached to each entry (the same seemingly applies to magic). Would anyone happen to know where these values are listed in the ROM or how I might go about finding them?

ROM Hacking Discussion / Re: FFHackster Replacing Spaces with Slashes?
« on: April 25, 2021, 02:36:42 pm »
Wouldn't it just be easier to use a tile editor and change the / to Space?

I considered doing however the the slash is used elsewhere (e.g. for spell charges). Thankfully I did find a relatively easy work-around though. The space character can be inserted by simply typing {FF} in place of the usual space. Hopefully this helps someone in the future!

ROM Hacking Discussion / Re: FFHackster Replacing Spaces with Slashes?
« on: April 24, 2021, 10:57:32 pm »
Just tested it with a clean copy of FF and no slashes were found so this seems to be the case... The odd thing though is that this never happened when I used the exact same base patch (FF Restored) for the first version of my hack a few years ago which is why it never occurred to me. Guess I'll just have to open up a hex editor once I'm finished and change all those slashes manually if I can't figure some other way around it ::)

ROM Hacking Discussion / FFHackster Replacing Spaces with Slashes?
« on: April 24, 2021, 05:57:47 pm »
Hey all, I've been experiencing this really annoying bug with Disch's FFHackster that seems to turn all spaces input by the keyboard into slashes in-game. Examining the ROM using a hex editor shows that the spaces are being encoded as C1 (the slash icon) rather than FF (the space character). The only thing I could think of that may be causing this to happen is the fact that I'm using Windows 10, as last time I used the program (it's been a few years) I was still on Windows 7 which never had this issue. Any idea what could be causing this if not incompatibility with the OS?

Like M. Fast, I am very confused as to what exactly you think you have to do by hand and what makes you think finding them in the ROM would let you avoid doing something by hand.

Have you tried looking at a different game with uncompressed graphics? Does it work the way you think it does?

What I mean is selecting a sprite as it appears in a graphics editor, ctrl+C-ing it, and ctrl+V-ing it in another instance of the same program. I have used this method with yy-chr in the past and it has worked exactly as I would expect.

This is the program I used to work with compressed GBA graphics...there was a tutorial on how to do it, once upon a time, but I can't find it now. It might be in the readme for the program itself?

As for the palettes, I'm not sure. I tried looking for them in that game before, but couldn't find them without using a trace debugger.

Could you share the name of the program you mentioned?

Even if you did rip them as is then they will tend to be tied to screen positions so unless you homebrew game also wants to be 240x160 pixels then you will be doing work.

Actually the plan is to create is to create it for the GBA so this shouldn't be an issue :) That's actually why I wanted to find the graphics in the ROM rather than using an already existing sheet or taking from memory; I figured that it'd be easier copy/pasting from one graphics editor to another rather than recreating them  by hand. I'm just having trouble finding the locations using unLZ-GBA unfortunately.

Hey all. I'm working on trying to figure out the best way to find and export graphics (I'm talking everything: sprites, animations, tile sets, etc.) from FFIV Advance for reuse in a homebrew project. I know sheets for these already exist but I was hoping to extract them directly from an editor to save myself the tedious process of having to recreate each one pixel by pixel. So I guess what I'm asking is advice on how I might go about pinning down the location of the graphics (to view in an editor) as well as their respective palettes?

Pages: [1] 2 3 4 5 6 ... 9