Pack o' Scripts #1 for FO2 RP 2.3+

Endocore

Look, Ma! Two Heads!
Modder


I spend a lot of time modding Fallout 2, using killap's Fallout 2 Restoration Project as a base for my own game. I've got loads of material I'll release eventually (whenever it's done), but I recently considered whether I have any stand-alone material which could benefit everyone in the meantime. I looked through my materials, using the following criteria:

--Must be easy for end-users to utilize
--No map changes, no changes to global or map variables, no changes to ai packets or protos, no scripts with additional local vars, no changes to any other major game files that would break existing save-games or cause confusion and mayhem
--No entanglement with my major mods (in progress) requiring hours for me to sort out

and under these criteria I found the following scripts on my initial perusal. Some are quite trivial modifications, but hopefully everyone will find something useful and someone will find everything useful.

Script Pack 1: Files available here.

All these scripts contain modifications of various kinds, so don't bother the RP team with them. The RP crew has done more than enough for all of us already, and we can't expect them to start sifting through all kinds of crazy mods to investigate what's a bug fix versus what's a modification. I don't keep detailed notes in the way others do, so the comments below reflect the highlights I could recall from memory but should not be considered a complete description of all changes in each script. The only thing I can say for sure is-- where my scripts differ from RP scripts, the changes were deliberate in every detail.

All these scripts will work fine with any version of the RP greater than 2.3, and will probably work with any RP version greater than 2.1.2. I highly doubt they'll work as-is with anything else (Fallout 1.02d, Megamod, etc). In particular, unless you are a veteran scripter DO NOT attempt to use fsface.int, oscomptr.int, or fsempter.int with the Megamod-- disasters will be the only result.

Any time scripts are changed, the best policy is to restart from a saved game prior to loading for the first time the map where the script is used. However, problems should be minimal for just dropping these into any game in progress, even if your character has previously interacted with the object attached to the script.


Installation Instructions

1) Backup any files in your Fallout 2 Restoration Project installation that have the same name as any file in the download zip. This way, if you don't like a modification, you can change back later to what you had originally.

2) Put all int script files in the folder Fallout2\data\scripts\ where ever you have the RP installed, overwriting same-named files there.

3) Put all msg dialogue files in the folder Fallout2\data\text\english\game\ where ever you have the RP installed, overwriting same-named files there.

4) ssl files are my decompiled scripts in Noid's/Ruby format if you'd like to look at them, but are not necessary to play the game.

Some of these scripts utilize the "use science skill on" functionality offered by sfall. In order to make that work, you'll need to modify your ddraw.ini file (found in your Fallout 2 RP folder) so the following line looks like this:

;Set to 1 to allow science and repair to be used on the player, or 2 for all critters. (Rather than only brahmin/robots)
ScienceOnCritters=2

If you don't change ddraw.ini, you'll just continue to see "You fail to learn anything" as usual when using Science.


List of included scripts and changes:


*acklint.int
--A little preliminary chit-chat with everyone's favorite game greeter (excepting Jerry from JA2: UB, of course).

*acompu.int
--Improved rock-paper-scissors game
--Added e-books to read; some improve skills, some are just for fun, others are related to mods I'm working on but will hopefully be interesting as-is.

*acwarior.int
--Arroyo warriors offer rumors about the wasteland. These all have to do with other mods I haven't released yet, but even so they hopefully work fine as idle rumors to stimulate one's imagination.

*atribal.int
--Chosen One can have a few conversations with this fellow at the Abbey.

*broken2.int
--Many party members were not included in the poison gas check. Note the continuing exclusion of Pariah Dog is intentional.
--Fixed gas mask usage for party members who have hands with opposable thumbs.

*cck9.int
--Added some dialogue.
--Added some item usage.

*dcsmitty.int
--Since almost all the munchkins moved on years ago, at this point I think every reasonable person still playing FO2 understands that a) the game is way too easy, and b) one of the main reasons the game is too easy is: there is too much money floating around. In this version the car costs $10,000 ($7500 with high barter skill). Ride a few caravans and you'll have the money in no time (though if you're like me, you'll realize caravans are much more fun than fiddling around with the car in the first place and forget about the whole thing).

*direbbok.int
--Chosen One gets different results out of the book based on stats.

*door.int
--Just about every door and container in the game is badly broken. Modders, please do everyone a favor and use my flexible template instead (ssl now updated with documentation compared to the version I posted here months ago).


*eckaga1.int, eckagpal.int
--If the Chosen One has high diplomacy skills, peace can be made with Kaga at the first meeting. I really thought something like this used to be in the RP at one time, but who knows at this point.

*ecvltpat.int
--If the Chosen One is a citizen of Vault City, patrols are friendly.

*epac11.int, epac12.int
--Added destroy_p_proc, damage, no floats during party no follow. I didn't forget Dex; it's just that my version has too much other added code to extricate.

*fsbrodor.int
--Works much better now.

*fsempter.int
--Now offers full access to biology station. No wonder I was never able to find out about Sheng before!

*fsface.int
--Fixed RP/UP bug where Blue Memory Module adds 2 Charisma instead of one. Tested and verified both for armor implants or no armor implants.

*gcbrain.int
--Added dialogue about "Renewal."
--Some bugs fixed, but I don't remember anymore what they were.

*gcfestus.int
--Can now ask Festus for a Parts Requisition Form after finishing up with the reactor. A related change I made locking Harold's desk and turning Harold hostile if the desk is tampered with involves map changes, so it can't be part of this "simple and easy" fileset-- but I'll make it all available eventually.

*gclenny.int
--Added some float texts, though much more remains to be done on that count. Any volunteers?
--Added "use science on" Lenny.
--Added some item usage.
--Restored some party dialogues from Lenny's msg that were eliminated due to "standardization through generic dialogue."

*hcfranci.int
--Widened requirements to arm-wrestle Francis; losing the first time now increases Endurance by one since the Chosen One survived being widened themselves in that case.

*hcmarcus.int
--Many, many bugs fixed in relation to Broken Hills quests and other matters.
--Added "use science on"

Off topic, after looking at numerous Broken Hills scripts I'm certain there was originally supposed to be some sort of subplot where the Chosen One could, after testing Dr. Henry's mutagenic serum, somehow obtain more and give it to Jacob in Broken Hills as an alternative way to eliminate the mutants of Broken Hills. Relevant gvars are 237 and 301.

If anyone is interested tackling this project, the remaining work to be done would consist of:

a) Write dialogue with Dr. Henry, asking him to do further mass testing or expressing a desire for large quantities of serum. This would probably result in him giving some sort of quest related to obtaining the necessary ingredients, or if he gives the necessary ingredients the quest would involve manufacturing the serum in large quantities. Either way, this could probably be done at Vault City, EPA, or San Francisco. Lynette in particular might be eager participate in such a plot.

b) Write dialogue with Jacob explaining the plot. Script the functionality implementing the plot (existing gvar 301 already has everything necessary to track the status of such a plot).

c) Modify Broken Hills map scripts to kill all mutants if the plot is carried out, presumably by Jacob and Aileen. All the mutants I've examined are already set to vanish if gvar 301 = 6 (quest completed).

d) Modify the game endings for Broken Hills. Presumably, this storyline would result in an ending where the humans are in control of Broken Hills, and the town grows prosperous because the mine is still operational.

e) Telling Marcus about the plot in this scenario would result in the arrest of Jacob and Aileen, same as all the other conspiracy plots.

*hcphil.int
--Added Eric getting power and Francis leaving to "news."

*hcsteve.int
--Updated dialogue to reflect fixing the mine.
--Fixed check for armed Chosen One and pals.

*hcsuper.int
--Chosen One can refine uranium ore whenever they want (ore is available from random caravans around NCR). Part of a larger mod I'm working on, but hopefully this detail can be fun on its own as well.

--Since, except for one uranium found in Chuck Stodgers' chest, all uranium in the game comes from random traders, one can easily modify the unrefined uranium proto to make it cost something instead of zero dollars and then simply replace the contents of Stodgers' chest with the updated proto. In other words, there aren't any hassles with formation of invalid subprotos to fix a related 1.02d bug on your own. The only reason I didn't include this with the present fileset was my criteria "no map or proto changes."

*mcbrahmn.int
--Brahmin are on the player's team. No more utter stupidity where Vic accidently shoots a brahmin, and then all the Chosen One's teammates exclusively focus on slaughtering the brahmin while completely ignoring the dogs.

*nc3monte.int
--No more cheesy exploit of "bartering" with Monte to manipulate his inventory.

*ncchrwri.int
--Added conversation to rationalize eternal complaint "Why can't I buy booze here?"

*nceldrid.int
--Added dialogue to rationalize eternal question "Why won't he accept laser rifles?"

*ocariel.int, ocsandy.int
--Changed blatantly wrong descriptions (blue velvet dress? Uh, no.)

*ocgordon.int
--Chosen One can pray at ancestor's shrine.
--Chosen One can update Gordon regarding Vault Dweller.

*ocgoris.int
--Added dialogue
--Added "use science on"
--More bugs than ever squashed
--Added more reaction scoring
--Added some item usage

*ocgrutha.int
--Added a bit of dialogue after fixing the computer.

*octhearn.int
--Added a smidge of consequence for insulting Thearn (hey, there's not much to work with there).

*oscomptr.int
--Chosen One can install voice recognition module immediately if one is in inventory.
--Changed skill checks (now harder) to access history logs.

*sccop.int
--Fixed check for armed Chosen One and pals.

*scfergus.int, scgunthr.int, sckarl.int, scsherif.int, shtandi.int, bczeke.int
--Fixed bug related to gvar 169. Since the quest is complete when giving Tandi the V15 parts, by a happy coincidence changing quests.txt is not necessary in this case.

*sggcap.int, sigcaobj.int
--No more tampering with her lockers.
--Fixed check for armed Chosen One and pals.

The bookcase is a problem-- bookcases aren't openables or lockables. In my game, I got rid of the bookcase and replaced it with a non-interactive shelf scenery item. I recommend everyone else do this as well, but since it involves a map change I'm not including it with these files. In any case, the script should still work fine with the lockers.

*scgtegrd.int
--Fixed check for armed Chosen One and pals.
--Got rid of the truly nutty idea that extremely wicked characters cannot pass the gate of NCR without turning all the guards hostile. If evil characters weren't supposed to enter NCR, then there shouldn't be so many wicked quests there (Westin, Carlson, gambling, etc).

*ssgundor..int, scgunthr.int
--Fixed door so Gunther is now the gatekeeper, as intended. A nice effect for such a minor matter.

*tribei2.int, tribemer.int
--Better skill checks to determine if the stimpacks are fake, including allowing Myron to check them.

*tribec4.int
--If the Chosen One is a hero among the Umbra, the Shaman will combine broc and xander (instead of shutting off his dialogue).

*vcdarrow.int
--Extra dialogue to enhance her natural charm.

*vcmclure.int
--Fixed bug regarding peacefully saving Vault Village by talking to Brain, if Chosen One didn't happen to run back and forth between McClure and Brain several times.

*vcgatgrd.int
--No more silly "smuggle contraband by giving it to party members" antics for non-citizens.

*vivltdor.int
--Using oil can (from Tin Woodsman) reduces required strength to open door by one.

*wcbrnbot.int
--A major revision of Skynet, with lots of credit due to MIB88 whose float texts (from the Megamod) add many new dimensions to the character. Includes additional new dialogue written by me, item usage, "use science on," and numerous bugs squashed.
--Before you ask, no, this does not include using a security bot for Robo, as in the Megamod. That would mean map changes, and the files I'm presenting at this time are meant to be simple script change mods.

*wsterm4b.int
--Numerous fixes as discussed in the recent Brain Extractor discussion.


FAQ:

Q: Why did you delete [procedure/variable/all those lines]?
A: They're orphan code, mostly from blanket header inclusion. They do absolutely nothing whatsoever except provide opportunites for random errors and crashes. In my opinion at least some random game crashes that can't be duplicated are attributable to this extraneous code, particularly the numerous unused "permanent temporary variables" found in all scripts ("protoofitemgiven := 0" etc). If a variable isn't referenced in any procedure, it's not used in the script and should be ruthlessly eradicated.


The nature of detailed work like this done by one person probably means I forgot something somewhere, so please report any problems here.

Enjoy.





 
Last edited:
Cool. 8-) I use quite a bit of your work and it does enhance my game. Thanks for this.
 
Last edited:
Thanks. The changes looks great. Together with your content mods, the game will be massively improved. Really excited.
 
@Endocore

These look great. I plan on adding all of these to the next version of the MM when I have time to work on them over the holidays. I hope you don't mind.
 
Last edited by a moderator:
@Endocore, what does the "use science on npc x" thing do exactly?

Also, I was wondering whether you were considering adding some skill checks to entering Navarro undetected. I'm pretty sure the reason why these weren't added was so that pure combat builds wouldn't miss out on the Navarro quests but I think that's a fair tradeoff in the end. Especially given how silly it is that you can run past all the guards and convince the quartermaster without any skill that you're a recruit (forcing you to either sneak by, convince using speech, or bribe the guards and the quartermaster would make sense imo).
 
Last edited by a moderator:
@JimTheDinosaur

"Use science" is a minor tidbit. If you open the skilldex (or use the keyboard) to actively use the Chosen One's science skill on a critter, in the standard game a response is offered for brahmins and some robots but on any other critter type there is no response because the skill usage is prevented from occurring. Changing the ddraw setting allows this latter funcitonality to proceed. The default response is "You fail to learn anything," and any other response must be written into each critter's scripts.

On Navarro, unless I'm misunderstanding your question, the stealth way to enter the base is to use the air vent (the one which leads to Xarn). I always send the Chosen One to Navarro alone and use the "I'm here to join" ploy (I think the only time I did something different was on my very first FO2 play fifteen years ago, when I fought the whole base), so I'm not too familiar with other functionality there. Are you saying you'd like to use Sneak skill to pass the guards, but are prevented from doing so effectively? Whatever you have in mind probably wouldn't be very hard, if you'd like to outline the details.
 
Last edited by a moderator:
On Navarro, unless I'm misunderstanding your question, the stealth way to enter the base is to use the air vent (the one which leads to Xarn). I always send the Chosen One to Navarro alone and use the "I'm here to join" ploy (I think the only time I did something different was on my very first FO2 play fifteen years ago, when I fought the whole base), so I'm not too familiar with other functionality there. Are you saying you'd like to use Sneak skill to pass the guards, but are prevented from doing so effectively? Whatever you have in mind probably wouldn't be very hard, if you'd like to outline the details.

Well yeah, the solo thing is what (I think) everyone uses, and it's also the biggest exploit of the game because there are no skill checks involved whatsoever (iirc all the speedrunners just go straight from arroyo to navarro and pick up some advanced PA). To me it would be far more interesting if convincing the quartermaster required either a speech check, a barter-related bribery option, or require you to sneak by him and steal a keycard or something from him. Maybe I'm alone in this, but I always disliked the fact that it was so incredibly easy to infiltrate a top secret Enclave base nobody in the wastes knows about.
 
I can your point here. Maybe putting a speech check on the Quartermaster would be a good idea rather than the gatekeepers, though. The FOB is required to finish the game, and that means everyone needs to get into Navarro. Boiling down such a fundamental quest to only two options (talk or fight an epic battle) isn't great design, though as you say this would at least be better than the current case (it's a freebie). Perhaps a better design might be:

a) Put a speech check on the quartermaster, so APA can't be obtained for no effort
b) Change the guard at the commander's door-- he'll either let APA wearers or those in a tribal outfit pass as housekeeping personnel to clean the office (my mods have V13 suit as optional attire, using a tribal base appearance), but considers anyone else extremely suspicious.

This way free APA access would be tightened, while still providing a sneaky way to get the FOB (particularly if the Chosen One enters the underground area through the air vent).
 
Boiling down such a fundamental quest to only two options (talk or fight an epic battle) isn't great design, though as you say this would at least be better than the current case (it's a freebie).

The fight wouldn't be that epic iirc given that you just need to deal with the (mainly combat armor I think) guards on the bottom floor though. Also, as Cain puts it in that great lecture of his (looked through it to find the exact part but couldn't find it atm), the design philosophy of Fallout is that, ideally, there should always be at least three skill bound options to every quest through combat, stealth or dialogue. The fact that dealing with the temple of trials "end boss" follows this exact template (either steal the key off him, talk to him with a speech check, or fight him) indicates that the Fallout 2 guys were trying to adhere to the same philosophy. Both the FOB quest and getting APA kind of makes a mockery of it tho, so I'd say making it a stealth or dialogue check or combat affair would make the game more faithful to Fallout's design philosophy.

 
Last edited by a moderator:
I've seen that seminar speech before, but if anyone hasn't watched it, it's definitely worth the time.

The FOB and Navcom quests don't make much sense (I'm moving the Navcom parts to Gecko), but they're both so heavily entangled with numerous major plotlines I feel we should try to make the best of them rather than deprecating or eliminating them. Since even stupid (IN < 4) Chosen Ones have to complete these quests, they can't be too difficult (though of course there ought be more and less difficult paths for players to explore).

There's another factor to consider in regard to this APA/Navarro issue, though-- exploits like these serve as a sort of safety valve, a way for players to adjust the difficulty of the game to their own skill level. That's a fundamental principle of good rpg design, too. Players who don't need or want the APA from Navarro shouldn't be forced to take it, but those who can't progress without becoming a tank should have some sort of option to get help as needed (and as determined by themselves rather than designers). While we certainly shouldn't applaud a player who relied on unsophisticated means in his playing style, on the other hand at least that player is playing the game (rather than giving up and moving on to something else). An analogy here might be zombies in the Resident Evil games-- one can put them all down, but one can also just run away from the zombies in most cases because they're slow and their main threat is numbers/mobs rather than any sort of prowess.
 
An analogy here might be zombies in the Resident Evil games-- one can put them all down, but one can also just run away from the zombies in most cases because they're slow and their main threat is numbers/mobs rather than any sort of prowess.

Well, if you'd make an rpg version of Resident Evil then you would make such an escape contingent upon stats such as agility, or skills such as sneak. Simply leaving a path around skill checks as an intentional loophole just seems poor design to me, but we'll just agree to disagree ;)
 
By chance in my current game I went to the EPA, and picked up Kitsune. I found more problems in her RP script I wasn't aware of before, and while I was fixing those I also wrote some additional dialogue and material for her.

Updated Kitsune: Files available here.

Unlike the version in the main "Pack o' Scripts #1" download, this version of Kitsune signficantly reorganizes local variable usage, so don't use it if you have a game in progress where Kitsune is already on your team. If you haven't yet rescued Kistune from cold storage, you'll have no problems at all using this update. This updated Kitsune script does not affect any other files included in Pack o' Scripts #1.

Though my "no map changes" and "no new global variables" critieria rule out a whole lot of my existing material, I already found almost thirty additional scripts that fall under the criteria I used to pick the materials for Pack o' Scripts #1-- and I'm sure there are many more. When I find enough to get fifty or sixty altogether, I'll release Pack o' Scripts #2.
 
I had an issue with the Kaga encounter. When it opens the dialog and you go to click on an option, it uses your combat target instead of the usual arrow and I can't select anything. The only way I could have gotten out of it was completely exit the game, altogether. I just wound up using the original files over it again, so I don't have to deal with that issue. No other issues with anything else so far, though.
 
I'll take a look at that one, CPL. One of the bigger challenges of modding is anticipating all the various ways each player might try to interact with something, and having functionality for all of them. I may have missed something in that case. You did the right thing just restoring the original files; flexibility is a nice feature of "script only" mods like these that don't lock a person into anything. If anyone else has trouble (hopefully not, but it happens), just do what CPL did-- restore your backed up scripts, and let me know so I can fix whatever problem there is.


Edited:
@CPL

I see what happened-- I did that Kaga change so long ago, I forgot that eckagpal (the script for Kaga's henchman) is a new script I wrote that's not in the RP at all. Sorry, I figured there would be something like that I forgot about. :crazy:

This is easy to fix, but for everyone's benefit let's explain exactly what the problem is first. In your game folder Fallout2\data\scripts is a text file (can be opened with Windows Notepad) called scripts.lst. This file is a record of all scripts used in the game. The order, or line numbers, of scripts.lst gives each script a unique identifier number which the game uses to refer to each script.

In killap's RP 2.3.3, the last script is wibaydr2.int, which is script number 1557 because it's line number 1557 of scripts.lst. The new script eckagpal I wrote is number 1568 in my scripts.lst, but it won't be in yours at all (unless you've done additional modding, your scripts.lst stops at 1557 wibaydr2.int).

These henchmen are created in Kaga's script. So what happended was, Kaga's script made a call to create some henchman, and couldn't assign them the requested scripts because the game only knows about scripts listed in scripts.lst, and eckagpal isn't listed in your scripts.lst. This caused random bizarre behavior, because the game was struggling to figure out what it should do.

Whether you want to do anything about this problem is up to you-- if you add new lines to scripts.lst, your existing savegames won't work anymore, and you'll have to start a new game fresh from the character creation screen. If you've been playing a few hours already, you may just want to wait until next time to try the eckaga1.int and eckagpal.int I included in Pack o' Scripts #1.

On the other hand if you only played a few minutes before meeting Kaga and want to start over, or for anyone who is planning to start a new game anyway, here's the fix:

1) Open the file scripts.lst, found in your folder Fallout2\data\scripts where ever you installed the RP. Use a plain text editor like Windows Notepad to open this file; don't use fancy word processors like MS Word or Open Office Writer, because they will leave all kinds of hidden formatting symbols in the file that will screw up your game.

2) Go to the end of the file. If you haven't done any modding on your own, and haven't used any other RP mods, the last line should say:

wibaydr2.int ; Sierra Base Repair Bay Door (level 4) # local_vars=8

3) This eckagpal script is number 1568. One thing about scripts.lst is that since it uses the line number of each entry to assign a number to each script, the order must be continuous. In other words, since a script will be assigned the number of its line in this file, if we want a script to be assigned number 1568 and the current last line is 1557, this means we also have to fill in empty placeholder lines for 1558 through 1567.

You have two alternatives at this point for fixing the problem.

4a--Harder) If you're handy with script editing, you could decompile eckaga1.int (or use the decompiled script I included in the mod) and change the reference to eckagpal. In other words, you could change your file scripts.lst so it looks like this at the end:

wibaydr2.int ; Sierra Base Repair Bay Door (level 4) # local_vars=8
eckagpal.int ; Kaga Tribal crony #local_vars=5

making eckagpal script # 1558. Then you'd edit the eckaga1 script to use the new reference. In procedure do_setup of eckaga1, there are two lines near the end that say:

LVar1 := op_create_object_sid(16777420, 0, 0, 1568);

and

LVar1 := op_create_object_sid(16777421, 0, 0, 1568);

You'd just want to change these two lines so they instead say:

LVar1 := op_create_object_sid(16777420, 0, 0, 1558);

and

LVar1 := op_create_object_sid(16777421, 0, 0, 1558);

since 1558 would be the line number of eckagpal.int in scripts.lst if using this method. Compile eckaga1.ssl, put the newly compiled eckaga1.int in your folder Fallout2\data\scripts, and you're done.

4b--Easier) If you're not comfortable with directly editing scripts, you could just change scripts.lst instead so Kaga's script will be able to find the henchmen script. If pursuing this method, you'd just edit the text file scripts.lst so the end looks like this:

wibaydr2.int ; Sierra Base Repair Bay Door (level 4) # local_vars=8
00script.int ; placeholder line entry #local_vars=0
01script.int ; placeholder line entry #local_vars=0
02script.int ; placeholder line entry #local_vars=0
03script.int ; placeholder line entry #local_vars=0
04script.int ; placeholder line entry #local_vars=0
05script.int ; placeholder line entry #local_vars=0
06script.int ; placeholder line entry #local_vars=0
07script.int ; placeholder line entry #local_vars=0
08script.int ; placeholder line entry #local_vars=0
eckagpal.int ; Kaga Tribal crony #local_vars=5

then save the file. The game won't care that you don't actually have any scripts called "0*script.int" in Fallout2\data\scripts, in this context all it cares about are the line numbers. You'll now have eckagpal.int properly registered as script number 1568, which is what Kaga's script looks for when creating the henchmen. If you do your own modding in the future, or use some other mods that add completely new scripts to the game, you can replace those "0*script.int" lines with something useful whenever you like, and you won't have to start a new game afterward since the lines will already exist. If you already have mods that use script number 1568, you'll need to use a variation of method 4a instead.

Whether one chooses method 4a or 4b depends on one's particular circumstances and abilities; both will work with equal effectiveness. 4b is the simpler method for those who haven't previously added new scripts to the game, while those who have done some modding of their own will likely want to use method 4a.

As I said either way you'll have to start a new game after changing scripts.lst, so if you don't want to restart just keep using the regular RP eckaga1.int script and wait to try my updated version next time you start a new game. There are two different skill checks needed to make peace with Kaga. To even get the diplomacy ball rolling, you'll need to have Charisma of 7 (or Charisma 6 and the Good Natured trait or the Negotiater perk), and to seal the deal you'll need Speech of at least 75 (which is fairly high considering you usually meet Kaga right after stepping out of Arroyo the first time).

Please let me know if there are any other issues with Pack o' Scripts # 1.
 
Last edited by a moderator:
More bad news: During the meet up with the Umbra Tribe trader, the game crashed when I went to examine the stimpak box. I replaced with the original and no trouble. Actually, at first I just replaced those script files first but forgot to replace those MSG files and it still crashed, until I fixed that too.

It was strange type of crash, not the usual go to desk top or everyone's favourite one that says message can't be read, blah, blah, blah, but I just heard a dinging noise and it just froze in place. I had to go to task manager to exit out the program. Then again, this could be the way it crashes on my Windows 8.1 laptop. I use to have a desktop PC that had Vista and I know they both behave differently. In fact, this Windows 8.1 really pissed me off for a couple of days after I first got the damned thing until I figured it out. :razz: Microsoft loves to add extra annoying bullshit that I have to shut off every time they put out something, it seems.
 
@CPL


That crate problem is one that slipped past me. This should fix the problem. In the folder Fallout2\data\text\english\dialog (or the folder msg in the zip file download for this mod) is the text file tribei2.msg. Using a plain text editor like Notepad, open this file and change the following line:


{207}{As you look through the contents of the crate, Myron discreetly nudges you and shakes his head negatively. Something must certainly be wrong with the merchandise.}


so it instead looks like this:


{207}{}{As you look through the contents of the crate, Myron discreetly nudges you and shakes his head negatively. Something must certainly be wrong with the merchandise.}


In other words {} is missing right after {207}.


After waiting a bit to see if there are any more issues, I'll update the download files with this fix. The skill check to determine if the stimpacks are fake is now:


--Perception 9 or 10, or
--Myron is in the Chosen One's party, or
--Vault City Training perk, or
--Master Trader perk, or
--Medic perk, or
--Science at least 70, or
--Doctor at least 85, or
--First Aid at least 100.


At the point in the game where the Chosen One is most likely to do the quest, these seem like reasonable requirements to me, but perhaps they could use some further adjustment.


It's weird how different operating systems behave so differently in regard to things like this. I use Windows XP, and sometimes these brace issues don't give any noticeable error at all unless the specific line number with a problem is called, while other times I'll just see "Error" in the message box when looking at an item but the game keeps on chugging just fine. I don't really understand Microsoft-- since Windows Vista they've added zillions of lines of code to Windows to directly interfere with end-users attempting to easily access and use their own files ("security protocols"), but on the other hand they toss in stuff like you mentioned where a trivial hiccup now becomes a program-crashing disaster. Presumably the reason is to "encourage" people to open their wallets and buy all that wonderful, exciting new software instead of using old programs, since everybody agrees "new is awesome but old sucks, just because." If ever have to stop using WinXP for some reason, I'm definitely switching to a non-Microsoft operating system.
 
Last edited by a moderator:
OK, got that. I've had similar issues before when I modded any MSG file, or the World Map file. The last time I was changing the numbers of NPCs on combat encounters and somehow wind up with 100 mole rats in one encounter. I don't know how in the hell I did that, since I didn't write that many in. That was a bit much, considering it was the start of the game, and I was on my way to Klamath and poorly equipped at the point in time. That's why it always pays to back up and even back up your back ups. That and not mess with a lot of stuff when you're either half asleep, or bored and drunk, which I've had a tendency to do. :razz:

Yeah, I know what you mean with the Microsoft stuff. My all time favourite was the User Account Control settings since Vista. That's the first thing I shut off when getting a new set up. :roll: "Are you sure you want to do this?" No, I'm a friggin' moron and shouldn't even be allowed to wipe my own arse unsupervised. :razz: Then again, dealing with those annoyances taught me a lot about the inner working of a computer years ago when I started to use them. I've known quite a few people that don't even know how to clear out their own history.

You should see the mess when I helped them clean it up when it got to the point of barely even starting up. It took my girlfriend (who can actually build computers) and I over 2 hours to get this one back in relative working order. It would have been easier to just wipe the hard drive and start over, but the dude didn't have any back ups and had important business stuff on the and I don't think he had the original boot disk. I think he got it from someone else who also never wiped the hard drive and they had crap on their going back 10 years probably. There were at least a half a dozen anti virus programs on there and other crap like clean my PC programs loaded with garbage, since he was a total luddite with the thing and kept downloading stuff to think it will run better. Basically, we just cleaned out what we could, got rid of all of the crap and installed C Cleaner and set it up to clean out everything and shut down. So all he has to do is use that when ever he uses the computer and done for the evening. That was certainly an adventure.
 
Last edited:
@Endocore: A have a couple of questions:

1) what exactly did you change with the doors? I recently did a door rework of my own (flexible script, just like yours) but it's in a test phase (only one actual script tested in-game). It has following features:
- traps can be set on doors (unlocked original code)
- traps produce explosion sound (since it's explosion damage), though no visual fx
- lock can be broken using a crowbar (unlocked original code)
- doors have new system for damage instead of the old one: they have Health and Damage Threshold (Wood doors will have 0 threshold). Health are stored in local var (which previously was used to count how many times you tried to blow it up:facepalm:)
- you can assign a watching critter (via macro) who will attack you, if he sees you actively trying to destroy the door

2) have you fixed ALL the doors in the game or just one test script?

3) did you add any additional global variable or normal script with your mods?


4) can I include some of your changes into my mod?

5) what is the benefit of using another compiler? The syntax looks more or less the same, but you can't use source scripts (with all macros the use). While with sfall compiler you can compile all original sources and use new syntax features.

Thanks

Edit: ok, I looked at the sources. No offence, but as a coder I can say one thing - don't use such code, ever.
  • all script code in one file (difficult to navigate)
  • no constants, everything in plain numbers - code completely unreadable (time consuming to understand)
  • no macros or additional procedures - just walls of repeated code! (error prone)

Considering the above, following statement looks invalid:
Modders, please do everyone a favor and use my flexible template instead (ssl now updated with documentation compared to the version I posted here months ago).

Modders, don't use such code, please...

PS: please don't take my post personal, I really appreacite people spending a lot of their time fixing the game, etc, etc. However, for everyone benefit I advise to consider using the proper script sources and applying the fixes there. I would really love to see more interactivity for all locked doors in the game.
 
Last edited:
Back
Top