Jump to content

jastey

Gibberlings
  • Posts

    13,717
  • Joined

  • Last visited

Everything posted by jastey

  1. Sharteel in BG1 picks the "StrongestOfMale" of the group for her challenge. If this turns out to be Grey the Dog, the whole incident gets kind of rediculous. So @Acifer had a brilliant idea: what if I tagg Grey as something else than "male". I mean, we all know he's male. I just want the game to ignore it if it's picking a "man" from the group. So, what would I have to change in the cre-file: sex, or gender, or both? And what would I change it to? Extra1-10, Other, ... And what other unforeseen or unwanted consequences this could have?
  2. @grainne6 Thanks for the kind words! I found my mistake, not to call it bug. For your game, best you use the cheat console to set SetGlobal("C#AjantisPCTalk","GLOBAL",25). Then the friendship talks will go on where the romance broke off. This will be fixed in the next version. Thank you for your interest in the mod!
  3. I explained here why patching interjections of one mod NPC via I_C_T (+passback line) and another via I_C_T2 leads to a doubling in quest rewards/execution of transactions if the mod using I_C_T2 is installed later. It seems to work if the mod using I_C_T2 is installed first but this cannot be the solution, either, as it would break nontheless if there are two mods using I_C_T2 which moves the transactions into the calls of the interjections of both NPCs. What would be the solution for this? Right now, the only compatible solution I see is making it standard to only use I_C_T (+ passback line). I know passback lines are stupid and if there are 5 mod NPCs in the group reading 5 "and *now* lets really start the fight" passback lines is tedious, but getting the quest rewards doubled is also bad, plus doubling the actions could also break the game in case the transaction included a "IncrementGlobal" type of action. Also, I_C_T2 comes always with a risk anyhow since it is possible another mod already added more reply options/transactions with different actions, which breaks I_C_T2.
  4. I think this is a principle thing we need to solve in the community by defining a standard for interjections or a very good install order. EDIT: here is the general discussion. @Glam Vrock you use for all your interjections I_C_T2, probably to spare passback lines. Problem arises if your NPCPack is installed after another mod NPC that adds interjections using I_C_T with a passback line, as the transactions (reward, journal entry) is then doubled: the first NPC mod moves it until after the new dialogue state of the "passback line". But your I_C_T2 moves the transactions into the transaction where your NPC's reaction is called, leading to the quest NPC handing out the reward doubled. An example: After giving Tiber the body of his dead brother in Cloakwood, Littlun has an interjection. So has Breagar. If Breagar is installed before your NPC pack, the situation goes like this: -Breagar adds the interjection and a new dialogue state for Tiber with the reward. -Littlun adds the interjection and copies the rewards into the transaction to her interjection. -So in the game, the player first gets the reward before Littlun says her line, and then after Tiber reacts to Breagar's line a second time. In code, this looks like this: Tiber state 4, Littlun interjects with giving out the reward directly: IF ~ PartyHasItem("MISC90") ~ THEN BEGIN 4 // from: SAY #10283 /* ~Chelak! Oh, Chelak. How will I ever tell my mother? I was so stupid! I should have stopped this stupid idea. Such a waste... such a waste. You can keep the damn sword—it's been more of a curse than anything else. I thank you for bringing my brother's body. There was little you could have done.~ */ (... other transactions removed) IF ~Global("GV#LITTInterjectTIBER1","GLOBAL",0) InParty("GV#LITT") InMyArea("GV#LITT") !StateCheck("GV#LITT",CD_STATE_NOTVALID) ~ THEN DO ~SetGlobal("GV#LITTInterjectTIBER1","GLOBAL",1) AddexperienceParty(800) ApplySpellRES("OHMISC90",Myself) TakePartyItem("MISC90") EraseJournalEntry(27486) EscapeArea() ~ EXTERN ~GV#LITTJ~ 72 END From Littlun's dialogue, Breagar's interjection is called and leads to a last line from Tiber where the rewad is handed over again: IF ~~ THEN BEGIN 7 // from: SAY #75188 /* ~Ja, und danke nochmal!~ */ IF ~~ THEN DO ~AddexperienceParty(800) ApplySpellRES("OHMISC90",Myself) TakePartyItem("MISC90") EraseJournalEntry(27486) EscapeArea() ~ SOLVED_JOURNAL #27487 /* ~Spiders in the Cloakwood For recovering Chelak's corpse from Centeol's lair, Tiber gave us the sword known as Spider's Bane.~ */ EXIT END My first conclusion from this is: A. I_C_T and I_C_T2 should not be used together for different interjections into the same dialogue state unless B. the interjection using I_C_T2 is installed first. (then it works as intended, I checked). But: I_C_T2 really only works properly if the dialogue states it interjects to has only one transaction with the same actions and not several. Since you cannot know whether another mod did not add other transactions, it would be safer in general if you'd switch to using I_C_T (with passback lines) in your mods.
  5. @grainne6 The friendship dialogues starting from the start should not happen, I integrated a whole bunch of script blocks to prevent that - which obviously did not do what they were supposed to. Would you send me a safegame after ending the romance to my username at web.de, or would you please tell me the values of the following variables: GetGlobal("X#AjantisLoveTalk","GLOBAL") GetGlobal("X#AjantisRomanceActive","GLOBAL") Rasaad: thanks, I thought I restricted Ajantis' reaction until after Rasaad's first LT but I see I made the trigger too widely. Will be fixed in the next version.
  6. If this is the complete DEBUG then it just stopps somewhere in the middle of an execution, which is weird. You said v1-RC11 worked, otherwise I'd ask whether it might be your OS or antivirus interfering. Did you try copying the BGII:EE folder somewhere not in C:Programs before modding it?
  7. jastey

    Calin NPC Mod

    Congratulations!! And sorry to hear it was hard. I hope you will be fine and find peace! I'm proud of you!
  8. Post any bugs or issues with Bg1NPC here. Please specify which game version you are playing and which version ov BG1NPC you have installed.
  9. BG1NPC updates to v24.4! Changes: Coran Romance: variable "Global("P#Briel_Stay","GLOBAL",1)" should be set correctly if book was brought to Briel although Jaheira interjects into dialogue. Typo corrections.
  10. @Bartimaeus Because currently, it's not unnecessary.. It will be, as soon as @skellytz rolls out the next BGT version (no rush). Thanks for the kind words!
  11. I'll put this here, now! The mod updates to v16.2! v16.2 comes with changes as listed below. Main change is that the component "Coran & the Wyvern" is now again enabled for BGT! Currently, the new version is only availbale from the official PPG GitHub Mirror. PPG Download page will be updated when I send Kulyok all updated mod packages. Changes: - Re-eabled Coran and The Wyvern component for BGT - Svlast will be at his place at all times of day. - Moved NimFurlwing and her dogs further south to make the encounter compatible with Aurora Shoes and Boots which spawns a great horde of monsters where bg1ub placed the Furlwing encounter originally. - Chapter 6 Dialogue Restorations: Watch on level 6 will now have same random dialogue as the watches on the other library levels (spawn watch9.cre instead of custom version of watch2).
  12. @Greenhorn You are right about no news feed and no info here. Not sure what happened there. Other than that I forgot to post it, obviously. EDIT. I think the newsfeed I skipped because the version is not on the official PPG download, yet. Actually, Kulyok doesn't even know about it yet, because I wanted to do all new versions in one go etcpp.
  13. @subtledoctor But it would be a spell that would be cast upon rest? I'm not on the weidu.log but I'm pretty sure I can't make correct spl files for my "7th" party member mode.
  14. Would be nice not to throw accusations around then. I encountered the "crash on rest" bug with injured dead NPCs years ago with BG1NPC on the original BGII engine. No, it's not BG1NPC causing this, either. I shouldn't post without looking up details first. It was dead NPCs, and the reason was the order of triggers in the D.script for the dead NPC. Appearently, AreaType() may automatically fail for a dead character, so the check should start with !StateCheck(Myself,CD_STATE_NOTVALID).
  15. Unfortunately I do not know what could cause this. I would assume, though, that if it would be the Worldmap mod or EET alone that the problem would be in more players' installs. I fear it's some mod combination.
  16. Hm, you could do something like this. It's just a bit messier, I think. And it doesn't have a "fail safe" option, so you'd need to work with GT/LT to cover all instances. CHAIN IF ~GlobalGT("#L_TalkedToDukes","GLOBAL",1) Global("#L_ImTrainRsp","MYAREA",1)~ THEN IMOEN2 IMOEN_LIIA_1 @2103 /* ~You will come visit, <CHARNAME>! Promise!~ */ = @2104 /* ~Oh! Here's my equipment. I won't need it while studying magic.~ */ DO ~ActionOverride("IMOEN2",GivePartyAllEquipment())~ = @2121 /* ~I can hardly wait to get started! See ya!~ */ END + ~[Condition0]~ + @2105 /* ~Wait Imoen! You've earned your share of the gold. Take this. But spend it wisely, kid!~ */ DO ~[Imoen takes Amount0]+ IMOEN_LIIA_5 + ~[Condition1]~ + @2105 /* ~Wait Imoen! You've earned your share of the gold. Take this. But spend it wisely, kid!~ */ DO ~[Imoen takes Amount1]+ IMOEN_LIIA_5 + ~[Condition2]~ + @2105 /* ~Wait Imoen! You've earned your share of the gold. Take this. But spend it wisely, kid!~ */ DO ~[Imoen takes Amount2]+ IMOEN_LIIA_5 + ~[Condition3]~ + @2105 /* ~Wait Imoen! You've earned your share of the gold. Take this. But spend it wisely, kid!~ */ DO ~[Imoen takes Amount3]+ IMOEN_LIIA_5 + ~[Condition4]~ + @2105 /* ~Wait Imoen! You've earned your share of the gold. Take this. But spend it wisely, kid!~ */ DO ~[Imoen takes Amount4]+ IMOEN_LIIA_5 CHAIN IF ~~ THEN IMOEN2 IMOEN_LIIA_5 @2106 /* ~I'm NOT a kid! Oooo, that's a lot of gold. I'm a rich kid!~ */ = @2107 /* ~Goodbye, <CHARNAME>. Thanks for everything.~ */ == LIIA @2122 /* ~You'll be staying on the 3rd floor, Imoen. <CHARNAME> can visit you there whenever she wants.~ */ DO ~SetGlobal("#L_TalkedToDukes","GLOBAL",3) SetGlobal("#L_ImTrainRsp","MYAREA",6) SetGlobal("#L_ImoenInPalace","GLOBAL",1) ActionOverride("IMOEN2",LeaveParty()) ActionOverride("IMOEN2",SetGlobal("KickedOut","LOCALS",2)) ActionOverride("IMOEN2",EscapeArea())~ END ++ @2108 /* ~Good luck, Imoen. I'll come visit!~ */ EXIT ++ @2109 /* ~Good bye, Imoen. Good luck.~ */ EXIT ++ @2126 /* ~See ya, kid. Try not to burn down the place.~ */ EXIT
  17. In this case it's not as thrilling as the line with the DO ~GivePartyAllEquipment()~ doesn't have a different condition so you also could just put it at the end of teh whole dialogue, as well. The question is whether the IF statements where they are now do what you want them to.
  18. The END needs to be before the reply options if it's a CHAIN.
  19. Did you try something like this? (Sorry for rearranging the two first dialogue states, too. It's just an example.) CHAIN IF ~GlobalGT("#L_TalkedToDukes","GLOBAL",1) Global("#L_ImTrainRsp","MYAREA",1)~ THEN IMOEN2 IMOEN_LIIA_1 @2103 /* ~You will come visit, <CHARNAME>! Promise!~ */ = @2104 /* ~Oh! Here's my equipment. I won't need it while studying magic.~ */ DO ~ActionOverride("IMOEN2",GivePartyAllEquipment())~ = @2121 /* ~I can hardly wait to get started! See ya!~ */ END ++ @2105 /* ~Wait Imoen! You've earned your share of the gold. Take this. But spend it wisely, kid!~ */ + IMOEN_LIIA_5 APPEND IMOEN2 IF ~~ THEN IMOEN_LIIA_5 SAY @2106 /* ~I'm NOT a kid! Oooo, that's a lot of gold. I'm a rich kid!~ */ IF ~~ THEN DO ~[Imoen gets Amount0]~ + IMOEN_LIIA_5_a IF ~[Condition1]~ THEN DO ~[Imoen gets Amount1]~ + IMOEN_LIIA_5_a IF ~[Condition2]~ THEN DO ~[Imoen gets Amount2]~ + IMOEN_LIIA_5_a IF ~[Condition3]~ THEN DO ~[Imoen gets Amount3]~ + IMOEN_LIIA_5_a END END CHAIN IF ~~ THEN IMOEN2 IMOEN_LIIA_5_a @2107 /* ~Goodbye, <CHARNAME>. Thanks for everything.~ */ == LIIA @2122 /* ~You'll be staying on the 3rd floor, Imoen. <CHARNAME> can visit you there whenever she wants.~ */ DO ~SetGlobal("#L_TalkedToDukes","GLOBAL",3) SetGlobal("#L_ImTrainRsp","MYAREA",6) SetGlobal("#L_ImoenInPalace","GLOBAL",1) ActionOverride("IMOEN2",LeaveParty()) ActionOverride("IMOEN2",SetGlobal("KickedOut","LOCALS",2)) ActionOverride("IMOEN2",EscapeArea())~ END ++ @2108 /* ~Good luck, Imoen. I'll come visit!~ */ EXIT ++ @2109 /* ~Good bye, Imoen. Good luck.~ */ EXIT ++ @2126 /* ~See ya, kid. Try not to burn down the place.~ */ EXIT
  20. I am sorry, but I do not get what the actual problem is. Does it not work if not in a cutscene or is it only the "party lost x gold" that shouldn't show during the dialogue? For the latter, you could try moving the loss of gold to the very end of the whole dialogue, then it should show after the dialogue is done.
  21. @Skitia I'm pretty sure Roxanne has an own one where she links to her own mod versions. If you want your mods on the original list, post in this thread or make a pull request in the GitHub repo.
×
×
  • Create New...