Skip to content

The BG NPC project

1141517192036

Comments

  • AstroBryGuyAstroBryGuy Member Posts: 3,437
    @cmorgan - Thanks! At this point, I'm still better at reading code than writing it.

    Firebead's book quest will also need a similar modification for x#ict3.d (line 1362)
    I_C_T3 ~%tutu_var%FIREBE~ %firebeadstate2% X#FIREBE2
    == ~%GARRICK_JOINED%~ IF ~InParty("garrick") InMyArea("garrick") !StateCheck("garrick",CD_STATE_NOTVALID)~ THEN @476
    == ~%tutu_var%FIREBE~ IF ~InParty("garrick") InMyArea("garrick") !StateCheck("garrick",CD_STATE_NOTVALID)~ THEN @479
    == ~%JAHEIRA_JOINED%~ IF ~InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID)~ THEN @477
    == ~%tutu_var%FIREBE~ IF ~InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID)~ THEN @945
    == ~%VICONIA_JOINED%~ IF ~InParty("viconia") InMyArea("viconia") !StateCheck("viconia",CD_STATE_NOTVALID)~ THEN @478
    == ~%tutu_var%FIREBE~ IF ~InParty("viconia") InMyArea("viconia") !StateCheck("viconia",CD_STATE_NOTVALID)~ THEN @941
    in K'aeloree's library of BGEE conversion variables, add OUTER_SET firebeardstate2 = 1
    in the G3_cmp_vars libraries for both Tutu and BGT add OUTER_SET firebeardstate2 = 2

  • AstroBryGuyAstroBryGuy Member Posts: 3,437
    edited December 2013
    Following up on the missing MISC3O.itm. I reviewed the BG1NPC variable index at http://www.gibberlings3.net/readmes/bg1npc_docs/bg1npcvarindex.htm and looked for items that appeared to be pulled from the BG2 base of a Tutu install (i.e., items not starting with "_" or p# or x#). I then looked for those items in vanilla BGEE. The following items that BG1NPC assumes are present are not available in BGEE:

    BRAC25 - Wondrous Gloves
    DAGG11 - Boomerang Dagger +2
    MISC3M - Harp of Discord
    MISC3N - Azlaer's Harp
    MISC3O - Methild's Harp
    SCRL8I - Scroll of Cacofiend
    SCRL9H - Scroll of Maze

    I can write up a routine to add these items for BGEE. The easiest way would be to copying the .itm files (and other needed files) from BG2EE and item descriptions from the BG2EE dialog.tlk file. However, I don't want to do something that the BG1NPC maintainers think is crossing over an ethical line, i.e., if the maintainers think that copying the item descriptions would be crossing a line, I can try to write some replacement text.

    UPDATE: While the .ITM files are missing from BGEE, the .BAM files are there, as are the .SPL files for the scrolls. The spell text is also in the DIALOG.TLK for BGEE. The only text that needs to be added is the item names and descriptions for the Wondrous Gloves, Boomerang Dagger, and the harps. I'm putting together a .tra file with the missing item descriptions. I can create a list of the string references in BG2EE to make putting together .tra files for other languages easier.
    Post edited by AstroBryGuy on
  • AstroBryGuyAstroBryGuy Member Posts: 3,437
    @cmorgan - A while ago you had requested a diff on the BGEE vs BGTuTu dialogs. Didn't know if it was still needed, but I put together a script to do the diffs on the decompiled dialogs that @vlader posted.

    The logic is for each file in the BGEE dialogs:
    First look for a Tutu dialog (i.e., with an "_" prefix). If that exists, do the diff between those files.
    If it doesn't exist, look for an exact match (i.e., files added by BG1NPC). If that exists, do the diff between those files.
    If there's no match, skip the file (e.g., NEERAJ.DLG).
  • cmorgancmorgan Member Posts: 707
    This will help alot - I grabbed the ABELA dialog and we can grab an "equivalent" swap for items in BG:EE -

    so we know from the diff file things seem to be the same, and

    - IF ~~ THEN DO ~GiveItem("_MISC51",LastTalkedToBy)
    is swapped with
    +GiveItem("CLCK07",LastTalkedToBy)

    so on BGT it's MISC51, on Tutu it's _MISC51, and in BG:EE they are using the CLCK07 reference - but we don't need to change this in our files, just noting for future stuff. The rest of the file looks like everything works fine. One down, a bunch to go...
  • ShinShin Member Posts: 2,345
    edited December 2013
    Up to chapter 5 now, still nothing (unfixably) game breaking happening. Sending NPCs to wait at inns seems to work well, though you need to talk to them once more after they leave the party, or they'll just remain where they are (not sure whether this was always the case).

    Dynaheir's romance keeps progressing properly, including the dialogue where you get wounded and she heals you. Kivan's dialogues about Deheriana and Tazok have fired properly too - not sure if they just needed the time or if they were somehow triggered when Tazok died in chapter 3 and Kivan stopped his timer-related comments about how we needed to go kill the bandits.

    Kivan's encounter with Imanel Silversword outside the BG gates also works well. Currently she stands there waiting to be talked to which is good, as Simmeon's party from Dorn's quest will be in almost exactly the same place and trigger a cutscene when you approach them with Dorn present. Hypothetically you could likely mess this up if you fight Simmeon and aggro Imanel with aoe effects though - it might be better to move her and her wolves a bit.
  • cmorgancmorgan Member Posts: 707
    That's good feedback - we should grab the related files and find an offset from the Dorn trigger that works.
  • bulan880bulan880 Member Posts: 4
    Will this be possible to run together with the Stratagem mod? These two mods combined seems to be what the Enhanced Edition was _supposed_ to be for it to be enhanced.
  • ShinShin Member Posts: 2,345
    edited December 2013
    Obviously can't say for sure until the NPC Project is up and running, but it seems likely. It was compatible with SCS in vanilla, and they affect different things inside the game. Also I'm using both in my test run, and it hasn't - so far - caused any problems.
  • bulan880bulan880 Member Posts: 4
    I just wondered since both mods have similiar addition. For example send NPCs to inns when talking to them. Will this not be in conflict with each other?
  • AstroBryGuyAstroBryGuy Member Posts: 3,437
    I believe that BG1NPC won't install the NPCs wait at inns component on BGEE. It directs you to install SCS instead.

    SKIPPING: [The BG1 NPC Project: NPCs can be sent to wait in an inn]
    Incompatible with BGT & BG:EE: please use the equivalent component in Sword Coast Strategems for BGT & BG:EE.
  • DavidWDavidW Member Posts: 823
    That's the advantage of modular installation: in both SCS and BG1NPC that part is separate. Install one version or the other (I think SCS will refuse to install its version if BG1NPC's is there already).
  • bulan880bulan880 Member Posts: 4
    Ah cool! So they work together and/or recognize eachother. By the way, is there any way I can support the development of this mod for BG:EE, testing or anything?
  • ShinShin Member Posts: 2,345
    At the moment the mod is still in such a state that you need a little bit of experience of editing and knowledge of how mods and the game work to be able to do much testing.
  • EmmiEmmi Member Posts: 77
    Makes me wish I'd know anything about modding ;) Can't bring myself to replay bg1 without the BG NPC project.
  • ArialiteArialite Member Posts: 3
    edited December 2013
    I'm so excited for the release of this mod. I wish I knew something about modding so I'd be able to help. I've attempted to mod once, but gave up due to the complexity of it :P.

    Still, I wish you all the best of luck in completing this mod, and thank you for all the hard work you've obviously been putting into making it compatible with BG:EE. I know we all appreciate it :)
  • MalicronMalicron Member Posts: 629
    Can someone either explain WeiUD to me, or point me towards a thread that will, so I can try the Beta? It sounds like it's working A O.K. with the "cannon party", which is what I play, so I'd very much like to try this.
  • ShinShin Member Posts: 2,345
    Well, there are instructions in this thread to explain how to work through the install process (assuming the current github version works), but even so you should expect issues to pop up as you play.
  • MalicronMalicron Member Posts: 629
    Right, I can't get the current github version to load, even using all the tips and tricks this thread has to offer. Any chance someone has an older version they could upload?
  • AstroBryGuyAstroBryGuy Member Posts: 3,437
    cmorgan said:

    This will help alot - I grabbed the ABELA dialog and we can grab an "equivalent" swap for items in BG:EE -

    so we know from the diff file things seem to be the same, and

    - IF ~~ THEN DO ~GiveItem("_MISC51",LastTalkedToBy)
    is swapped with
    +GiveItem("CLCK07",LastTalkedToBy)

    so on BGT it's MISC51, on Tutu it's _MISC51, and in BG:EE they are using the CLCK07 reference - but we don't need to change this in our files, just noting for future stuff. The rest of the file looks like everything works fine. One down, a bunch to go...

    I can start with _ZORL and work up. :-)
  • StoneSwordsStoneSwords Member Posts: 180
    Malicron said:

    Right, I can't get the current github version to load, even using all the tips and tricks this thread has to offer. Any chance someone has an older version they could upload?

    Honestly unless you really know what's going on when it comes to modding, and can help these guys, I'd leave this alone until the modders and company work everything out. It's definitly not even in a working state without a bunch of hoops to jump through, and even then it's guaranteed not to work like it should. I'm just as anxious as you are, trust me lol

  • RasekovRasekov Member Posts: 59
    edited December 2013
    Malicron said:

    Right, I can't get the current github version to load, even using all the tips and tricks this thread has to offer. Any chance someone has an older version they could upload?

    My guess is that the moment the modders feel that they need/are being asked to give support to a beta version of the mod they will simply close the discussion about it.

    If you waited this long and have been reading the last few pages you know that the finished mod is "near" and should just wait if you can't get everything working by yourself as it is right now.
  • ShinShin Member Posts: 2,345
    @Malicron Here's the version I use (non-modified). As has been stated though, it's at your own risk and you can't expect a whole lot of support for it if something were to get messed up.
  • MalicronMalicron Member Posts: 629
    Shin said:

    @Malicron Here's the version I use (non-modified). As has been stated though, it's at your own risk and you can't expect a whole lot of support for it if something were to get messed up.

    You're a saint. And I'm well aware I might be nuking my game, but I've played the hell out of Vanilla and would love to try this mod. Also, I'm an impatient bastard :P
  • cmorgancmorgan Member Posts: 707
    ...ok... I admit... I got a little excited. To some, it may appear over-excited. I am now firmly in control of myself and return to my normal posting behavior. Keep calm and carry on.
  • Zaarin_2003Zaarin_2003 Member Posts: 33
    Hi,

    I've been a bit confused by all the coding talk recently on this thread - can someone give a feeble minded gretchlin like myself a basic idea of how close the conversion of this mod is? That's not a 'hurry up' sort of comment... I'm just genuinely interested in this fine piece of work, and excited in anticipation of playing!

    Thanks!

    Matt
  • ShinShin Member Posts: 2,345
    There's still a bit of work to do. With christmas coming up I wouldn't expect a released, fully stable version for some time, certainly not this year.
  • AstroBryGuyAstroBryGuy Member Posts: 3,437
    @cmorgan - I've gone through the "_Y"s and "_Z"s.

    _YAGO - OK
    _YESLIC - OK
    _YESLIJ - Variable "X#JCleanYeslick" unused in BGEE version? No other significant changes.
    _YESLIP - Looks like a complete re-write from BG1 to BGEE. Fortunately, YESLIP.D in @valder's compilation is from ./DATA/DIALOG.BIF, so it looks like BG1NPC made no changes. However, I suppose references to YESLIP.DLG may be borked. I found SetDialog references in YESLIC.DLG and YESLIJ.DLG, but no EXTERN calls. I'm optimistic this won't be a problem.
    _ZARGAL - OK
    _ZEKE - OK
    _ZHALIM - OK
    _ZHURLO - OK
    _ZOMBIE - OK
    _ZORDRAL - OK
    _ZORL - OK

    I found note noteworthy item change (i.e., not just "_ITEMNAME" to "ITEMNAME"). It appears that Zhurlong was given a unique pair of boots for BGEE.

    Zhurlong's Boots: _BOOT02 -> BOOT02ZH
This discussion has been closed.