Scripting npc interactivity over long periods of time

Endocore

Look, Ma! Two Heads!
Modder
I've been trying to get the Fallout 2 scripting language down lately as I've been doing some minor modding of my RP 1.2 installation, and I'm hoping someone can give me a few pointers. I mostly like to add small, subtle things to the game that enhance the roleplaying aspect (which is what I enjoy most about Fallout/Fallout 2), and right now I've been working on making the player-character's relationship with Miria from Modoc more complex if the player chooses/is forced to marry her.

I'd say my scripting skills are at the beginner level, although I was able to completely tear apart the script from the latest "Miria Mod" (which, with all due respect to the various modders who have worked on it over the years, is in really bad shape at this point) and rebuild it line by line so that it now looks and works like all the other recruitable npc scripts (no "special" party change/armor change nodes needed, etc, in addition to several bugs fixed). Now that my "base" script for Miria is in good shape, I'm ready to start finishing the remaining additional parts I want but am not sure how to proceed. I'm certainly not looking for anyone to write any code for me, as figuring out how to do that on my own is as important (at this point) to me as actually finishing the job and getting it in the game. Rather I'm just looking for some general guidance on the best way to go about getting the end result I want.

The basic idea of what I'm doing with Miria is to give some depth to her character, and make her less a caricature and more like a "real" (simulated) wife. She'll have some basic desires, and her opinion of whether or not she has a good marriage with the player-character will vary depending on how these desires are addressed by the player. There are also variations on the relationship for good vs evil player-characters (an "evil" pc's dialogue with her is on the abusive side while a "good" pc offers her warm words, an evil pc can slap her around with a chance each time she'll get fed up and either leave or hit back, while if a good pc hits her she's so upset by such unexpected behavior she files for divorce the first time, etc).

Most of that is all done (and all the dialogue for the everything is written and formatted), but I'm not sure about how to do the remaining part where I try to simulate her wifely needs and expectations. Basically there are three subsets or kinds of dialogues the player can have with her:

1) Miria expects certain things from her spouse. Keeping in mind that "time" is very distorted/accelerated during gameplay, I've come up with the following for her (all accomplished through dialogue nodes):

--She wants the player-character to have a talk about how she's doing/how she generally feels at least once for every two months of in-game time that passes;

--She expects the player-character to have sex with her at least once for every two months of in-game time that passes (a female pc has an extra option to have a girly gab-fest with her, if desired, as a substitute for sex);

--She wants the player-character to give her a compliment her on her beauty at least once for every two months of in-game time that passes;

--She expects the player-character to express (non-sexual) affectionate feelings toward her at least once for every two months of in-game time that passes.

2) Miria has a general level of satisfaction or discontent with her marriage to the player-character that she's more than happy to discuss during conversations. Her opinion-level is mostly determined by whether all the conditions in (1) are met on a regular basis, but also modified based on whether the player-character is addicted to drugs, is a slaver, is a made-man for a New Reno gang, or has a bad general rep (-500 or worse). Although she's generally a supportive wife who appreciates her spouse doing whatever is necessary to support her, she'll nag about these last four things as they all worry her.

3) Based on the status of (2), Miria has changing opinions and dreams about the future of her marriage and her future life in general that she's willing to discuss with the player. The way that I play the game (which, again, is heavy on the roleplaying emphasis), her wifely input about what she'd like her life to be like after the player-character "saves the world" will help shape some of my decisions about what to do in the game. She has several different visions of her most desirable future, which will vary from game to game.

The main question I have is, what's the best general way to approach implementing (1), (2), and (3)? I'm thinking I should make four new global variables to store the most recent game time that each requirement in (1) is performed, and then use these stored times as the basis for checks to update (2). The current status of (2) would then be stored in a fifth global variable which can be checked to determine where she's at with (3).

I realise these sort of "sim" type additions aren't popular with everyone, but this mod is for my own game and I certainly wouldn't ask anyone else to endure it; I just need some help on the technical side. As I said earlier, I'm an amateur when it comes to scripting. I'm not sure if the methods I have in mind will work, or if there are far better ways to implement the whole thing or any part of it. For example, can/should local rather than global variables be used for anything here? Any general suggestions/tips/alternatives about the whole general approach I outlined above would be very helpful.

I don't want to get off course right out of the gate, but another issue I'm looking at is the way a divorce by Father Tully in New Reno is handled by game. After a divorce there, the script of the pc's spouse is actually destroyed and replaced by a very simple "ex-spouse" script, presumably due to a difficulty in making significant instant changes to an active character (i.e. Miria) based on what happens in a second character's (ie Father Tully's) script. I have other things in mind here and would like the Miria script to remain intact and active after a New Reno divorce. What sorts of things would need to be considered, technically, to address that situation?

Thanks in advance for any advice anyone has to offer on these issues.
 
Endocore said:
1) Miria expects certain things from her spouse. Keeping in mind that "time" is very distorted/accelerated during gameplay, I've come up with the following for her (all accomplished through dialogue nodes):

--She wants the player-character to have a talk about how she's doing/how she generally feels at least once for every two months of in-game time that passes;

--She expects the player-character to have sex with her at least once for every two months of in-game time that passes (a female pc has an extra option to have a girly gab-fest with her, if desired, as a substitute for sex);

--She wants the player-character to give her a compliment her on her beauty at least once for every two months of in-game time that passes;

--She expects the player-character to express (non-sexual) affectionate feelings toward her at least once for every two months of in-game time that passes.

You should make 4 variables, you mentioned global, but they can well be local_vars, unless you're planning to use these values anywhere outside Miria's script.

Whenever Dude says a compliment, or has sex with Miria, or does other stuff as listed in (1), you put in a line like the following:

Code:
set_global_var(GVAR_MARITAL_SEX, game_time + 2*ONE_GAME_MONTH);

This will reset the timer. During other dialogue, as in (2), you just make this check to see if dude has been fulfilling his/her marital obligations.

Code:
if (global_var(GVAR_MARITAL_SEX) >= game_time) then begin
   //good effect
end
else begin
   //time is out, bad effect
end

2) Miria has a general level of satisfaction or discontent with her marriage to the player-character that she's more than happy to discuss during conversations. Her opinion-level is mostly determined by whether all the conditions in (1) are met on a regular basis, but also modified based on whether the player-character is addicted to drugs, is a slaver, is a made-man for a New Reno gang, or has a bad general rep (-500 or worse). Although she's generally a supportive wife who appreciates her spouse doing whatever is necessary to support her, she'll nag about these last four things as they all worry her.

All of these conditions are checked with global_var values.
Slaver:
GVAR_REPUTATION_SLAVER,
GVAR_REPUTATION_SLAVE_OWNER

Made Man:
GVAR_MADE_MAN_SALVATORE
GVAR_MADE_MAN_BISHOP
GVAR_MADE_MAN_MORDINO
GVAR_MADE_MAN_WRIGHT

General Rep:
GVAR_PLAYER_REPUTATION

Addictions:
GVAR_NUKA_COLA_ADDICT
GVAR_BUFF_OUT_ADDICT
GVAR_MENTATS_ADDICT
GVAR_PSYCHO_ADDICT
GVAR_RADAWAY_ADDICT
GVAR_ALCOHOL_ADDICT
GVAR_ADDICT_TRAGIC
GVAR_ADDICT_JET

So whenever you want to check Miria's reaction, you should make conditionals for the values of these global_vars.

The main question I have is, what's the best general way to approach implementing (1), (2), and (3)? I'm thinking I should make four new global variables to store the most recent game time that each requirement in (1) is performed, and then use these stored times as the basis for checks to update (2). The current status of (2) would then be stored in a fifth global variable which can be checked to determine where she's at with (3).

I realise these sort of "sim" type additions aren't popular with everyone, but this mod is for my own game and I certainly wouldn't ask anyone else to endure it; I just need some help on the technical side. As I said earlier, I'm an amateur when it comes to scripting. I'm not sure if the methods I have in mind will work, or if there are far better ways to implement the whole thing or any part of it. For example, can/should local rather than global variables be used for anything here? Any general suggestions/tips/alternatives about the whole general approach I outlined above would be very helpful.

Your general approach seems solid. As I said earlier, you can use local variables if you are not planning to use their values outside of Miria's script. Perhaps it will be safer to make them global variables, you may need some references to them in obj_dude script.

I would make a macro which would determine the current value of her level of satisfaction. In this macro, you would check for regularity of (1) and set conditions for (2). Depending on dude's status, you would modify the global_var responsible for her overall satisfaction. Like this:

Code:
if (global_var(GVAR_MARITAL_SEX) >= game_time) then begin
   inc_global_var_amt(GVAR_MIRIAS_OVERALL_SATISFACTION,5);
end
else begin
   dec_global_var_amt(GVAR_MIRIAS_OVERALL_SATISFACTION,5);
end

if ((global_var(GVAR_MADE_MAN_SALVATORE) >= 1) or (global_var(GVAR_MADE_MAN_BISHOP) >= 1) or (global_var(GVAR_MADE_MAN_MORDINO) >= 1) or (global_var(GVAR_MADE_MAN_WRIGHT) >= 1)) then begin
   dec_global_var_amt(GVAR_MIRIAS_OVERALL_SATISFACTION,10);
end

etc.

You activate the macro whenever a dialogue is initiated, or maybe even on map enter/update, if you want her to float messages outside of dialogue.

If you're not familiar with writing macros, take a look at the file COMMAND.H (it's marcos only), or on some scripts in New Reno - many characters have extensive macros there.

Note that the above macro would be to determine the influence of (1) and (2). You could make another macro to determine (3), in which you would include not only the overall satisfaction of Miria, but also put conditions for big events, like dude destroying the Enclave. This macro would be built in a similar manner to the other one.

I don't want to get off course right out of the gate, but another issue I'm looking at is the way a divorce by Father Tully in New Reno is handled by game. After a divorce there, the script of the pc's spouse is actually destroyed and replaced by a very simple "ex-spouse" script, presumably due to a difficulty in making significant instant changes to an active character (i.e. Miria) based on what happens in a second character's (ie Father Tully's) script. I have other things in mind here and would like the Miria script to remain intact and active after a New Reno divorce. What sorts of things would need to be considered, technically, to address that situation?

The script bit responsible for the divorce is here:

Code:
set_dude_was_married;                                                            \
check_set_obj_visiblility(old_spouse, true);                                     \
party_remove(old_spouse);                                                        \
temp_spouse := create_object_sid(obj_pid(old_spouse), 0, 0, SCRIPT_NCEXSPOU);    \
move_to(temp_spouse, tile_num(old_spouse), elevation(old_spouse));               \
nr_add_timer_event_rand(temp_spouse, 5, 10, float_param);                        \
destroy_object(old_spouse);

You rightly observed that the original critter is destroyed and replaced with the same critter, but with another script. To actually preserve the original script, you would have to add special conditions to several procedures in the script, something along the lines of:

Code:
procedure talk_p_proc begin
   if (dude_was_married == false) then begin
      //normal dialogue
   end
   else begin
      //divorced dialogue
   end
end

Hope this helps. Good luck with your scripting.
 
I am very interested in such kind of additions, because it would make the game more divers.

I think i am not alone with this opinion and it should be optional with the upcoming new RP :clap:
 
This sound like a fascinating little mod, anything that adds depth to the game is a bonus. But if you really want to expand the role playing element in Fallout, then Davin will also require similar attention and depth. Not everyone likes the idea of a “boy friend” in Fallout 2, especially when your player character is male, but I think it’s important to have the option to play out the roles as designed by Black Isle, that being gay female or gay male – or straight female/male…
 
Originally posted 23 March 2010:

Thanks for the comments, everyone.

@Ardent
Your advice was very helpful to me. That's exactly the sort of guidance I needed, especially

Code:
set_global_var(GVAR_MARITAL_SEX, game_time + 2*ONE_GAME_MONTH);

I was thinking of something slightly different and more complicated initially, but the way you put it is much better and will be easier to test/debug.

@smilodom
If the code isn't too long, I'll just post it here when I'm finished so others can insert it into their own scripts if they like. Some of the other stuff I've added for Miria is probably too vulgar to post (I gave her a set of in-combat taunts that are NC-17 for sure), but the dialogue from the sub-section of the mod discussed here is fairly clean and wholesome (for Fallout).

@.Pixote
That's a good idea. Sadly my hobby time is limited, though. I have two other small mods lined up and mostly planned out (at least in a tentative way) right now before I could move on to fixing Davin. One is a subplot-line where the player-character can play matchmaker and get Sulik to ask Maida Buckner to marry him (if she says yes, they get their own teepee at the Primitive Tribe). The other one is a bit more complicated (for me, at least) and involves Lou, Fannie Mae, Madame Modjeska, and Sheriff Marion in a mildly complex plotline about the girls at the Redding cathouse being paid in Jet (Modjeska was upset about this, which is why she stopped working for Lou). A more complex Davin storyline would be the sort of thing I'd try, though, as it could also tie in together with Miria. For example before this Miria thing, I added in some dialogue where the player can have a pretty decent-length conversation with Cassidy about his past, where he's from, whether he ever had a family (an ex-wife and two sons) and why he left them, etc. That kind of stuff isn't for everybody, but it's the sort of thing I enjoy.

Thanks again for the assistance.




Updated with new question 26 March:


I've got a little line for the player when Miria rejoins the party after an absence that I want to vary by the current time of day. Does this a) look like it will work, and b) look like the best way to accomplish what I want? Mainly, I'm not sure if my use of the (local) variable "chowtime" is done in a way that will work and is formatted correctly.

Basically I want the player-character to have an option to say "Let's go, Miria, so you can get (breakfast/lunch/dinner) started." based on the time of day.

Here are the relevant lines from the .msg for this example (the ones in the #8000 range are adapted from the existing Miria mod by Grandson of Sam et al, while the ones in the #9000 range are new):


Code:
{8005}{}{Oh I missed you so much, sweetie! While you were gone I... [Miria enthusiastically fills you in on the tiniest details of how she spent every... single... minute... during your absence. Twice.}
{8006}{}{[She sniffs your clothes and checks your collar]. You're damn lucky I can't smell some other woman's perfume on you. If you're done screwing around, can we leave?}
{8007}{}{[She gives you a tight hug]. Hey babe, I missed you.}
{8008}{}{You look beat, honey. Let's go somewhere and I'll give you a nice massage.}
{8009}{}{Oh baby, I was so worried about you, out there facing God knows what dangers... Please, I can't bear to be apart from you any more!}
{8010}{}{Baby... I don't know, you scare me sometimes... Okay, okay! Please don't start yelling at me again!}
{8011}{}{[For the briefest of moments there's a look of fear in her eyes] Yes dear, of course.}

{9150}{}{I really missed you too, Miria.}
{9160}{}{I'm hungry. Let's get moving so you can get }
{9161}{}{breakfast started.}
{9162}{}{supper started.}
{9163}{}{dinner started.}
{9164}{}{my midnight snack ready.}
{9170}{}{Don't sass me, woman. Let's go.}
{9180}{}{[Grab her arm] Get your butt over here, woman. Let's go.}

Here's the relevant section from the script (it's in Noid's/Ruby format because that's what I use). Node999 ends the conversation, and Miria's script and msg file are #106. The dialogue also varies by whether or not the player is a good (presumably nice) or evil (presumably mean) person. Global variable 0 is the player's general reputation, and global variable 1 is the body count for the "child killer" rep.

Code:
procedure Node1100
begin
	variable Chowtime := 0;
	if [blah blah, other stuff]
	end
	else
	begin
		[blah blah, set Miria's team to the player's team, and then]
		if ((op_game_time_hour() >= 400) and (op_game_time_hour() <= 900)) then
			Chowtime := 9161;
		if ((op_game_time_hour() > 900) and (op_game_time_hour() <= 1300)) then
			Chowtime := 9162;
		if ((op_game_time_hour() > 1300) and (op_game_time_hour() <= 2200)) then
			Chowtime := 9163;
		if ((op_game_time_hour() > 2200) and (op_game_time_hour() < 400)) then
			Chowtime := 9164;
		if ((op_global_var(1) >= 5) or (op_global_var(0) < -500)) then
		begin
			op_gsay_reply(106, op_random(8010, 8011));
			op_giq_option(1, 106, op_random(9170, 9180), @Node999, 50);
			op_giq_option(1, 106, op_msg_string(106, 9160) + op_msg_string(106, (Chowtime)), @Node999, 50);
		end
		else
		begin
			op_gsay_reply(106, op_random(8005, 8009));
			op_giq_option(1, 106, 9150, @Node999, 50);
			op_giq_option(1, 106, op_msg_string(106, 9160) + op_msg_string(106, (Chowtime)), @Node999, 50);
		end
	end
end

Thanks in advance for any advice anyone has to offer.

Overall I'm nearly finished with the things mentioned in the original post. I scripted steps (1) and (2) referred to above (they compile fine but I haven't tested them yet in a real game), and will be working on step (3) over the weekend.
 
Your code looks like it does what it intends - ie based on the time of day, display a specific line of text. My only gripe is that you should make those if-elses rather than all ifs. No need to check each one after finding the correct one. Minor detail though. :)

Keep up the good work!
 
@killap
Thanks for the comment and advice. I wasn't sure about whether that would work. I also changed my script to use an if/else structure in that part as you suggested.

@all

The hardest part of this whole thing for me in creative terms was designing the scoring system to determine Miria's level of overall satisfaction. The system I decided on works as follows, if someone would like to do something similar in the future:

A) Miria has an opinion-level of her marriage that can range from a minimum of 0 to a maximum of 30. As a newly-married optimistic bride, her opinion-level starts at 10.

B) Every two months of in-game time, this score is updated by a sub-procedure in map_update_p_proc. I chose to put this check in map_update rather than talk_p_proc so the score will be updated without the player-character needing to talk to Miria. At update time, the following points are assessed based on how the player has treated Miria recently:

+1 point if the pc recently talked to Miria about how she's doing
+1 point if the pc recently told Miria how pretty she is
+1 point if the pc recently had sex with Miria
+1 point if the pc recently told Miria she's the apple of his/her eyes
+1 bonus point if all four of the above are up-to-date
-1 penalty point if none of the above are up-to-date
-1 point if the pc is a New Reno gangster
-1 point if the pc is a drug addict
-1 point if the pc is a slaver
-1 point if the pc has a bad general rep

This scoring system allows for some interesting play. For example the pc can be a lowlife drug-addicted slaver working for the Mordino family, but still be a good spouse to Miria; if so, Miria's overall opinion-level will rise every two months. The pc can be a clueless spouse (but a "good" person with no bad traits) at first, doing nothing at all for Miria, and her-opinion level will drop; however, the pc can then get out of the doghouse with her (even if the pc is a bad person who is penalized) and make progress. The pc can on the other hand be a great spouse for a while, but then start neglecting her; her opinion-level will drop accordingly.

C) Once Miria's opinion-level reaches 20 (an ideal "good person" spouse who treats her well will reach this point after only two cycles, i.e. four months), Miria feels secure enough that her marriage will last to begin making plans for her future that include her spouse. There are a number of these plans, one of which is randomly offered for each new game. This offers a boost to the replayability of FO2 on the 50th time through the game (for example, if I regularly choose to help NCR and Bishop against Westin and Vault City I may try something different after Miria says she wants to live in Vault City so her kids will have access to a fine modern educational system, etc). If the player disregards the direction Miria would like to take the game (e.g. she wanted to live in New Reno, but the player's rep there is contemptible), as a supportive wife she adapts and offers a more flexible, generic plan to avoid constant bickering with her spouse.

Perhaps some folks don't really care about any of that, but just want to know how to script Miria to have sex with them after marrying her. I set that part up to work like having sex with a trapper; the screen fades out/in, the dialogue is ended, and a short message is displayed in the message box. Although a more elaborate system like that used with Leslie Bishop could certainly be used, that didn't interest me much. I recommend a few deviations from the normal procedures, though (all of which I used). For example, since it's completely respectable in all cultures I know about to get it on with one's spouse, sex with Miria never counts toward the "Gigalo" rep. Once in a while (randomly), she's having monthly feminine issues but might do the pc a "favor" anyway; however this doesn't count as satisfying to her (and doesn't increase the pc's sex counter if the pc is a guy, either). A female pc always has the extra option to chat with Miria about girly things like hairstyles and nail polish, which they both enjoy; that counts as "sex" as far as Miria is concerned, but doesn't update the pc's own stat counters. Finally, as the pc and Miria get more familiar with each other different messages are displayed after they have an "intimate moment" to reflect that the lovin's more satisfying (unless the pc was already very highly skilled in that department before they got married).

My purpose in making this mod was to make my own game more enjoyable, but my purpose in posting about it here was to offer an example of how anyone can make their own Miria mod since it seems to be a regular topic that comes up from time to time. Here are some more general things to keep in mind if you want to customize Miria for yourself:

1) I started from scratch and substantially redid killap's script for Miria from the RP 1.2 as the basis for my Miria mod. If instead you'd like to just use the script that comes in the most recent Miria mod by Grandson of Sam you should fix some bugs in it first. This takes nothing away from Grandson of Sam, who redid the .pro files/dialogue but isn't responsible for the script (which is basically a copy of an old Megamod script from a time when it had many bugs that have now been fixed for the Megamod). There are many changes that should be made, but some good places to start would be:

--Procedure pickup_p_proc checks to see if the pc is interacting with Davin (16777379), not Miria (16777380). The whole section works much better as:

Code:
procedure pickup_p_proc
begin
  if (op_source_obj() == op_dude_obj()) then
  begin
    if (((op_party_member_obj(16777380) != 0) == 0) or (op_global_var(6) != 1)) then
      call Node998();
  end
end

--In several places the script confuses local variable 8 with local variable 14 and vice versa;

--In description_p_proc and several other places, you should probably add a check to see if the pc is married to Miria before she offers her special floats;

--Killap's bugfix for refeuling the car should be added to what's found in use_obj_on_p_proc; also a check for whether the pc is married to Miria should be added for her float texts;

--Replace Node000 with:

Code:
procedure Node000
begin
  op_gsay_reply(106, 154 + (op_local_var(5) > 0));
  op_set_local_var(5, op_local_var(5) + 1);
  op_giq_option(4, 106, 156, @Node018, 50);
  op_giq_option(4, 106, 157, @Node013, 50);
  op_giq_option(4, 106, 158, @Node014, 50);
  op_giq_option(4, 106, op_msg_string(14, op_random(375, 376)), @Node999, 50);
  op_giq_option(-3, 106, 159, @Node026, 50);
end

--In Node995, reverse the setting of global variables 588 and 589 (another bugfix by killap of an error in command.h);

2) You should fix your ectrapper.int as well, as it doesn't account for the possiblility that Miria is not in the party if you trade a trapper sex for some gecko pelts (for example, if she is asked to wait in a town somewhere while you're roaming the wasteland). Just add a check to see if she is in the party rather than if the player is married at the appropriate spots.

3) The .pro files included in Grandson of Sam's Miria mod are mostly fixed compared to the bad mess that was the last version before his, but they don't have Miria's level-ups set to the correct AI packet. I corrected this in the Mapper, but you could also add a fix to Miria's script instead in map_enter_p_proc. They also have Miria's base sprite as the blond peasant lady (which is fine if that's want you want, plus this will probably never even be seen in the game due to the armor mod). There's what I think is one other problem (I could be wrong), in that while killap's pro_crit.msg has an entry #508 ("Slim Pickett"), there is no pro file 508 included with the RP; since Miria's first level-up pro is 509 this leaves a gap. I made a useless placeholder pro 508 in the Mapper for my installation to fill the gap. While you're in the Mapper anyway, I don't see any reason not to edit Miria's original pro file (164) to match where you want her first stage stats to start.

4) In other threads on Miria mods people have often asked how to add custom combat taunts for Miria. This is easy, but if you're not sure what you're doing you should skip it since adding new AI packets sometimes causes the Mapper to make a change to Fallout2.exe. If that makes you nervous, you're probably better off leaving the whole thing alone. Anyway, here's what you do:

--write your new combat dialogue for Miria and add it to combatai.msg. Her lines should start at 42000, and you can use the other entries there as a model for your dialogue and a guide to how many lines you should write for each body part or activity;
--extract aibdymsg.txt and aigenmsg.txt from your master.dat and put them in Fallout2/data/data if they're not already there;
--In the Mapper, bring up the screen to edit AI packets. Basically what you need to do is add two new body types for Miria to use, one for aibdymsg and one for aigenmsg. If you click on a body type name a box will come up, and if you press escape you can then type in the name for your new body type (I just call them both Miria); another box will come up where you can type in the line numbers of the dialogue you wrote and added to combatai.msg;
--Something I've noticed is that while the Mapper will update aibdymsg.txt and aigenmsg.txt with entries for the new body types, it won't set the correct line numbers to match your custom dialogue; you'll probably have to open those in a text editor and fix the entries.

If you make mistakes in this process and screw up all your AI packets you'll probably have to reinstall Fallout 2, so if any of the above leaves you scratching your head you're probably better off leaving Miria with her default combat taunts until you learn more about how to use the Mapper and what purpose all the various FO2 text files serve.

************

I'm finishing up my script for Miria, and I'll post the script changes necessary to do what was discussed in the first entry of this thread after I've tested them in a game to make sure there are no glaring bugs. In the meantime to give anyone who may be thinking of modding Miria for themselves a feel for how what's been outlined here would play out, here's the dialogue I wrote for what's been discussed in these posts. Since the idea of the mod is that these conversations with Miria will be repeated many times during the course of the game, there are multiple entries for most nodes of conversation that are randomly offered each time the pc talks to her. Therefore I added the following to mcmiria.msg:

Code:
{10000}{}{Let's talk about... us.}

{10001}{}{Really? Sure thing, honey. What's on your mind?}
{10002}{}{I've been wanting to talk to you, too. What's on your mind?}
{10003}{}{Of course, sweetheart. What did you want to talk about?}
{10004}{}{I always have time to talk to my sweetie. What's up?}
{10005}{}{Um... sure. What is it you wanted to talk about?}
{10006}{}{Actually, I changed my mind. We'll talk later.}

{10010}{}{How are things? I mean the big picture. Are you doing okay?}
{10011}{}{I don't know. I mean, my life has changed so much since I met you. Sometimes it's hard to understand all that's happened to me.}
{10012}{}{I guess. Life is hard out here in this wasteland, and sometimes I miss my family. But I'm happy we're together, and I don't have any regrets.}
{10013}{}{Sometimes I miss the simple life and being on the farm back in Modoc, but I wouldn't trade being with you and the excitement of adventuring across the wastelands for anything.}
{10014}{}{It seems like it was just yesterday that I was a little girl, playing with my dolly at the farmhouse. I've had a lot adjust to since we got married, but I think I'm doing okay with it. And being with you makes it all a lot easier, honey.}
{10015}{}{When I was growing up, I never imagined I'd have a life like we have. Now that we're out here doing it, though, I have to say I wouldn't trade the way we live for anything.}
{10016}{}{I'm guess I'm good, babe. You inspire me to be something more than I ever thought I could be, and I really like the unexpected way my life is turning out since I met you.}
{10017}{}{Sometimes I feel lonely out here in this wasteland. I mean, you're always busy saving every clueless fool who crosses our path, and I understand you have to be who you are. But once in a while I wish I had some friends of my own to talk to about things, since I hardly ever get a chance to really talk to you.}
{10018}{}{I don't know. I've been thinking a lot lately about my family and friends back in Modoc. I never thought I'd say this but I guess I sort of miss them, even if they do smell like brahmin dung all the time. At least with all those people around, there was always somebody around for me to talk to.}
{10019}{}{I guess maybe I'm a little jealous sometimes, sweetheart. I mean, we run all over the wastelands meeting interesting new people... and they all want to talk to you, or want your help, or want to be around you. I'm proud of you, but sometimes I feel like a wallflower.}
{10020}{}{Sometimes I feel like I don't really fit in. I mean we're always fighting for our lives, exploring spooky old vaults, and even meddling in politics. I'm just a simple farmgirl, and nothing I experienced growing up really prepared me to deal with any of those things.}
{10021}{}{I don't know, honey. Sometimes I just wish you and I could go somewhere and be alone, and just have a normal life. Our only friends are your friends, we're always doing what you want, and going where you want to go. I know it's selfish, but I hope we can just settle down someday and leave all this excitement behind.}
{10022}{}{I'm happy if you're happy, Miria. Let's talk about something else.}
{10023}{}{I know it's hard for you, Miria, but I'm glad you're adjusting well to my crazy life. Let's talk about something else.}
{10024}{}{Good. We'll talk more later, Miria.}
{10025}{}{I'm glad to hear that. We have to get moving now, but we'll talk more later.}
{10026}{}{This is all my fault, and I'll try harder, Miria. Let's talk about something else.}
{10027}{}{I know it's hard sometimes, but you have to believe I'm doing what's best for us both. Let's talk about something else.}
{10028}{}{I'm trying, honey, but all this is new to me too. We'll talk more about this later.}
{10029}{}{I understand. I feel the same things sometimes. We have to go now, but we'll talk more later.}

{10030}{}{I love you, Miria. Sometimes I feel bad that I don't tell you that more often.}
{10031}{}{I just wanted to tell you I love you, that's all. [Kiss her]}
{10032}{}{I love you, honey. You'll always be the only girl for me.}
{10033}{}{[Hold Miria's hand]. Sometimes I wonder if you know how crazy I am about you, honey. I'm so lucky to have a wife like you.}
{10032}{}{Aww, that's sweet. I love you too, honey.}
{10033}{}{[She gets misty-eyed for a moment]. Thank you, sweetie. How do always know just when I need to hear that from you?}
{10034}{}{I'm so lucky to have you. And just for the record, I love YOU more.}
{10035}{}{[She leans in and kisses you] I love you, too.}
{10036}{}{[Miria smiles and softly touches your cheek]}
{10037}{}{Now you've got me all hot and bothered. Wanna go somewhere and fool around?}
{10038}{}{You're the best wife ever. Let's find somewhere quiet, I want to make love to you.}
{10039}{}{Let's talk about something else, Miria.}
{10040}{}{I hate to say this, but we have to go now, Miria.}
{10041}{}{We'll talk more later, Miria. Let's get going.}

{10048}{}{You look really good today, babe. You really are the most beautiful woman in this whole wasteland.}
{10049}{}{Did you do something different with your hair today? You look so beautiful, honey.}
{10050}{}{You look ravishing in that outfit, darling. I didn't think it was possible, but you really do get better looking every day.} 
{10051}{}{You're so pretty, Miria. And every woman we meet is SO jealous of you. Is it ever a hassle, being so beautiful?}
{10052}{}{Thank you, sweetie. You always know just the right thing to say to me.}
{10053}{}{Aww. I try so hard to be sexy for you, I'm glad it's working. [She giggles]}
{10054}{}{That's sweet. I'm glad I can still inspire some passion in you.}
{10055}{}{I love it when you sweet-talk me, babe. Thanks, I needed to hear that.}
{10056}{}{You're so good to me. Thank you, honey.}

{10057}{}{I'm so jealous of your nails, babe. How do you keep you cuticles in such good shape?}
{10058}{}{My hair is always so dull and lifeless in this humidity. How do you keep yours so shiny and vibrant?}
{10059}{}{We're both out here running around the same wasteland, but my skin is like sandpaper while yours is always as soft as silk. What's your secret?}
{10060}{}{My feet are all cracked and dry from running around in sand and toxic goo all day, but yours are always so smooth and healthy-looking. Do you put some kind of lotion or something on them?}
{10061}{}{We can be out here stomping around the desert for days, fighting for our lives in 110 degree heat, but you always smell so good. Is it some kind of herbal perfume you use?}
{10062}{}{I was looking at one of those Cat's Paw magazines and saw that before the Apocalypse many our female ancestors scraped all the hair from their legs and under their arms. Should we try that? Should we just use a knife, or try some kind of adhesive to pull it off?}
{10063}{}{I'm so stressed, honey. On top of that, we're usually too busy staying alive to get enough sleep or eat a healthy diet. We're both riding the same brahmin out here, but I've got these nasty dark bags under my eyes and you don't. Do you have any ideas how I can get rid of them?}
{10064}{}{Woah, you look great! What plants do you use to prepare that powdered dye you rub on your cheeks to give them that hale, rosy-red glow?}
{10065}{}{Is that... did you put something on your eyelashes to make them look so dark and lush? How did you apply it so evenly, without any clumping?}

{10066}{}{No, really babe. You are SO fine. Let's go somewhere and make out.}
{10067}{}{You look so enchanting, I can barely concentrate. Let's go somewhere quiet... I've got to have you right now, honey.}
{10068}{}{Let's talk about something else, Miria.}
{10069}{}{I could go on about your beauty all day, Miria, but we have to get going now.}

{10070}{}{Are WE doing okay? Are you happy with our marriage?}
{10071}{}{I'm crazy about you, babe. I think everything's great between us.}
{10072}{}{I love you more than ever, honey. I'm so lucky to be your wife.}
{10073}{}{I've never been happier. You're the best, darling.}
{10074}{}{I don't know, I... suppose we're okay. It's just that you're always so busy, sometimes I get jealous and wish we could spend more time together.}
{10075}{}{Well, marriage is a mixed-bag, sweetheart. Sometimes I just feel so lonely, and wish you'd spend more time with me.}
{10076}{}{I... guess so. We're just always so busy and on the move all the time, and the only friends we have are your friends. I'm sorry, it's selfish, but sometimes I wish I could have you to myself for a while.}
{10077}{}{I love you and I'm happy, but I'm worried about you. You... well... you seem use a lot of drugs, honey. Sometimes you're not yourself. You just seem... a little crazy when you're on that stuff.}
{10078}{}{I wish we had more time together. It seems like you're always busy with something else, and then when we do get a break all you want to do is get wasted on drugs. I'm worried about you, dear.}
{10079}{}{Our marriage is everything I ever wanted, but I'm worried about you. I know those slavers are your friends, but... I mean, they're a really rough bunch, and I don't like the way I feel when we're around them. It just seems like a really dangerous way to make a few extra bucks.}
{10080}{}{Well, I dunno. I guess I sometimes wonder how I fit into your life, honey. You seem like you're always too busy to spend time with me, and then... well, I know you're just trying to provide for us, but I'm not really sure how I feel about your business. It's so brutal, buying and selling people... Oh, I'm just going to be quiet now. [She looks like she's about to cry]}
{10081}{}{Of course I'm happy, honey. It's just... I don't understand some of the decisions you make. Are you sure you know what you're doing, getting in with those gangsters?}
{10082}{}{I don't know, baby. It seems like you just don't have much time for me anymore... especially now that you've gotten us mixed up with those gangs.}
{10083}{}{I know you love me, dear, and I think our marriage is strong. It's just... I worry about you. You seem to stir up a lot of trouble wherever we go, and a lot of people really hate us. I feel safe when I'm with you, but sometimes when you're not around I get scared.}
{10084}{}{Please, baby, don't ask me silly questions like that. [She shivers and cringes, as if she expects you to start beating her] I'm trying so hard, baby. Please just don't get upset with me again.}
{10085}{}{I'm so happy to hear that, Miria. Let's talk about something else.}
{10086}{}{There's nothing more important to me than our marriage, Miria. Let's talk about something else.}
{10087}{}{It makes me feel so good to hear you say that, Miria. We'll talk more later.}

{10088}{}{I'll try harder to be there for you, Miria. Let's talk about something else.}
{10089}{}{I understand how you could feel that way. I'd like to think it all over, so let's go and we'll talk more later.}
{10090}{}{Yeah, well, marriage is a two-way street. Let's go, and you can think about that while we walk.}
{10090}{}{You just don't understand all the pressure I'm under, honey. Let's talk about something else.}
{10091}{}{Well, maybe if you took better care of me I could kick this habit. That's enough talk for now, let's go.}
{10092}{}{Your happiness is important to me, Miria. Let's talk about something else.}
{10093}{}{Don't worry, honey. I know what I'm doing. We'll talk more later.}
{10094}{}{We've talked about this before, Miria. I know what I'm doing with those guys. Let's talk about something else.}
{10095}{}{I don't have time to explain this whole thing to you again, Miria. Let's go.}
{10096}{}{I love you and I'm happy, but I'm worried about you. You spend an awful lot of time playing with those silly Tragic cards, and you're not taking care of things like you should be.}
{10097}{}{I wish we had more time together. It seems like you're always busy with something else, and then when we do get a break all you want to do is play with those stupid Tragic cards. I'm worried about you, dear.}
{10098}{}{It's not just a game, Miria, it's a lifestyle. Anyway, let's talk about something else.}
{10099}{}{Well maybe if you tried harder, I'd pay more attention to you. I don't want to argue with you, so I'm going to go reorganize my card collection now.}

{11000}{}{You spend an hour swapping personal beauty tips with Miria. It's almost as good as sex, and the two of you feel very close afterwards.}
{11001}{}{You spend some time giving your wife oral sex. It's hard to tell whether the look on her face meant she was in agony or in ecstasy. She won't YOU tell which, of course, but you can be sure she's telling everyone ELSE she knows all about it.}
{11002}{}{Miria spends some time giving you oral sex. Although you appreciate that she's trying to do her best, in the end you use your hand to finish yourself off.}
{11003}{}{You spend some time alone with your wife, each of you happily fulfilling your marital obligations to each other.}
{11004}{}{You make passionate love to your wife.}
{11005}{}{Your wife makes passionate love to you.}
{11006}{}{Miria wants to be 'on top' this time, and she works you over thoroughly.}
{11007}{}{You spend some time giving your wife what you hope is pretty good oral sex. Judging by the way she moaned and screamed, she thought it was better than just 'pretty good.'}
{11008}{}{Miria spends some time giving you absolutely amazing oral sex.}
{11009}{}{You spend some time alone with your wife, having sex so sizzling it's probably illegal in some areas.}
{11010}{}{You spend some time alone with your wife engaging in sex that's almost embarrasingly hot for two married people.}
{11011}{}{You and your wife go at it like wild animals, and are both left sweaty and exhausted... but very satisfied.}
{11012}{}{You make love to your wife. It's really good, since the two of you are getting pretty experienced at knowing how to please each other.}

{11020}{}{Was it good for you too, babe?}
{11021}{}{Mmmm. That was great.}
{11022}{}{Mmmm. I needed that.}
{11023}{}{That was pretty good, sweetie.}
{11024}{}{I love being married.}
{11025}{}{You wore me out, honey. I need a nap.}

{11030}{}{I'm sorry, sweetie, but it's that time of the month for me right now. I'm feeling bloated, my boobs are sore, I have a bad headache, and I just don't think I'd be able to get into it right now even if I was feeling fresh. I'm sure you wouldn't want to be with me anyway while I'm like this.}
{11031}{}{It's that time of the month for me, honey, so we'll have to wait until later. I know how you get, though, so let's find somewhere private and I'll take care of you as best I can.}
{11035}{}{I'm not sure what I was thinking, babe. I've got my period right now, too, so I guess we'll both just save up some lust for later. Let's hit the road.}
{11036}{}{Oh yeah, I forgot about that. I guess I can hold off for a few days, so I'll talk to you later.}
{11037}{}{Thanks, honey. Let's go find that privacy...}
{11038}{}{Err, let's wait until we can both enjoy ourselves. Anyway, I'm not really in the mood anymore after hearing about your period, so I'll talk to you later.}

{11050}{}{I love you and I'm happy, but I'm worried about you. You... well... you drink an awful lot, honey. It's starting to affect your judgement, and it seems like you're not taking care of yourself. I'd be happier if you tried to spend more time sober.}
{11051}{}{I wish we had more time together. It seems like you're always busy with something else, and then when we do get a break all you want to do is get drunk. I'm worried about you, dear.}
{11052}{}{I see. You criticize my life, you're not happy... but you sure don't mind spending the money I bring in for us, right? Let's talk about something else before I lose my temper.}
{11053}{}{I can't deal with your bullshit right now, Miria. Let's go, before I decide to smack you.}
{11054}{}{What, I'm not good enough for you now? Let's talk about something else before I lose my temper.}

{11200}{}{Just because I spend a lot of time solving others' problems doesn't mean I don't think about what you want, too. What are your hopes for our future?}

{11210}{}{Let's just try to get through all the things that need to be done right now before we worry about the future.}
{11211}{}{I don't know. I'm starting to think maybe I'd like to go back to Modoc someday. I mean, of course, with you. Absolutely. [She might be frowning, but perhaps her expression just means she's got some food stuck between her teeth]}
{11212}{}{I want to settle down. I want a family. But as chaotic as our lives are, how can I hope to make plans with you about those things?}
{11213}{}{I've got my hands full right now just trying to keep your wounds bandaged and your clothes patched up. We'll worry about the future later.}
{11214}{}{Let's just try to get through today rather than worry about tomorrow.}

{11220}{}{I miss Modoc, honey. All my family and friends are there, and I think it would be a fine place for us to set up a home and raise a tribe-full of children. We could get our own farm, and my family could teach you the cattle business so you can support us. Just think how peaceful it would be, dear. You could run the farm, and every fall you could satisfy your taste for adventure by driving the cattle to Redding or Vault City. Of course I'll be waaay too busy with all the babies we're going to have, but once they're older we could still travel from time to time. You know, maybe take a vacation and go somewhere romantic once in a while?}
{11221}{}{Do you ever miss your tribal life? I don't know, the idea of a simple life like that is sort of growing on me. I can see us in a modest teepee, with our babies playing all around. Plus, we wouldn't have to lug around all my outfits and shoes if my whole wardrobe consisted of a loincloth. [She flashes you a flirty smile] You could hunt and fish for our food, and I could start a garden to satisfy my green thumb. Who knows, maybe one of our kids could even grow up to be the next chief of the clan?}
{11222}{}{I never thought I'd say this, but the idea of living in a big town has sort of been growing on me.  We could get a nice big house in New Reno, with plenty of rooms for all the babies we're going to have. I'm sure you could find work doing something you like in a town that big, and I'd keep busy running our household. Just think, you could come home from work, and I'd have dinner waiting, and then when we put the kids to bed we could hire a babysitter and go out for a night on the town whenever we want.}
{11223}{}{I never thought I'd say this, but the idea of living in a big town has sort of been growing on me. We could get a nice big house in NCR, with plenty of rooms for all the babies we're going to have. I'm sure you could find work doing something you like in a town that big, and I could tend to our children and keep our household running smoothly. Just think, you could come home from work, and I'd have dinner waiting, and then when we put the kids to bed we could hire a babysitter and go out for a night on the town whenever we want.}
{11224}{}{What do you think about moving into Vault 13? I mean, it is your ancestral home and all, so you have as good a claim to be there as anybody else... Those big vault doors would make me feel safe, and if we need things it's not too far to run to NCR for all the modern amenities. Plus there's plenty of space in that big vault, and plenty of rooms for all the babies we're going to have to play and grow up in a safe environment.}
{11225}{}{  And since you've made friends with those deathclaws, so I'm sure they'd be happy to have us there.}
{11226}{}{  And now that all those nasty deathclaws are gone, the place is just sitting empty anyway.}
{11227}{}{I've been thinking lately that maybe we could make a home for ourselves in Redding. There's plenty of work there, so you can do anything you want.  If you need to satisfy your sense of adventure you can run with the caravans, or if you want something steady you can get into the mining business. Maybe you could even run for sheriff in the next election!  We'll get a nice big house on the outskirts of town, and of course I'll be busy raising all the babies we're going to have. I think we could really be happy there, sweetheart.}
{11228}{}{I think I'd like to live in Vault City, dear. It's safe there, and they have all the latest conveniences... I mean, there's just no higher quality of life anywhere else in this wasteland. We can settle down to a nice, quiet life inside the city walls, and I'm sure they'll find something more interesting for a person of your ability to do than working in the List Office. With all medical technology our children could grow up healthy, and they'll have a chance to go to the finest schools around. The more I think about it, the more I'm sure Vault City is the place for us.}
{11229}{}{I've been thinking lately... I never thought I'd say this, but after being out here in this wasteland with you I guess I'm sort of starting to like this lifestyle. And with your adventurous spirt, honey, I know it would just be too hard for you to ever really settle down in one place. We could be like gypsies, roaming the wilds, meeting new people and seeing new places all the time. Once all your business is settled on the coast, maybe we could head east and see what's over the mountains?}
{11330}{}{I guess you can take the girl out the country, honey, but you'll never take the country out of this girl. I'd like to see us find a nice patch of ground somewhere and build a homestead we can call our own. You can work the land, and I can raise all the babies we're going to have. I want lots of babies! We can do our part to tame this wasteland and make it a better place, and when we get old and grey all our kids and grandkids will help take care of us.}
{11335}{}{I want you to be happy, Miria, and I'm going to give your plan a lot of thought. Let's talk about something else, though.}
{11336}{}{I want to give your ideas some serious thought, Miria, so we'll talk more later. Let's hit the road.}
{11340}{}{I miss Modoc, babe, and I think it would be a fine place for us to make our home.  We could start our own brahmin farm... all my family and friends are there to help us get started.  Plus, it's a peaceful place where we can raise all the babies we're going to have.  Oh honey, I want babies so much!  We'll think of something... I mean if nothing else, lots of merchants pass through Modoc and I'm sure we can pick a smart, handsome guy from time to time to make you preggers.  That would be perfect, because then we'd probably never have to see him again after he left town. What? Well of course you're going to have all our babies, sweetie!  I mean I already know the cattle business, so I'll be busy with that and running our farm to support us while you keep our household and be our kids' mom. I think I want you to have six babies, three boys and three girls.  Just think how wonderful it will be, babe!}
{11341}{}{I want kids soooo much, honey, but let's face it... we could swim in a Vat all day and neither one of us is ever going to have the equipment to knock the other one up.  Maybe we could move to the Den? We could help run the orhphanage there! I mean, even though we can't have our own we'd be able to be around kids all the time, plus it's not too strenous a journey to Arroyo or Modoc for us to visit our families once in a while.}
{11342}{}{I kind of like the sound of the tribal lifestyle you had when you were younger, babe. Maybe we could settle down in Arroyo? But I'm worried... would they understand our relationship? I'm not sure they'd take a positive view of two women making it on our own, without some macho guy to protect us. I guess you know more about it than I do, though, so if you think we could make it work then I'm all for it. And after all, you are the 'Chosen One.' If anybody hassles us you can just tell them to mind their own business, or else kick their ass or something.}
{11343}{}{I never thought I'd say this being a farm girl and all, but I think maybe we should settle down in a bigger town. Maybe New Reno? We can be a little more anonymous in a place with a lot of people like that, and everyone probably won't be so quick to judge us for our lifestyle. You know, I mean.. us being two women with no man around, and all that. Plus we're going to have LOTS of babies, so in a big town we can probably find a decent guy with good genes to sire them who we won't have to run into every day after he's done his part.  I think we could make that work, honey.}
{11344}{}{I never thought I'd say this being a farm girl and all, but I think maybe we should settle down in a bigger town. Maybe NCR? We can be a little more anonymous in a place with a lot of people like that, and everyone probably won't be so quick to judge us for our lifestyle. You know, I mean.. us being two women with no man around, and all that. Plus we're going to have LOTS of babies, so in a big town we can probably find a decent guy with good genes to sire them who we won't have to run into every day after he's done his part.  I think we could make that work, honey.}
{11345}{}{What do you think about moving into your ancestral home, Vault 13? I have a good feeling about the community springing up around there. Since you made friends with all those deathclaws I'm sure they'd be happy to have us, and the people there seem pretty laid back... they probably won't hassle us at all about, you know, being two girls who are married to each other. Plus if we got bored, NCR is close by so you can take me out for a night on the town sometimes. I'd feel safe there, honey, and I think we could be really happy.}
{11346}{}{What do you think about moving into your ancestral home, Vault 13? I mean, now that all those deathclaws are gone the place is just sitting empty, and you've got as good a claim to it as anyone else. Plus I'd feel safe behind those big vault doors, and if we ever need anything NCR isn't too far away. And with all the ranching around there, I could get into the cattle business to support us. Maybe we could even use some of the space in the vault to start an orphanage! I think that would be great, honey. If we can't have kids of our own, we can still help make this wasteland a better place by providing a warm home to needy children with no parents of their own.}
{11347}{}{I've been thinking lately that maybe we could make a home for ourselves in Redding. I mean, I already know all about the cattle business, so we could start a ranch just outside of town and I could support us while you stay home and raise all the babies we're going to have! I can't wait to have a big family with lots of kids... I'm thinking like seven or eight precious little ones. Well, I mean, I'll be busy with the business, so of course you'll bear all our children. I don't know, maybe I might have one, but I mean... we can't both stay at home nursing babies all day! And with all those strapping young miners drifting in and out of town all the time, it'll be no problem for us to find a guy with decent genes to get you pregnant... like every two years or so... who won't stick around to bother us after he does his part. Don't worry, I've got it all worked out. It'll be wonderful, babe!}
{11348}{}{I want babies, honey, but let's face it... we just don't have what it takes to make that happen on our own. That's why I'm thinking we could move to Vault City. It's safe there, the quality of life inside the walls is the highest in the wasteland, and best of all... we won't need a man to father our children! We can sign up for the pregnancy cycles together and let science do the rest! Wouldn't that be too cool, if we each had a baby at the same time? Even more importantly, our kids will have a peaceful place to grow up and they'll get the best and most modern education available anywhere. All the pieces fit, babe. I think Vault City is the key to our future.}
{11349}{}{I've been thinking lately... I never thought I'd say this, but after being out here in this wasteland with you I guess I'm sort of starting to like this lifestyle. And with your adventurous spirt, honey, I know it would just be too hard for you to ever really settle down in one place. We could be like gypsies, roaming the wilds, meeting new people and seeing new places all the time. Once all your business is settled on the coast, maybe we could head east and see what's over the mountains?}
{11355}{}{Your happiness is more important to me than anything, babe, and I'll do my best to make your dreams come true. Let's talk about something else.}
{11356}{}{Miria, what would I ever do without you? It's a solid plan, and I'm sure that together we can make it happen. We'll work more on your idea later.}
{11357}{}{So, you're saying... you want me barefoot and pregnant for the next ten or fifteen years? Well... as long as you promise you'll still love me when my boobs are sagging down to around my ankles, it sounds like pure heaven to me. Let's talk about something else, though.}
{11358}{}{Hmm. So you'll be out and about all day bringing home the bacon while I'll be scrubbing floors, washing clothes, and changing out a few dozen soiled swaddling-cloths from sunrise on? Then you'll come home from work, I'll have dinner ready, and after I put the kids to bed you'll tell me all about your tough day while I change into a sexy outfit for you? We'll talk more about this later, Miria.}
 
Your ideas are fantastic! I really hope you decide to release this as a mod (or maybe as an optional in Killap's RP); I would like to have something like this next I play FO2! I am really no good when it comes to modding, so I hope I won' t have to fight against my lack of skills to get this implemented in my game... :mrgreen:
 
Also, this is probably completely irrelevant to the thread, but i'd like a little kid in the game. Like as in the chosen ones son. That'd be friggin sweet, but he wouldn't get any good weapons probably considering kids can only throw rocks in the game cant they?

Still just putting it out there. ;)
 
PastaMasta said:
Also, this is probably completely irrelevant to the thread, but i'd like a little kid in the game. Like as in the chosen ones son. That'd be friggin sweet, but he wouldn't get any good weapons probably considering kids can only throw rocks in the game cant they?

Still just putting it out there. ;)

It would be nice. Also:

http://www.nma-fallout.com/forum/viewtopic.php?t=46522

This was a solid idea, that never happened.
 
Those are all good ideas, everyone. I especially like the house idea-- I sort of do this myself when I play using the eastern side of Broken Hills. There are plenty of empty houses, along with that nice empty barn/fenced grazing area in the NE corner. I drop off npcs I don't need in the empty houses, drop off my animals (Bess, Dogmeat, cyberdogs, etc) in the barn, and pretend everyone is living there happily while they wait.

I have another question. Does anyone know if metarule 17 (metarule_area_known) checks simply if a town is "known about" (i.e. name displayed by the circle on the world map), or if instead it actually checks whether the town has been visited? I need to check if a town has actually been visited in the past rather than just whether it's known or not. In the mapper documentation, the command "town_known" is one of the greyed-out sections, which probably means it doesn't work. I looked through some other scripts that use metarule 17, but it's never clear to me if there's a case where the check is asking whether the area is known vs whether the area has actually been visited. What's the best way to do that?

Thanks.
 
Endocore said:
Code:
{11008}{}{Miria spends some time giving you absolutely amazing oral sex.}
{11009}{}{You spend some time alone with your wife, having sex so sizzling it's probably illegal in some areas.}

I am really looking forward to this mod… :crazy: in regards to a small kid, maybe he could be based on the kid from Mad Max 2. I have the artwork for the boomerang from Fallout Tactics (up and running in Fallout 2), included is the inventory item, ground item, and animated thrown object. Now a kid that throws their metal boomerang that strikes their opponent and returns (slightly unrealistic but who cares) would be great.

As for the house – I think there should be some quest to gather the materials to build a structure. It could be done in 3 stages, and would require the map to have 3 stages as well. I’ll build the map component, just choose a location, it will require some new artwork to give a realistic impression that the structure is in development. I think it would be a more dynamic approach to the idea of a home base. There could side quests relating to your home e.g. Squatters/junkies moving in if you abandon it too long, etc. I’m sure there will be plenty of ideas out there.
 
I actually signed up just so I could comment on how enthusiastic I am about this project! I really hope that it turns out well - I have longed for ages to have more interactivity breathed into my NPCs, as I tend to form attachments to them, and the fact that Fallout's NPCs were, for the most part, no more than brainless thugs that followed you around has always been a thorn in my side even though I love the game.

Honestly, I've been considering doing something similar to what you have done here, although I was contemplating whether to do it with a completely new NPC or to simply breathe more life into one of the existing ones - Cassidy and Vic come to mind. Honestly, I think they should have an awful lot more to say than "Would you like me to change my tactics?" Yeesh!

Tell me, is there any way in the engine to actually have a party character 'interject' into a conversation (outside of floating text) or is that simply a hard-coded thing that you can't get around?
 
@.Pixote
As for the house – I think there should be some quest to gather the materials to build a structure. It could be done in 3 stages, and would require the map to have 3 stages as well. I’ll build the map component, just choose a location, it will require some new artwork to give a realistic impression that the structure is in development.

My understanding is you're a very talented mapper, and that sounds like a cool idea. I'm not able to take you up on your offer due to the time involved in such a project, but hopefully someone else will as I would certainly be interested in such an enhancement mod myself.

The boomerang kid idea is a good one as well, and the child sprite does have a throwing animation in their meagre selection of attacks so that's very do-able.

@Fermi Paradox
I definitely agree that the npcs, particularly the ones the player spends a lot of time interacting with, are on the bland side. Most of the changes I've made over time to my own installation has involved adding dialogue for npcs, or rewriting existing dialogue to make it more interesting. Even for folks who don't know anything about scripting, there's always the option to open up a .msg file in a text editor and spice up the lines that are already there (that's how I got started on modding FO2).

I'm no expert, but I don't think there is a satisfactory way to have one npc interrupt a conversation with another while the player is on the dialogue screen. You could write player responses such as "I'd like to, but [Vic interrupts: We should help these guys, Boss]" if Vic is in the party, but that's about it. I don't think you could change the talking head/dialogue background without ending the dialogue routine.

@all
I finished the script and did a small test game where I made a quick run to Modoc and got hitched to Miria. It looks like both my rewrite of Miria's script to make her function like a normal party member (not using Stone-D's special procedures, which isn't to say his original ideas weren't good ones) and the additional elements discussed in this thread are working ok so far. I made a few typos in the script dialogue nodes that need to be corrected (asking her about her gear caused her to try healing herself, oops) and a few of the pc response lines need to be shortened because all the option lines won't fit into the dialogue screen at once. That stuff is easy to fix, but I'd like to do a little more rigorous testing before I post the code to avoid endless confusion if more changes are necessary. If anyone who has already posted a response to this thread was thinking of starting a new RP 1.2 game sometime soon (since changes were made to vault13.gam, starting a new game is necessary) and would like to help test my changes, send me a PM and I'll send you the files necessary to try it out (mcmiria.int, mcmiria.msg, vault13.gam, and scripts.lst). If anyone is interested, please also mention if you already have Grandson of Sam's Miria for Real mod installed or not, as a few additional files are necessary if you don't already have them (levelup protos, party.txt, pro_crit.msg).

Thanks.

P.S. I'm still not sure about that metarule 17 thing. I went ahead and used metarule 17, but didn't pursue my testing far enough to see if it works the way I want.
 
Endocore said:
P.S. I'm still not sure about that metarule 17 thing. I went ahead and used metarule 17, but didn't pursue my testing far enough to see if it works the way I want.
metarule 17 (aka town_known) takes in an area and returns the following values:

#define MARK_STATE_UNKNOWN (0)
#define MARK_STATE_KNOWN (1)
#define MARK_STATE_VISITED (2)
#define MARK_STATE_INVISIBLE (-66)

MARK_STATE_UNKNOWN is if the location is not in the list of locations on the world map (ie the player never heard of it and has not been there)

MARK_STATE_KNOWN is if the name of the location is in the list on the world map but the player never went there.

MARK_STATE_VISITED is if the name is in the list of locations on the world map and the player went there at least once.

MARK_STATE_INVISIBLE is if the name of the location is not on the list, the player has never heard of it, and the location cannot be found on the world map by just walking around.


So, for example the following line of code checks that the player actually entered the Abbey at least once.

Code:
(town_known(AREA_ABBEY) == MARK_STATE_VISITED)

Hopefully this answers your question.
 
@killap
Thanks for helping me on that. The examples I looked at in other scripts all checked only if the area was unknown (always == 0), so it wasn't clear to me if that was the right rule. Your answer cleared the whole thing up for me nicely.

@anyone
With all this new extended interaction with Miria, I think it would be fun to give her a nice wedding ring she can carry around in her inventory (after all, by the midway point in the game the Chosen One is nearly a wasteland millionaire from all the loot found in the game, so his/her wife would probably expect a few fancy trinkets). Although it wouldn't be much work for me to whip a few ring items, before I re-invent the wheel have there been any other mods that added a few trivial items like rings or jewelry? It looks like all the item mods in the NMA files are weapon mods.


Thanks.
 
I really like the direction this mod is going !

Only the thought of having a wife and child at your side thrills my mind.

@ Endocore ° I only know of the beautifull diamond necklace in one of the locked wall safes at Bishops place in New Reno.

btw° Is it possible to make Miria more happy by giving her the makeup box/mirror thing that I never found a use for ?

Best regards.
Riel88
 
This is really advanced scripting, my respect to you sir.
We need more people like you, or we need you doing more work!

Did you also add penalty point if the player force her to prostitute herself, or if the player sleep with someone else, or if the player has cat's paw item?
I think they should be a possibility for a random negativ consequence when you treat her right. Like for example, when you sleep with her, there should be a risk that you are attacked by raiders during the act.
Or if you tell her too often she looks pretty, that she doesnt believe you anymore and that count for a penalty point.
Or sometime when you tell her she is the apple of... that she ask you to prove it by giving her jewellery, make up...
Or when you ask her how she is doing, sometime she wants to see her father, you need to bring her to modoc to get the point, etc,etc

Just trying some suggestion so that the player don't take always the bonus option...
Great work already, congrats!
 
Back
Top