seeing pushback against procedural generation as a result of alleged "AI" and that's really fucking sad

good procedural generation is hard. good procedural generation is bespoke and intentional. good procedural generation is artistic and creative. please don't lump it in with the slop generated through machine learning 😞

EDIT: procgen is not AI, it's a 40+ year old game design technique, see: https://peoplemaking.games/@eniko/113158903401769257

Eniko | Kitsune Tails out now! (@[email protected])

in case it's not clear: procedural generation is a term used in game design whereby a human-authored algorithm takes a random seed value (a big random number like 123908516 for example) and deterministically generates game content from that. this does not involve training a neural network, these algorithms are painstakingly crafted by hand to create the desired output, do not require anyone else's content to make, and this technique is over 40 years old it's used in games like nethack (1987) https://en.wikipedia.org/wiki/NetHack, elite (1984) https://en.wikipedia.org/wiki/Elite_(video_game), minecraft (2011), dwarf fortress (2006) https://en.wikipedia.org/wiki/Dwarf_Fortress, rimworld (2018) https://en.wikipedia.org/wiki/RimWorld and many, many more the fact that people are conflating procedural generation in game design which has a long and treasured history with "AI" slop is fucking tragic

People Making Games
coming into my mentions going "but training machine learning algorithms is hard too weehhhh!" is grounds for a block. do not fucking do it
this post has rapidly breached containment so im muting this thread for my sanity

in case it's not clear: procedural generation is a term used in game design whereby a human-authored algorithm takes a random seed value (a big random number like 123908516 for example) and deterministically generates game content from that. this does not involve training a neural network, these algorithms are painstakingly crafted by hand to create the desired output, do not require anyone else's content to make, and this technique is over 40 years old

it's used in games like nethack (1987) https://en.wikipedia.org/wiki/NetHack, elite (1984) https://en.wikipedia.org/wiki/Elite_(video_game), minecraft (2011), dwarf fortress (2006) https://en.wikipedia.org/wiki/Dwarf_Fortress, rimworld (2018) https://en.wikipedia.org/wiki/RimWorld and many, many more

the fact that people are conflating procedural generation in game design which has a long and treasured history with "AI" slop is fucking tragic

NetHack - Wikipedia

@eniko The Deep Rock Galactic people recently posted an explanation of their cave generation which goes reasonably deep and shows pretty nicely how much human input is needed there.

In short: They do hand-made rooms and modify them, and take into account the mission type, biome and a bunch of other stuff.

(edit: link directly to post)

Deep Rock Galactic - Below Decks at Ghost Ship: Cave generation in Deep Rock Galactic - Steam News

We’ve got another behind the scenes peek for you, this time on one of your most requested topics: cave generation.

@bean @jiub @eniko sorry, i’m just giggling about going reasonably deep into cave generation
@eniko using a random number generator twice and multiplying the result vs flying a private jet to thousands of people who've generated a number, one by one, then copying the most common two and multiplying them
@eniko I can not stress enough how AI as a term has completely disrupted the industry entirely. What used to be how we defined npc and enemy behavior in a game is now used in a completely different way. Now anything generated by a computer is considered "AI", even though, as you said, it's something very specifically crafted. We defined it's rules and behaviors. We made the equations.
@eniko reminded of kkrieger which IIRC is procedurally generated for being one of those tiny filesize FPS games? I'd always heard it as such when I first learned about it 20 years ago
@eniko that technique was used in Moria circa 1978 on the PLATO educational computer system, too. So yeah, not “AI”.
@eniko Noita uses it to with many many fun outputs https://noitagame.com/
Noita - A roguelite where everything can be destroyed.

An action roguelite where every pixel is interactive and destructible

@eniko it’s all human crafted game content; it just uses a stochastic compression algorithm
@eniko procedural generation is actual generation, while GenAI dies not generate anything, it just remixes the input and auto-completes its sludge into the output.

@eniko procedural generation can be fucking art

ai slop cannot

A major difference I’d say…

AI is whenever computer does a thing

@eniko

We been using procedural/semi-procedural generation stuff in most of our games. That is *NOT* "Ai" NOR is stuff generated with ANY "Ai tool", is code 100% written and invented by us ! .. "Procedural generation" existed since "the dawn of computers" for example even the Atari 2600 Pitfall game CAN be considered "procedural generation" because it uses "an algorithm" to generate the levels. Often PG comes from the need to create complex stuff with little resources. Is that "AI" ? No !

@eniko And actually I want to add that "procedural generation" we thought at some point was "a kind of a semi-lost art" because nowadays "everyone seems to go for models and assets that are all human made" ( i.e. 3D sculpted or hand painted or such ). The beauty of procedural generated stuff is that you can add "dynamic changes" and "the parameters space" is nearly infinite. "Is a color changing gradient palette AI ?" Obviously NOT, BUT it IS procedural generation.
@eniko And progen seeds can be reused, nothing the LLMs generate can be redone because of how they work.

@eniko I genuinely believe that just as #JavaScript overload has eliminated knowledge of #HTML / #CSS, generative #AI will lead to a generation of developers unable to produce what they want without AI. Expect games spinning up LLMs in the background to do a simple random generation task that could be done in 10 lines of C as the new norm

#gamedev

@Kroc 100% however this isn't a new thing. When I first got into webdev I had a real reliance on sass frameworks and html generation tools. And it took me a fair while to see through the reliance I had on those and start writing html/CSS without transpilation. It's so easy to get reliant on a tool designed to make something 'easier' and not realise a lot of what you like about it is just native to the language and not the framework.
@eniko all it took was for the sun to rise on the east coast SMH
@eniko harder than procgen and gives worse results? 🤔
I think we have a name for that... the walkway curb effect
@eniko omg they have "AI reply guy" in their bio. Points for self-awareness, I guess.
@eniko but training machine learning algorithms is hard too! I have to drink my coffee and watch youtube on my phone while the computer is running at 100% CPU and GPU usage! (sorry, I couldn't help myself)
@eniko The AI con artists have succeeded in part by absorbing shit that already existed and was really cool. It fucking sucks and really saddens me that procgen is yet another thing caught in the crossfire.

@xgranade

Wouldn't surprise me if pro-ai/llm people started that idea intentionally.

Like calling LLM AI, and shoving it into everything, and declaring it's in stuff it's not in. It makes it hard to tell sort out the field. It's makes it feel inevitable, like it's already won, cause people to just accept it, etc.

@eniko

@antijingoist @xgranade @eniko
To be fair, LLMs are AI... in the same way that private jets are transport. But what we're doing is treating bicycles as private jets because a charter private jet service filed as "transport"
@antijingoist @xgranade @eniko AI is just a overused buzzword! My 2010 piano has AI features: Casio could have named it "Automatic Chord Prediction", but they decided to call it "AI Fingered" mode. 
@xgranade @eniko As someone who has an interest in procedurally generated art, this hits hard.
@eniko this! Also these two things couldn't be more different: procedural generation might take milliseconds on your machine and require nothing more than an algorithm and a random seed, not a datacenter and a bazillion gigabytes of data scraped without consent
@gabrielesvelto @dalias @eniko Demoscene has more than amply demonstrated that procedural generation can be the more resource-efficient option, even.
@eniko even boring procedural generation is better than AI, because no matter how shallow a spore-like character creator is, at least the hand3 asset will have the same number of fingers every time the character is on screen.
@elrohir @eniko okay that actually made me chuckle

@eniko I concur. It's the same with the pushback against "algorithms" on fedi - I wish there were better tools *under my control*, but it all gets ban-hammered because of the exploitative practices pursued by big tech 😕

(And, y'know, it's not like "sort by most recent while applying this list of filters" *isn't* an algorithm already)

@larsmb @eniko another good word lost to the marketing wankers.

@larsmb @eniko Friendica user here, and they have a pair of handy "algorithms" or three:

  • "What's Hot": promotes posts based on recency, amount of likes and comments received by each post. No fancy-schmancy AI needed for that.
  • "Discover": same thing, but for accounts that your followed people are following and you're currently not. Handy to discover new users you might like.
  • "For you": it promotes posts from accounts you interact with, and from accounts that interact with you. It's also possible to manually tweak Friendica's affinity for an account, either making every post from an account you like appear in "For You", or demoting an account so that it never appears in "For You".
  • "Quiet sharers": promotes posts from users that haven't posted in a long time but decided to do so recently.

Not sure why is such a list of "algorithms" so controversial - Mastodon already has to track the amount of public likes and comments a post receives in order to display those stats. And besides, Friendica does the right thing by allowing you to effectively mute a stubborn person you're forced to interact with a bit too much.

@larsmb @eniko I mean, the "algorithms" are simple SQL queries you can inspect yourself: github.com/friendica/friendica…
friendica/src/Module/Conversation/Timeline.php at 30aac5f1b35517801eeef4a91da0e00bd16026c7 · friendica/friendica

Friendica Communications Platform. Contribute to friendica/friendica development by creating an account on GitHub.

GitHub
@eniko just to emphasize this point:
good procedural generation IS really really hard. takes a strong mind to get everything as close to the target as possible.
@eniko Going back to the theme of games, the first games I lost literally thousands of hours in were NetHack (<3) and eventually Elite (Frontier) - which counted as a milestone for procedural generation (actually still does) because of how much game play and graphics it allowed them to cram onto a single floppy (yes, me old) disk. Freaking amazing.
Dwarf Fortress. Procedural generation for the win.
@larsmb @eniko Heh, I played Elite off a cassette tape.

@eniko In the same vein, let's also not lump in machine learning as a whole into the bunch that is LLMs and """AI art""" 😅 Good examples of machine learning in gaming and gamedev include autonomous TAS, enemy AI, and ML-assisted procedural generation. Other good examples of ML include the development of revolutionary life-saving medicine.

Ethical uses of ML being lumped in with unethical uses of ML harms genuine scientific research. 😅

@eniko Rule of thumb: if it existed before the panemic, it's not what you're mad about
@eniko Problem is that most games that use procedural generation are soulless generic and repetitive. I rather have Outer Worlds size of universe with few hand crafted planets than Starfields seemingly endless universe that is full of generic forgettable planets with same outposts and labs everywhere. There is no way Bethesda hand made all the planets. They were all procedurally generated and then they plopped some unique cities or structures on key planets and that's it.
@rejzor there are loads of games with excellent procgen like caves of qud and dwarf fortress

@eniko The only potential silver lining here is that we can call it PROC-GEN or something like that to avoid the misery that is has been the AI moniker being coopted.

We could also differentiate the "bad ai" with something like "GEN AI", LLM AI or something similar.

My master's thesis was on PROC-GEN, and people keep mixing it up. also, was making a PROC-GEN course, and it's been put on hold because most will confuse it with the GEN AI or LLM AI crap. I hope it all burns and never comes back.

@eniko people saying procedural generation is easy when they learn about minecraft's world generation
@eniko As somebody who does procedural generation for game mods, it didn't even occur to me that people would mix it up with the current plagiarism engine "AI"s. But I guess if you don't do it, the difference isn't so clear.

@eniko I recommend the book "Procedural Generation in Game Design" by Tanya Short and Tarn Adams.

Especially Tarn Adams' Dwarf Fortress has demonstrated what procedural generation can do for a game.

@fell @eniko +1. A super interesting read, even though I don’t work in game design.

@eniko I feel like procedural generation (which, as a tool can be fantastic) is often used as a buzzword. For a while in the late '00s everyone was bragging about it in games. Now it mostly comes up mostly when people dislike something. No one talks about the procedural generation in the looter-shooters or roguelikes they enjoy: that is just RNG. Starfield? That is some bad procedural generation.

That is just my annecdotal experience though.

@eniko About the only place I can see generative AI being useful is in filler text and dialogue and similar areas where adding detail is prohibitively expensive especially for a small team. I wouldn't completely write off ML as an element of procedural generation - ML is a just a type of procedure - but for now at least, you'd likely spend as much time training the system as you would writing a traditional generator. I'd be interested in what kind of terrain, conversation, maps, etc. a hybrid system could produce, what sort of 7-fingered artifacts you'd end up with from ML, and how to detect, prevent, and patch over them. I'm not convinced the heavily promoted GPT systems would help (too many techbros involved) but someone more interested in the result than in not paying for writers and artists and programmers might do something interesting.
@eniko I attempted to explain recently that what computer scientists think of as "artificial intelligence" and what the marketing guys have relabeled "machine learning" are vastly different things. I am not sure I made an impression.
@AndySocial @eniko machine learning has been a sub field of AI since the 1950s when a computer learned to play checkers by trial and error. LLMs are the result of one of the many ways to implement machine learning. AI researchers have always called the things that they develop “AI”, to indicate what field of research produced the things. The problem is that “AI” stands for both the research and the intended result and people are intentionally confusing the two.
@MartyFouts @eniko My attempt to explain to a non-geek said that "AI" is a giant tent, and it contains a lot of things, from machine learning models that have been in use for decades to large language models and generative systems to the holy grail of general AI. Again, I may have been wasting my breath, but at least I hope I helped clear up the whole "AI is always bad" thing.
@eniko
Exhibit A. Elite on the BBC Micro.
The whole world was procedurally generated. I expect many really enjoyed it and it's sequels.
@eniko I will stash this toot and link to it if I ever run into this monstrosity of ignorance.

@eniko Understood. I'll be boycotting anything with a random number generator in it.

No more packs of cards for me.

@eniko Very good point. Minecraft is an example of brilliant procedural generation, did you catch Corridor Crew's video the other day: https://www.youtube.com/watch?v=juQASG4Jy-E
VFX Artist Reveals the True Scale of Minecraft

YouTube

@eniko This is an excellent example of a term that historically originated in AI research but that has a modern use that is not the same. Harold Cohen conceived of a procedural image generator in the 60s. In the 70s he started developing AARON, an AI procedural image generator and continued until his death.

AARON is why procedural generation is associated with AI but most game procgen does not use AI techniques. /1

https://en.m.wikipedia.org/wiki/AARON

AARON - Wikipedia