jastey Posted November 7, 2006 Share Posted November 7, 2006 Edited by Cmorgan, Nov 7, 2006 : This is a continuation of http://forums.gibberlings3.net/index.php?s...ost&p=70721 based on Tameron the Dragoon's experiences playing through the BG1 NPC Project. Summary: Reputation gains and losses cause Viconia (and other NPCs) to leave the party prematurely. Good reputation can be purchased at temples; bad can be found by killing innocents. Instead of breaking party alignemt or installing a "Happy Patch", we ae looking for a way a player can "manage" their reputation ingame and within the roleplaying aspects so that they can keep party members around! This would also solve some unanticipated behavior in Jaheira's Quest. Funny thing! I made a small cheat mod that introduces a character, who, if spoken to, would increase or decrease the Party's reputation. I needed it to test the reputation reactions, as there is no implemented cheat for changing the repuation (at least not that I know of). I never thought there could be a need for something like that for players, though! Imagine a Mr. X with enough connections: Pay him enough money and he will spread bad news about the party to lower the reputation, similar to reputation increase in temples. That would give a possibility to balance the "lots of rep increase for quest solving" BG structure and help keeping Jaheira & Co. in the party for neutral PCs (i.e. those who do *not* find pleasure in killing innocent people). Would there be interest in such a minimod for Tutu? The guy could be located in an inn of an easy accessible city, e.g. Beregost. Link to comment
Macready Posted November 7, 2006 Share Posted November 7, 2006 Hello - The guy could be located in an inn of an easy accessible city, e.g. Beregost. I humbly submit that Tutu players should not be encouraged to visit Beregost more often. Link to comment
jastey Posted November 7, 2006 Author Share Posted November 7, 2006 Oops, sorry. Although it might read as a subtle criticism, it was not meant like that at all. OK, any other really easy accessible city then. Link to comment
Kulyok Posted November 7, 2006 Share Posted November 7, 2006 I like it. To get it even more interesting, introducing two or three NPCs like that could work: one in Nashkel, one in Friendly Arm Inn, and one somewhere in Baldur's Gate. Maybe even as BG2 Tweaks component... I can just imagine CHARNAME asking dumbly: "Why would I pay someone to malign me?" and Viconia's prompt answer: "Why, jaluk, to spread word of your dark prowess, of course! Or do you wish to conceal your fearsome might from these rivven, hmm?" Link to comment
cmorgan Posted November 7, 2006 Share Posted November 7, 2006 I like this idea tremendously more than actively disabling the reputation-related LeaveParty() stuff; I know an arguement can be made that a player could escape all of this by applying the Happy Patch in Tweaks, and SCS or (Tweaks? Divine Remix?) "Change Jaheira to Neutral Good", but personally I am looking forward to the day when Virtue works on Tutu. I do know (think - unless someone teaches me how) that I can't actually fix this "feature" of BG1 NPC in general terms without basically forcing players to have the Happy Patch (by ripping off the code). For Jaheira, I could delay the inevitable by moving all rep gains/ losses to an independent "quest evaluation" block set in Jaheira's BCS, with all of that material evaluated and aplied as a final reward; this would mean that if you did everything the way Jaheira wants and you start with a 16 or higher rep, she would bail on you after the quest was evaluated instead of during the quest. That is only marinally better, and requires some tricky quest rebuilding (as Domi wrote good, dual-track code that covers most eventualities with very few variables, which means creating "marker" variables to track what rewards/penalties to assign... not a 1 weekend project, and probably not feasible before next summer) Link to comment
Minarvia Posted November 7, 2006 Share Posted November 7, 2006 I like it. To get it even more interesting, introducing two or three NPCs like that could work: one in Nashkel, one in Friendly Arm Inn, and one somewhere in Baldur's Gate. Maybe even as BG2 Tweaks component... I can just imagine CHARNAME asking dumbly: "Why would I pay someone to malign me?" and Viconia's prompt answer: "Why, jaluk, to spread word of your dark prowess, of course! Or do you wish to conceal your fearsome might from these rivven, hmm?" This sounds great to me! I HATE having to worry constantly about how to deal with my reputation. A few people like this is such a good idea, methinks. Link to comment
Tameon the Dragoon Posted November 7, 2006 Share Posted November 7, 2006 That does sound nice, and it would be much better than using the Happy Patch and/or Shadow Keeper. I hate using either of those; it cheapens the game. Link to comment
jastey Posted November 7, 2006 Author Share Posted November 7, 2006 Seems I found another distraction from my current mod activities. OK, what would you suggest should it cost to lower the rep by 1? How about: One in FAI, one in the "Belching Dragon" (Nashkel), one in "Blushing Mermaid" (BG). Link to comment
cmorgan Posted November 7, 2006 Share Posted November 7, 2006 Safest thing would be to make it equal to the temple donations (though I don't know that number), or perhaps the Sword Coast is such that bad news is easier to spread? A reduction of 50% from temple "raise a point" costs? Link to comment
Domi Posted November 7, 2006 Share Posted November 7, 2006 Excellent idea. All points are on the main road there, so the bad fame will spread nice and wide from there. They can become very cool characters, these 'reputation-sellers'. How about one of them is an obnoxious kind of guy/gal who would try to sell you his/her services as the bard to glorify you, and *if* you refuse, then s/he starts defaming you - for FREE! Then every time you come back you have to either pay him/her off for raising your rep, or try to force her/him to stop spreading lies for more reputation lowering. Or, and he can actually travel between two places if you inslut or threaten him. S/he'll be the best suited for BG itself, it has plenty of inns s/he can perform in! Link to comment
jastey Posted November 7, 2006 Author Share Posted November 7, 2006 Domi: My plans did not include added content that would develop differently than the PC expects it. (I like the idea of what you said, though, just don't feel responsible to implement it. ) Safest thing would be to make it equal to the temple donations (though I don't know that number), or perhaps the Sword Coast is such that bad news is easier to spread? A reduction of 50% from temple "raise a point" costs?That was exactly my train of thought, but give me numbers! Link to comment
Domi Posted November 7, 2006 Share Posted November 7, 2006 Okay, hold on! BG2 Manual, pg 238: Cost Reputation level 1500 1 1200 2 1000 3 1000 4 500 5 400 6 200 7 300 8 400 9 500 10 700 11 900 12 1200 13 1500 14 2000 15 2500 16 5000 17 -- 18 and higher Link to comment
cmorgan Posted November 7, 2006 Share Posted November 7, 2006 Well, now, let's see here. I have a thread with three awesome cool women who have extensive modding experience and are important BG1 NPC Project Team leaders/contributors, a willing person (me) to do grunty stuff like recode and help find playtesters/coordinate stuff/put stuff up on the development wikki, three very active Tutu playtesters/modders/helpers on the Tutu side and two on the BGT side who cross both Windows and Mac platforms(Yes, berelide, gorilym, Miloch, Chev, and hopefully Riviera, I'm talking about you ) a plot for a minimod that could have both of their ideas, the equivalent of a One-Day-NPC (3 .cres or just 1, moving between known areas using straightforward code, with either 1 D file with some extended CHAINs or if wanted up to 3 separate bards) Three existing in-game NPC Lake Poet Bards that only have a cameo appearance if you have a bard in the party who might *jump* at the chance to have another cameo appearance (I will talk to their agent), A simple, fun, non-intrusive, non-forced solution to a bloody intractable persistent annoyance that has dogged the project with false "bug" reports in Jaheira's quest did I say 3 beautiful, wonderful, experienced master modders from all corners of the world who can code in their sleep (and will have to, as some of them are moms!) and even more importantly write extremely compelling dialogue and storylines, as evidenced by the popularity of thier work? Hmmm.... I do believe these ingredients can be combined to create either a stand-alone minimod or an extension of the Lake Poets, which technically could be worked in under the category of "bugfix" rather than "new content". I will go sort through back posts on various forums and see if anyone has figured out what the triggers are/costs are for increasing reputation at temples. I am not sure we can trust printed materials, but I will start with Dudleyville and Dan Simpson' walkthrough; it also sounds like someone may have asked about this on Sorcerer's Net or such! EDIT: strike that; they are already at it! Let me know how I can help please Link to comment
cmorgan Posted November 7, 2006 Share Posted November 7, 2006 Just in case it is useful; currently in BG1 NPC .tp2 ACTION_IF FILE_EXISTS_IN_GAME ~FW0100.are~ THEN BEGIN /* creatures */ COPY_EXISTING ~_VOLO.CRE~ ~override/X#LAKEP1.CRE~ ~_VOLO.CRE~ ~override/X#LAKEP2.CRE~ ~_VOLO.CRE~ ~override/X#LAKEP3.CRE~ SAY NAME1 @292 SAY NAME2 @293 SAY INITIAL_MEETING @294 SAY UNHAPPY_BREAKING @295 SAY BATTLE_CRY1 @296 SAY BATTLE_CRY2 @296 SAY BATTLE_CRY3 @296 SAY BATTLE_CRY4 @296 SAY BATTLE_CRY5 @296 SAY DAMAGE @297 SAY DYING @298 SAY SELECT_COMMON1 @299 SAY SELECT_COMMON2 @300 SAY SELECT_COMMON3 @301 SAY SELECT_COMMON4 @302 SAY DIALOGUE_DEFAULT @299 WRITE_EVALUATED_ASCII 0x2CC ~%DEST_RES%~ #8 // dialog WRITE_EVALUATED_ASCII 0x280 ~%DEST_RES%~ #32 // death variable COPY_EXISTING ~X#LAKEP2.CRE~ ~override~ SAY NAME1 @303 SAY NAME2 @304 COPY_EXISTING ~X#LAKEP3.CRE~ ~override~ SAY NAME1 @305 SAY NAME2 @306 /* area script changes */ EXTEND_BOTTOM ~_AR2400.BCS~ ~BG1NPC/Phase2/BAF/X#LAKEP.BAF~ /* dialogue */ COMPILE ~BG1NPC/Phase2/DLG/X#LAKE.D~ END ELSE BEGIN /* BGT Versions */ /* creatures */ COPY_EXISTING ~VOLO.CRE~ ~override/X#LAKEP1.CRE~ ~VOLO.CRE~ ~override/X#LAKEP2.CRE~ ~VOLO.CRE~ ~override/X#LAKEP3.CRE~ SAY NAME1 @292 SAY NAME2 @293 SAY INITIAL_MEETING @294 SAY UNHAPPY_BREAKING @295 SAY BATTLE_CRY1 @296 SAY BATTLE_CRY2 @296 SAY BATTLE_CRY3 @296 SAY BATTLE_CRY4 @296 SAY BATTLE_CRY5 @296 SAY DAMAGE @297 SAY DYING @298 SAY SELECT_COMMON1 @299 SAY SELECT_COMMON2 @300 SAY SELECT_COMMON3 @301 SAY SELECT_COMMON4 @302 SAY DIALOGUE_DEFAULT @299 WRITE_EVALUATED_ASCII 0x2CC ~%DEST_RES%~ #8 // dialog WRITE_EVALUATED_ASCII 0x280 ~%DEST_RES%~ #32 // death variable COPY_EXISTING ~X#LAKEP2.CRE~ ~override~ SAY NAME1 @303 SAY NAME2 @304 COPY_EXISTING ~X#LAKEP3.CRE~ ~override~ SAY NAME1 @305 SAY NAME2 @306 ACTION_IF FILE_EXISTS ~data/BG1ARE.bif~ THEN BEGIN COPY_EXISTING ~X#LAKEP1.CRE~ ~override~ COPY_EXISTING ~X#LAKEP2.CRE~ ~override~ COPY_EXISTING ~X#LAKEP3.CRE~ ~override~ PATCH_IF (SOURCE_SIZE > 0x2d3) BEGIN LAUNCH_PATCH_MACRO ~tutu_items_to_bgt~ END END So existing .cres have X#LAKEP1 X#LAKEP2 X#LAKEP3 as both DV and Dialogue file; curently none have an independent .BCS Current dialogue file content for X#LAKE.D BEGIN X#LAKEP1 APPEND X#LAKEP1 IF ~NumTimesTalkedTo(0)~ THEN BEGIN Sam0 SAY @0 = @1 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(1)~ THEN BEGIN Sam1 SAY @2 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(2)~ THEN BEGIN Sam2 SAY @3 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(3)~ THEN BEGIN Sam3 SAY @4 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(4)~ THEN BEGIN Sam4 SAY @5 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(5)~ THEN BEGIN Sam5 SAY @6 IF ~~ THEN EXIT END IF ~NumTimesTalkedToGT(5)~ THEN BEGIN Sam6 SAY @7 IF ~~ THEN DO ~SetGlobal("X#TalkedLP1","GLOBAL",1)~ EXIT END END BEGIN X#LAKEP2 APPEND X#LAKEP2 IF ~NumTimesTalkedTo(0)~ THEN BEGIN Rob0 SAY @8 = @9 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(1)~ THEN BEGIN Rob1 SAY @10 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(2)~ THEN BEGIN Rob2 SAY @11 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(3)~ THEN BEGIN Rob3 SAY @12 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(4)~ THEN BEGIN Rob4 SAY @13 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(5)~ THEN BEGIN Rob5 SAY @14 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(6)~ THEN BEGIN Rob6 SAY @15 IF ~~ THEN DO ~SetGlobal("X#TalkedLP2","GLOBAL",1)~ EXIT END IF ~NumTimesTalkedToGT(6)~ THEN BEGIN Rob7 SAY @15 IF ~~ THEN EXIT END END BEGIN X#LAKEP3 APPEND X#LAKEP3 IF ~NumTimesTalkedTo(0)~ THEN BEGIN Willy0 SAY @16 = @17 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(1)~ THEN BEGIN Willy1 SAY @18 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(2)~ THEN BEGIN Willy2 SAY @19 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(3)~ THEN BEGIN Willy3 SAY @20 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(4)~ THEN BEGIN Willy4 SAY @21 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(5)~ THEN BEGIN Willy5 SAY @22 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(6)~ THEN BEGIN Willy6 SAY @23 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(7)~ THEN BEGIN Willy7 SAY @24 IF ~~ THEN EXIT END IF ~NumTimesTalkedTo(8)~ THEN BEGIN Willy8 SAY @25 IF ~~ THEN EXIT END IF ~NumTimesTalkedToGT(8) Global("X#TalkedLP1","GLOBAL",1) Global("X#TalkedLP2","GLOBAL",1) Global("X#TalkedLP3","GLOBAL",0)~ THEN BEGIN Willy9 SAY @26 IF ~RandomNum(3,1)~ THEN DO ~GiveItemCreate("MISC3O",Player1,1,0,0) SetGlobal("X#TalkedLP3","GLOBAL",1)~ EXIT IF ~RandomNum(3,2)~ THEN DO ~GiveItemCreate("MISC3N",Player1,1,0,0) SetGlobal("X#TalkedLP3","GLOBAL",1)~ EXIT IF ~RandomNum(3,3)~ THEN DO ~GiveItemCreate("MISC3M",Player1,1,0,0) SetGlobal("X#TalkedLP3","GLOBAL",1)~ EXIT END IF ~NumTimesTalkedToGT(8) OR(2) Global("X#TalkedLP1","GLOBAL",0) Global("X#TalkedLP2","GLOBAL",0) ~ THEN BEGIN Willy10 SAY @27 IF ~~ THEN EXIT END IF ~Global("X#TalkedLP3","GLOBAL",1)~ THEN BEGIN Willy11 SAY @28 IF ~~ THEN EXIT END END I can provide dialogue entries if they help, but will avoid them until you folks tell me to (spoilerish ) Link to comment
jastey Posted November 7, 2006 Author Share Posted November 7, 2006 Thank you cmorgan, for the compliments. I didn't understand point 5, about the three existing in-game NPC Lake Poet Bards. I see you posted code while I was typing this post. Are these three added bards from BG1NPC that you would suggest to use for this? I give this to discussion: What I had in mind was a simple possibility to reduce the reputation by "buying" the reputation loss. The NPC(s) I imagined to be more of a thief appearance (assuming some dark connections), but bards sounds great, too, and makes a lot of sense. (Anti-bards, hehe ). The dialogue would go something like: NPC: Ah, I only heard good news about you. PC: Yes, and that surely annoyes me! NPC: I could "help" you there, for an appropriate contribution towards expenses, of course. He (they) would offer reputation reductions by 1 or 2 points. It will be more expensive for high reputation ("What do you expect? This needs careful realisation. They *like* you!"), and there will be a warning if the rep would go down below to the value where the Amnish guards start attacking (I think it was 3). If anyone has comments and / or would like to contribute to make this minimod less of a tool but more of a quest encounter, please step foreward. Sorry for hijacking the thread btw., Tameon. Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.