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

0 users currently in ROM Hacking | 2 guests

Main - ROM Hacking - I wonder if this has been attempted by an editor programmer New thread | New reply


Cellar Dweller
Posted on 06-30-08 07:42 AM Link | Quote | ID: 86310


Snifit
Level: 39

Posts: 124/287
EXP: 384998
Next: 19773

Since: 02-19-07
From: Arkansas

Last post: 4045 days
Last view: 3213 days
I remember thinking about this idea back when I was working on YI hacking. One of DahrkDaiz's recent posts brought it back to my mind. It is possible that I read about this idea in the past, but if I did, I don't remember when or who was discussing it.

Instead of manually writing routines to render object commands to tiles, the game's own routines are used. The editor contains a minimal emulator that only emulates the parts of the hardware that are used for processing the level commands. First the emulator is initialized with the minimal amount of state that is expected by the rendering routines. Next, the editor feeds the object commands to the rendering routines either one at a time or a level's worth at a time. While the emulator is running, its activity is monitored. During development, such monitoring might be used to find out what the rendering routines depend on, and in the release version, detect known illegal states caused by bad object use. Finally, the editor renders the tiles to the screen using the level's tileset. Tiles that do special things, like spawn sprites when struck, would be identified by the resulting tile type.

I wonder if any editors do this, or if it is considered a worthwhile approach to rendering levels.

MathOnNapkins
Posted on 06-30-08 07:46 AM Link | Quote | ID: 86311


Super Koopa
Level: 62

Posts: 443/842
EXP: 1934559
Next: 50127

Since: 02-19-07
From: durff

Last post: 4482 days
Last view: 4005 days
Stop stealing my ideas

That's right... I see you on IRC in #rom-hacking

But seriously we've discussed this before and I've considered it in the past when writing my Zelda editor (that has like 500 different object types). It could work, I guess, but I've never sat down and tried.

____________________
Zelda Hacking Forum
hobbies: delectatio morosa

blackhole89
Posted on 06-30-08 09:54 AM Link | Quote | ID: 86315


The Guardian
Moloch whose eyes are a thousand blind windows!
Level: 124

Posts: 1767/4196
EXP: 21522376
Next: 314225

Since: 02-19-07
From: Ithaca, NY, US

Last post: 465 days
Last view: 78 days



I've always been thinking to emulate a stripped down and hacked into obedience N-SPC engine (thinking in particular of KSS', since that supports the drum commands) for the sake of playing back edited tracks in Solar Soundtrack instead of trying to reproduce the way it would operate on the music data in native code like I did before.
While this concerns waveform rather than graphics editing, I guess it counts.

____________________



DahrkDaiz
Posted on 06-30-08 06:56 PM Link | Quote | ID: 86334


Nipper Plant
Sandwich Artist
Level: 46

Posts: 126/417
EXP: 674120
Next: 37654

Since: 02-22-07

Last post: 3480 days
Last view: 3400 days
As Math said, we had actually discussed this on IRC. It would conceivably work, but the amount of work that it would take to get it to work and effeciently would be incredible. Just loading information from a ROM such as offets used to load data tables which are used to load palettes, levels, sprites, etc takes a lot of work.

interdpth
Posted on 06-30-08 07:43 PM Link | Quote | ID: 86341


Buzzy Beetle
Level: 44

Posts: 238/383
EXP: 593374
Next: 17911

Since: 02-22-07

Last post: 4093 days
Last view: 4066 days
I actually tried this once, but my ASM knowledge didn't work so well and I was unsure how to translate between when the game was trying access memory, or from the ROM.


It could probably easily work. o.o

____________________
lawl blog

http://interdpths.blogspot.com/

Sukasa
Posted on 06-30-08 07:50 PM Link | Quote | ID: 86343


Red Birdo
Level: 92

Posts: 805/2112
EXP: 7685592
Next: 71345

Since: 02-19-07

Last post: 4442 days
Last view: 3213 days
It wouldn't be that hard, just use the game routines to load the palettes as well!

In a way, all you'd need is a standard emulator core (heck, ZSNES' core would probably work), and just a single file to say where x data is, and where y data is, and so forth, that you could load from afterwards, by reading out of the snes' "RAM"

MathOnNapkins
Posted on 07-01-08 12:20 AM Link | Quote | ID: 86398


Super Koopa
Level: 62

Posts: 446/842
EXP: 1934559
Next: 50127

Since: 02-19-07
From: durff

Last post: 4482 days
Last view: 4005 days
I think in most cases it would be far easier to retool the format of the data to be more "script"-like *then* write an editor for it. The problem we have is that the data is unfriendly and tedious to write an editor for. If the idea is to make things flexible and easy I think that's a better way to go.

____________________
Zelda Hacking Forum
hobbies: delectatio morosa

Trax
Posted on 07-15-08 11:57 PM Link | Quote | ID: 87510


Yellow Stalfos
Level: 71

Posts: 395/1145
EXP: 3034273
Next: 132841

Since: 07-06-07
From: Québec

Last post: 3620 days
Last view: 2872 days
That's *almost* what I'm doing with some of my editors' functions. I had to reproduce in C the algorithm used to fill the PPU to come up with the proper tiles in my (WIP) Contra editor...

And when I was working of the scrolling areas in Zelda II Game Editor, I had some functions coded to layout different types of decor parts before knowing how it was done in the ROM. Later when I disassembled this part in the ROM, surprisingly I realized that it was almost identical in principle of functioning...

So, it's not exactly assembly, but it's damn close sometimes and we can say some algorithms are basically doing an equivalent job from the ROM data...

frantik
Posted on 07-19-08 08:02 AM (rev. 3 of 07-19-08 08:08 AM) Link | Quote | ID: 87679


Red Koopa
Level: 28

Posts: 68/139
EXP: 127340
Next: 3998

Since: 10-09-07

Last post: 4483 days
Last view: 4476 days
SMButility works more or less like this.. it makes it really easy to edit hacks it's not perfect for everything but 99%. and of course the program contains an emulator inside of it as well for play testing which rocks. it's the model other editors should follow imo if other games had editors as powerful perhaps we would see more interesting hacks.. not that there's anything wrong with smb hax XD

in this image the platforms and the upsidedown pipe are custom asmed in. the editor also displays all of the correct custom colors

Main - ROM Hacking - I wonder if this has been attempted by an editor programmer New thread | New reply

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

Page rendered in 0.024 seconds. (339KB of memory used)
MySQL - queries: 72, rows: 100/101, time: 0.017 seconds.