Jump to content
The Dark Mod Forums

Geep

Contributor
  • Posts

    1088
  • Joined

  • Last visited

  • Days Won

    58

Everything posted by Geep

  1. @stgatilov, I earlier read your 6283 description about 'So e.g. we can support fonts like "fonts/carleton@aspect=16:9" ', but I thought that meant there was a pre-created font variant with filename "carelton@aspect=16:9" to be distributed. But maybe "@aspect=16:9" is a gui keyword to trigger on-the-fly compression? [Duh, I guess I could just try that directly, but not at moment.] Yeah, I agree it's more confusing than helpful, and probably should be dropped. I'm sorry I suggested it (at least the idea of indicating location by a perimeter light; maybe not indicating volume too). I don't have a better idea at the moment. It would be interesting to play around with visually distinguishing "story" from "speech" subtitles. Lots of ways to do that, but having the enumeration available is the prerequisite.
  2. @stgatilov, would it be correct to say that the latest public 2.12dev contains the original 4:3 fonts, and does not distribute the narrowed 16:9 fonts (e.g., for Carleton and possibly Stone)? Also, I'd greatly appreciate it if you could expose a numeric variable whose value is set to indicate whether the current subtitle is of type "verbosity story", "verbosity speech", or "verbosity effect", that can be read (but not set) in tdm_subtitles_common.gui
  3. Added that to the trigger_sequencer synopsis on the Triggers wiki page.
  4. I'm just guessing at what your script function does, but maybe, after calling whatever reduces the stackable count by 1, do a wait for, say, a half second, before exiting the function. That might suppress redundant/re-entrant calls to the function. Or it that's not enough, add a pseudo-mutex within the same file, e.g.: float mutex; // outside any function body my_script_function() { if (mutex == 0) { mutex = 1; // call here to decrement stackable count sys.wait(0.5); mutex = 0; } } As for the target_itemremove, I'm thinking one would create an instance (the usual colored cube), then in its property list set "stackable_count" and/or "ammo_count" to 1. Then have your script function trigger it by name.
  5. The subtitles for The Mature Builder (aka Builder 3) vocal set are now available: testSubstitlesMatureBuilder.pk4 The wiki's "Vocal script: Builder3" suggests these traits for this cleric: "strong, intimidating voice, determined; archaic language; patient, talks about servitude, orthodoxy." Compared to other builders, this one seems to enjoy quoting scripture more often and at more length. As usual, the testing FM serves as the vehicle to provide these subtitles for eventual incorporation into TDM. Statistics In file fm_root.subs there are 315 "inline" subtitless, categorized as: - 52 with an explicit linebreak, intending 2 lines - 263 without 3 of the inlines have explicit duration extensions, as follows: - 2 from 0.25 to 0.49, for 17 cps presentation rate - 1 capped at 0.50 seconds, for 17-20 cps - none with more than 0.50 seconds There are 9 SRTs, including: - 8 with 2 messages - 1 with 4 messages None of these were given a duration extension. Of the 20 total SRT messages, there are: - 12 with an explicit linebreak, intending 2 lines - 8 without In all, in this vocal set captioning, there are 324 voice clips with subtitles, showing 335 messages. Corresponding Excel File MatureBuilderSubtitles.xlsx This is based on Version 5 of the Excel Template for TDM bark subtitles, which was also featured in the preceding work for Average Jack, The Pro, The Maiden, and The Grumbler.
  6. The subtitles for the The Grumbler vocal set are now available: testSubtitlesGrumbler.pk4 This character was described in the original vocal script thusly: "a cynical complainer. He’s got a rough job and a rough life and he wants to make sure everyone knows it. He’s pessimistic and grouchy. Not well educated." As usual, the testing FM serves as the vehicle to provide these subtitles for eventual incorporation into TDM. Statistics In file fm_root.subs there are 360 "inline" subtitles, categorized as: 64 with an explicit linebreak, intending 2 lines 296 without 64 of the inlines have explicit duration extensions, as follows: 37 from 0.25 to 0.49, for 17 cps presentation rate 26 capped at 0.50 seconds, for 17-20 cps 1 with more than 0.50 seconds, for 20 cps There are 4 SRTs, all with 2 messages apiece. Of those 8 total SRT messages, 4 have an explicit linebreak, intending 2 lines In all, in this vocal set captioning, there are 364 voice clips with subtitles, showing 368 messages. Corresponding Excel File TheGrumblerSubtitles.xlsx This is based on Version 5 of the Excel Template for TDM bark subtitles, which was also featured in the preceding work for Average Jack, The Pro, and The Maiden.
  7. I'm glad you enjoyed it. About the ending... The cutscenes were pre-recorded. I guess I pioneered their appearance in mid-game. If by "lagged a lot" you mean choppy, that's because my rig was underpowered hardware-wise to do a good job of playing the scene while recording it. So lots of dropped frames. If I had it to do over again, I'd invest upfront in a better desktop and/or external video capture box. But too tedious to do over now. Cutscene prep in general takes a large time commitment.
  8. The subtitles for the The Maiden (aka The Maid) vocal set are now available: testSubtitlesMaiden.pk4 This character was described in the original vocal script thusly: "This is a young female from the common class. She is probably a servant or tradeswoman. She is earnest and somewhat timid and used to being ordered around by her betters. She might complain when alone but she's always polite and proper to someone's face. Although some lines are included for armed characters, she is primarily going to be an unarmed character...." As usual, the testing FM serves as the vehicle to provide these subtitles for eventual incorporation into TDM. Statistics In file fm_root.subs there are 228 "inline" subtitles, categorized as: 39 with an explicit linebreak, intending 2 lines 189 without 4 of the inlines have explicit duration extensions. These are all in the range of 0.25 to 0.49 seconds, for 17 cps presentation rate. There are 6 SRTs, all with 2 messages apiece. Of the 12 total SRT messages, 2 have an explicit linebreak, intending 2 lines. In all, in this vocal set captioning, there are 234 voice clips with subtitles, showing 240 messages. Corresponding Excel File TheMaidenSubtitles.xlsx This is based on Version 5 of the Excel Template, which was also featured in the preceding Average Jack and The Pro work.
  9. To the "Subtitles" wiki page, I just added a new section, mostly drawn from this forum - "displaying_text_with_extended_duration_(new_for_2.12)"
  10. If this was a high-budget game, I could imagine someone repeatedly training up a text-to-speech LLM on an existing TDM AI voice. Not sure that's practical for no-budget TDM.
  11. @datiswous, I suspect this is possible if rather tedious for signs or 1-page broadsheets. You could arrange that the frob calls a script, and the script causes the player/narrator to say a custom .ogg file. That file would be just silence, of the same length as the desired subtitle duration for the translated text (or at least within 5 seconds of it, then using the duration extension methods). Alternatively, the narrator could actually "read aloud" the text. The complexity of the .gui for books is rather daunting, but maybe you could tie into page-turning events. I don't think you'd want to recommend this approach for general book translation throughout an FM. If for no other reason, making the .ogg files would be a pain. Also, it doesn't seem to me to extend to more than one subtitle language. I could imagine that, with engine changes, books could be made into first-class speakers (i.e., as if AIs), so you could optionally hear as well as read a book, and in any event see the subtitle in any language of the player's choice for which a translation is available.
  12. The console program "statsForSubtitles" is newly available, to produce the type of information shown in the previous post (although exact output format is now somewhat different). statsForSubtitles.exe - Window executable statsForSubtitles.cpp - C++ source code As usual, check the source code comments for more.
  13. The subtitles for The Pro vocal set, popular for upper-level guards, is now available: testSubtitlesPro.pk4 As usual, the testing FM is used as the vehicle to provide these subtitles for eventual incorporation into TDM. Statistics A new console program "statsForSubtitles" now calculates this info. There were 353 subtitles. As usual for barks, almost all were inline. Of the 5 that were instead SRT - 3 were 2-message 1 was 3-message 1 was 4-message. Of the inline, 54 were arranged on 2 lines with a manual line break. Of the inline, 46 required an explicit -dx extension of duration, as follows: 26 in the range 0.25 to 0.49 second, for a 17 cps presentation rate. 18 at the cap (by policy) of 0.50 second. (For one of these, a near-inperceptable word was dropped to achieve this.) 2 worse-case fast-talkers, raised slightly beyond the cap, for a 20 cps presentation rate. Corresponding Excel File TheProSubtitles.xlsx This spreadsheet used (without any changes) Subtitle Template V5, documented previously in the context of the Average Jack vocal set.
  14. Ah, there was an original plan to have a heart-shaped stone, or maybe bind two oval stones together to fake that (as a previous FM did, that was a story inspiration here). But it turned out that was all too much of a lift. So just used a single oval stone, with a heart outline to allude to the "Stolen Heart" theme. Just atmospherics.
  15. FYI, there are now two documents that describe my current workflow for the bark subtitles associated with any AI. The "Overall" Doc This gives a 1-page summary of how an Excel spreadsheet serves as the hub to manage and tune the inline subtitles, and flag those that need an SRT treatment. SRT is then covered in more detail, as is preparation of an FM for testing the results and releasing them for incorporation into TDM: Subtitling Overall Workflow, SRT, Testing (Jack - June 2023).docx The "Explained" Doc This concentrates on the latest version of the spreadsheet, beginning with its instantiation from an Excel template, followed by population of the first four columns with program-generated data and with strings copied from the vocal set. Manipulation of each subtitle, and its affect on generated column info and your decision making, is then covered. Finally, export to a text file and further text editing creates the content needed to be incorporated into the testing FM: Explained - SubtitlesTemplate(v5) & AverageJackSubtitles.docx
  16. The subtitles for the Average Jack vocal set is now available: testSubtitlesJack.pk4 Subsets of the Average Jack vocal set are defined for civilians, guards, beggars, cooks, labourers, and merchants. As usual, the testing FM is used as the vehicle to provide these subtitles for eventual incorporation into TDM. Statistics There were 388 subtitles. Almost all were inline. Only 12 were SRT; these were all two-message, except 1 was 3-message. Of the inline, 52 required a -dx extension of duration, as follows: 31 in the range 0.25 to 0.49 second. 17 at the cap (by policy) of 0.50 second. 4 worse-case fast-talkers, raised slightly beyond the cap. One of the cap-exceeders also needed a word dropped (non-verbatim). Corresponding Excel File AverageJackSubtitles.xlsx The final form of the Average Jack Excel spreadsheet was also retained (without data) as Version 5 of the evolving Subtitle Template. This and documentation about its spreadsheet/template usage will be available shortly.
  17. Sorry, I was only reading the static code with limited understanding. It references the idActor class, so which does include the player, so it would seem it should work with the player. If it doesn't, it probably needs someone with the code in the debugger (i.e., not me) to figure out why. Yeah, but then the AI wants to move on it's own, so how can it be bound to the player without messing the player up? Sounds like a 3-legged race!
  18. Getting FollowActorTask to work with the player is probably a good bugtracker request. BTW, I was curious about the behavior. It seems the follower gets as close as 60 units by walking, then stops. If the distance is over 480 units, the follower runs until within 180, then resumes walking. Given by these constants: #define DISTANCE_FOLLOWER_REACHED 60 #define DISTANCE_FOLLOWER_CATCHUP_DISTANCE 480 #define DISTANCE_FOLLOWER_CLOSE_ENOUGH_TO_STOP_RUNNING 180 I don't know if there's a means to tell the follower, "stop following, go to some path node".
  19. Possibly the reason this doesn't work is because the FollowActorTask code screens out actors that are NULL, AI_DEAD, or AI_KNOCKEDOUT.
  20. I've changed the example code in wiki entries "Scripting basics" and "My first map script" to use what @Frost_Salamander indicated: $player1.setHealth(0); // kill the player instead of $player1.kill();
  21. The subtitles for The Young Builder (Builder 4) vocal set is now available: testSubtitleYoungBuilder.pk4 As usual, the testing FM is used as the vehicle to provide these subtitles for eventual incorporation into TDM. Statistics There were 471 subtitles. Only 10 were SRT; the rest inline. Of the inline, about 87 required a -dx extension of duration in the range 0.25-0.50 seconds (By policy, 0.50 was the cap, hit by 35 of these. In a worst case, that cap could be raised; none required that). Of the srt, two had a first phrase that had to be slightly shortened (non-verbatim). Corresponding Excel File TheYoungBuilderSubtitles.xlsx The final form of the Young Builder Excel spreadsheet was also retained (without data) as Version 4 of the evolving Subtitle Template. Documentation about the spreadsheet/template usage will be available.
  22. Maybe that can be faked somehow. Create an AI that looks like a guard, but is really a civilian, and swap that character in to replace a real guard when the skeleton appears?
  23. To elaborate on that idea further, this would make "Version:" into a keyword, indicating the start of the block that could be ignored during display, and replaced by download info. That info would have to be locally persisted. I think the file "missions.tdminfo" already does this, but content would have to change somewhat (e.g., to include release date of locally downloaded FMs). Pre-release FMs could use whatever versioning scheme desired in darkmod.txt, e.g., "Version: 0.2", "Version: A", "Version: Dec 4", and rely on suppression of that when the official releases/updates occur. As with other keyword blocks, "Version:" could be in any order with respect to other blocks. If you didn't want this new display-override feature, use a non-keyword, e.g., "Vers #3". Just like "Version:" is treated currently. [An alternative implementation of this idea would just auto-edit the "Version:" block of darkmod.txt during upload to the distribution site. So all the change happens on the backend. Might be issues with site mirrors.]
×
×
  • Create New...