Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Procedurally generated writing systems (to go with generated languages)  (Read 992 times)

Mr Crabman

  • Bay Watcher
  • A person with the head and pincers of a crab.
    • View Profile

Tarn is a fan of linguistic stuff/conlangs apparently, and plans to one day make DF procedurally generate languages for entities/civs/creatures which change over time like in real life, in all the lovely detail that makes this game so great (phonemes and agglutination and all that fun stuff).

I don't know if this is already planned (would not surprise me at all if it was), but a nice thing to go along with this would be procedurally generated writing systems/scripts. Scripts would come in a variety of forms, often a mixture of multiple (more exist, but I'll just list a few here):

- Alphabetic (each symbol represents a "segmental phonome")
- Syllabic (each symbol represents a syllable)
- Logographic (each symbol represents a whole word, or a concept like currency: $ is a logogram for instance despite English being mostly alphabetic)

More info about that here: https://en.wikipedia.org/wiki/Writing_system#Functional_classification

And there are plenty of variations to be had in each of course, such as the direction of writing (like top-down, left-right, or right-left, or maybe more exotic systems like following curves, or writing the opposite way having a different meaning), and what kind of materials are traditionally used for writing by a given civ/culture (like wood carved runes vs engraving vs drawing on paper and so on).

And of course, the game could procedurally generate the actual symbols for us to look at (the appearance of the symbols of course would be generated realistically; the materials one writes on inform a lot about what the symbols look like), along with a chart of what sounds or words or whatever they match up to. They could be exported as an image, and if it would be technically feasible, maybe there could be a way to show actual written text displayed with these symbols as a font, even if just as an example of how it would look.

DwarfStar

  • Bay Watcher
    • View Profile

I think one of those neural network things could generate random but plausible looking characters. I doubt Tarn could justify putting in enough time to do that, but maybe he could provide the hooks and let modders experiment.

Where this sent my mind immediately was the gameplay effects of written materials being written in a certain script, and needing the reader to have skill with that script. It would be cool if you needed a human scholar to read/translate human books, at least until you develop human script proficiency in your dwarves.

An awesome story arc might be: you find a book containing magical secrets, but it’s written in a script of an ancient dead civilization that none of your scholars recognize. So, you have to go scouring the world until finally you locate the Rosetta Stone book that allows them to begin to gain enough skill to read it.
Logged

Mr Crabman

  • Bay Watcher
  • A person with the head and pincers of a crab.
    • View Profile

Where this sent my mind immediately was the gameplay effects of written materials being written in a certain script, and needing the reader to have skill with that script. It would be cool if you needed a human scholar to read/translate human books, at least until you develop human script proficiency in your dwarves.

An awesome story arc might be: you find a book containing magical secrets, but it’s written in a script of an ancient dead civilization that none of your scholars recognize. So, you have to go scouring the world until finally you locate the Rosetta Stone book that allows them to begin to gain enough skill to read it.

Oh yeah, that's exactly the sort of thing I'd love to see. You'd need to understand both the script and the language I suppose (in general each language will only have one script probably though, right?), since there's a difference between knowing the particular symbols and the structure of the language (and if it's alphabetic/syllabic, you also need to know the sounds of the spoken language probably).

It just occurred to me that some languages and scripts might have similarities that make learning them easier if you already know ones with similar traits, or multiple in general (real life bilingual people have an easier time learning a third language than those who only know one). Languages that evolved from the ancient dead civilization could tend to be easier to comprehend/learn.

I think one of those neural network things could generate random but plausible looking characters. I doubt Tarn could justify putting in enough time to do that, but maybe he could provide the hooks and let modders experiment.

Hmm, it didn't occur to me that something like a neural network may be necessary; I had some image in my head of a large collection of pre-drawn segments that the game stitches together randomly and rotates around and such to make the symbols.

DwarfStar

  • Bay Watcher
    • View Profile

I think one of those neural network things could generate random but plausible looking characters. I doubt Tarn could justify putting in enough time to do that, but maybe he could provide the hooks and let modders experiment.

Hmm, it didn't occur to me that something like a neural network may be necessary; I had some image in my head of a large collection of pre-drawn segments that the game stitches together randomly and rotates around and such to make the symbols.

Something like that could work, but it would be very tricky to generate a set of differentiable symbols that way. Without some heavy rules for it to follow (which would limit and need to be customized to get a different style) I think you’d tend to end up with something that looked like scribbles. And actual symbol sets evolve over time, tending to eliminate/combine symbols that are too close to tell apart. I think the neural network would be the easiest way to try to handle that problem, by identifying symbols that are too similar to each other.
Logged