So, yeah. I’m one of the chosen ones that got the Faceball ROM early. Just to prevent misunderstandings: I got the ROM early because I’m a nice guy. I don’t do this for money or to get a free copy. I will buy both, the normal and the collectors edition. The original version is a really great game. I played through it multiple times and I think it is easily worth 100$.
I spent the last 4 or 5 days hacking around in the ROM and have already discovered allot of things. It is my first ROM hacking project, so I needed some time to figure everything out. I focus on changing the gameplay and don’t try to fix the typos. Special thanks go to Greg Stevens and HorvatM who pointed me at the right tools. The Sacred Tech Scroll from Guy Perfect made things allot easier for me. He also took the time to explain me how to write asm statements and get them into a ROM (even though he didn’t know what he was helping me with).
That said. manipulating the ROM is fairly easy. After 2 days I could already do things I would have thought are not possible. I can’t wait for what guys like HovratM or Greg Stevens can pull of. So here is what is possible so far.
There are 14 mazes in the ROM which I can freely modify. Meaning I know how to:
– change wall positions
– change wall types (I was hoping to find a mirror wall-type as there are some hints in the game that this was planned but it seems like they didn’t make it into the code.)
– change enemy start position
– change enemy strength
– change enemy drop item
– change enemy attack behavior
– change enemy movement behavior
– change enemy escape behavior
– how to attach a shield to an enemy
– some other stuff I can’t remember right now
– oh yeah, there is a Facball enemy I can use
I also think I know where the items that simply lie around in the levels are stored, but I didn’t play around with that yet.
On top of that I figured out how the mazes are loaded. This allows me to create completely new ones, put them somewhere in the ROM and load them instead of the existing ones.
As I said before, there are only 14 mazes. This means if I manipulate maze 1 it changes for all 4 stages. However, I figured out where the selected stage is stored. After that I wrote some code that is executed instead the original maze-loading code. This allows me to load what ever maze I want and yeah, this means I can have 56 different mazes in the game.
However, I only tested this in a very simple way.
OK, that it for now. Ask questions if you want to. I will keep the updates coming.
Sound amazing! Is it possible to code a 2 Player Mode, like it was originally planned? π
DrEvil wrote:
Sound amazing! Is it possible to code a 2 Player Mode, like it was originally planned? π
heh, I wouldn’t even know where to start. Probably not.
This is really exciting! Keep up the great work.
Now, here are my questions.
Will some of the proceeds help Eric like the other versions?
Will you create whole new stages, or use influence from other versions?
Can there be more than 56 stages?
What is this new enemy?
Any idea on cost?
Thanks for helping Eric!
-Paul
segagamer99 wrote:
This is really exciting! Keep up the great work.Now, here are my questions.
Will some of the proceeds help Eric like the other versions?
Will you create whole new stages, or use influence from other versions?
Can there be more than 56 stages?
What is this new enemy?
Any idea on cost?
Thanks for helping Eric!
-Paul
I won’t earn any money on this. Eric gets the remastered ROM and sell it either as the ‘normal edition’ or the ‘donators edition’.
I want to keep the original 14 levels in the game and add new ones for the rest. I will have to write a level editor for this. I may look into the other Faceball games to get some ideas.
The new enemy is a plain Faceball. You can see him in the start sequence.
Cool that you’ve made so much progress so fast! Did you find out if 10×10 squares is the maximum level size?
DanB wrote:
Cool that you’ve made so much progress so fast! Did you find out if 10×10 squares is the maximum level size?
I didn’t tried to manipulated that yet, I know where it is stored though. But I removed a surrounding wall once and could leave the maze without breaking the game.
I could also produce walls with an other angle then 90Β° by manipulating the according values in the WRAM. However, this broke the collision detection. Also, the maze format in the ROM is different to what is used in the WRAM and doesn’t allow other angles then 90Β° as far as I can tell.
Not to sound greedy, but anyway to make an arena mode? Just take existing maps in the game, and turn them in mazes for arena mode! Let the player pick any combination of 8 different smiloids that he wants to fight against. You vs the smiloids for whoever can reach 8 tags(kills) first wins!
segagamer99 wrote:
Not to sound greedy, but anyway to make an arena mode? Just take existing maps in the game, and turn them in mazes for arena mode! Let the player pick any combination of 8 different smiloids that he wants to fight against. You vs the smiloids for whoever can reach 8 tags(kills) first wins!
heh, that would be great. I can’t tell if there is way to produce a arena mode. My best guess is “no” as there is simply nothing right now I could build up on. Modifying and slightly extending things is possible as I reuse the game mechanics and just change the the parameters used by those. It was already complicated enough to extend the number of levels as I had to extend the existing code.
Looks like you have been hard at work again thunder, will you ever take that break? Lol.
Great work mate, look forward to giving this one ago aswell.
Thanks
Interesting news. Keep us apprised of your efforts.
Do you have any plans to release your tools for others who wish to hack the ROM when it gets released?
- This reply was modified 11 years, 10 months ago by Lester Knight.
Lester Knight wrote:
Interesting news. Keep us apprised of your efforts.Do you have any plans to release your tools for others who wish to hack the ROM when it gets released?
Sure, everything will eventually be released.
OK, I extended my existing test so that it now actually loads a maze which I wrote in a free spot of the ROM when I start 2-1. I’m now confident that I can have 56 different levels (as long as there is enough free space in the ROM).
There is just one thing left I have to figure out how to change. I have to change how the game behaves when loading a level after you died. This is kind of tricky and may take some time.
On the way I discovered how to manipulate the following things:
– Player start position
– player start health
– time left to finish the level
– dimension of the maze for overview map (this has to be set to the actual dimension of the maze to have the overview map centered in the middle of the screen)
Ohhh, also there is a value that allows me to change how far you can look into the level. However, the values is already set to the maximum so I can only lower it which doesn’t make allot of sense.
thunderstruck wrote:
The new enemy is a plain Faceball. You can see him in the start sequence.
Based on the other games, that might be the default look for the user controlled character in the arena mode. OK I know there isn’t an arena mode, but I wonder if that’s what it was intended for.
Dave_ wrote:
thunderstruck wrote:
The new enemy is a plain Faceball. You can see him in the start sequence.Based on the other games, that might be the default look for the user controlled character in the arena mode. OK I know there isn’t an arena mode, but I wonder if that’s what it was intended for.
I never played the arena mode in any version but it is basically the player character. I will make a picture later…
It is nothing ‘special’ but the only secret I found so far.
Attachments: