Jump to content

LarannKiar

Premium Member
  • Posts

    1394
  • Joined

  • Last visited

Nexus Mods Profile

3 Followers

About LarannKiar

Profile Fields

  • Country
    United States

Recent Profile Visitors

127680 profile views

LarannKiar's Achievements

Mentor

Mentor (12/14)

91

Reputation

  1. It is hardcoded in the EXE. Game Setting uVehicleUnlockPrice (default is 25000).
  2. The Actor Background Process Patches (part of the optional feature Engine Load Optimizations of Starfield Engine Fixes) had some sort of conflict with mods that affected companion AI. I added the Compatibility Mode in v5.5 and haven't received reports about this issue since. See bEngineLoadOptimizerActorBackgroundProcessPatchesCompatibilityMode. (It's still the longest setting but this was the only way to keep the setting names consistent). It could be caused by something else as v5.5 was released in October for v1.14.70.
  3. You may have "esp" in the file path instead of "esm". E.g. \Data\sound\voice\ModName.esp\robotmodelavasco instead of \Data\sound\voice\ModName.esm\robotmodelavasco.
  4. You can register the script for OnPlayerTeleport and OnMenuOpenCloseEvent, start a short timer in OnMenuOpenCloseEvent when the PipBoyMenu closes. If OnPlayerTeleport is received before the timer expires it's probably a Fast Travel event.
  5. As far as I know, there's no weapon state change event exposed to vanilla Papyrus and the animation event was used by BGS too. I think I can add Action event to Garden of Eden SE in an update if dependency isn't an issue but if the native code sends animation event unexpectedly there's a chance Action event would be sent too and you'll have to filter the events in Papyrus with if statements anyway.
  6. I added GetNthItemAccuracy/RateOfFire/Range, GetNthItemDamageTypes/Resistances, GetNthItemBipedSlots, GetNthItemHasBipedSlot, GetNthItemsBipedSlotsOverlap and IsCellBuffered() (regarding the other topic) to Garden of Eden SE v19.3.
  7. The cell buffer, preloader and combat AI are quite complex but basically, you need to force equip the weapon on the NPC to force them to use it in combat. (Either equip the weapon on them in the ContainerMenu or call EquipItem() with abForceEquip = true). The No AI Acquire flag (Render Window >> Reference) causes the combat AI to skip the ref from the "best nearby weapon search". (And SetNoAIAcquire() from Garden of Eden SE). As far as I remember, there's a game setting to control the number of NPCs that can travel through load doors in combat. Note that companions can also be teleported ("warped") to the player due to the AI Package >> Treat As Player Follower flag.
  8. Have you tried the Public flag? Edit: sorry, for Exterior Cells, it is only possible by editing the references themselves.
  9. If you wouldn't like to add support for mod added collectibles, you can export the coordinates of nearby vanilla persistent references and place "dummy" object references at their coordinates with PlaceAtMe() and fill the dummy references into the RefColls. It may work if all cells the vanilla collectibles can be found have a persistent reference that you can use as origo but probably it's not worth the effort.
  10. I mostly receive requests for Starfield mods but I'd like to update some of my Fallout 4 mods too and these functions were good practices. It's also a pleasant change to write Papyrus scripts again. Garden of Eden doesn't have "SetNthItemValue" and while F4SE's Form SetGoldValue can change the value of Loose Mod MiscItems, that doesn't change the value of the item because that is determined by the iValue Property Modifier of the ObjectMod and not by the value of the Loose Mod. Since F4SE doesn't have "SetPropertyModifiers", you can't change iValue ingame. So, you have to create an ObjectMod in the Creation Kit, add your iValue to it and attach it to the target items with a script. Here's a simple function.
  11. I thought Instance Data can return the BipedSlots array but it appears there's no such function. I think I can add it to Garden of Eden if you're interested. (Garden of Eden currently has DoArmorSlotsOverlap(Armor akArmor1, Armor akArmor2) which returns True if equipping Armor1 on the Player Actor would result in unequipping Armor2. In theory, it should work). Armor[] Function GetMatchingArmors(ObjectReference akInventoryOwner, Armor akArmor) Armor[] Armors = new Armor[0] If !akInventoryOwner Debug.MessageBox("Error: akInventoryOwner is None") Return Armors EndIf If !akArmor Debug.MessageBox("Error: akArmor is None") Return Armors EndIf Form[] InventoryItems = akInventoryOwner.GetInventoryItems() Int InventoryItemsSize = InventoryItems.Length If InventoryItemsSize == 0 Debug.MessageBox("Error: InventoryItemsSize == 0") Return Armors EndIf Int Index = 0 While Index < InventoryItemsSize Armor LoopArmor = InventoryItems[Index] as Armor If LoopArmor && akArmor != LoopArmor && GardenOfEden2.DoArmorSlotsOverlap(LoopArmor, akArmor) Armors.Add(LoopArmor) EndIf Index = Index + 1 EndWhile Return Armors EndFunction
  12. Yes, if the Persistent flag is set in the record header the reference "won't become unpersistent when the aliases are cleared". Quest Alias >> Fill Type >> Forced Reference >> automatically sets the Persistent flag. Quest Alias >> Fill Type >> Find Matching Reference >> doesn't set the Persistent flag but the Story Manager may not be able to find the reference.
  13. I see, thanks for the article. I remember I read it last year but I had to reread it . I checked the event handlers in the native code and both OnLoad and OnUnload are called from the same function. BGS wanted to restrict what references can send the event and for some reason a function used to filter the references looks for WorkshopItemKeyword linkage too. I wrote a quick fix, I'm currently testing it.. (OnUnload works but I'll need to make sure other vanilla restrictions don't break).
  14. Interesting.. I can't remember if it worked earlier but it might have now that you mention it.. (We shouldn't receive OnLocationChange though when entering the interior as the exterior is in Cydonia too. Maybe BGS fixed it). I answered your question about BSInputEvent from Cassiopeia not long ago so if dependency isn't an issue you can use ActorCellChangeEvent instead. Note: the native code actually sends two events (when the player leaves akPreviousCell and when enters akCurrentCell; originally, when I used this native event only in SFSE plugins it was sent once as far as I remember). I didn't want to change this behavior so you may need to filter the cells too.
×
×
  • Create New...