Points of Required Attention™
Please chime in on a proposed restructuring of the ROM hacking sections.
Views: 88,487,833
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 04-26-24 02:02 PM
Guest: Register | Login

0 users currently in ROM Hacking | 5 guests

Main - ROM Hacking - SNES F-Zero editor project New thread | Thread closed

Pages: 1 2 3 4 5

smkdan
Posted on 02-16-08 01:25 AM (rev. 3 of 02-16-08 06:32 AM) Link | Quote | ID: 77939


Ninji
Level: 36

Posts: 106/238
EXP: 288652
Next: 19458

Since: 05-26-07

Last post: 4062 days
Last view: 4012 days
AI editing will come soon enough. I'm working on a viewer ATM. It will have a series of points connected by lines, since that would be very easy to manage in C#. I plan to have X Y coords being able to be input manually or being able to plot it with the mouse. I'll have something to show you soon.

As the the panel matching, that would be pretty tricky, since there are many different cut-off points for the barriers. Some have half, quarter etc. protruding. White Land 2 has some pretty modular panels, but it would still be nice to have cusotmiseable ones nonetheless.

The (distant) advantage of not having ready made panels is the customising I suppose. You can tailor a panel to fit what you please, even though it would take a fair bit of effort to do so.

E:


Here's an entire track with it switched on.

http://img292.imageshack.us/img292/2586/wholesc1.png

E2: Branches are pretty odd now that I look at them in the editor, but this attempt seemed to work best.


Heian
Posted on 02-16-08 03:09 PM Link | Quote | ID: 77984


Red Koopa
Level: 27

Posts: 91/126
EXP: 111890
Next: 4269

Since: 03-08-07

Last post: 5847 days
Last view: 5846 days
Dan, the editor is looking great and I've had no trouble running it on my virtual XP machine in Mac OSX Parallels.

The paths look fine -- it'll sure be easy to edit paths if you can drag these points around!

Some things that might make the editor easier to use -- and keep in mind that I'm suggesting these things without regard for how hard they might be to implement!

* Gridlines between each panel, so that we can see from afar where the borders of each panel are.

* A number in the corner of each panel on the big map so we don't have to fish around in the panel selector to find the panel we were looking for.

* A 0.125x zoom view so that you can take in the entire track on a normal-sized screen before you start editing.

* When you select a track map, have a sample screen of the course in action (starting line, maybe?) so that we can see what our new palettes look like without having to load the game and actually race on the track with each iteration.

* Course name editing? How about adding the course names to the "Track" menu instead of "Queen 1", etc., which are hard to remember? (I see that on the opening screen for each course, it looks like you can use up to 27 letters without trouble, but the records screen only seems to hold 12 or so, which puts a cramp in my plans to have two-part course names in the style of the more recent games.)

I was messing with the game font in Tile Layer Pro and a hex editor, and can't seem to get the letters Q, X, and J into the game without breaking things. The smaller font used in the credits and records screen has everything, and I managed to add a colon to that font in preparation for the two-part course names, but can't get any new characters into the bigger 8x16 main font. I'm working on a revised font that looks more like FZMV's, and am also fooling around with a metal-plate-like font like the one used in FZGX. It's hard to get that look with so few pixels!

It's coming along great

smkdan
Posted on 02-16-08 04:13 PM Link | Quote | ID: 77993


Ninji
Level: 36

Posts: 107/238
EXP: 288652
Next: 19458

Since: 05-26-07

Last post: 4062 days
Last view: 4012 days
I wish there wasn't just the points I had to factor in. A bunch of rival specific stuff has to get in there too. At the current rate though, you won't have false negative 'reverse' signals and broken collision.

Gridlines between each panel, so that we can see from afar where the borders of each panel are.

sure, no problem implementing that.

A number in the corner of each panel on the big map so we don't have to fish around in the panel selector to find the panel we were looking for.

The panel selector is there in case the panel you want is not already on screen. Holding / releasing rightclick will select a region of panels, then left clicking will paste the selected panels where the cursor is. If I want to copy a single panel already on screen, i just right click in and left click it where I want it to be pasted at. Since you're on a Mac, I'm not sure how the program that virtualizes Windows simulates right clicks, but I'm guessing something as essential as that should be trivial to do on it?

A 0.125x zoom view so that you can take in the entire track on a normal-sized screen before you start editing.

Done, though the results aren't as pretty as the others. Trying to shoehorn 8192x4096 into 1024x512 with DrawImage (no magic overloads to fix that by the looks of it) looks kind of icky.



When you select a track map, have a sample screen of the course in action (starting line, maybe?) so that we can see what our new palettes look like without having to load the game and actually race on the track with each iteration.

I plan on having preview screens for the tileset / backgrounds etc. Simulating the track select would not be as easy because of the SNES features it makes use of.

I already planned to have the Track -> Cup -> 1, 2, 3 selections to be replaced with the name they have in game. i.e. Track->Knight->1. MUTE CITY 1. Editing course names is no challenge, since I modified that part of the game to read from plain ASCII.

The game's sprite font doesn't seem expandable, atleast that's how I remember it. Try opening a state in VSNES and go to the font and you'll see there's really no room at all for it. It makes it seem so tacky, but it can't be helped all that much.

Heian
Posted on 02-16-08 05:43 PM Link | Quote | ID: 77995


Red Koopa
Level: 27

Posts: 92/126
EXP: 111890
Next: 4269

Since: 03-08-07

Last post: 5847 days
Last view: 5846 days
That 0.125x view looks fine! It's perfect for overviewing the course before coosing an area to edit.

The panel selector is there in case the panel you want is not already on screen.

I can do left- and right-clicks with the Mac with no problem; I just thought that having panel numbers on the screen would familiarize the user with which panels have which numbers, and also let the user know when multiple panels are made from the same one.

It's really easy to accidentally place wrong tiles, since I (a left-hander) have the clicks reversed and have to consciously think about them. When I click from another window into the editor, it goes ahead and places a tile. Perhaps clicking from outside should just return focus to that application, rather than operating right away?

I plan on having preview screens for the tileset / backgrounds etc. Simulating the track select would not be as easy because of the SNES features it makes use of.

The preview wouldn't necessarily have to be the track select screen; just as long as it contains the track, background, and horizon, so we could see what the new palette looks like in the game.

I'm playing around with the color cycling; can we add this to any graphic? If so, we can have the barriers flash like they do in Climax.

It looks like the 23-letter alphabet is unavoidable, unless we remove some of the "POWER" labels and such. Maybe breaking the 8x16 alphabet into smaller 8x8 letters would work? We'd have twice as many characters and could make some special ones that contain condensed words, giving us more space.

Let me know when you update the editor!

Raccoon Sam
Posted on 02-17-08 01:04 AM Link | Quote | ID: 78031


Cobrat
Level: 56

Posts: 417/672
EXP: 1380041
Next: 18135

Since: 02-19-07
From: Hi

Last post: 3468 days
Last view: 2699 days
Well, getting around the font issue would probably work with some tilemap fingering (Lower tile of U and the upper tile of a slightly modified I make a J.) although I don't see anyone being bored enough to go through such work.
The best thing would to make plans of the track names first and then replace the characters your hack doesn't use at all.

____________________


Mattrizzle
Posted on 02-17-08 03:01 AM (rev. 2 of 09-11-09 01:09 AM) Link | Quote | ID: 78036


Red Cheep-cheep
Level: 33

Posts: 174/202
EXP: 226340
Next: 2839

Since: 04-21-07
From: United States

Last post: 2420 days
Last view: 2381 days
I was bored enough.


I've managed to squeeze all of the 8x8 tiles needed for the entire font with 8 tiles to spare.


These tile values should yield this:

Keep in mind that I have no idea where there the font tilemap is. For some reason I enjoy making complete fonts out of incomplete ones.

____________________

Raccoon Sam
Posted on 02-17-08 03:16 AM (rev. 2 of 02-17-08 03:17 AM) Link | Quote | ID: 78037


Cobrat
Level: 56

Posts: 418/672
EXP: 1380041
Next: 18135

Since: 02-19-07
From: Hi

Last post: 3468 days
Last view: 2699 days
Your creativity never ceases to amaze me, Matt.
I can already see a font fix patch in the near future.

____________________


smkdan
Posted on 02-17-08 07:05 AM Link | Quote | ID: 78063


Ninji
Level: 36

Posts: 109/238
EXP: 288652
Next: 19458

Since: 05-26-07

Last post: 4062 days
Last view: 4012 days
Thanks alot for that Mattrizzle. I'll implement it sometime, but before I do that I have to insert an extra patch like said above. It shouldn't be difficult I think. If I remember right it just adds 16 to access the tile on the next row.

Updated my private copy: The current track name editing is as seen here. Also seen is that optional grid suggested and dynamic menu items, I tried to make it thick and contrast-ish.




Heian: You have a point with the panel numbers. I'll just place an ID string in the top left of each.

Color cycling is there for any graphic that access the first 128 colors. I had it set to the first 128 since no one would realistically want to cycle sprites at 60FPS...

'Require focus click' will be an option when I get to implementing it.


Heian
Posted on 02-17-08 10:19 AM (rev. 2 of 02-17-08 10:23 AM) Link | Quote | ID: 78068


Red Koopa
Level: 27

Posts: 93/126
EXP: 111890
Next: 4269

Since: 03-08-07

Last post: 5847 days
Last view: 5846 days
Matt, that's some great font work! I once attempted to hack Baseball Stars 2, which is extremely guilty of cramming many letters into a small space by reusing parts of fonts; it completely prevented me from creating a more stylish font in what should have been a luxurious 16x16 space. If we've got eight whole tiles to spare, may I suggest that the ten numerals be left intact with no reused parts so that people can make more interesting-looking numbers?

Your table also allows us to make a colon (for use in course names like "BIG BLUE: TEST" or whatever") using tile AB for both top and bottom.

In the game, course names are stored separately for use in the Records screen. There, the 8x8 font has special characters for Roman numerals I, II, and III; they're placed at the right edge of the tile so that a space doesn't have to be inserted between them and the last character in the course name.

During our last attempt at F-Zero, I made a new number font that looks a lot like the one used for the speed; you can see it in the middle of this table:

http://img259.imageshack.us/img259/1065/fontsamplesaw9.png

(I also fixed the numeral "8" in the speed -- in the original game, it's missing part of the shadow. Annoying once you start noticing it!)

Anybody like this? My past attempts at font making have been just the opposite of F-Zero's -- translating from Japanese means that you can safely dump the dozens of kana and kanji that Japanese games use, so I made all kinds of ligatures, accented characters, and the like.

SMKDan, thanks very much for the borders! May I nitpick for a moment? Your borders cut a few pixels off the edges, and that's going to make it harder for us to line up the adjacent panels. Could you use one-pixel-wide borders around the tiles rather than cutting off the outer edges?

I'm in the middle of analyzing just how many panels are actually being re-used in course maps -- it looks like the vast majority of them are only used once, which means that we can edit the rows and tiles without worrying about breaking the rest of the course. Basically everything except the straightaways and pits are used just once. Death Wind reuses some stuff, but Sand Ocean/Silence and White Land have very few such panels. We should be able to get a healthy variety of modular panels and one-use-only panels!

smkdan
Posted on 02-17-08 11:17 AM Link | Quote | ID: 78070


Ninji
Level: 36

Posts: 110/238
EXP: 288652
Next: 19458

Since: 05-26-07

Last post: 4062 days
Last view: 4012 days
Yeah Mattrizzle gave us a few extra characters, so whatever people think should go there I'll make arrangements for. The records screen is such a low priority at the moment, but I WILL get to it sometime. I'll have a sprite tileset import that will contain the non-track tiles, so that will include fonts, exploding GFX, that PIT thing and whatever else is there. I'll just X out the resereved areas and export / import to edit in Tile Molester / YY-CHR.

Nitpick away, it's one of the primary reasons I made this thread. I'll keep the thick borders but have options to use 1 pixel lines, since there's no need to scrap a different option when you're not forced to use it.

The majority of panels are only used once which means more motivation to create a panel composer. It will be split into 2x2 macro tile editor (points to mode7 tiles), row data editor (points to 2x2 macro tiles), and panel editor (points to rows). Export / Import will be there to allow sharing of modular panels.

Also, didn't catch a bug with palette cycling and I added an export to image feature. A (track name).png will pop up in your .exe folder when you save. It's a full size 8192x4096 image which you'd then (presumably) resize / edit in your image editing program of choice. It's much nicer then using the resize code in my program.


Raccoon Sam
Posted on 02-17-08 12:09 PM Link | Quote | ID: 78071


Cobrat
Level: 56

Posts: 419/672
EXP: 1380041
Next: 18135

Since: 02-19-07
From: Hi

Last post: 3468 days
Last view: 2699 days
Looks pretty good..!
Although I don't really like the text editor.. Besides the uppercase/number rule, what are the limitations? You should really put a small panel with the graphics you can use, so people wouldn't be so restricted.
What I mean is that there are other characters there too, like the Question mark, yet you mention only upper-case characters and numbers.

____________________


smkdan
Posted on 02-17-08 12:51 PM Link | Quote | ID: 78072


Ninji
Level: 36

Posts: 111/238
EXP: 288652
Next: 19458

Since: 05-26-07

Last post: 4062 days
Last view: 4012 days
With exception of the font there's nothing really suited for the track names, unless I'm missing something. Yeah I forgot the period and '?', I'll get those in there. When I get to mapping Mattrizzle's new font layout I'll make extra arrangements.

Heian
Posted on 02-17-08 01:27 PM (rev. 2 of 02-17-08 04:44 PM) Link | Quote | ID: 78073


Red Koopa
Level: 27

Posts: 94/126
EXP: 111890
Next: 4269

Since: 03-08-07

Last post: 5847 days
Last view: 5846 days
I finished counting up the panels!

This spreadsheet:

http://www.geocities.com/heiankyo794/f-zero/F-Zero-panelcount.xls

...will, provided that you have Excel's HEX2DEC function, display all the course layouts and, to the right of that, a list of how many times each panel occurs. (Download it!) If that number is "1", then you know that you can edit that panel any way you like without messing up any other parts of the course.

One interesting thing I noticed was that in Red Canyon, panels 0x91 to 0x95 aren't used, but 0X96 is. I wonder why they went out of order like that...?

SMKDan, how about indicating in the track editor whether or not a panel is used multiple times by giving the panel number a different color in PanelSelector, or on the actual panel, or both?

(Edit: I added what I could discover of the BS F-Zero 2 panel data to the spreadsheet. It seems to be in the same format. I couldn't always tell which courses were which, and some of the original courses seem to be included.)

smkdan
Posted on 02-18-08 12:16 PM Link | Quote | ID: 78139


Ninji
Level: 36

Posts: 112/238
EXP: 288652
Next: 19458

Since: 05-26-07

Last post: 4062 days
Last view: 4012 days
I tried the spreadsheet but it excel tells me something about a bogus formula. Seems that I might not have this HEX2DEC function. I got the thin option of borders and panel IDs in there, the panel selector also displays the count of panels currently on the map for a given panel.

http://img231.imageshack.us/img231/3133/bigppn4.png
http://img81.imageshack.us/img81/469/pidji2.png

Also, in Red Canyon those panels are used. Try going to that area and toggling panel ideas / checking count in panel selector.

Heian
Posted on 02-18-08 03:39 PM (rev. 4 of 02-19-08 07:06 AM) Link | Quote | ID: 78157


Red Koopa
Level: 27

Posts: 98/126
EXP: 111890
Next: 4269

Since: 03-08-07

Last post: 5847 days
Last view: 5846 days
SMKDan, I think not all versions of Excel contain HEX2DEC and the other functions that change a number from one base to another.

There's a basic description of them (it's pretty obvious) and instructions on how to install them here:

http://office.microsoft.com/en-us/excel/HP052091111033.aspx

Once you have it installed, you should see the original track code in hex on the top, then a decimal equivalent (in color) below that. To the right will be a list of all the panels and a counter indicating how many times they're used.

Off to download your latest revision now!


And now that I've done that...

OK; I finally found panels 145-149: they're the replacements used in RC1 to cut off the extra areas in RC2.

It was a bit confusing since panels 0-144 and 150 appear in both forms of the course rather than having the extras stuck on to the end.

(And I now see that Mute City does the same thing with panel 123, the jump ramp that occurs only in Mute City 1.)

My panel counter only includes the "basic" forms of the course as stored at those points in the ROM.

If you can't get HEX2DEC running, I'll see if I can make a new spreadsheet with just the values pasted in, so that you can at lease see the breakdown. (Most courses use one of the basic background tiles over 300 times, and the vast majority of the course panels only once each.(

Your editor looks great with the gridlines and panel numbers on. Very easy to navigate, and the 0.125x view is perfect for flipping through the courses with F11 and F12 until you reach the one you want. The panel numbers could be a bit smaller in this view, though -- a three-digit panel ID will overwhelm the actual panel. That's not all that important though.

I've managed to make some trivially-different courses, like a Mute City with the big circular divide from MC2 combined with the jump ramp from MC1, but nothing really exotic. As soon as we're able to fiddle with the rows a bit, we'll be able to do anything!

Here's a more advanced Death Wind course (to compete with SMKDan's "junior" version). Thanks to the highly-modular nature of the panels in this course, there's only one place where the tiles need to be adjusted -- over on the right where panel 6 meets panel 40. The long strings of panel 16 and panel 39 might be boring in an actual race:


smkdan
Posted on 02-19-08 11:08 AM Link | Quote | ID: 78297


Ninji
Level: 36

Posts: 113/238
EXP: 288652
Next: 19458

Since: 05-26-07

Last post: 4062 days
Last view: 4012 days
Thanks for the link. Had a few other spread sheets with formulas that got the #NAME? issue. The overwhelming amount of '1's really calls for a panel editor before any serious modifications occur...

I noticed that three digit issue in 0.125, it's using a more modest font size now. I also made a few course hacks, mostly in white land 1/2. The majority of panels in WL2 actually are aligned together...Still missing a few handy ones but.

That span of that course makes me think about how the original courses didn't really push the limits they had with a 32x16 panel track. Another plan is to let the physics define speed limits beyond 478km/h (the original game wouldn't act as expected if you did that), so that straightways like that are less boring to cross and the brakes actually have use...

The second new feature is the last 'core' piece of the interface, which would be drag and drop. The green box is just there to show where it (obivously) came from. If you left click + drag over a selected region it's moved and what was originally under is (for now) replaced with panel 0's.


Heian
Posted on 02-19-08 12:43 PM Link | Quote | ID: 78301


Red Koopa
Level: 27

Posts: 99/126
EXP: 111890
Next: 4269

Since: 03-08-07

Last post: 5847 days
Last view: 5846 days
Speeds over 478 would indeed be good for long straightaways -- it would also be good to tweak the non-Stingray cars so that there's a little more balance between them. It would be more fun to have some cars run better than others on some courses rather than have the Stingray on top all the time.

I revised the spreadsheet so that it counts how many tracks are used how many times (in addition to just counting how often each panel is used). To save everyone the hassle of downloading a new sheet, I'll just paste those values here:


No. of panels used
Course 1 2 3 4 5 6+ times
---------------------------------
Big Blue 92 5 0 2 0 3
Sand/Silence 137 8 2 1 0 6
Port Town 78 4 3 1 1 8
Death Wind 35 5 2 0 0 5
Red Canyon 127 9 2 1 1 7
Fire Field 103 4 0 2 0 4
Mute City 77 5 7 1 1 4
White Land 153 11 5 2 1 9


Some of those numbers aren't entirely meaningful as we're free to mess with the streets below the tracks that are set above cities; same with the mountains and forests in Red Canyon and Port Town, but for the single-background courses like Big Blue, we can safely say that 92 panels are editable and the other 10 will mess things up if we're not careful. (These figures also don't include the pasted-over parts in MC2 and 3, PT2, RC1, and DW2.)

What would really be great is if we had access to 255 different panels for every course; then we could leave the originals in and add our own. You extended the RAM; would it be impossible to re-point all the pointers that depend on there being a certain number of rows and panels, or could we get more panels than they gave us?

smkdan
Posted on 02-19-08 01:48 PM Link | Quote | ID: 78304


Ninji
Level: 36

Posts: 114/238
EXP: 288652
Next: 19458

Since: 05-26-07

Last post: 4062 days
Last view: 4012 days
We do have access to 256 panels, those panel selector slots above what seems to be used are perfectly valid entries, they just don't contain any valid data (yet). I don't undersyand what you said about RAM, but there is enough room for 256 unique panels, and enough room for 2304 rows (16 of these per panel). This is per track ofcourse. Unused panels and rows are pretty distinct in the editor, just a big block of barriers.

Heian
Posted on 02-19-08 01:58 PM Link | Quote | ID: 78307


Red Koopa
Level: 27

Posts: 100/126
EXP: 111890
Next: 4269

Since: 03-08-07

Last post: 5847 days
Last view: 5846 days
Whoops! I meant ROM -- you extended it, but I was afraid that attempting to define more rows would throw off the locations of the following track data in memory, and mess up various pointers.

If we can start redefining all those high-numbered panels to be useful bits of track rather than endless fields of barriers, we'll be able to do all kinds of things.

Which is easier: making new rows, or making new 2x2 macro-tiles?

Raccoon Sam
Posted on 02-19-08 09:06 PM Link | Quote | ID: 78358


Cobrat
Level: 56

Posts: 420/672
EXP: 1380041
Next: 18135

Since: 02-19-07
From: Hi

Last post: 3468 days
Last view: 2699 days
I don't own a mouse, so is there a way for me to use the editor at all?
In other words, are there advanced keyboard controls (keypads move selection, holding shift increases selection, yadda yadda)

____________________

Pages: 1 2 3 4 5


Main - ROM Hacking - SNES F-Zero editor project New thread | Thread closed

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

Page rendered in 0.029 seconds. (340KB of memory used)
MySQL - queries: 132, rows: 171/172, time: 0.019 seconds.