Jump to content

user826

Premium Member
  • Posts

    154
  • Joined

  • Last visited

Everything posted by user826

  1. Hey, everyone. I'm encountering a strange issue where if I place a modded weapon into a custom container, the weapon has all its mods removed. One of my personal player homes has gun cases containing a weapon and its mods. When I loot the container in game, apply the mods, then place the weapon back in the case, the mods disappear and I'm left with an unmodded weapon. This only happens with that weapon's specific gun case, and placing the modded weapon into a different gun case or a locker in the same cell doesn't cause this issue. This never happened with player homes I created in the past. The only thing I did differently this time was that I used FNVEdit to modify the container's contents instead of the GECK. Might this be the problem? And if so, how can I fix it? I already tried deleting the container record from the plugin and creating a new one with the same name using the GECK but the issue is still occurring.
  2. The wiki's wording implied to me that StartRadioConversation would "cut through the static" and force the station to broadcast a single topic. I also looked at the only usage of StartRadioConversation that I could find in the base game, where Tabitha begs you not to take Raul away. In that quest, the Black Mountain Radio transmitter has "SetBroadcastState 0" called on it, so I figured since the base game does it that way, it should work for me as well. As for the activator, I was following the example of the base-game radios that start on. They all have a script (VintageRadioStartOnSCRIPT) attached that has an OnLoad block wherein it activates itself using "set MySelf to GetSelf, Activate MySelf" I did the same thing with my OnLoad block, but it didn't work.
  3. Looking back, I *think* the solution was two-fold. First, make sure that the "Continuous Broadcast" tickbox in the talking activator is checked, even though the GECK wiki explicitly says that "StartRadioConversation" will start a conversation on a station that is not currently broadcasting. Secondly, make sure the activator script has a line to activate itself, or else it'll never be "on" to receive the signal. I had originally handled this through an OnLoad block, telling the activator to always be "on", but on a whim, I decided to click on the activator in the console and type "Activate" directly, and it started working.
  4. It's gotten worse. Now I can't even hear anything through the Pip-Boy. All the base-game and DLC stations work fine, but even though my custom one shows up on the Pip-Boy, selecting it plays silence. I don't know why it stopped working. EDIT: OMFG it works! I don't know what I did or how I fixed it, but it suddenly started working!
  5. Hello, everyone! I'm trying to make a jukebox that plays tracks on demand using a non-continuous broadcasting radio station. I thought it would be pretty simple, but for some reason, StartRadioConversation isn't doing the trick. I have a talking activator set up with a broadcast range of "Everywhere", with a unique voice type that the radio quest is referencing, and yet calling "JukeboxSpeakerREF.StartRadioConversation MyTrack01" isn't producing any sound - even though I have the same sound file in all three possible formats (128kbps CBR MP3, 16-bit mono 44.1kHz WAV, 96kbps mono OGG) as insurance. The sounds play fine in the GECK, so I know it's not the formats. I also tried setting up the talking activator as a continuous broadcast, looping two topics of silence which I figured I could then interrupt with the appropriate track, but again, StartRadioConversation does nothing. And it's not like my activator script is overly complicated either: scn aaaSCPTJukeboxActivator int InitState begin OnLoad if (InitState == 0) Activate set InitState to 1 endif end begin OnActivate Player JukeboxSpeakerREF.StartRadioConversation MyTrack01 end Anybody have any ideas as to what's going wrong? EDIT: I've discovered that the problem might be that the talking activator isn't broadcasting through the world activator for whatever reason. As a troubleshooting measure, I tried making the station a Pip-Boy receivable continuous broadcast, and the track plays fine through the Pip-Boy. But, when I use the jukebox activator I made, no joy.
  6. I only tried it on my custom companion and not any vanilla followers, but as far as I can tell no, "GetAV CarryWeight InventoryWeight" still returns 0 even if the actor's SetPlayerTeammate state is 1.
  7. If anyone is curious, I found a vanilla-compatible workaround solution. Experimenting using one of my custom followers, I discovered that when a follower is overburdened, in addition to playing their FollowersOverburdened dialog topic, a message pops up in the corner of the screen that says, "<Follower Name> can't carry any more." and the game prevents you from placing any items into the follower's inventory that would put them over their carry weight limit. The message seems to be hard-coded into the game because I never wrote any message that says that, nor can I find one in the GECK. So, long story short, by using "BackPackREF.ForceAV CarryWeight 50", for example, you can cap the maximum capacity of the bag at 50 pounds, and if you try to put more than 50 pounds worth of stuff into the bag (technically the dummy NPC's inventory in this case) the game will automatically prevent it and show the message that "Backpack can't carry any more." The downside here is that I can't display how much of the carry capacity is currently being used, but it basically does what I wanted without any extra dependencies. Hooray!
  8. Hmm, no joy. The topic isn't referenced by anything, according to FNVEdit, and the Use Info in the GECK comes up empty.
  9. I go for a minimalist approach to my mods and don't want an NVSE dependency, which is why I don't use those functions even though I have NVSE installed to run Tale of Two Wastelands. I was really hoping that this could be done using vanilla GECK only. But again, this raises the question then, if GetAV InventoryWeight doesn't work on NPCs, how do NPC companions know when to speak their overburdened dialog topic, and is there a way I could co-opt that to do what I want? I'm thinking it could be done by having a script that runs on startup to do something like "BackPackREF.ForceAV CarryWeight 50" and then have a condition like "if BackPackREF.IsOverburdened == 1" and then change the player character's inventory weight accordingly. This all depends on figuring out how the companions know they're overburdened though.
  10. I don't quite understand what you mean. I thought that the point of naming a persistent reference was so that you could reference it in scripts globally. I'm not trying to run this script in the console, it's attached to a piece of armor that the player has to unequip and drop into the worldspace before they can interact with it. I understand that running BackPackREF.GetAV <whatever> won't work if I typed it into the console because of the missing prid, but that's not what I'm trying to do here. I don't understand the relevance. In any case, is there a way to check GetRefVariable if I don't have NVSE? Also, the dummy NPC I'm using has no gear or starting inventory whatsoever, so I *am* expecting the initial value to be 0. That first ShowMessage call is returning the correct value. I was assuming that once I put something in the bag (in actuality, placing it in my dummy NPC's inventory) and then checking the current weight again, it would no longer be 0. But no matter how much I put in the inventory, over several interactions, the value won't update. My worry, like in the edit that I posted under the script, is that GetAV InventoryWeight doesn't work on NPCs because I opened the console, clicked on a Goodsprings Settler to get his prid, and then entered "GetAV InventoryWeight" and it still returned 0, even though he had about 8 lbs. worth of gear and weapons in his inventory at the time. Meanwhile, typing "Player.GetAV InventoryWeight" immediately afterwards returned the correct value of 7.53.
  11. Yes, as mentioned above, I have a dummy NPC in a hidden cell that is named BackPackREF.
  12. Hey, everyone! So, I've got a dummy NPC in a hidden cell that I'm using as a storage container. I'm trying to make a backpack that doesn't just increase the player's carrying capacity by a fixed amount, but rather actually has a limited storage capacity. Problem is, calling "DummyREF.GetAV InventoryWeight" in my script always returns 0. It doesn't matter if I'm setting it as a variable (i.e. "set CurrentWeight to DummyREF.GetAV InventoryWeight") or if I'm using it in a condition (i.e. "if DummyREF.GetAV InventoryWeight > 50"), none of my scripts will trigger because the value always returns 0. The dummy NPC does not have an actor script, has no AI packages, and none of the flags (i.e. No Low Level Processing, Essential, Respawn, No VATS Melee, etc.) are set. I'm calling "DummyREF.OpenTeammateContainer 1" in my activator script to open the inventory, which seems to be working fine. It's just that nothing else that relies on GetAV InventoryWeight works. Here's what my script looks like at the moment: scn aaaSCPTBackPackActivator int Button int BackPackFull float CurrentWeight float PreviousWeight int InvWeightRestore begin OnActivate Player set CurrentWeight to (BackPackREF.GetAV InventoryWeight) ShowMessage aaaMESGBackPackMENU CurrentWeight aaaGLOBPackWeightMax end begin OnAdd Player Player.EquipItem aaaARMOBackPack 0 1 end begin GameMode set Button to GetButtonPressed if (Button == 0) BackPackREF.OpenTeammateContainer 1 elseif (Button == 1) Player.AddItem aaaARMOBackPack 1 if (BackPackREF.GetAV InventoryWeight > aaaGLOBPackWeightMax) set BackPackFull to 1 set CurrentWeight to (BackPackREF.GetAV InventoryWeight) Player.ModAV InventoryWeight CurrentWeight set PreviousWeight to CurrentWeight elseif (BackPackREF.GetAV InventoryWeight <= aaaGLOBPackWeightMax) && (BackPackFull == 1) set BackPackFull to 0 set InvWeightRestore to (0 - PreviousWeight) Player.ModAV InventoryWeight InvWeightRestore endif Disable MarkForDelete endif end Any insight is appreciated! EDIT: Using the console to run "GetAV InventoryWeight" on some base game NPCs also returns 0, which suggests that this actor value only works on the Player. But then that raises the questions, how do companions know when to speak their overburdened dialog? And can I use that as a condition check instead?
  13. @UnvalidUserName - That's a good idea! I was looking at the wiki entry for the GetWeaponAnimType, and it has a return value for unset or unrecognized Animation Types. Maybe I can use that instead, although I'm not sure what other weapons might trigger it. EDIT: No joy. The perk didn't trigger with GetWeaponAnimType == 0, and running "player.GetWeaponAnimType" in the console returns 1 (Hand to Hand), so it SHOULD be considered an Unarmed weapon, yet it's also not.
  14. It's for a Perk condition, although I suppose the function should still work in that scenario. Is there a way to do it using only vanilla GECK, though? I don't use NVSE in my mods. EDIT: I had the idea to go in-game, equip the fists, and run the command in the console. However, it returns nothing, which means the game doesn't consider the fists to be an equipped object at all.
  15. Hey, everyone! Can anyone tell me if there's a way to detect whether the player is using their bare fists? Apparently, the "Fists" weapon is actually unused in the game, and bare fists do not register as Unarmed weapons, so my perk isn't triggering properly. Any help is appreciated!
  16. Hey, everyone! I'm having an issue with Blender that I only just recently noticed and can't seem to recall experiencing before. It seems that now whenever I use the Knife tool to cut the mesh, the faces lose their smoothing. The Mesh >> Faces >> Set Smooth option has never worked for me and still doesn't when I tried it in this instance. I completely uninstalled and re-installed, thinking I'd accidentally hit some kind of keyboard shortcut to cause this, but it still does it after reinstalling. Does anyone know what the issue is and how to fix it? Before (Vanilla Silenced .22 Pistol mesh): After (Used the Knife tool to cut the barrel, and now notice the striations):
  17. I didn't even try it. My original script worked fine, just the part that I abbreviated as ";The stuff I want to happen daily" was a formula to calculate the day of the week based on the in-game year, month and day. It was not returning the correct value, but the reason was because the formula I entered to calculate it was wrong, therefore it returned an incorrect result. It had nothing to do with the section of the script that was supposed to make it run once a day. That part was working fine, but I only thought it wasn't working because the day of the week result was not incrementing by one at Midnight. Once I corrected the day of the week calculation formula, it started returning the expected result. Nothing is broken, everything works fine.
  18. Well, it was working fine before, it's just that my formula was not producing the expected result because I typed it in wrong. The original script I posted was fine.
  19. Well, I don't use JIP when I make mods (I only have it because TTW requires it to run), but it's nice to know there is a solution. Thanks!
  20. Never mind, it turns out everything was working correctly, but my math was wrong for the script that I wanted to run daily. It was doing exactly what I told it to do, but the formula was wrong, so the result I got was not the one I was expecting.
  21. I have a quest script that I want to run once a day, but it refuses to trigger when a new day begins and I don't understand why. My script is attached to a quest that's set to run when the game starts, with a priority of 75 and a processing delay of 1. The script looks like this at the moment: scn MyScript int LastDay begin GameMode if (GameDaysPassed - LastDay >= 1) set LastDay to GameDaysPassed ;The stuff I want to happen daily endif end I also tried using the following GameHour trigger (which has worked for me in the past) to no avail: scn MyScript int DoOnce begin GameMode if (DoOnce == 0) ;The stuff I want to happen daily set DoOnce to 1 endif if (GameHour >= 0) && (GameHour < 1) if (DoOnce == 1) set DoOnce to 0 endif endif end Is there some simple mistake that I'm just not seeing? Right now, it returns the correct value when I start the game, but if I wait 24 hours, or use the console to set the GameHour to 23.99 and wait a few seconds for the clock to tick over, the value doesn't change. It's supposed to increment by one, but it's not happening. Any insight would be greatly appreciated!
  22. Leaving the integrated graphics disabled actually negatively affects the function of the laptop, strangely enough. YouTube videos get really choppy and the fan runs constantly, making a lot of noise. I think I'll only disable it when I need to run Blender and leave it on the rest of the time.
  23. SUCCESS! It turns out that having both the integrated graphics chip and the GPU running at the same time was the problem. While I wasn't able to disable the integrated graphics chip in BIOS, I just did it using the Device Manager and it worked! Now, I can toggle it off whenever I need to use Blender and then turn it back on when I'm done. Thanks so much for your patience and help with this issue! EDIT: I found a better, more permanent solution and thought I should document it for posterity. My laptop has an NVIDIA GPU, but there may be a similar option for different manufacturers. In any case, right-click on the desktop and select NVIDIA Control Panel. When the new window opens, select "Manage 3D Settings" from the pane on the left. In the pane on the right, select the "Program Settings" tab. Here, you can add a special case handling option for Blender. Click "Add" beside the drop down menu under step one and browse to wherever you installed blender.exe. Under step two, choose "High-performance NVIDIA processor" from the drop-down menu. This tells the computer to always run Blender using the GPU instead of integrated graphics, and will save you from having to manually disable the integrated graphics chip every time you start up Blender.
×
×
  • Create New...