Alt-Miria Mod Updated for Restoration Project 2.3

@Endocore,

I believe one of the files ectrappr.msg in this mod missing your extra content, if I'm not mistaken, cause there are many more lines in the same msg in your Megamod fixes.
Let me know if I'm onto something or simply tripping my ass off)))
Trying to translate your mod and fixes into russian.
 
The version of ectrappr I posted in the Megamod discussion is 100% compatible with RP 2.3.2, so everyone should use whichever they prefer. One is much more ribald than the other, but otherwise they're pretty much the same thing.
 
(Belated) Thanks for this. On my longest play-through yet of FO2, Miria was there as a point of stability for my female-Chosen through all the horrors of the wasteland, and gave her something a little more personal to fight for beyond a simple lead ball around the ankle. And then she died tragically in the last hour of game-play before the end, leaving the Chosen One a broken shell of a human being, after several years of happiness. Very fitting for the setting, especially since she died due to the fruits of a good deed the Chosen one had done earlier in the game.

So, yeah. Thanks for enriching my game so much, and tearing the heart out of my Chosen One and her player. Thinking of that moment still makes me wince.

MiriaMourning.png
 
Thanks for sharing your tale, Alixen. That's the the sort of stuff that makes for a memorable playthrough-- a compelling story, constructed largely by the player from the general framework offered by the game material, centered around characters whose fate matters to the player, and who seem far more like real people than like blobs of pixels or literary tropes. All my own most memorable games were the result of similar privately constructed narratives centered around characters (for example, the time I kidnapped Myron and locked him up for the entire game in the Redding jail while the Chosen One worked with the NCR Rangers on an elaborate plot to weaken the New Reno crime families...) For those who don't understand my usual philosophizing on game design-- I'm saying a crpg is good in direct proportion to how much it acts as a catalyst in promoting the emergence of narrative phenomena, like Alixen described, that are satisfying to each player because each player (rather than the game designer) creates them himself.
 
If you don't mind I would like to ask you one thing. Is there any way you could make this mod compatible with savegames from only RP 2.3. I completely forgot to add this mod until I found myslef in Modoc (done all in Arroyo Klamath and Den). Starting all over again would be a little timewasting (6h or so) and I don't rly want to miss out Miria mod :(
 
Last edited:
Ok thx for reply. Kind of did everything all over again and strangely wasn't bored at all. Got Miria alright and now time to go further into the world :)
 
@phobos2077

1) New global variables are added to vault13.gam. This makes any already existing save-games incompatible. The game will ctd if you try to load an old save.
2) A new body type is added to the AI packets. This reorders the packet numbers, making any already existing save-games work only in cases of pure coincidence (in other words, I wouldn't risk my time trying it).




I think I fixed the problem mentioned earlier involving a case where Miria wants to move to Vault 13, but whether the Horrigan raid will occur hasn't yet been determined or the raid has occurred but the pc doesn't yet know about it. I'll include the fix in a future update, but if anyone wants to make the fix themselves right now the following two modifications are needed:

Code:
In mcmiria.int, Node2600, replace the section "else if (op_global_var(795) == 5) then" with the following:

 else if (op_global_var(795) == 5) then
 begin
  if (op_metarule(17, 11) != 2) then
  begin
   if (op_get_critter_stat(op_dude_obj(), 34) == 0) then
   begin
    op_gsay_reply(106, 11229);
    op_giq_option(4, 106, 11335, @Node100, 50);
    op_giq_option(4, 106, 11336, @Node999, 50);
   end
   else
   begin
    op_gsay_reply(106, 11349);
    op_giq_option(4, 106, 11355, @Node100, 50);
    op_giq_option(4, 106, 11356, @Node999, 50);
   end
  end
  else if ((op_global_var(582) bwand 65536) or (op_global_var(59) <= -50) or (op_global_var(429) bwand 2)) then
  begin
   if (op_get_critter_stat(op_dude_obj(), 34) == 0) then
   begin
    op_gsay_reply(106, op_message_str(106, 11224) + op_message_str(106, 11226));
    op_giq_option(4, 106, 11335, @Node100, 50);
    op_giq_option(4, 106, 11336, @Node999, 50);
   end
   else
   begin
    op_gsay_reply(106, 11346);
    op_giq_option(4, 106, 11355, @Node100, 50);
    op_giq_option(4, 106, 11356, @Node999, 50);
   end
  end
  else
  begin
   if ((op_global_var(487) > 1) and (op_global_var(696) != 0) and ((op_global_var(582) bwand 65536) == 0) and (op_global_var(59) > 0)) then
   begin
    if (op_get_critter_stat(op_dude_obj(), 34) == 0) then
    begin
     op_gsay_reply(106, op_message_str(106, 11224) + op_message_str(106, 11225));
     op_giq_option(4, 106, 11335, @Node100, 50);
     op_giq_option(4, 106, 11336, @Node999, 50);
    end
    else
    begin
     op_gsay_reply(106, 11345);
     op_giq_option(4, 106, 11355, @Node100, 50);
     op_giq_option(4, 106, 11356, @Node999, 50);
    end
   end
   else
   begin
    if (op_get_critter_stat(op_dude_obj(), 34) == 0) then
    begin
     op_gsay_reply(106, 11224);
     op_giq_option(4, 106, 11335, @Node100, 50);
     op_giq_option(4, 106, 11336, @Node999, 50);
    end
    else
    begin
     op_gsay_reply(106, 11410);
     op_giq_option(4, 106, 11355, @Node100, 50);
     op_giq_option(4, 106, 11356, @Node999, 50);
    end
   end
  end
 end

In mcmiria.msg, add the following line:

{11410}{}{{What do you think about moving into Vault 13? The place belongs to your family, it's ours to use however we see fit. I'd feel safe behind those big vault doors, and NCR is close by so you can take me out for a night on the town sometimes.}
 
Last edited:
Endocore, I LOVE this mod, the first thing I do now after I leave Arroyo is make a beeline for Modoc! What are the chances of talking you into possibly making it to where the Chosen could have similar romantic involvements/marriages with other followers you can get? How complicated would that be, our of curiosity? I seriously love this mod, and consider it to be a must have right along with the RP :D
 
@FOvet

Depends what you're looking for. Sometimes these things are best left to the imagination of each individual player, and writing something specific narrows rather than broadens player choice. One of the main troubles, though, is that most games are played as a male Chosen One and apart from Miria and the addition of Kitsune in the RP, there simply are no female npc followers who the player could even imagine his character spending enough time with to have a fling.

Making new characters (or dramatically revising existing characters) isn't really hard, it's merely time-consuming. You want to have an interesting character who's a unique individual rather than a bland offshoot of every other character in the game; this uniqueness could come from their background, their current goals, behavior quirks, stylized dialogue, or their personal code of conduct and values. The npc should have something for which they are striving (so they're not just a mindless zombie following the Chosen One), and both the reasons they seek their goal and the manner in which they pursue it should be related to their personal past.

In other words, writing dialogue that expresses all these important facets of a compelling npc character is the most time-consuming part of the process. I'd say about 50 percent of the time needed to make a new npc is dialogue, about 25 percent of the time is spent scripting, and another 25 percent spent testing the result.
 
Last edited by a moderator:
It's too bad I know absolutely nothing about scripting and such, because I love to write, and I know I could make an interesting character from scratch, writing wise. problem is, I have no idea about scripting or making the necessary weapon/movement animations that would be necessary for a brand new character.

I play female Chosen Ones though, so even if I could learn a bit of scripting, the bare minimum that I'd have to in order to alter a character/add or change dialogue, etc, I could even alter Kitsune, or any of the male followers like Myron or Vic (funny examples, I know xD ).

If it's just a matter of writing though, maybe if you could tell me how many lines of dialogue would be needed, I could put something together and you could possibly write up a tutorial on what to do with that dialogue? Idk, at this point just tossing ideas out there, because the more mods I see (particularly your Maria mod and the RP which brought 3 new followers), the more I'd love to be able to make my own customizations. And, I really do love the idea of having a deeper relationship with your other followers if you choose, just like you did with the Maria mod :)

Whatever the case, wonderful mod Endocore, I'm having a lot of fun with it!
 
More dialogue means a character with more depth and more interactive options (whether narrative or functional) associated with the character, so the sky's the limit on that count. Both direct conversation and situational random floating text are effective ways to express an npc's characterization.

Adding dialogue to character scripts is one of the easier things to do with scripting, but there's no way around the fact that learning how to do anything involved with scripting is just hard work with lots of study time required. The best way to dip a toe into the scripting water is to get a script decompiler (most here Jargo's FSE from the NMA downloads section), decompile some scripts, and start studying them until you start to figure out a little bit of what's going on and how they work. After you do a few of those, my article (linked in the first post) on making the Miria mod may be of some help as well.
 
I finally had some time to download the latest (2.3.3) RP and have a close look at the fileset. The current version of this Miria mod is fully compatible with RP 2.3.3 as well as RP 2.3.2, and no additional changes are necessary. The Cassidy and random trapper scripts included with this mod are also still fully compatible with RP 2.3.3.

For the general interest of those who may want to know what's involved in checking compatibility, one must consider not only the particular scripts and msg files involved (for example, mcmiria.int and mcmiria.msg) but such concerns as:

--If global variables (found in vault13.gam) are used by my mod are they still valid, or does the mod to which I'm adapting the work (in this case, the RP) claim those numbers for some other purpose?
--Did the RP add other new npc followers, changing party.txt and possibly changing combatai.txt?
--Did the RP add or change any AI packets (used to determine npc combat behavior), invalidating the ai.txt, aibdymsg.txt, and aigenmsg.txt I previously used?
--Did the RP add any new maps or change the internal reference numbers of any existing maps (found in city.txt and worldmap.txt), perhaps affecting any dialogue my npc uses based on his or her current location?
--Did the RP add any additional critter prototypes, invalidating any prototype files (.pro files) my mod uses because previously available number slots are now in use? Affected files in this case, in addition to the .pro files themselves, are critters.lst, pro_crit.msg, and if one has added a completely new character rather than revising an existing npc, scripts.lst and scrname.msg.
--If any npcs in the game world have their own interactions with my modded character, did I make any changes that will break those interactions? An example of this is the updated random encounter trapper script I included with the Miria mod.

I want to release an updated version of the Miria mod to address a few obscure and minor bugs previously mentioned, but will need some time for that to untangle several more expansive changes I've made in the meantime to my own game to make a version of the script ready for public consumption. I've got a some whole new areas of gameplay/roleplay to explore for female Chosen Ones that can affect any relationship with Miria, and for more hard-boiled types I also added some new angles to pimping Miria to other npcs, etc. But all these changes simultaneously involve numerous other scripts (as well as novel plot lines) in the game that go far beyond the legitimate scope of a dedicated Miria mod, so I'll need to comb through my own current Miria script and get rid of all that stuff to make a version that others can use and enjoy, which will take some time. Such sifting out of material "not ready for prime-time" is also the reason I haven't currently included some other npc scripts I've changed such as Billy and Metzger in the Den or Father Tully in New Reno, who have interactions with Miria that can be broken if she is not present on the current map. I hope to include revised versions of these as well in the next Miria mod update.
 
Last edited:
Endocore,

those sound like some good ideas. It is great to see that you are working on making this a better / more enjoyable mod.

I usually play a lone wolf brawler/slayer type but I was thinking that my next playthrough would use a more team oriented approach. Maybe I'm missing Vic's complaining. :wink:

So an hour or so ago I was wondering which Miria mod to use. I think you have answered that question.
 
^ Endocore

it seems to me that Miria isn't compatible with RP (or rather the patch) as the changelog sayes you can now talk to Grisham after you've been married, and I've just tried it and I can't. This (still) cuts you off from a bunch of stuff.

I fixed this issue internaly by simply commenting out a small piece of talk_p_proc which activates if you're married and sets Grisham to folat stuff instead of starting conversation. Everything works fine that way, its just a small else if block.

----

I seem to have an issue though - Miria leveled up, but her stats are still terrible. I think the game is using her old vanilla stats for some reason, and boy are they crappy.

EDIT: In fact, her stats seem to revert to the base stats (or lvl 1 stats) upon any map change. This is horrible, and I hope it's something else causing it, if it isn't, could yu please try to figure it out and put out a version which is at least playable (because this one isn't if it's gonna be like this :( )
 
Last edited:
@lujo

I was just looking at that "complete the Brahmin guarding quest after marriage" issue in the past few days. The problem is in Grisham's script rather than Miria's or Davin's. I too made a fixed version for Grisham, and I'll include it in the next update. I've been working on things around Modoc lately to iron out a few wrinkles in the Bess the Cow mod I want to release very soon, so I'll probably make a separate post about Modoc mods in general.

Miria is designed to have fairly poor stats, since she's a not-too-bright farmgirl rather than an adventurer. There's specific info on her stats and how they should change as she levels up in the article on the mod over at the modding wiki. One thing to note, however, if you've been doing some modding yourself-- if you looked at Miria's base proto in the mapper, then a copy of that proto will automatically appear in your patch folder (Fallout2\data\proto\critters). You'll experience bad problems with any npc follower whose base proto is in the patch folder; those base protos must be in master.dat only (which is one reason I've long been recommending everyone stop using a file called master.dat and instead unpack the contents into a folder called master.dat for easy access).

From your description of the level-up problem you've encountered, this is almost certainly the cause of the problem. If you don't want to fool around with master.dat, the easiest way to solve the problem would just be to go to your data\proto\critters folder and delete the file 00000164.pro (the game will instead use the original 00000164.pro which will still be safely packed inside master.dat). You should also do this for any other npcs who can join the party if you've been looking at their base protos using the Mapper. One complication, however, is that those protos are also stored in saved games. Therefore, after deleting 00000164.pro you'll need to backtrack and start playing from a saved game before you entered the Modoc map for the first time. :sad:
 
Last edited by a moderator:
Thank you!

This must also be why I'm having trouble with Vic, and phobos (who has been working the mapper for the mod I'm currently testing) is certainly going to want to know about this. Thanks for the in-depth answer it's going to come in handy.
 
Wow, I never realized that. Say, Endocore, can this also cause the problem with Vic when he can't be pushed (push icon doesn't appear in context menu)?

I just checked. If I delete Vic base proto file from my "data" folder and just run the game, load a save with Vic in party - the file is created again (w/o read only flag). I'm confused...
 
Last edited:
Back
Top