CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.32k stars 4.14k forks source link

A Rubik translator might help people extend the Exodii further #66515

Open I-am-Erk opened 1 year ago

I-am-Erk commented 1 year ago

Is your feature request related to a problem? Please describe.

While I intended to get much more written for Rubik, I don't know when that will ever happen. Their idiosyncratic language makes it hard for anyone else to add Exodii missions. See #66483

Solution you would like.

As discussed in comments in the linked issue, the Exodii communicate through an internal network, allowing them to circumvent spoken language. While they're not comfortable connecting an unknown person to this network, perhaps Rubik could offer to connect you just to their translator once you are exodized.

Sample dialogue:

[int and per 8+] It's really hard to understand you, and none of your friends even speak as well as you do.  You must have some way of talking to each other... can you hook me up, now that I'm a cyborg? (translate1a)

[less than 8] Now that I'm a cyborg, is there any implant you have to make you make sense? (translate1b)

translate1a or b:
Oh, a fair an' sound.  This'n had for a lack, but right and so.  Aye, we have such un', but use o' fair takes you a much deeper metal, kennit?  That's to say, we don't know the shake of your square well enough yet.  Now as this'n yarks it though, perhaps there's a way.
(Good question. I hadn't thought of that but it's a smart idea. We do have translators but they're usually for people further along than you... we don't know you that well yet. still, maybe there's a way.)
- Tell me more.
This'n can't give you the brimming bowl, kennit, but a wire to the yarky barks of ol' Rubik alone, well that's a peach.  Mayhap a grand lass from Rhapsody, to be sure.  This'n can even offer it gratis.
- what are you talking about? You mean a translator just for your language? That'd work. (proceed with installation)
Give us a pinch to call it in, then.  No slicin' needed, least o' gramp, it can fly on the bark of your cutter.
(Rubik goes silent for a moment, perhaps speaking to the others through some silent connection)
"There.  How's this?  Do you ken Rubik a little clearer?" You can still hear Rubik's words, and they're as nonsense as ever, but hear a voice at the back of your mind - Rubik's voice, but not quite - repeating them in clearer English. "It's not perfect, for this'n's certain.  The software shares Rubik's intention of meaning, anyway."
- That's much better.  Can I use this to speak to other Exodii?
"Not yet, but it'd be fair trial to bring it out farther.  They'd have to be willing to let you link to their feed, an I'm ken.  No one harkens you well enough for that just yet."

later we should add a few more lore conversation options if you ask translate1a, while translate1b only gives you the core conversation.

In this model you'd be able to possibly unlock other Exodii translations the same way later. This allows Rubik to still have some weird idiosyncratic speech, but be much easier to write.

If this leads to more dialogue and content I might be able to come back later and add a version of the dialogue for if you don't get the translator added, but for the time being we'd just gate further progression until you got the ability.

Describe alternatives you have considered.

Another option would be to rewrite Rubik to be clearer from the start. That makes me sad.

Additional context

In general if people ping me on discord or message me on CDDA.social I should still be able to offer feedback and Rubik translations. I don't check GitHub as often as I used to and the flood of spam in my inbox makes it hard to catch mentions here.

I-am-Erk commented 1 year ago

The biggest challenge here would be how to handle the existing dialogue. I don't think this should be done with a variable and dynamic lines, it would make the dialogue almost unreadable in JSON. Probably the easiest way would be to duplicate Rubik's conversation files into a "translated" copy, add a -translated suffix to the talk_topics there, and have the download of the translation make it so that their first tslk_topic changes to the translated version. Then we go through and remove refundancies (you've already been exodized so there's a bunch of stuff they don't need to have in those files eg)

MNG-cataclysm commented 1 year ago

Regarding idiosyncrasies, what if you made a Word document that listed out slang phrases and what their English equivalents are? That would allow people to double check their own Upper Landing dialogue for addition, and you wouldn't have to translate it yourself.

I-am-Erk commented 1 year ago

I could probably do something like that, it's mostly a question of remembering to do it. And to be honest, I mostly just make them up as I go along, pulling a few from memory... but I could pretty easily generate a long enough list as to not have a ton of repetition