Jump to content

Editing Pip Boy functions


palasprince

Recommended Posts

Grr.

 

I'm not having any luck. I experimented with it and can disable the r button in game mode so I can't ever reload, but if I use the same exact code and specify MenuMode instead of GameMode it does Nothing. I can still repair items, even after wating several minutes and entering and leaving the pipboy a few times. Hmm.

Link to comment
Share on other sites

Grr.

 

I'm not having any luck. I experimented with it and can disable the r button in game mode so I can't ever reload, but if I use the same exact code and specify MenuMode instead of GameMode it does Nothing. I can still repair items, even after wating several minutes and entering and leaving the pipboy a few times. Hmm.

It's quite a coincidence that I happened on this thread, because I don't often browse the Nexus forums, and I actually did exactly what you're looking for two days ago :)

 

After discussing some other ideas for modifying the repair system, I wanted to see if I could do this better than I've seen elsewhere. I made a quick script that allows you to disable and enable PipBoy repair anytime, also completely removing the "R)" from the screen.

 

Here's a screenshot: http://www.fallout3nexus.com/imageshare/image.php?id=5908

 

It's late for me right now, but tomorrow I can clean it up and upload it to Nexus.

Link to comment
Share on other sites

I just took a quick look, and I think the script is really all you need to get the idea, and I had already made it pretty:

 

ScriptName FOOKNPRNoPipBoyRepairScript

Short PipBoyRepairDisabled


Begin GameMode

if PipBoyRepairDisabled
	SetUIString "InventoryMenu\_PCButton_R" "IM_RepairButton"
	SetUIFloat "InventoryMenu\GLOW_BRANCH\IM_MainRect\IM_ButtonRect\IM_RepairButton\visible" 1
	ShowMessage FOOKNPRRepairEnabledMsg
	set PipBoyRepairDisabled to 0	
else
	SetUIString "InventoryMenu\_PCButton_R" " "
	SetUIFloat "InventoryMenu\GLOW_BRANCH\IM_MainRect\IM_ButtonRect\IM_RepairButton\visible" 0
	ShowMessage FOOKNPRRepairDisabledMsg
	set PipBoyRepairDisabled to 1
endif
PlaySound UIRepairWeapon
StopQuest FOOKNPR

End

I was putting this in a quest script which I was going to control elsewhere, setting the PipBoyRepairDisabled variable accordingly - that's why it looks this way. But the code you're looking for is in the if/else block. The first part enables repair and the second part disables it. I only tested this enough to verify that it works, so I can't be certain that there are no issues, but I don't think there are.

 

I'll probably still post this on my Nexus mod page as a resource/example, but you can probably get what you need here. Enjoy!

Link to comment
Share on other sites

Hmm. I see. I experimented with the SetUIString a little bit, but you'll have to enlighten me at some point as to how you found the string that needed to be changed. I don't have a folder called InventoryMenu so I'm sure that's part of my problem. I suppose somehow I need to extract the um.. .bsa files?

 

At any rate I can clearly see how that disables the ability to see where it says repair, but from what I see it doesn't change the functionality of pressing r so you would still be able to actually repair items? Of course I may be missing something... Who know, I'm going to go play around with that, thanks a lot.

Link to comment
Share on other sites

It doesn't specify folders, but the xml structure of the UI code. Trust me, you don't need to do anything else in this case. All you need are two lines:

 

SetUIString "InventoryMenu\_PCButton_R" " "
SetUIFloat "InventoryMenu\GLOW_BRANCH\IM_MainRect\IM_ButtonRect\IM_RepairButton\visible" 0

 

The first line is removing the binding from the 'R' key, disabling the repair function. The second line toggles the visibility of the repair "button", that is the "R)" displayed on screen.

 

If you want to turn it back on, use the two lines:

 

SetUIString "InventoryMenu\_PCButton_R" "IM_RepairButton"
SetUIFloat "InventoryMenu\GLOW_BRANCH\IM_MainRect\IM_ButtonRect\IM_RepairButton\visible" 1

 

Cipscis mentioned it above, but just a reminder - these are FOSE functions, so you need FOSE installed and also to be launching GECK and FO3 with the FOSE launcher. You can see how to do that with the GECK here.

 

 

I didn't test it, but if you wanted to you should be able to use this script in MenuMode too, immediately updating the UI - but it sounds like you're only interested in disabling it.

 

 

EDIT: As for how I know which strings to find, I learned from the best. :)

Link to comment
Share on other sites

I just tested DisableKey via the console and I see exactly what you mean. Although IsKeyDisabled returns the correct value (i.e. the key is disabled) it still seems to work while the inventory menu is open. I'll bring this up in the FOSE thread over on the official forums.

 

Cipscis

 

EDIT:

 

Just mentioned it in the FOSE thread. If anyone's interested, here's the post - Post

 

Cipscis

Link to comment
Share on other sites

Oh it's XML >< I knew someday I'd have to muck around with that. Lol.

 

For my purposes here tho I think I'll blatantly rip you off haha. Though if I ever get this mod to a releasable point you'll def be mentioned and credited. :)

 

And looking at it with your extra comments it makes a lot more sense how that works. For some reason I was thinking they were slightly redundant one hiding the "R)" and the other hiding the "Repair" on the UI. But I at least understand how your script works, though at this moment I couldn't replicate it ><

 

So who's the best!? I must learn! LOL j/k I'm sure I should at least start with some of the more basics of XML before I dive any further into that. Thankfully though the rest of what I need to do is basic 3d modelling without animations and some changes inside the G.E.C.K.

 

Hmm... Actually. What if when you clicked on the workbench it pulled up a screen pretty much like the PIPBoy screen. XD I think I'm getting ahead of myself I'll get these basics working first.

Link to comment
Share on other sites

Hmm... Actually. What if when you clicked on the workbench it pulled up a screen pretty much like the PIPBoy screen. XD I think I'm getting ahead of myself I'll get these basics working first.

Yeah, that the kind of thing I was thinking of trying to do. Hey Cipscis, can you launch a specific menu, like the PipBoy inventory screen, from script? If so, this would work really nicely.

 

 

BTW palasprince - I linked to "the best" in my previous post: DarN. I wouldn't have been able to figure out the UI stuff without his help, and it's still pretty difficult to follow.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...