Post subject: Universal Level Editor
Joined: 3/25/2004
Posts: 459
- Most of my thoughts on this board seem to revolve around Zelda 1. - In Mario 1, after you beat the first "quest", the spineys are replaced with the hard-shelled baddies. - This seems comparable to replacing Red Octoroks with Blue Octoroks. Or, even harder, to replace Octoroks with Darknuts. - My first idea was for a Universal Ontology Generator, but it seems to me that the leap to a Universal Level Editor is the logical next step. - I don't want to waste time telling a custom program or ROM decompiler what each enemy or resource looks like, to find every instance of it in the game. That is, I shouldn't have to go in knowing what Red, Blue, Octoroks, and Darknuts are. - Maybe it's an AI or a Machine Learning problem, but hopefully it is less difficult than that, if the ROM is written rather straightforwardly. - You should be able to give this universal program any ROM, and it will generate the Ontology for that game. For example, I don't know the game Castlevania very well at all. But if I fed the Castlevania ROM into this program, it should generate a list of all the weapons and baddies, as if I had run across a dedicated Castelevania fansite where that information was accumulated the old fashioned way. - After having the Ontology for say, Zelda, and let's also assume that we just already have a Level Editor to go with it... I should not have to fire up a GUI of a Level Editor and then by hand go replacing all of the Octoroks with Darknuts. - I should be able to write a very simple program, like, "Replace Octoroks with Darknuts", and then be able to print a new ROM where that is the case. - The ability to make Hybrid Games should fall out of this pretty easily, hopefully. - For example, let's say that I have a GoldenEye Level Editor. - Right now, at our state of technology, I would either have to hand-produce a data file (in XML or something), of all the Zelda 1 resources, their locations on the overworld and underworld maps, or I would have to go Internet searching to see if someone did this for me already. Like, right now, you can find elaborate overworld and underworld maps in GameFAQs, but they're not in a readily-consumable computer format like XML or something. Rather than having to write some custom program to take the hard work of the GameFAQs map creators', and turn those images of maps into XML or something, this process should be a lot faster with a program that scans the ROM and produces the XML for us. - Then, now that we have all of the level and enemy placement information of Zelda 1 already quickly produced for us... We should be able to write a simple program that maps Ontological Entities in Zelda and GoldenEye. For example, maybe each Zelda screen is a GoldenEye room. Each Zelda door is a GoldenEye door. And each Zelda Octorok is a GoldenEye Russian soldier. - Tada. By writing a simple program to replace the mapped Zelda entities with GoldenEye entities, we immediately produced a GoldenEye fan-game which mimics the level layout of Zelda. Part of the fun of the Zelda games is navigating the rooms in the maze-like dungeons, and collecting keys to get through certain doors. - Now we can generate mix-game hybrids with next to no human grunt work. - I think I had an idea a few weeks ago, which precedes this, but seems to me to be a lot harder and a lot more impractical. - I was wondering what game "genres" are. In general, I wondered what "genres" are. In music, you have jazz, and rock, and rap. But even within a genre, you have subgenres, like Heavy Metal, Black/Death Metal, Gangster Rap, or Chopper Rap, etc. In TV, you have genres like comedies, drama, but you also have late-night celebrity interview talk shows, and relatively new on the genre-scene was the invention of Reality TV shows. - I wondered, what makes a genre? If you make a subtle tweak to an existing genre, but it is too subtle, then no one meaningfully categorizes it as a new genre. - I think classic games were pioneers in genre creation or discovery. - Look at games like Tetris, Pac-Man, and Zelda 1. They all appear to me to be of the top-down variety. Look at games like Mario and Sonic. They appear to me to be of the side-scroller variety. Look at games like Wolfenstein and Doom and Quake. They appear to me to be of the first-person shooter variety. Look at games like Mario RPG or Diablo. They appear to me to be of the isometric game variety. - Like Reality Shows are new on the scene of TV genres, what video game genres have we simply not discovered yet? - Even talk of genres like music, TV shows, and video games, can be "meta" considered under the topic of genre creation. They fall under the genre of entertainment, where video games were the latest to the entertainment scene, far after music (and then TV shows), for probably-obvious technical reasons. Does it make sense to make hybrid genres with these? Music games? TV show games? What entertainment genre has not even been conceived of yet, like how likely Ancient Greeks could never have conceived of video games? - It almost seems to me like the discovery or invention of a new game genre is serendipity or something. Does God put into the minds of men the idea for a new game genre? How does one, (like id Software), even imagine a new genre, (like First-Person Shooter), when (let's say), all existing games before that were top-down? - It makes sense to me, that in the history of computing, that top-down games would be created before FPS games, just because of the amount of processing power required. Still though, my question remains... What is the scientific explanation for how those (id Software) computer programmers were able to imagine or visualize a new game genre, when they had never seen the first instance of it before yet? - Maybe 3D games are reasonable to infer, because our eyes/brains/minds operate in a 3D world or in a 3D way. - What about isometric games? What is their cognitive/neuroscientific explanation, if we don't see the world isometrically? Maybe a simple tabletop game like chess could inspire both the top-down view and the isometric view, because we could look at the chess board from top-down or at an angle. - Is all my talk of top-down, side-scrolling, 3D, and isometric games, simply a "brute-forcing" of geometrical categories, and I haven't realized what the geometry problem I'm solving for is yet? That is, are there actually just a limited, finite, small number of such rendering views, and we have already discovered them all, or at least we can mathematically (or brute-forcefully) discover them all? - But to go back to my "harder and more impractical" hyphenated point, and to relate it to all the much-easier hyphenated points above it: Maybe the discovery of a new game genre (or rendering?) is simply a matter of tweaking existing game mechanics by making hybrid games. Like, maybe I'm off-base here, but imagine that mating Zelda and GoldenEye reveals no new genre, whereas some more difficult mating, like mating Zelda and Mario Kart, somehow does. Maybe I'm just being silly. - I think game-creators like GameMaker Studio, are operating at a "meta" level. That is, they somehow looked at the process that game makers use to make games, and abstracted it. So rather than human grunt work programmers having to manually create games X, Y, and Z... the common elements to X, Y, and Z were analyzed and put into one game-maker, so that the X, Y, Z games could be generated with a minimal amount of human work. - My initial sense is that it is not very meaningful to take this "meta" thinking a step further. There is no need to produce game-maker-makers. This is because: all game-makers will come out looking more or less the same, as there really are little genre-differences among them. In short, people have no use for such a variety of game-makers in the same way they have a love for such a variety of games. - However, were it the case that each genre-specific game-maker was such a distinct and elaborate tool, then maybe we would have a need or a want or a love for game-maker-makers. That is, if FPS games are so elaborate, and racing games are so elaborate, and top-down games are so elaborate, and side-scrolling games are so elaborate... It would be better for a (programmer or) (human) game creator to identify the genre of the game he wants to create, before selecting the right tool for the job... Rather than merely using one highly-abstract game maker which actually does have all the functionality to produce any type of game, but just with a lot more work. - I think I would like to resist some very narrowly-specific game-maker or level editor, like Mario Maker, which I've actually never played. And I haven't researched this, but is there a Sonic Maker? If so, to my mind at least initially, the Mario Maker and the Sonic Maker are basically the same maker, so there wouldn't be a point for a human game creator to identify his game as a Mario or a Sonic game before picking the right tool for the job. Rather, it seems to me that both Mario and Sonic would be subsumed under the more meaningful genre of sidescoller maker. - With the idea of game-maker-makers out of the way, dismissed as infeasible or undesirable, I would still like to focus on the idea of genre-discovery through hybrid game tweaking. - This probably goes without saying by now, but like there should be no need for a Mario and Sonic maker as they would be subsumed by the sidescroller maker, intelligent human programmers shouldn't have to sink tremendous amounts of independent efforts into producing a GoldenEye level editor, a Half-Life level editor, a Doom level editor, an Unreal Tournament level editor, etc. As these would all be subsumed under the FPS level editor. - Maybe closer-related things are more easily-imaginable to make hybrid. Like you can imagine an animal that has some features of a cat and some features of a dog, while it might be harder for you to imagine an animal that has some features of a cat, and some features of a rocking chair. - Maybe we can begin to imagine a list of new genres by just taking the names of existing genres and joining them together. Like, if Dance Dance Revolution is a rhythm game, and Mario Kart is a racing game, then maybe we can imagine a rhythm racing game and ask if this is a feasible hybrid. Maybe often times the concoction is so heinous that any efforts to create it should be aborted. (Like the cat / rocking chair creature.) - Still, maybe some of these combinations could yield something original and enjoyable. - Imagine my feeling of fear when I thought I accidentally closed this tab, after typing all of this, without yet submitting it. You just know that any attempts to recreate this post, while maybe covering all of the major and minor ideas, would still lack the feeling of genuine creation as my first motivated creation of it had. Fortunately, I didn't close this tab. - I am thinking, initially, that just some sorts of geometrical hybrids could yield a lot of original and fun looking games. Like, games where there are multiple views presented at the same time, like 3D and isometric and top-down. Or, where these views can readily be switched among. What comes to my mind is that 3DS Zelda game, where it is 3D, but you can become a 2D figure as a texture on the walls, to navigate a room. Or, and I think this was from some Mario fan-game I saw, but maybe it has already been implemented in the official Mario series: A 3D Mario world like Mario 64, where you can absorb into a wall -- (a 2D plane) -- and you're quickly back to playing a 2D Mario sidescroller like from the NES era, until you complete that room/area and are back to playing in the 3D Mario world. - I think there are a lot of good ideas here, but I fear maybe I spent too much time pondering about the most theoretical and infeasible of the ideas; whereas, I think that some of the most awesome ideas in this thread were quickly and efficiently explained in the first few shorter hyphenated items at the top. - That is, it actually doesn't seem that difficult to program an Ontology Generator, (unless I'm greatly ignorant about what went into classic game creation, with lots of smoke and mirrors to give the impression of unique baddies and items); and, if we had the Ontology for two games along with the game information (in XML or something), how easy it would be to produce a Hybrid Game with minimal human effort, as in my Zelda/GoldenEye example. - I hope the length of this post doesn't scare off replies. - I hope someone does this for me, so I don't have to. I'm looking at you @DeHackEd.
Post subject: Learn to use the web properly
Emulator Coder
Joined: 3/9/2004
Posts: 4588
Location: In his lab studying psychology to find new ways to torture TASers and forumers
Ramzi wrote:
Imagine my feeling of fear when I thought I accidentally closed this tab, after typing all of this, without yet submitting it. You just know that any attempts to recreate this post, while maybe covering all of the major and minor ideas, would still lack the feeling of genuine creation as my first motivated creation of it had.
This is only a problem for people who don't know how to write posts on the web. If you write posts on the Internet, you install these: Textarea Cache for Mozilla Firefox Textarea Cache for Google Chrome If you're using a browser not compatible with the above, then you shouldn't be writing posts on the web in the first place, and get yourself a real computer.
Warning: Opinions expressed by Nach or others in this post do not necessarily reflect the views, opinions, or position of Nach himself on the matter(s) being discussed therein.
Post subject: Learn from history and dumb ideas, use critical thinking
Emulator Coder
Joined: 3/9/2004
Posts: 4588
Location: In his lab studying psychology to find new ways to torture TASers and forumers
Ramzi wrote:
- You should be able to give this universal program any ROM, and it will generate the Ontology for that game. For example, I don't know the game Castlevania very well at all. But if I fed the Castlevania ROM into this program, it should generate a list of all the weapons and baddies, as if I had run across a dedicated Castelevania fansite where that information was accumulated the old fashioned way.
There was this great idea back around 2000, to create a description for web based APIs, so automated systems could process this description and automatically determine how to call a function, and begin using it. It's known as WSDL. With this description in a standardized format, an automated system could process a description it finds, and discover a function described as buyPizza on a certain URL. It could determine that its parameters are a series of numbers, labeled size, amount, topping, and a string named address. You'd also know things like size accepted values ranged from 0 to 3, amount was 1 and above, and topping accepted values ranged 0 to 6. This seemed like a brilliant idea right? So your automated stocks buying and selling system could scan the Internet, discover this WSDL, find a function with the word "buy" in it, and put in random numbers matching the criteria, and put in something random which seemed like it might fit the criteria of a string named address. Since WSDL makes this possible, and this was the intention of it, this all seems like a marvelous idea right? It should be obvious that this was not at all thought out well, because while a system could discover how to use various functions, it has no idea what they do, or what the actual meaning to the variables are. Sure it could guess, but that doesn't provide good results. WSDL today is now only used in lieu of documentation, or in some code editors for certain validation purposes, but not for its original intended purpose.
Ramzi wrote:
Maybe it's an AI or a Machine Learning problem, but hopefully it is less difficult than that, if the ROM is written rather straightforwardly.
A game's code is provided in a standardized format that can be processed by whatever system and provide something humans can make some sense of. Humans aren't necessarily aware of its internal components though and how they work, although that can be reverse engineered. If some software had all the knowledge and intelligence of a human reverse engineering team, sure it could do what you want. But without that, it might as well be like a stock system ordering Pizza or pledging school support, it has no idea what it's doing. While AI and Machine Learning is all the rage today, those are just codewords for programs that humans don't fully understand. For things with concise fixed rules and situations, such as a game of Chess, this kind of software can do a good job. But in complicated less clear cut situations, these programs don't actually work anywhere near as well as advertised. Most companies going nuts with this stuff in complicated areas are just doing it to get funding, not because they actually expect to provide a working worthwhile product in any reasonable time frame. Read this article.
Warning: Opinions expressed by Nach or others in this post do not necessarily reflect the views, opinions, or position of Nach himself on the matter(s) being discussed therein.