PDA

View Full Version : Deconstructive emulation...an idea.


JadussD
12-07-2006, 11:28 AM
While ROM hacking certainly has an aspect of purity to it, an arcane artform in which one learns through other adepts and teaching oneself how to effect change through intellect and knowledge, I think the time has come where ROM hacking could potentially be seen as the gateway to something much larger in a cosmic sense.

I have sat behind computers for many years, forsaking life, forsaking worldly pleasures for the bittersweet beauty in knowledge that is the true bride of every true computer geek.

I have discovered the esoteric, the magickal, the most wonderful and terrible truths of the cosmos, entering my brain through this device. I have received the sweetest insanity, the fractal consciousness, knowledge that all things exist, if not as a tangible physical object, than as an idea waiting to become one.

To me, ROM hacking has always been a passing interest and an abortive hobby of mine; even as I delved into the secrets of ASM, the dispersing ravens of a short attention span intervened and left me with nothing but knowledge that was not to be applied to any specific purpose. But now what has dawned on me is that ROM hacking is merely the gateway to something much larger. I think it is a true art. An art that has both technical aspects, as well as expressive aspects, like most arts. Good art is that which begets that which begets. It is the lie that tells the truth. A window into what lies beyond the consensus, objective reality. It brings the unknown into the known.

All of this, I think, is a microcosm of a general will for any stable item (such as a classic game) to be permutated into infinite different forms. It is an expression of chaos; a bringing of variation into a world that fears change. This will is beyond human, beyond life and death, beyond good and evil. It is the will to everything, the creative force that expands beyond barriers, which transforms a base idea into infinite variations on it.

As such, I think the future of chaos permutating classic games into infinite variations on the basic idea lies not just in ROM hacking, but in taking fundamental archetypes (classic games) and eliminating the dichtomy between emulator and emulated, providing a framework in which the basic archetype (a classic game, a pioneering, innovative game which was inspired; before imitators came in and cashed in on it) can be updated into a more modern form without the limitations placed on it by the idea that the change must exist only in the ROM. If the experience of an emulated game is that of a fusion between a static ROM and an emulator which interprets it, why can not the way in which it interprets it be changed? Why can not, for instance, all the sprites in a game like Street Fighter II: Champion Edition be redrawn by hand by an artist, turning the characters into ultra-detailed sprites at 1280x1024 resolution? What is stopping someone from creating an emulator which watches what the game does, based on knowledge obtained by reverse engineering the game, and by watching the state of the game calls upon a display engine which superimposes the appropriate, updated, hi-res graphics onto the game? This would be a new form of high-level emulation; one in which the way an archetypal, classic game works is deconstructed in a technical sense to provide a framework in which changes may be made to it, to update the archetype (the classic) into a newer form.

Perhaps emulators could be modified to provide a scripting language in which aspects of the ROM that have been reverse engineered and translated into objects may be manipulated on the emulation side, so that the state of the game is filtered through a series of scripts which determine the aesthetic changes that occur. Perhaps when a game is reverse engineered, it may be translated into objects which this scripting language may work with, to modify the experience that the user enjoys.

Picture a version of MAME which accepts scripts that, using whatever objects have been created to be worked with a fighting game, allows different modes to exist which did not exist in the original. Perhaps through using save states, and injecting stats into it, a framework could be made where a survival mode could be added to a classic fighting game. Perhaps via script which provides an "arcade triathalon" in which several games are played through partially, through the scripted use of savestates and the analysis of each player's progress translated into certain criteria, one could create a medium for competition in which gamers compete through a variety of games, using criteria that they choose beforehand, in order to determine the winner of the gaming session.

According to my computer geek, basement-dwelling information age understanding of philosophy, the Hegelian dialectic is a philosophical concept in which there is a thesis, an anth-thesis, and eventually, a synthesis of any two opposing ideas. For instance, changing a game on the emulation side has been the unspoken anti-thesis of ROM hacking. It is the anti-thesis of the original thesis, ROM hacking, which is opposed to it. In order to take the idea of changing the classic game experience into new heights, this anti-thesis must be introduced and thought of as acceptable. From there, the two ideas could be combined to create a game-modification paradigm in which both the emulator and the ROM are modified, thus begetting a synthesis of the two, and opening up a whole new realm of video-game based expression.

If this makes any sense at all to anyone, FUCKIN' A MAN.
<P ID="signature"></P>

hcs
12-07-2006, 05:11 PM
I look up from this damned GC DSP disassembly and into a completely different level of incomprehensibility, I think something was damaged when attempting to switch gears so completely.
<P ID="signature"><hr>
(04:33:02) Nimdae: i use l33t h4x0r in a very loose sense</P>

Insomnia DMX
12-08-2006, 01:36 AM
Hmmm... Stuff like that is kinda done, take CSBwin (somewhere between an emulator and a port, for Chaos Strikes Back and Dungeon Master) for example. It only seems the level and graphics formats are the same; the whole engine was ported. This has made for some really cool hacks (they may call them "custom dungeons," but it's the basically same thing a a ROM hack.), mainly Conflux III, which I implore you to check out if you liked Dungeon Master. The guy who made this hack added sounds, different bg's and many new play elements, in ways that wouldn't be possible in the original engine. Many would say that it's a port of the engine, but if you look at it this way, it's also kind of an emulator, because it uses most of the old files (I'm pretty sure).

http://www.dungeon-master.com/forum/viewforum.php?f=31&sid=f0927042446b330f6f00d1ddd5a11375A forum discussing what I was talking about.</a>
http://www.dungeon-master.com/forum/viewtopic.php?t=25152A specific thread that has a link to Conflux III's newest download.</a>

There's a linux version floating around somewhere too, I've even seen it in a debian package. To play Conflux III in the linux port, you'd just need to switch the level and graphics files, it'd probably as simple as that.
<P ID="signature">http://users.adelphia.net/~InsomniaDMX/My crappy little site.</a></P>

Ugly Joe
12-08-2006, 02:11 AM
I don't think rom hacks are the proper avenue for that kind of creative expression.

What you've described is a port, isn't it? It's a remake with added features. At its best, it's a amazing artistic feat, worthy of adulation by its own accomplishments. At worst, it's a sleazy means to cash in on a known franchise. I'll assume you had the former in mind.

If this is what you want to accomplish, why go though the trouble of reverse-engineering the entire rom and coding a custom emulator? Wouldn't it make more sense to create the game yourself and borrow the logic/data from the rom as you need it, rather than starting with the rom and adding your own logic/data? This makes a lot more sense to me than trying to make old code do things that it was never meant to do.

Also, taking your "scripting" concept to an extreme, wouldn't the scripts you've written to alter the game eventually come to be more of your hack than the rom itself?
<P ID="signature">_______________________________________
http://ximwix.net/images/icons/smaller/altogether.gif (http://ximwix.net)</P>

JadussD
12-08-2006, 02:32 AM
> What you've described is a port, isn't it? It's a remake
> with added features. At its best, it's a amazing artistic
> feat, worthy of adulation by its own accomplishments. At
> worst, it's a sleazy means to cash in on a known franchise.
> I'll assume you had the former in mind.

It's not a port. It's emulated, but the emulation is changed, according to how what is desired of the game.

> If this is what you want to accomplish, why go though the
> trouble of reverse-engineering the entire rom and coding a
> custom emulator? Wouldn't it make more sense to create the
> game yourself and borrow the logic/data from the rom as you
> need it, rather than starting with the rom and adding your
> own logic/data? This makes a lot more sense to me than
> trying to make old code do things that it was never meant to
> do.

The idea is that the game is emulated like usual, but a framework is constructed around it which allows one to add on top. This may be as little as making a script which gives infinite lives in a game-genie-esque manner, or as complicated as making a new graphics engine which takes what's on the screen and reinterprets it using new graphics.

> Also, taking your "scripting" concept to an extreme,
> wouldn't the scripts you've written to alter the game
> eventually come to be more of your hack than the rom itself?

That is the idea, yes. To turn classic games into highly modifiable bases which any new structure can be built upon, slowly porting each game into a modifiable form of itself. The advantage is that when a framework is added onto the game, it can be made public, and people can do as they please with it, and then contribute to it, much like an open-source project. Then, "hacks" which use this framework can be created and enjoyed.

Once a game has its own custom "high level emulation framework", a GUI could be made, for instance, with a level editor. And the things that could be done with the game would not be limited to the system's constraints, only the constraints of what can be interpreted from the original emulation base (which will become more amorphous as parts of it are translated into high-level objects on the native system)
<P ID="signature"></P>

Ugly Joe
12-08-2006, 03:10 AM
> That is the idea, yes. To turn classic games into highly
> modifiable bases which any new structure can be built upon,
> slowly porting each game into a modifiable form of itself.
> The advantage is that when a framework is added onto the

> game, it can be made public, and people can do as they
> please with it, and then contribute to it, much like an
> open-source project. Then, "hacks" which use this framework
> can be created and enjoyed.

Alright, now that makes a lot more sense. Was that in your original post? I get the feeling I may have missed the community and reusability aspects in translation from JadussD to English <img src=smilies/magbiggrin.gif>
<P ID="signature">_______________________________________
http://ximwix.net/images/icons/smaller/altogether.gif (http://ximwix.net)</P>

MegaByte
01-06-2007, 10:06 PM
While not motivated by an philosophical means, I did have this idea several years ago, and actually made a proof-of-concept modification of Nestopia last spring to accept custom graphics with no color limitations. My idea was to actually remove the "hack" from ROM hack and let modifications reside separately from the original code when possible with the emulator synthesizing the two. I have not released it publicly yet because I have not had the time to clean it up nicely (and I was waiting for a full hack as a proof of concept to get the ball rolling). I hope to finish this up within the next few months. Though the initial version will just be for graphics modification, it could clearly be extended to cover sound and other programming. In fact, a bug in an earlier build actually caused some graphics to be modified when different beats of music played... that gave me the idea to allow graphics modification based on arbitrary memory values. Of course, balancing this flexibility with speed is tricky, at least in the way that Nestopia calculates each pixel, but I think I have a pretty good solution.
<P ID="signature"></P>

Rummy
01-12-2007, 12:02 AM
> If this makes any sense at all to anyone, FUCKIN' A MAN.

Gotta say, the way that last line is worded cracked me up.
Other than that though, it is quite an amazing idea, editing things on the emulator side instead of the ROM side! My technical knowledge is really really limited and so I'd have no idea how it could be done, how it would work etc, but if it is possible(as I believe someone says they have done), it'd be pretty frickin awesome if I've understood correctly, as it'd remove alot of the limits of ROMs, right? How much scope would there be though, beyond having awesome graphics on an old game, as given in the example? What sort of things did you have in mind of it being able to do?

Disch
01-12-2007, 12:24 AM
As a would-be emu author and just a fan of retro gaming, I have been a long-time opposed to this idea (I even somewhat made an version of an emu which mocked the idea). There's a few reasons:

1) It's sort of a bastardization of emulation. One of the best goals of emulation is to reproduce the original behavior of the system as closely as possible. Throwing in goodies here and there to enhance the experience is one thing... but saying to hell with the original and subbing in something entirely different is something else.

2) It wouldn't look good for many games. MMX graphics look good in MMX not only because the bit depth is higher on SNES -- but also because he has more frames of animation. The NES MM has three walking poses. Subbing in MMX graphics for just those three would be awkward and look unnatural and fugly.

3) Probably most importantly: there are alternatives. Game makers exist for just this very reason. The role of an emulator is primarily to emulate -- what your looking to do isn't so much emulation or ROM hacking as much as it's sloshing together a game from existing parts.

Take a look at Flash, Mugen, Multimedia Fusion, RPG Maker, Zelda Classic, etc, etc (the list is endless) for this kind of thing. Putting that functionality in an emulator is out of place. Yes it can be done... but should it be done?


<blockquote><font class="small">In reply to:</font><hr>


What is stopping someone from creating an emulator which watches what the game does, based on knowledge obtained by reverse engineering the game,
[snip]


<hr></blockquote>

Many emus already do this -- they're referred to as "hacks" and are generally frowned upon by virtually everyone who cares for quality of emulation.
<P ID="signature"></P>