Points of Required Attention™
Please chime in on a proposed restructuring of the ROM hacking sections.
Views: 88,601,847
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 05-18-24 10:21 PM
Guest: Register | Login

Main - Posts by GuyPerfect

Pages: 1 2 3 4 5 6 7 8

GuyPerfect
Posted on 06-10-07 04:31 AM, in GhettoBlaster mk. III Link | Quote | ID: 44110


Paratroopa
Level: 30

Posts: 61/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Here's my GhettoSoftware source code!

#include "whatitcamewith.h"
#include "dontknowwhatitdoes.h"

int main(int whatisthis, char **twostarsftw) {

whatiscout << ihavenoidea(howitworks);

return 0;

}


Oh, wait. That's how all corporate software works. Darn you programmers and your magic wands!

GuyPerfect
Posted on 06-11-07 03:53 AM, in F-Zero? Link | Quote | ID: 44431


Paratroopa
Level: 30

Posts: 62/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Check your PMs, Heian. I sent you a message before you made that post.

And yeah, I've done my fair amount of F-Zero-related hacking. Hacked Maximum Velocity and the SNES one (but only a bit), and made a level editor for F-Zero X.

GuyPerfect
Posted on 06-11-07 05:58 AM, in XP or Vista? Link | Quote | ID: 44452


Paratroopa
Level: 30

Posts: 63/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
I know this post will be posted in vain, but...

Linux is just the kernel. An operating system is made up of the software you run on it. The bash command prompt in and of itself is installed to the computer in order to make the kernel useful.

OS's are the whole deal, like Debian, Fedora, Ubuntu, etc. Calling Linux an OS is like calling Text a newspaper. Part of the way there, but only a part.

GuyPerfect
Posted on 06-11-07 04:12 PM, in F-Zero? Link | Quote | ID: 44536


Paratroopa
Level: 30

Posts: 64/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
If it's anything like the GBA games, there's a predefined path that all machines are expected to adhere to. Just a list of points that draw the path that machines are supposed to take. The GBA games allow parts where there are two alternate paths, which helps with forks in the road as well as having the CPU players use the pit area.

There's a special tile used in the panels of the track, usually tile 00, that represents "nothing here" and allows the course "floor" to show through. Of course, the SNES game has the ground built into the panels themselves, so it's probably a bit different. Either way...

As a machine glides across the course, it travels over each of the path points, in order. That's how the game knows when you're facing the wrong way, etc. When you drive on a tile on a panel that you're not supposed to drive on, the game says "OMFG Collision!" and pushes the machine back towards the path point they're supposed to be on while administering a little damage.

If you modify the track but not the path, you have to be very careful not to step in the wrong spot. If you do, it'll painfully drag you across the netherworld until it puts you back where it thinks you're supposed to be, which may very well be in the middle of nothingness itself, causing your machine to blow up.

On a side note, if you're airborne and you land on one of those "nothingness" tiles, you blow up. That's how the game detects a miss.

GuyPerfect
Posted on 06-13-07 10:14 PM, in What.... the.... fuck Link | Quote | ID: 45061


Paratroopa
Level: 30

Posts: 65/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
If you're not going to share your thoughts or post a real thread title, then you must have been attacked with that technology.

GuyPerfect
Posted on 06-17-07 05:25 AM, in F-Zero? Link | Quote | ID: 46218


Paratroopa
Level: 30

Posts: 66/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
I've only worked with Maximum Velocity on GBA. Sorry.

However, I am at this time working with smkdan. We should start diving into hacking full-speed here fairly quickly, then we'll have a good chunk of stuff to update.

GuyPerfect
Posted on 06-18-07 04:32 AM, in Kraid in Donkey Kong Country Link | Quote | ID: 46430


Paratroopa
Level: 30

Posts: 67/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Some sound effects in Wario Land (Super Mario Land 3) are definitely taken from Metroid II, such as the pause sound effect (WL) and the save sound effect (M2). There's a bird in Wario Land that, like... you throw a coin into its head or something? It makes the same noise the Alpha and Gamma metroids make when you shoot them.

GuyPerfect
Posted on 06-20-07 09:02 PM, in F-Zero? (rev. 3 of 06-20-07 09:05 PM) Link | Quote | ID: 47265


Paratroopa
Level: 30

Posts: 68/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Wonderful. I'll take another shot at the path format shortly.

For everyone else, what I found with the path was for a North American ROM with a 512-byte header. I was able to screw up the AI on Mute City, but I haven't cracked the data just yet. It's not plain simple as would be nice. (-:

Setting all bytes from 176A0 to 176B0 to the value 00 makes the AI immediately veer off the right side of the track.

Anyways, I'll do more work on it and see what I can find. It might be compressed, but the data surrounding it suggests otherwise... But still!

(Man, I hope it's not compressed. There has yet to be an F-Zero game I've worked with that I didn't have to crack a compression format)
__________

EDIT:

Wait a sec... I don't see that PM in my sent list... smkdan, did you get a message regaring the path info or did it get lost?

GuyPerfect
Posted on 06-21-07 03:13 AM, in F-Zero? (rev. 2 of 06-21-07 03:14 AM) Link | Quote | ID: 47388


Paratroopa
Level: 30

Posts: 69/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Messing up the data I described will mess up computer AI as well as "reverse" detection. The only thing that doesn't seem to line up right now (I might just not know the details yet) is the exact coordinates of the starting position, which appear to be independent from the course path.

Another note of interest is that the four usable machines need a good stretch of straight road to drive on right at the start. They drive straight for a few seconds before shifting over to conform with the course path, which means you can't have a curve right after the lap line. Other than that, there don't appear to be any restriction in what can be done with the path.

GuyPerfect
Posted on 06-21-07 05:26 PM, in F-Zero? Link | Quote | ID: 47544


Paratroopa
Level: 30

Posts: 70/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
I think, at least in part, that the path data is built relative off of itself, which would explain the collision botching. However, regardless of where the start position is or what you do to the first half of the path data, the second half of the lap is always navigable by the AI.

I'm learning slowly, but still don't know enough to decode the path data.

GuyPerfect
Posted on 06-22-07 01:09 AM, in Zero Fission/Metroid Zero Mission and Fusion Hacking Link | Quote | ID: 47643


Paratroopa
Level: 30

Posts: 71/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Yes, sir.

GuyPerfect
Posted on 06-22-07 06:07 PM, in F-Zero? (rev. 4 of 06-22-07 07:14 PM) Link | Quote | ID: 48360


Paratroopa
Level: 30

Posts: 72/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Long story short, I think I got it. Picture!



Mute City I appears to have a list of 29 X values followed 29 Y values. Each value is biased by the one preceeding it. They're 16-bit signed integers; little endian.

IMPORTANT:
The first entry in the list is in fact the first point of the path data. However, the first point is not on the lap line. Its values are biased by the lap line, but the first point in the path is actually a bit ahead of the starting point.
__________

Now comes the big question... Why 29? Is it 29 for all courses? I'm guessing probably not. smkdan, your knowledge could come in handy here. See if you can find out exactly where the number of points comes from.
__________

EDIT:
After some further examination, I can see that my data isn't quite right. But hey, I'm a lot closer than I have been.

GuyPerfect
Posted on 06-23-07 02:59 AM, in F-Zero? Link | Quote | ID: 48671


Paratroopa
Level: 30

Posts: 73/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Thanks for the bit of insight, VL-Tone.

I'm at a loss as to the reasoning behind the "low order byte inverted" business, but it DOES seem to get the job done.



This was generated from data at 0x176A2 on a 512-byte headered ROM and extracted as thus: 16-bit unsigned integers, little endian, low-order byte inverted. If the bytes read from ROM are in order and are B1 and B2, then the value is B2 * 256 Or Not B1.

For Mute City I, there appear to be 29 points (1D, not 3A), and are stored as "all X's first, then all Y's."
__________

This data is all shifted a bit to the right and a bit forward from where the official starting point is and I don't know why. If the AI likes it, I guess that's okay.

GuyPerfect
Posted on 06-23-07 05:16 AM, in F-Zero? Link | Quote | ID: 48762


Paratroopa
Level: 30

Posts: 74/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
That would explain the magical "fixes itself" I was seeing. Even if you screw up the first few path values, the machine will somehow correct itself on the second half of the lap. I knew it had to load in another reference coordinate pair, but I didn't know how to find it. Good job tracking it down.

GuyPerfect
Posted on 06-23-07 06:27 PM, in F-Zero? (rev. 2 of 06-23-07 06:33 PM) Link | Quote | ID: 48919


Paratroopa
Level: 30

Posts: 75/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Heian
The data was generated from the data I found in the ROM. There are so many points for two reasons. 1) When you bump into the wall, the game repels you towards the "next" point along the way. If it was too far up ahead, you'd be bumped at a very odd angle. Didn't GP Legend do that? 2) The AI uses the points to drive. If you got one off-center, it would slowly drag itself back to the center of the course because it's only heading to the next control point.

VL-Tone
The idea we came up with when pulling apart F-Zero Maximum Velocity was to have the editor come with expandable definitions for "meta panels"; groups of track parts that could be puzzled together fairly easily. While the exact panels in the game vary, certain combinations could be moved as though they were panels in themselves, making something akin to Climax's editor.

GuyPerfect
Posted on 06-24-07 05:06 AM, in F-Zero? Link | Quote | ID: 49037


Paratroopa
Level: 30

Posts: 76/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
0x176A2 - 0x176DB for X and 0x176DC - 0x17715 for Y. Again, the low-order byte was Not'd.

GuyPerfect
Posted on 06-24-07 06:56 PM, in F-Zero? Link | Quote | ID: 49172


Paratroopa
Level: 30

Posts: 77/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
I actually mentioned that earlier in the thread.

Posted by GuyPerfect
As a machine glides across the course, it travels over each of the path points, in order. That's how the game knows when you're facing the wrong way, etc. When you drive on a tile on a panel that you're not supposed to drive on, the game says "OMFG Collision!" and pushes the machine back towards the path point they're supposed to be on while administering a little damage.

If you modify the track but not the path, you have to be very careful not to step in the wrong spot. If you do, it'll painfully drag you across the netherworld until it puts you back where it thinks you're supposed to be, which may very well be in the middle of nothingness itself, causing your machine to blow up.

GuyPerfect
Posted on 06-26-07 04:43 AM, in Zero Fission/Metroid Zero Mission and Fusion Hacking Link | Quote | ID: 49608


Paratroopa
Level: 30

Posts: 78/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
That's because it's not an assembly hack. It's just repointing a palette.

GuyPerfect
Posted on 06-26-07 06:58 PM, in F-Zero? Link | Quote | ID: 49814


Paratroopa
Level: 30

Posts: 79/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Could you give a more thorough explination of the path data in ROM, describing what it is you mean by 'Midle Values' (I'm lost as it is, and your quotations don't help either), and working specifically with the Mute City I data?

Basically, if I were to write a program to pull the path out of the ROM (hint, hint), what would I need to do?

GuyPerfect
Posted on 06-29-07 11:40 PM, in Super Mario world nes pirat full version founted (rev. 2 of 06-29-07 11:43 PM) Link | Quote | ID: 50776


Paratroopa
Level: 30

Posts: 80/155
EXP: 152874
Next: 12995

Since: 03-14-07

Last post: 6067 days
Last view: 6016 days
Super Mario 64 WAS originally an NES development, originally called "Super Mario 3D." Managing PPU sprites can be difficult, yes, but they were attempting to make some rudimentary 3D world out of it. Their research was eventually put towards the Super FX chip for SNES, since a lot of the aspects between the two systems were the same. It wasn't until the N64 that they decided to give the project another go.






(-:
Pages: 1 2 3 4 5 6 7 8


Main - Posts by GuyPerfect

Acmlmboard 2.1+4δ (2023-01-15)
© 2005-2023 Acmlm, blackhole89, Xkeeper et al.

Page rendered in 0.230 seconds. (329KB of memory used)
MySQL - queries: 132, rows: 164/164, time: 0.222 seconds.