Aquadrizzt Posted August 10, 2015 Posted August 10, 2015 I'm trying to port the dialog.tlk file for Torment over to BGEE. I know that IWD in BG2 used a .bat file with some weidu commands, but when I tried to do the same thing (with path and files replaced as appropriate), I kept getting errors. The documentation of Weidu says that the --make-tlk and --tlkout are both semi-deprecated and thus I'm not sure if the fact that it's not working is due to weidu no longer using the commands or some problems with my path setup or something else.
Jarno Mikkola Posted August 10, 2015 Posted August 10, 2015 How many dialog.tlk -lines do you need ? Maybe the best way to do this is open up the PST game files with Near Infinity, and export the whole dialog.tlk -file there as a .txt, and use that as the base of your .tra file.
Aquadrizzt Posted August 10, 2015 Author Posted August 10, 2015 Okay so I've .TRA'd the entire planescape dialog.tlk. How would I actually get the stringrefs for the item, based on the existing string refs? For example, scalpel.itm has strrefs: NAME1 = 65, NAME2 = 66, UNID._DESC = 67, ID._DESC = 68. I can get those from the original file. But how do I tell weidu that I want it to SAY NAME1 @67 using patches? Basic structure is COPY ~blah/PSTXXX.ITM~ ~blah/temp~ READ_LONG 0x0008 ~name_unid~ ... INNER_ACTION BEGIN COPY ~blah/newitm.itm~ ~override/%SOURCE_RES%.itm~ WRITE_LONG 0x0008 [] END Thus, name_unid will have the original string reference number (#), but I need it to convert from a regular strref to a .tra @#.
Jarno Mikkola Posted August 10, 2015 Posted August 10, 2015 but I need it to convert from a regular strref to a .tra @#.So after you made the .txt into the .tra, just put the @ before the said numbers. And yes, you can use your own numbering system, but it might be simplier to not.And generally I would advice not to read the 0x0008 bite, but do it simply with replace, aka: COPY ~blah/PSTXXX.ITM~ ~override/PSTXXX.ITM~ WRITE_LONG 0x0008 @67 //SAY NAME1 @67 //these both lines will do the exact same thing, so you can choose to use either And as the @67 is in the mods english .tra file... Which should be in this form: @67 = ~decription~ @68 = ~... etcthe whole thing sould be very simple.
Aquadrizzt Posted August 10, 2015 Author Posted August 10, 2015 Is there no way to do it, other than manually? I have the .TRA file with all of the PST strings working fine. My issue is that I can't seem to get WeiDu to use the .tra instead of the literal string. SAY NAME1 ~@~^~%name_unid%~ yields items with names of "@number", and I want it to actually evaluate the @number. Is there any way to do that?
Aquadrizzt Posted August 10, 2015 Author Posted August 10, 2015 Alternatively, is there a way that I could have the strings added, in order to the existing dialog.tlk, starting at some offset? Then I could just use the existing strref + the offset to get the new strings.
Jarno Mikkola Posted August 10, 2015 Posted August 10, 2015 Again. How many strings do you really are going to need ? If it's less than 1000, you probably should do it by hand.
Aquadrizzt Posted August 10, 2015 Author Posted August 10, 2015 Yeah but part of the fun of coding is spending more time getting the machine to do it than it would take you if you just did it. Using (AT "var") seemed to do what I needed it to do, in conjunction with the dialog.tra.
Bill Bisco Posted August 10, 2015 Posted August 10, 2015 Aqua, when you make your PST conversion, would you please make it available for regular BG2 as well? Thanks.
Jarno Mikkola Posted August 10, 2015 Posted August 10, 2015 Aqua, when you make your PST conversion...I really doubt that that's exactly what he wants to do...
lynx Posted August 10, 2015 Posted August 10, 2015 It's impossible anyway. The pst engine is a special little snowflake, only sometimes for the better.
Bill Bisco Posted August 11, 2015 Posted August 11, 2015 lynx, I don't think you need to convert the PST engine. You port the PST animations, areas, creatures, dialogue files. Edit the scripts to fit BG2 as best as you can. Edit and add in the spells and items manually. Create new portraits for the Nameless One and Companions. More work than the IWD to BG2 conversion sure, but hardly "impossible".
Jarno Mikkola Posted August 11, 2015 Posted August 11, 2015 lynx, I don't think you need to convert the PST engine. You know, lynx would be the person to actually know about this stuff as he works on the GemRB... The fact remains, the PST and BGEE's effect files have a large amount of asynchronicities, there's about 20 opcodes you need to replace, not to mention the fact that you have somehow make the quests that require the player death not end the game, but always give the player the proper replacement for the player character up on the said deaths.
Aquadrizzt Posted August 11, 2015 Author Posted August 11, 2015 lynx, I don't think you need to convert the PST engine. You know, lynx would be the person to actually know about this stuff as he works on the GemRB... The fact remains, the PST and BGEE's effect files have a large amount of asynchronicities, there's about 20 opcodes you need to replace, not to mention the fact that you have somehow make the quests that require the player death not end the game, but always give the player the proper replacement for the player character up on the said deaths. Using the "Player1 Can Die" flag (in the Enhanced Engine) means that the game doesn't end even when the main character dies or the party wipes. So couldn't you have a script running in BALDUR.BCS that checks if Player1 is Dead and respawns them in the Mortuary/Marta's Hut/etc.? And the Dungeon in the Drowned Warrens could have a similar script that resurrects you and sends you to the next part of the "puzzle".
Recommended Posts
Archived
This topic is now archived and is closed to further replies.