Jump to content
The Dark Mod Forums

Recommended Posts

Posted

About Errors Running Recently-Created testSubtitles... FMs under TDM 2.12 Beta 3

Console gui parsing errors now occur in the FM's custom version of tdm_subtitles_message.gui, because Beta 3 no longer defines SUBTITLES_TEXT_BORDERCOLOR.

To correct this, in the testSubtitles.../guis/tdm_subtitles_message.gui, comment out the 2 lines that say:

bordercolor    SUBTITLES_TEXT_BORDERCOLOR

Or replace with the so-fixed and updated version of this file from testSubtitlesCynic, to be released shortly.

Early testSubtitles... FMs created during the first half of 2023 may need additional surgery to run without error.

Posted

The subtitles of The Cynic (aka Bernie) vocal set, are now available for eventual incorporation into TDM:

testSubtitlesCynic.pk4

This male character is often snide or crabby. In addition to general barks, there are phrases for a guard of the city watch, and for a trader.

Note for Integrators

This release incorporates and supercedes the TDM 2.10 subtitle demo, provided by @Dragofer, with its version of tdm_ai_cynic.subs. Likewise, it obviates the need for the distribution's  fm_test_subtitles_ai_cynic_dragofers_dozen.shdshd

Statistics

In file fm_root.subs there are 301 inlines, including:

  • 40 with an explicit linebreak, intending 2 lines
  • 261 without

 23 of these have explicit duration extensions, as follows:

  •  16 from 0.25 to 0.49, for 17 cps
  •  7 capped at 0.50 seconds, for 17-20 cps
  •  none with more than 0.50 seconds, for 20 cps

There are 12 SRTs, including:

  • 10 with 2 messages
  • 1 with 3 messages
  • 1 with 4 messages

Of the 27 total SRT messages, there are:

  • 17 with an explicit linebreak, intending 2 lines
  • 10 without

In all, there are 313 voice clips with subtitles, showing 328 messages.

Corresponding Excel File

TheCynicSubtitles.xlsx

This is based on Version 6 of the Excel Template for TDM bark subtitles. The "Script Subtitle" column contains Dragofer's original subtitles.

About the GUI

Like The Drunk, subtitle backing fields for The Cynic uses the "tabbed widget" design, with reduced main field heights, one of several design alternatives that were being discussed. For the sound source widget itself, it uses snatcher's white sector oval provided by beta3.

  • Like 1
Posted

Here is the final release of The Wench, with Dragofer's Dec 9, 2023 sound file revisions (see bugtracker 6284), as included in TDM 2.12 beta3:

testSubtitlesWenchFinal.pk4

The revisions correct a few mismatches between what was said and what the intended purpose was. The statistics are little changed. The testSubtitlesWenchFinal FM will run under beta 3, with the same GUI as testSubtitlesCynic.

Details of Revisions

There were no changes to the collection of .srt files. The changes affect only the .subs file (and what's in testSubtitlesWenchFinal's FM-specific sound shader).

It is too much effort and time to revise the Excel spreadsheet, of early "v1" barks template form. Instead, if the reader wishes to do so, start with the WenchOriginalSubtitles.xlsx (available via the original Wench post), and apply the changes below. The total number of rows is unchanged.

Spoiler

Here, assume all .ogg names start with "tdm_ai_wench_", not shown.
  deleted (actually moved) contents: find_corpse01.ogg, 02.ogg, 03.ogg
  evidently name is renumbered:
     find_corpse10.ogg to find_corpse01.ogg  "Murder!" fm_test_subtitles_shader151
     find_corpse09.ogg to find_corpse02.ogg "Ah! Someone's been killed!\nRaise the alarm...!" fm_test_subtitles_shader152
     find_corpse08.ogg to find_corpse03.ogg "Awh! Someone's been killed!\nRaise the alarm!" fm_test_subtitles_shader153
  presumed unchanged: find_corpse04-07.ogg
new: find_corpse_female03.ogg "She's dead. Murder!" fm_test_subtitles_shader162
  was: tdm_ai_wench_find_corpse01.ogg
new: find_corpse_male03.ogg "(distraught) He's dead!" fm_test_subtitles_shader165
  was: tdm_ai_wench_find_corpse02.ogg [or maybe 03]
find_corpse_male04.ogg "He's dead!" fm_test_subtitles_shader166
  was: tdm_ai_wench_find_corpse03.ogg [or maybe 02]
new: notice_pocket_picked04.ogg "Where could it be?" fm_test_subtitles_shader311
  was: tdm_ai_wench_searching_no_evidence23.ogg
pain_small02.ogg "Ouch!" fm_test_subtitles_shader322
  new content, probably start of old clip that began with Ah!. Clip duration now 0.643 sec
pain_small03.ogg "Oww!" fm_test_subtitles_shader323
  new content, probably start of old clip that began with Awh! Clip duration now 0.790 sec

 

  • Like 2
Posted
35 minutes ago, MirceaKitsune said:

So do we have subtitles for all the voices now?

Yes, for those within the scope of the project: barks of English-speaking AI. 😎

  • Like 3
  • 2 weeks later...
Posted

Gotta say: As much as I thought I knew what all of the voices said, with subtitles I'm finding a corrections to what I had believed over the years: Part of me actually feels like the illusion was broken even if they make more sense now. Some examples just for the fun:

  • "Shipment was late, who does he think he's fooling": Due to the accent I always thought the merchant said light instead of late... that actually made me wonder if back in the day they had a policy to charge more if the ship was too empty and not carrying enough goods for a trip to be worth it.
  • I always thought the cynic said "god keeps the leftovers, that's why I never get any"... it's actually the cook.
  • "Deadly boring, I could use a big of fun": Always heard the thug say a bit of fighting, real version is less exciting lol.
  • Used to think the thug says "gonna get me a good ole' after this", which I interpreted as getting something to drink especially as it sounded like ale with an accent... nah he actually says whore :D
  • Like 2
Posted
11 hours ago, MirceaKitsune said:

As much as I thought I knew what all of the voices said, with subtitles I'm finding a corrections to what I had believed over the years

Yeah, I had the benefit of a vocal script for most utterances, to decipher what they were saying. In a few cases, I had to listen over and over, and then make a best guess. Their chatter usually makes sense, but not 100.000%

  • 2 weeks later...
Posted (edited)
On 1/27/2023 at 12:09 AM, Geep said:

buildSubtitleShader.exe - Latest release of April 10, 2023. This program fabricates a TDM sound shader file specifically for the testSubtitles... series of FMs used here. It does so by wrapping each sound file name in a directory into a sound shader with uniform incremental naming. While limited to a single directory, the latest release simplifies merging runs from multiple directories.

I was wondering if it's possible to make a program that generates a subs file from a folder with a bunch of srt files. I know this is too much to ask for, but I just mention the idea..

The lines are usely:

srt "sound/sub-path-to-sound-folder/sound-file-name.ogg" "subtitles/sound-file-name.srt"

 

Edit: I think I already figured it out using Python code.

Just putting it here quickly so I can reproduce it later.

import os, sys

path = "C:/Progs/tdm/fms/mandrasola/sound/sfx/mandrasola/"

path_sounds = "sound/sfx/mandrasola/"

path_subs = "subtitles/"

listfiles = os.listdir(path)

for x in listfiles:
    print("	srt " + '"' + path_sounds + x + '"' + ' "' + path_subs + x.removesuffix('.ogg') + ".srt" + '"')

 

Generates:

srt "sound/sfx/mandrasola/mandrasola_guard1.ogg" "subtitles/mandrasola_guard1.srt"
srt "sound/sfx/mandrasola/mandrasola_guard2.ogg" "subtitles/mandrasola_guard2.srt"
srt "sound/sfx/mandrasola/mandrasola_lovell1.ogg" "subtitles/mandrasola_lovell1.srt"
srt "sound/sfx/mandrasola/mandrasola_lovell2.ogg" "subtitles/mandrasola_lovell2.srt"
srt "sound/sfx/mandrasola/mandrasola_lovell3.ogg" "subtitles/mandrasola_lovell3.srt"
srt "sound/sfx/mandrasola/mandrasola_lovell4.ogg" "subtitles/mandrasola_lovell4.srt"
srt "sound/sfx/mandrasola/mandrasola_lovell5.ogg" "subtitles/mandrasola_lovell5.srt"
srt "sound/sfx/mandrasola/mandrasola_lovell6.ogg" "subtitles/mandrasola_lovell6.srt"
srt "sound/sfx/mandrasola/mandrasola_ludmilla1.ogg" "subtitles/mandrasola_ludmilla1.srt"
srt "sound/sfx/mandrasola/mandrasola_ludmilla2.ogg" "subtitles/mandrasola_ludmilla2.srt"
srt "sound/sfx/mandrasola/mandrasola_ludmilla3.ogg" "subtitles/mandrasola_ludmilla3.srt"
srt "sound/sfx/mandrasola/mandrasola_ludmilla4.ogg" "subtitles/mandrasola_ludmilla4.srt"
srt "sound/sfx/mandrasola/mandrasola_ludmilla5.ogg" "subtitles/mandrasola_ludmilla5.srt"
srt "sound/sfx/mandrasola/mandrasola_ludmilla6.ogg" "subtitles/mandrasola_ludmilla6.srt"
srt "sound/sfx/mandrasola/mandrasola_ludmilla_iwarnyou.ogg" "subtitles/mandrasola_ludmilla_iwarnyou.srt"

 

Man this would have saved me so much time yesterday..

Edited by datiswous
  • Like 2
  • 3 weeks later...
Posted

🥳  I have just released a new utility, "refont", as an open-source, partial-successor of the traditional "q3font". For the whole story, see the new wiki page Refont.

(I'm gonna post this in a few forum threads. Don't hate me for that.)

  • Like 2
  • 4 months later...
Posted
On 10/11/2023 at 11:59 PM, Geep said:

Utility program "calcStringWidth" calculates the display width of a single-line input string, in TDM logical pixels,
when shown (e.g., as a subtitle) with TDM fonts Carleton and Stone with a 0.25 scale factor, and either uncompressed (as designed for a 4:3 screen) or width-compressed by 0.75 (for a 16:9 screen)

I was wondering if this is still up-to-date with the current font and display width in tdm.

Posted

I think what's of most interest here is Stone font, the default for subtitles, and its calculated width-compressed value.

The TDM scaling factor for subtitles is no longer 0.25, instead 0.24. So any actual displayed string length is now shorter than what this utility calculates, by about (24.0/25.0). "About" because calculated results is rounded to int.

Beyond that, when I updated Stone 24pt for 2.11, I tried really hard to not have to change the underlying xskip values of any character. But to be absolutely correct, it would be good to review the xskip spacing array embedded in this program, against the current DAT/REF file xskip values.

Probably the scale factor should be an optional parameter for this utility. I'll put an update of this program on my list of things to look at in 2025. For now, just do the 24/25 recalc.

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recent Status Updates

    • datiswous

      I moved from Manjaro Linux (rolling release) to Linux Mint (LTS). One of the reasons was that I found the updates a bit too often and long. But now on Mint I get updates every day, although they're usually small updates.
      · 3 replies
    • JackFarmer

      "Hidden Hands: Vitalic Fever" - new update available including subtitles & compressed briefing video (thanks to @datiswous) and several fixes.
      · 0 replies
    • Wolfmond

      🇬🇧

      2025-04-20
      I'd like to track my level design progress a bit more often now, so I'm using the feed in my profile here.
      I've been working intensively on Springheel's YouTube course over the past few days. I'm currently up to lesson 8. There is so much information that needs to be processed and practiced. 
      I have started to create my own house. As I don't have the imagination to create a good floor plan, I grabbed a floor plan generator from Watabou and experimented with it. I chose a floor plan that I will modify slightly, but at least I now have an initial idea. 
      I used two guards as a measuring tape: The rooms are two guards high. It turned out that I can simply double the number of boxes in DarkRadiant in grid size 8 that are drawn in the floor plan. 
      I practiced the simplest things on the floor plan first. Drawing walls, cutting walls, inserting doors, cutting out frames, creating VisPortals, furnishing rooms.
      I have had my first success in creating a book. Creating a book was easier than I thought. I have a few ideas with books. The level I'm creating will be more or less a chill level, just for me, where I'll try out a few things. I don't have an idea for my own mission yet. I want to start small first.
      For the cellar, I wanted to have a second entrance, which should be on the outside. I'm fascinated by these basement doors from the USA, I think they're called Bilco basement doors. They are very unusual in Germany, but this type of access is sometimes used for deliveries to restaurants etc., where barrels can be rolled or lifted into the cellar. 
      I used two Hatch Doors, but they got completely disoriented after turning. I have since got them reasonably tamed. It's not perfect, but it's acceptable. 
      In the cellar today I experimented with a trap door that leads to a shaft system. The rooms aren't practically finished yet, but I want to continue working on the floor plan for now. I'll be starting on the upper floor very soon.

      __________________________________________________________________________________
      🇩🇪

      2025-04-20

      Ich möchte nun mal öfters ein bisschen meinen Werdegang beim Leveldesign tracken, dazu nutze ich hier den Feed in meinem Profil.
      Ich habe mich in den vergangenen Tagen intensiv mit dem Youtube-Kurs von Springheel beschäftigt. Aktuell bin ich bis zu Lektion 8 gekommen. Das sind so viele Informationen, die erstmal verarbeitet werden wollen und trainiert werden wollen. 

      Ich habe mich daran gemacht, ein eigenes Haus zu erstellen. Da mir die Fantasie fehlt, einen guten Raumplan zu erstellen, habe ich mir einen Grundrissgenerator von Watabou geschnappt und damit experimentiert. Ich habe mich für einen Grundriss entschieden, den ich noch leicht abwandeln werde, aber zumindest habe ich nun eine erste Idee. 

      Als Maßband habe ich zwei Wächter genommen: Die Räume sind zwei Wächter hoch. Es hat sich herausgestellt, dass ich in DarkRadiant in Gittergröße 8 einfach die doppelte Anzahl an Kästchen übernehmen kann, die im Grundriss eingezeichnet sind. 

      Ich habe bei dem Grundriss erstmal die einfachsten Sachen geübt. Wände ziehen, Wände zerschneiden, Türen einsetzen, Zargen herausschneiden, VisPortals erstellen, Räume einrichten.

      Ich habe erste Erfolge mit einem Buch gehabt. Das Erstellen eines Buchs ging leichter als gedacht. Ich habe ein paar Ideen mit Bücher. Das Level, das ich gerade erstelle, wird mehr oder weniger ein Chill-Level, einfach nur für mich, bei dem ich ein paar Sachen ausprobieren werde. Ich habe noch keine Idee für eine eigene Mission. Ich möchte erst einmal klein anfangen.

      Beim Keller wollte ich gerne einen zweiten Zugang haben, der sich außen befinden soll. Mich faszinieren diese Kellertüren aus den USA, Bilco basement doors heißen die, glaube ich. Diese sind in Deutschland sehr unüblich, diese Art von Zugängen gibt es aber manchmal zur Anlieferung bei Restaurants etc., wo Fässer dann in den Keller gerollt oder gehoben werden können. 
      Ich habe zwei Hatch Doors verwendet, die allerdings nach dem Drehen vollkommen aus dem Ruder liefen. Inzwischen habe ich sie einigermaßen gebändigt bekommen. Es ist nicht perfekt, aber annehmbar. 
      Im Keller habe ich heute mit einer Falltür experimentiert, die zu einem Schachtsystem führt. Die Räume sind noch quasi nicht eingerichtet, aber ich möchte erstmal am Grundriss weiterarbeiten. In Kürze fange ich das Obergeschoss an.



      · 2 replies
    • JackFarmer

      On a lighter note, thanks to my cat-like reflexes, my superior puzzle skills and my perfect memory, I was able to beat the remastered version of "Tomb Raider: The Last Revelation" in a new superhuman record time of 23 h : 35 m, worship me!
      · 3 replies
    • Goblin of Akenash

      My mapping discord if anyone is interested, its more of a general modding thing rather than just for TDM 
      https://discord.gg/T4Jt4DdmUb

       
      · 0 replies
×
×
  • Create New...