fireundubh Posted December 25, 2017 Posted December 25, 2017 (edited) Back in 2015, another player parsed the *.conversation files to count the unique dialogue options for various character creation choices. I was interested in an updated list for the base game and DLC, so I wrote a XML parser in Python to produce a similar report. I also covered options that add disposition points and options that check disposition points. FULL REPORT WITH DLC BREAKDOWN DispositionAddPoints Breakdown This breakdown reports the number of dialogue choices that add a Minor, Average, or Major amount of disposition points, as well as the total amount of points for each disposition-strength pair. Strengths: Minor = 1 point, Average = 3 points, Major = 7 points Ranks: Rank 1 = 1 point, Rank 2 = 25 points, Rank 3 = 50 points, Rank 4 = 75 points Notes: I wasn't sure whether to leave in the conversations in the "prototype_2" folder, so I erred on the side of caution and I left them in. I excluded the conversations in the "conversations" root and "conversations\test" folders. No options were filtered out, such as the Fire Godlike checks in The Ruins of Cilant Lîs. Keep that in mind! If I forgot anything, let me know! Race Notes: [Race] The single Human check also checks for Aumaua, Godlike, and Elf. [subrace] Island Aumaua have no checks in Eternity, White March I, or White March II. Culture Notes: The Nassitaq check also checks for TheWhiteThatWends. The same is not true of TheVailianRepublics, and since you can choose only OldVailia as a background, I guess Fyrga never says this to you: "They symbolize Magran's power and guidance. And right now, the people of Defiance Bay need to be assured of her presence." She crosses her arms, staring at the statue. "You Vailians see us as superstitious, but we're just sensitive to the signs and warnings of the gods." Edited December 28, 2017 by fireundubh 9
fireundubh Posted December 27, 2017 Author Posted December 27, 2017 (edited) Updated the report with a multi-column breakdown for Eternity, White March I, White March II, and Total. I also have JSON files for each function and parameter that list the exact strings for every count. I don't know what to do with those yet. Example Snippet: IsPlayerSubrace-Fire_Godlike.json <snip> "07_cv_pillar_puzzle": [ [ { "type": "TalkNode", "display_type": "Bark", "text": "Flames kindle swiftly in the brazier, winding their way upwards." } ], [ { "type": "PlayerResponseNode", "display_type": "Conversation", "text": "[Touch your fiery hair to the brazier.]" } ], <snip> Edited December 27, 2017 by fireundubh
fireundubh Posted December 28, 2017 Author Posted December 28, 2017 Added IsPlayerAttributeScoreValue and IsPlayerSkillValue checks. Interestingly: [Attribute] Dexterity is used in conversations almost twice as much as its nearest contender. [skill] Athletics is used in conversations more than any other skill. [skill] Crafting isn't used in conversations at all!
fireundubh Posted December 28, 2017 Author Posted December 28, 2017 (edited) Added IsCompanionActiveInParty checks! A few temporary "companions" are included because they're classed as companions in the decompiled sources. Fixed an issue in the XML-to-JSON exporter where nodes were not properly grouped by file, resulting in duplicate data structures and inflated counts. The counts should be as accurate as possible at this point. I say "accurate as possible" because some conversations where checks appear in search do not have corresponding string tables, so they're not counted. The assumption is these checks are either unused or don't contribute to the "unique dialogue" experience. Aside: There is an IsCompanionActiveInParty check for Calisca much later in the game, but the conditional also checks for other companions as well, so that dialogue will always be shown. This really only means Calisca has one more IsCompanionActiveInParty check than she should. Also, here's a funny thing: when you escape the biawac at the start of the game, if only one companion survives, "there is a deep resonance to the wind," but if two companions survive, "there is a deep resonance to the swelling wind." Big difference! ... Don't get too caught up in the numbers when creating a new character. I plan to add support for a few more conditional functions and break down the parameters further, so you can see things like how many options grant Major disposition points or require different attribute scores, and then I'll move on to exploring the possibility of a visual conversation editor. Edited December 28, 2017 by fireundubh
Heijoushin Posted December 29, 2017 Posted December 29, 2017 Very interesting to look at. Thanks for making this. Makes it clear that while the dispositions are used very often, we only get a sprinkling of unique reactions for background, race, and culture. Well, I suppose it would be weird to force that stuff into the dialogue. Interesting that the Fire Godlike get by far the most comments out of all the races (sure, they're freaks, but so are the other Godlike).
fireundubh Posted December 29, 2017 Author Posted December 29, 2017 (edited) Interesting that the Fire Godlike get by far the most comments out of all the races (sure, they're freaks, but so are the other Godlike). Well, 12 of the 15 in Eternity are part of the Cilant Lîs brazier-trap puzzle: "Flames kindle swiftly in the brazier, winding their way upwards." "[Touch your fiery hair to the brazier.]" And I believe you see that dialogue only once (<Persistence>MarkAsRead</Persistence>). Another node is shared with Moon Godlike, Nature Godlike, and Snow Elf. So, subtract 11+1 and you get a number that's in line with the others. Edited December 29, 2017 by fireundubh 2
Messier-31 Posted December 29, 2017 Posted December 29, 2017 The spread is quite drastic. It would be of small avail to talk of magic in the air...
miossid Posted July 11, 2018 Posted July 11, 2018 Nice work! But what are IsCompanionActiveInParty checks? All the occassions each companion interjects in quest conversations and the like?
fireundubh Posted July 11, 2018 Author Posted July 11, 2018 Nice work! But what are IsCompanionActiveInParty checks? All the occassions each companion interjects in quest conversations and the like? There are some conversations that will trigger only when certain companions are in your party.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now