So, for the past few days, I have been attempting to literally create chaos in Game Maker.
So what is chaos exactly?Well, it is a program with one object that randomizes a string and then, if it is valid, executes it.Sounds simple right? Why do it?Well, it isn't simple, first of all. There are over 1,000,000 possible permutations, and over half of them are invalid!So why do this? Well, because it is interesting. What would happen in a chaotic state. There is essentially an equal chance for anything to occur (assuming GM can do it). What would happen? It might make an awesome video game level, AI, weird visual effects, nothing, or (if you ran it in GM Pro that allows external file editing) a virus. The results are limitless.Currently the 'debugger' uses me to check it. I simply click yes or no on whether it is valid, and it records my answer (granted it resets every time I run it).I have recently considered having two types of random generated code to limit wasteful combinations:1. Creating another object.2. Setting another object's event code to a ligit GML String.This would limit combinations that do nothing, and would probably increase the amount of chaos in the simulation.
This idea doesn't exactly sound useful to me but anyway, why check for each possibility manually? There is an infinite amount of possibilities so you'll never be able to validate them all. Why not simply hide errors, execute the string and check if an error has occurred in your code?
Actually, this is pretty interesting. Find a way to control this and you could use this to make randomly-generated enemy AI, for example. Now that would be neat.
What would be cool is if you could couple this with a target that the code should reach, that way when I'm feeling lazy I can just give it a start and end result(Passing in the parameters it can change), and then it would come out with the code after half a day :D.
CleverBot could be given as an example of machine learning although it's probably not what you're looking for. Besides that, I believe this thing he's writing is just making a string with random characters before trying to parse it which is not exactly considere useful nor efficient.
This is somewhat relevant. NIGHTMARE FUEL WARNING!
I was personally imagining it'd generate by the function rather than by the letter, throwing in conditionals and variables in-between. As in, rather than getting the equivalent of bashing on the keyboard for a few hundred million years, you'd instead piece together individual entries of the library with random yet valid arguments et cetera. An analogy - instead of randomly generating a novel character-by-character, you'd give the computer a sense of sentence structure and make it generate word-by-word from a predetermined dictionary.
Granted, n-1 times out of n, you'd get something banal like:If anyone had the balls to make it, I'd love to download an .exe that just produced a bunch of unparsable nonsense jargon, especially if it had a tendency for the occasional draw function. Something tells me that would be hilarious to watch. Just boot it up, press space whenever you wanted new jargon, sit back and watch the garbage parade.
Come to think of it, if anyone does end up making it, Garbage Parade would be a really cool name - especially compared to Chaos Project.edit: godammit i'm supposed to be taking a break from this place