Jump to content
The Dark Mod Forums

Geep

Contributor
  • Posts

    1095
  • Joined

  • Last visited

  • Days Won

    58

Everything posted by Geep

  1. The subtitles of The Lady02 vocal set is now available for eventual incorporation into TDM: testSubtitlesLady02.pk4 Lady02 is another noblewoman, somewhat newer and so unmentioned on the wiki. She is a drawling speaker, often indecisive, and given to long musings. Favorite topics are how boring life is for the wealthy, and how to keep men of the household and the maids apart. Lady02 required heavier and more complex use of .srt files than most AI characters, due to: Her slow, rambling monologues Some of the underlying .ogg files were poorly trimmed at the end, so needed compensatory .srt timings. I appreciate the assistance of @datiswous in this effort. Statistics In file fm_root.subs there are 195 inlines, including: 25 with an explicit linebreak, intending 2 lines 170 without Only 1 of these needed an explicit duration extension, to the capped value 0.50 seconds, for 17-20 cps There are 116 SRTs, including: 78 with 1 message (to correct trim problem) 24 with 2 messages 7 with 3 messages 2 with 4 messages 3 with 5 messages 1 with 8 messages 1 with 9 messages Of the 187 total SRT messages, there are: 90 with an explicit linebreak, intending 2 lines 97 without In all, there are 311 voice clips with subtitles, showing 382 messages. Corresponding Excel File Lady02Subtitles.xlsx This is based on Version 6 of the Excel Template for TDM bark subtitles.
  2. I suppose you could split the difference, making the line moderately thin but obvious at the lower edge but vanish at the upper edge, letting the gray interior carry the upper shape. So, I prefer the 3D slope, but am OK without, if that's what others like.
  3. You raised the oval further up from the text, but that will put it atop a different caption text when 2-3 are showing stacked simultaneously. So shouldn't change that aspect of implementation. I see your mockup has a uniform opaque gray interior, rather than translucent. That would be easier to implement and integrate with the backing field. @stgatilov, can you take it from here, with the .tga that @snatcher provided?
  4. I can try to work up a variant design, with a white ring. Do you like the current size of the oval, or prefer my original "blue ring" design, that was wider but slightly less tall? My original design was transparent inside, although the lower-half overlapped the neutral translucent rectangular backing field. I could try to provide the upper-half with a neutral translucency that would approximate the backing field. This would be approximate because the translucency would be provided in 2 separate ways (photoshopped vs. gui). The white line in that case could be very thin on the upper part, because the translucency would also define the shape. I thought it desirable to provide a sense that the oval was really a disk viewed in perspective, so the lower edge is thicker... but maybe you'd prefer a uniform-thickness white line all around?
  5. OK. To confirm Libreoffice compatibility, please download one of the recent completed spreadsheets, e.g., for Critic or Manbeast (links in OP of this thread). Also, you will likely find it helpful to have such a worked example while reviewing the "Explained" doc discussed below. Assuming compatibility, I'll programmatically pre-populate a fresh spreadsheet with .ogg filenames and clip durations for "The Drunk" vocal set (in the vocals04 pk4), and DM a link for that for you. While waiting, please review these two Word docs (see links in OP): "Subtitle Style Guide - Part 1". There's a 1-page summary of main points at start. Skim the rest. "Dec 7 Update of the "Explained" Doc for Spreadsheet Template v5". This details what the two worksheets and the columns within each mean. You will start with the "Compose" worksheet; I will have already filled columns A & B, and C is auto-calculated. Since we have no pre-existing vocal text script for The Drunk, column D will be left blank (TIP: hide it), and column F will be useless. You will start filling in column E, "Tweaked Subtitle". There's lots more to say, but that's enough for now. The spreadsheet I send you will based on Barks Template v6, but it's only trivially different from v5, so the Dec 7 doc should be fine. BTW, there's more workflow that is done before/after your part. If curious or need more context, see: "June 10 Documents Explaining Workflow and Excel Spreadsheet/Template (for AverageJack)"
  6. Not sure what you mean... better centered horizontally? Not overlapping the top edge of the subtitles? Keep in mind that the subtitles can stack 3 up, and the space between them is limited. This constraints both the size of the oval and what overlap may occur with the backing fields. If you had a scaled-down glyph of a talking head (instead of just a central dot), it may be unrecognizable as such. Dunno. The current graphics are stgatilov's version. The movable red square indicator is a re-using of a graphic already used as a frob assistant.
  7. Thanks for that offer. My process is more complicated than that, and involves an Excel spreadsheet to manage the captions, and determine (partially automatically) for each one - if it needs breaking into 2 lines, and if so, where if it needs additional presentation time, using the inline -dx option, and if so, calculates how much if it instead needs to handled as a separate .srt file, instead of as an inline; based on both duration & character count So, if you can work with Excel (and doesn't have to be latest version... mine's a decade old), and are willing to read some Word docs, then you can help at the transcription into Excel, at least for 1 of the vocal sets remaining. Otherwise, I'll have to pass on your offer.
  8. Work is once again underway on Lady02 vocal set. To deal with untrimmed .ogg files (discussed earlier), the srt-based method of ending captions early will be used.
  9. Regarding the earlier discussion about telling when an objective is complete from script, I just added a brief entry under the wiki's "Objective Editor/FAQ & Examples" called "Determining an Objective's Current State from a Script" As for as Stim/Response... I often find it hard to wrap my head around too. I don't recall writing anything very authoritative about it, but maybe in some narrow context? Or maybe @JackFarmer, you were remembering someone else's explanation? So, I can put it on my list of possible wiki topics for 2024, but it would require a lot of research by me, and likely @Dragofer or others could do it better & quicker.
  10. The subtitles of the Manbeast vocal set are now available for eventual incorporation into TDM: testSubtitlesManbeast.pk4 Vocal script author Kingsal describes these underworld dwellers as once "men of the city, now twisted into beasts by some cruel god." They "speak in a broken, almost sing-song tongue, interspersed with involuntary snorts and screeches." Variants comprise two commoners and an archer/shaman. Compared to other AI, Manbeast has far fewer voice clips. The voicing is somewhat reminiscent of Golum of Lord of the Rings. Statistics In file fm_root.subs there are 135 inlines, including: 19 with an explicit linebreak, intending 2 lines 116 without Of these, only 1 has an explicit duration extension (in the range 0.25 to 0.49, for 17 cps) There are 3 SRTs, each with 2 messages. Of the 6 total SRT messages, none have an explicit linebreak. In all, for this vocal set, there are 138 voice clips with subtitles, showing 141 messages. Corresponding Excel File ManbeastSubtitles.xlsx NEW: This is based on Version 6 of the Excel Template for TDM bark subtitles, with 2 minor bug fixes from Version 5. Change to GUI New features of testSubtitles... for TDM 2.12dev compatibility: An oval at the top edge of each subtitle shows sound source direction (which in testSubtitles... is always the statue). The width of the subtitle backing field is based on subtitle verbosity (which in testSubtitles... is always "speech"). Implementation: Override-file tdm_subtitles_common.gui, which was a customization of 2.11's file, is dropped. Its purpose is now served and enlarged by override-file tdm_subtitles_message.gui, a customization of earlier 2.12dev's file. This .gui continues to use the width-compressed Stone font.
  11. I expect to be done what I planned for 2.12 by the end of January. If you want to start beta sooner, and integrate the last few voices after beta start but before final release, that would probably work out.
  12. Sorry for the "math speak". By modulo 5 (aka just mod 5), I mean integer values of 5, 10, 15, etc., and referring to the duration in units of seconds. Since the duration is a float, we're really talking 5.000, 10.000, 15.000, etc. No good reason, IMHO. Not at this time. I only got about through about 50 voice clips in the spreadsheet, before it became obvious that there was this problem. My workflow doesn't generate the .subs file of a test mission (initially with all inline, with srt candidates flagged by comments) until the spreadsheet is done. It's because the vocal set is chopped into individual voice clips, that the game individually invokes. So (unlike subtitling a movie or TDM video briefing), each unique voice clip must be represented by either a separate inline entry or srt file. The inline entry is an easier prep. It generally handles > 95% of a vocal set's clips. And would for Lady02 if the .ogg files had been properly trimmed.
  13. Update of the "Explained" Doc for Spreadsheet Template v5 This doc covers all the vocal sets done with template v5, from June's Average Jack to November's The Critic. (Subsequent work will involve template v6.) Within, changes from the original Explained are shown in blue. That original file, and the still-relevant "Overall" Doc, were linked here. Explained - Subtitles Template v5 & Vocal Sets Using It
  14. A Problem Arises I've paused subtitling of the Lady02 vocal set, because of a problem with the voice clips described here: https://forums.thedarkmod.com/index.php?/topic/21741-subtitles-possibilities-beyond-211/&do=findComment&comment=490151 While a way forward is being determined, I'll work on a different vocal set. Maybe manbeast, for which Kingsal just provided me the voice script.
  15. There's a problem with Lady02 sound clips. A number of them are untrimmed, having dead air at the end up to modulo 5 seconds. Out of 310 sound clips, counts of suspect clips are: 69 at exactly 5 seconds 15 at exactly 10 seconds 4 at higher values, modulo 5 seconds If a clip has, say, 3 seconds of dead air, I don't want to keep showing the subtitle during those 3 seconds. Solutions are: 1) trim the clips. The best solution, but a good amount of work (that I hate doing. Any volunteers?) 2) use SRT in each case to end the subtitle early. This is a fair amount of extra work for me, for those clips that otherwise would not need SRT (namely, the 5 second and some of the 10 second ones). But I'll do this if (1) and (3) seem out of reach. 3) Change the -dx command so it can take a negative value, and end the subtitle early. It would still take some effort to determine the -dx value, but less than (2), and with less file proliferation. @stgatilov, is this viable/easy? EDIT: Reported to bugtracker as https://bugs.thedarkmod.com/view.php?id=6352
  16. I rather regret that the namedEvent and runScript ideas were put in the same bugtracker request, since they each clearly justify their own topic. From the discussion above, it seems that namedEvent would be easier/safer to implement this round. It appears runScript is more problematic, and furthermore, may not be the only or best way to implement new capabilities for readables. The latter (e.g., tabs, different backdrops for different pages) probably also needs a separate bugtracker item. Turning to namedEvent... @stgatilov in the OP was wondering about whether the in-GUI call to namedEvent should be synchronous (i.e., happen immediately) or asynchronous. Synchronous is easier for the script writer to think about, and would be my preference. As he indicates, this would be less like other gui script aspects (some of them "weird"), but more like calls to gui named events from doomscript. And, by introducing nested call stacks, he thinks may provide future opportunities for reduction in weirdness. It is unclear to me if HMart's implementation is synchronous or asynchronous. Probably we should not worry about whether this usage is consistent with Quake 4, since we'll probably never know.
  17. The situation with "entity" is like "tomato". To a botanist, it's a fruit. To a grocer or chef, it's a vegetable. So if a mapper says "entity", often it's meant to exclude worldspawn, even though technically it's included. The meaning depends on context.
  18. The subtitles of The Wench vocal set are now available for eventual incorporation into TDM Two versions, created earlier in the year, are released today with just-revised names. The first (created on Apr 21) was fully QA tested under April's 2.12dev: testSubtitlesWenchOriginal.pk4 But it was noticed at the time that some of the voice clips do not correspond well with their TDM event categorizations. So, the second testSubtitlesWench version (created on Apr 24) is designed to be used with corrected voice clip names and categorizations, as detailed in bugtracker 6284. It was hoped that this bug report could be addressed in a timely way, so that this patched version could also be given final testing. But waited long enough; released now without final testing: testSubtitlesWenchPatched.pk4 CAUTION: If you run this version with current 2.12dev and step through the subtitles, at some point it will fail with a console error. It will only fully succeed with a future 2.12dev with bugtracker 6284 changes incorporated. EDIT: Since this was posted, progress has occurred on 6284. The result is reportedly a bit at odds with "Patched". Expect a 3rd, fully-aligned version of testSubtitlesWench to be forthcoming. About The Wench The Wench character is described as "uneducated, saucy and bold. The wench has been around the block; she is confident and flirty." She is further characterized in the wiki as "a low-class woman with something of a foul mouth". This vocal set comes with slightly different versions for soft-spoken women and "barmaids, whores, and female thieves". Statistics Original: In file fm_root.subs there are 535 inlines, including: 50 with an explicit linebreak, intending 2 lines 485 without Patched: In file fm_root.subs there are 533 inlines, including: 48 with an explicit linebreak, intending 2 lines 485 without None of these needed explicit duration extensions. For both original and patched, there are 20 SRTs, including: 19 with 2 messages 1 with 3 messages Of the 41 total SRT messages, there are: 13 with an explicit linebreak, intending 2 lines 28 without In all, in this vocal set, there are: Original: 555 voice clips with subtitles, showing 576 messages. Patched: 553 voice clips with subtitles, showing 574 messages. Corresponding Excel Spreadsheet WenchOriginalSubtitles.xlsx This spreadsheet was organized with an early "v1" barks template.
  19. The subtitles of The Critic (aka Bossy) vocal set are now available for eventual incorporation into TMD: testSubtitlesCritic.pk4 The wiki's "Voices" article describes The Critic as "a slightly upper-class, know-it-all voice", good for a male character who "has an opinion on everything and frequently offers advice. Suitable for nobles, mages, inventors, and snooty servants or guards." For inventors and mages, specific vocal phrases are provided. This speaker is a relatively fast talker, requiring more subtitle time extensions than most characters. Statistics In file fm_root.subs there are 293 inlines, including: 79 with an explicit linebreak, intending 2 lines 214 without 69 of these inlines have explicit duration extensions, as follows: 33 from 0.25 to 0.49, for 17 cps 32 capped at 0.50 seconds, for 17-20 cps 4 with more than 0.50 seconds, for 20 cps. The worst case one of these also was given non-verbatim shortening ("would have" replaced by "would've") There are 14 SRT files, including: 12 with 2 messages 2 with 3 messages Of these, 7 were given a time extension past the end of the clip, in the range 0.20-0.50 sec, analogous to duration extensions in the inline files. (In fm_root.subs, there are actually 15 srt commands. Two of these had the same subtitle text and so shared an .srt file. This file is one of those with a time extension.) Of the 30 total SRT messages, there are: 21 with an explicit linebreak, intending 2 lines 9 without In all, for this vocal set, there are 307 voice clips with subtitles, showing 323 messages. Corresponding Excel Spreadsheet SubtitlesCritic.xlsx As usual, this is based on Version 5 of the Excel Template for TDM bark subtitles.
  20. In thinking about this further, maybe a savefile is just a memory image. In which case ANY difference between the two machines (in OS version, CPU, GPU, amount of RAM, etc.) could prevent portability. If so, this approach to debug is likely a hopeless endeavor.
  21. Maybe TDM's .ini and .cfg files need to duplicated too? I could imagine if there was some settings mismatch, say, how shadows were handled, that could cause problems.
  22. With my method, you get the results for all the successful matches back in a convenient single temp file (i.e., tabbed pane); each match is a single line, that you can examine and, if of particular interest, click on to open the relevant file in a separate tab within Textpad. I'm not sure that 7zip->Textpad would deliver the same convenient summary, even if it might spare having to pre-expand the .pk4 trees.
  23. Maybe you have to duplicate the entire FM environment (the .pk4 if packaged) to get it to work?
  24. While Notepad++ does have a "Find in Files" feature, it's not well suited for this particular task (examining all the files of a particular type within a large directory tree). TextPad works well for Windows, but there's no doubt plenty of other ways to do it.
  25. Yeah, there's nothing in the syntax that tells you if the gui parameter is set in a gui script or the engine. Sometimes there's a comment in the script that helps out by saying, for instance, "// set by SDK". If you really need to know - say, you're writing a wiki article - then typically you'd do a full-text search for the parameter name within and across files. Namely, the search scope may include: FM-specific .gui files Core .gui (and sometimes .guicode) files Engine .cpp (and sometimes .h) files, of the source code retrieved from, for instance, github I use TextPad to do this. In the case of (2), I have a local copy of the latest official TDM distribution (currently 2.11), where I have replaced every .pk4 with its unzipped equivalent. Because TextPad can't look inside .pk4 files. In the case of "ModNotesText", method (2) found nothing except the line you indicated. Method (3) found this line in a version of the source code: \darkmod_src-trunk\darkmod_src-trunk\game\ModMenu.cpp(81): gui->SetStateString("ModNotesText", info != NULL ? info->GetModNotes() : ""); So, yes, it's set by the engine.
×
×
  • Create New...