Jump to content

tomahawk6633

Members
  • Posts

    18
  • Joined

  • Last visited

Nexus Mods Profile

About tomahawk6633

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

tomahawk6633's Achievements

Apprentice

Apprentice (3/14)

0

Reputation

  1. Ah, i missed that, it happens whe you just copy the examples and don't read the arguments. One issue solved. This certainly looks too good to be real. Short and elegant. Will certainly give the fight to implement it. Thanks.
  2. Hello. I finally got some time to work on a mod that i'm very excited about. It's basically a mod that counts the player as a suspect of a crime if they were seen before and/or after committing a crime. Here is a schematic explaining how it works: Schematic The idea is to check whether if the player is being spotted before and after a crime is committed. Why? well, in vanilla Skyrim, the player is only found guilty of a crime if they are detected in the act. But what if there is a way to consider the player suspect of a crime moments before and/or after a crime is committed? This will force the player to be cautious and sneaky before attempting some dirty stuff. In the vanilla game you can enter a house, their owners see you and even address to you, you go to their bedrooms and as soon as you can get hidden you can start stealing or murdering without any consequences as long as nobody detects you. With this mod, if people sees you before or after you commit a crime, you will become a suspect and justice will come to you eventually if you are not careful enough. Now i've made three quests: One for the aliases to get the witness and/or the victim, one that controls the system retrieving the aliases and working with the actions the player does and calling the ambush mechanic when needed, and a third one that manages the ambush. So far the mod works as intended, and it's a game changer. Currently i need help with these: 1- About the ambush mechanic, is there a way to spawn the characters behind the player? also out of their sight? i searched for a method but couldn't find any, well maybe there are some functions that could do the trick but i couldn't find any examples. Here is the code that i use for the ambush: Scriptname AmbushQuestScript extends Quest Actor Property PlayerRef Auto GlobalVariable Property AmbushTimer Auto GlobalVariable Property MurderBounty Auto GlobalVariable Property StolenGoodsValue Auto GlobalVariable Property BountyValue Auto GlobalVariable Property WillGetAmbush Auto Location Property EastmarchHoldLocation Auto Location Property FalkreathHoldLocation Auto Location Property HaafingarHoldLocation Auto Location Property HjaalmarchHoldLocation Auto Location Property PaleHoldLocation Auto Location Property ReachHoldLocation Auto Location Property RiftHoldLocation Auto Location Property WhiterunHoldLocation Auto Location Property WinterholdHoldLocation Auto Location Property DLC2SolstheimLocation Auto ActorBase Property MercSolitude Auto ActorBase Property GuardSolitude Auto GlobalVariable Property ATimerShort Auto GlobalVariable Property MurderCount Auto GlobalVariable Property TheftCount Auto SPELL Property Invisibility Auto Faction Property CrimeFactionWhiterun Auto Faction Property CrimeFactionHaafingar Auto Faction Property CrimeFactionHjaalmarch Auto Faction Property CrimeFactionReach Auto Faction Property CrimeFactionEastmarch Auto Faction Property CrimeFactionWinterhold Auto Faction Property CrimeFactionFalkreath Auto Faction Property CrimeFactionRift Auto Faction Property CrimeFactionPale Auto Faction Property DLC2CrimeRavenRockFaction Auto GlobalVariable Property ATShortMin Auto GlobalVariable Property ATShortMax Auto Actor Property InvSolitude Auto Actor Property InvWhiterun Auto Actor Property InvMorthal Auto Actor Property InvMarkarth Auto Actor Property InvSolstheim Auto Actor Property InvWindhelm Auto Actor Property InvWinterhold Auto Actor Property InvFalkreath Auto Actor Property InvRiften Auto Actor Property InvDawnstar Auto ActorBase Property MercDawnstar Auto ActorBase Property MercFalkreath Auto ActorBase Property MercMarkarth Auto ActorBase Property MercMorthal Auto ActorBase Property MercRiften Auto ActorBase Property MercSolstheim Auto ActorBase Property MercWhiterun Auto ActorBase Property MercWindhelm Auto ActorBase Property MercWinterhold Auto ActorBase Property GuardDawnstar Auto ActorBase Property GuardFalkreath Auto ActorBase Property GuardMarkarth Auto ActorBase Property GuardMorthal Auto ActorBase Property GuardRiften Auto ActorBase Property GuardWhiterun Auto ActorBase Property GuardWindhelm Auto ActorBase Property GuardWinterhold Auto ActorBase Property GuardSolstheim Auto GlobalVariable Property AmbushGoing Auto GlobalVariable Property GotAmbushed Auto Event OnInit() int Timer = AmbushTimer.GetValueInt() Self.RegisterForSingleUpdate(60) Debug.Notification("Eyes are watching you!") endEvent Event OnUpdate() int Timer = AmbushTimer.GetValueInt() int TimerShort = Utility.RandomInt(ATShortMin.GetValueInt(), ATShortMax.GetValueInt()) If WillGetAmbush.GetValue() == 1 Debug.Notification("Checking locationl!") If PlayerRef.IsInLocation(EastmarchHoldLocation) CrimeFactionEastmarch.modcrimegold(CrimeFactionEastmarch.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvWindhelm, MercWindhelm, GuardWindhelm) ElseIf PlayerRef.IsInLocation(FalkreathHoldLocation) CrimeFactionFalkreath.modcrimegold(CrimeFactionFalkreath.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvFalkreath, MercFalkreath, GuardFalkreath) ElseIf PlayerRef.IsInLocation(HaafingarHoldLocation) CrimeFactionHaafingar.modcrimegold(CrimeFactionHaafingar.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvSolitude, MercSolitude, GuardSolitude) ElseIf PlayerRef.IsInLocation(HjaalmarchHoldLocation) CrimeFactionHjaalmarch.modcrimegold(CrimeFactionHjaalmarch.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvMorthal, MercMorthal, GuardMorthal) ElseIf PlayerRef.IsInLocation(PaleHoldLocation) CrimeFactionPale.modcrimegold(CrimeFactionPale.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvDawnstar, MercDawnstar, GuardDawnstar) ElseIf PlayerRef.IsInLocation(ReachHoldLocation) CrimeFactionReach.modcrimegold(CrimeFactionReach.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvMarkarth, MercMarkarth, GuardMarkarth) ElseIf PlayerRef.IsInLocation(RiftHoldLocation) CrimeFactionRift.modcrimegold(CrimeFactionRift.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvRiften, MercRiften, GuardRiften) ElseIf PlayerRef.IsInLocation(WhiterunHoldLocation) CrimeFactionWhiterun.modcrimegold(CrimeFactionWhiterun.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvWhiterun, MercWhiterun, GuardWhiterun) ElseIf PlayerRef.IsInLocation(WinterholdHoldLocation) CrimeFactionWinterhold.modcrimegold(CrimeFactionWinterhold.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvWinterhold, MercWinterhold, GuardWinterhold) ElseIf PlayerRef.IsInLocation(DLC2SolstheimLocation) DLC2CrimeRavenRockFaction.modcrimegold(DLC2CrimeRavenRockFaction.GetCrimeGold() + StolenGoodsValue.GetValueInt() + BountyValue.GetValueInt(), true) Ambush(InvSolstheim, MercSolstheim, GuardSolstheim) EndIf EndIf WillGetAmbush.SetValue(0) EndEvent Function Ambush(Actor Investigator, ActorBase Bodyguard, ActorBase Guard) Debug.Notification("Function processing!") ObjectReference myGuard = PlayerRef.PlaceAtMe(Guard) myGuard.MoveTo(PlayerRef, 500.0 * Math.Sin(PlayerRef.GetAngleZ()), 500.0 * Math.Cos(PlayerRef.GetAngleZ()), PlayerRef.GetHeight()) ObjectReference myGuard2 = PlayerRef.PlaceAtMe(Guard) myGuard2.MoveTo(PlayerRef, 500.0 * Math.Sin(PlayerRef.GetAngleZ()), 500.0 * Math.Cos(PlayerRef.GetAngleZ()), PlayerRef.GetHeight()) ObjectReference myGuard3 = PlayerRef.PlaceAtMe(Guard) myGuard3.MoveTo(PlayerRef, 500.0 * Math.Sin(PlayerRef.GetAngleZ()), 500.0 * Math.Cos(PlayerRef.GetAngleZ()), PlayerRef.GetHeight()) ObjectReference myBodyGuard = PlayerRef.PlaceAtMe(Bodyguard) myBodyGuard.MoveTo(PlayerRef, 500.0 * Math.Sin(PlayerRef.GetAngleZ()), 500.0 * Math.Cos(PlayerRef.GetAngleZ()), PlayerRef.GetHeight()) Investigator.MoveTo(PlayerRef, 500.0 * Math.Sin(PlayerRef.GetAngleZ()), 500.0 * Math.Cos(PlayerRef.GetAngleZ()), PlayerRef.GetHeight()) Invisibility.cast(Investigator, myBodyguard) Invisibility.cast(Investigator, myGuard) Invisibility.cast(Investigator, myGuard2) Invisibility.cast(Investigator, myGuard3) Invisibility.cast(Investigator, InvSolitude) (myGuard as Actor).PathToReference(PlayerRef, 0.5) (myGuard2 as Actor).PathToReference(PlayerRef, 0.5) (myGuard3 as Actor).PathToReference(PlayerRef, 0.5) (myBodyGuard as Actor).PathToReference(PlayerRef, 0.5) Investigator.PathToReference(PlayerRef, 0.5) StolenGoodsValue.SetValue(0) BountyValue.SetValue(0) GotAmbushed.SetValue(1) utility.wait(1.0) EndFunction What this script does is the following: It spawns a delta force team of one investigator (unique actor level 40 spellsword), one bodyguard (leveled actor, level 20-30) and three leveled guards, all of them with the same factions as the guards from the corresponding holds. If after committing a crime (after crossing a certain threshold) the player gets ambushed with a 60 seconds timer (i plan to add a random timer later but right now i'm still testing). I kinda get how the "moveto" function works, but my question basically is if there is a better way to do this? currently the npcs spawn correctly and i add an invisibility effect to make it more... palatable, but still you can see them spawning mid air for a split second so it looks kinda clunky. 2- Committing any crime doesn't matter as long as the system takes note of it. If i steal something before and/or after being watched i become suspect of theft (SuspectTheft = 1), same if i get detected before and/or after killing someone (SuspectMurder = 1). I add a misc non-playable item (DeadToken) and check if the corpse of the npc i just killed has it, in which case it will be ignored afterwards. I could add more aliases for bodies and witnesses but that feels wrong, like how many? should i add 5 more? ten more just in case? it would be nice if a more organic and simpler solution is found, and here comes the question: is there a reliable way to detect exactly whenever the player kills someone? Otherwise what i do is to check every second for corpses of npcs that the player has killed. But if there is a way i would appreciate you give me a hand because this would improve my mod a lot. The stealing part is covered as i can detect whenever the player adds a stolen item onto their inventory, trap its value and store it in "StolenGoodsValue", piling them up, only if the player has been seen though, otherwise the vanilla system works. 3- Another weak spot in my mod is that if i kill a witness to try to avoid becoming a suspect, it still counts as if i was seen so it's useless to do it. I wonder if there is a way to track the npc that saw me? maybe store it somewhere until it dies? 4- Another thing my mod omits, for convenience, is the steal of money, gold, as there would be too many checks for let's say stealing 60 gold at once from a chest. My mod would need to check every single damn coin added and stolen. That's too much. So i let the vanilla game deal with that. It seem obvious but i like to play with a mod that takes the stolen tag away for items under a certain threshold value as long as i'm undetected. The question would be if there is a way to implement this in this particular case where the tag is taken away from items? if a player doesn't play with a mod like that and relies in the vanilla stealing system then there is no need to keep track of the value of stolen goods as these are tracked by the vanilla game. Still something minor to consider. I could be more specific but don't want to overcharge the thread with scripts and explanations. My mod works as intended, but i need help optimizing some functions. In general any suggestions/insights/corrections would be appreciated. If you have any questions just ask.
  3. Hello. INVESTIGATORS OF SKYRIM: --------------------------- Reason to do this: I'm sick and tired of entering places with the npcs sitting or standing, looking at me while i go to their bedrooms, kitchen, dinning areas and just start stealing stuff the moment i become hidden, sometimes even in a hurry when someone runs towards me. That always bugs me. I could avoid doing that but i like this idea and i think it's very plausible to implement. This will force the player to keep a low profile when going out a house after stealing, and maybe even trying to leave the location undetected, like if i steal from a house, no matter how smooth things went, if i get out the house at the time the crime was commited and someone outside sees me i would aknowledge that person would probably tell someone about it. I already have a mod that adds suspicious areas, which helps to a certain degree but you can still abuse the stealing mechanic: https://www.nexusmods.com/skyrimspecialedition/mods/71109?tab=description And i have a mod that adds simple alternative ways to enter/leave cities: https://www.nexusmods.com/skyrimspecialedition/mods/112083 I tested a mod that makes time in prison annoying forcing the player to spend time in jail but i had to uninstall it as you can't rest and i like to play with survival mode on, but something similar would be useful: https://www.nexusmods.com/skyrimspecialedition/mods/91332 ------------------------ THE IDEA ------------------------ Whenever the player kills someone or steals something, a script checks constantly for a period of time if the player gets spotted/detected. If true, they become a suspect. Suspect for stealing: If the value of stealing goods is over 500 septims, an investigator is sent to investigate. Suspect for murder: Any murders the player commits and gets "spotted" on, gets investigated. Outside of the city, whenever the player kills an non-hostile humanoid npc, the script checks the faction of the victim and the hold the crimes is committed. The script checks for a certain period of time (a real time hour, half an hour, idk but it needs to be in real time) after the crime is committed. Once that time has passed and the player isn't spotted by any humanoid npc, the player isn't considered a suspect, but regardless more guards are put in the city if the crime took place in a city. If the player gets spotted or detected within that period of time, the player is considered a suspect, which entails: - A guard is sent to the player and forces conversation with them. - Later on, an ambush has a chance to occur (the higher the sneak level, the less likely to occur), which is basically whenever the player commits another crime, some guards spawn behind the player, alerted of the crime. If the player is in an open area, the investigator plus several guards spawn, alerted. The bounty corresponding to the crime is added which basically means the player is proven guilty. - If no new crime is committed by the player for a given period of time (a couple days maybe), it becomes ignored by the mod and the player is no longer considered a suspect. - The more crimes the player commits after the first one, the chance of getting ambushed is higher. - If the player is in an interior cell, the idea is for the script to also detect whenever the player leaves the cell, to avoid the player abusing the mod system by just hiding and waiting inside the place and later on getting out like nothing happened. - Once the bounty is paid and the player is jailed for the crime, the script ignores the player as a suspect and we are back from where we started. This seems obvious but is something to consider when the player for example commits multiple crimes in different holds. A way to avoid adding multiple instances for this would be to make the player pay for all the crimes committed in all skyrim+solstheim locations. They are investigators, regardless of the city they work on, they would share information to solve the case, after all someone stealing in multiple cities and/or killing in several places seems like worthy of cooperation between colleagues. An unique npc is created as investigator for every hold plus solstheim. Depending on which hold the crime is committed, the corresponding investigator takes the case. Two other investigators are added to follow more general crimes related with the civil war, one for the imperials and the other for the stormcloaks, which will follow any crimes related with their faction regardless of the hold the crime occurred. A third investigator could be added as well to follow crimes related with the thalmor faction but i feel this would be also related with crimes committed against the imperials, idk. Some locations would be protected from the mod mechanics for obvious reasons, like for example the thieve's guild "ragged flagon" and the dark brotherhood sanctuary. I don't know much about coding but i know this would involve a quest that constantly checks whenever the player commits a crime. The problem i'm having is that there seems to be no function to check whenever the player gets detected or spotted through script. So maybe someone who knows to code can take into this idea.
  4. Thank you for the response, but i feel like the other mod i checked already try to use this method, but npcs almost never loot bodies, the other mod i checked is this by the same author of "looting bandits" https://www.nexusmods.com/skyrimspecialedition/mods/34597. I've seen several animals eating bodies with that mod, and i even changed the script so they remove all items from the corpes they eat (they are gone forever), but they have to literally step onto a body to do the looting, they won't run to eat a corpse and that's what i love from the "npc loot bodies" mod from FO4, they ran from a distance just to get the body, they are interrupted by combat so they don't go blindly and foolishly to try to loot. I even added once a bait item that when dropped spawned an invisible corpse that could attract surrounding animals, but i lost it a couple years ago. I don't know, maybe it's not possible. My question was more about if it was possible to port the mod as it is rather than change the method because as i said before other similar mods already do this but they don't work the way i hope, it's too much a hit or miss at least on my end.
  5. This mod is already done. https://www.nexusmods.com/skyrimspecialedition/mods/26888 If you still want to learn you can peek into it to see how it was done.
  6. Hello. I'm trying to port this Fallout 4 mod called "NPC Loot bodies", which is quite effective and works all the time. I know there is this mod https://www.nexusmods.com/skyrimspecialedition/mods/33826 but i've never seen an npc to loot any bodies, even when i removed the condition for "banditfaction" so everyone can loot, but it just doesn't work. "NPC Loot bodies" works always, well as long as there is a living npc around the area. I'm struggling with this script that goes attached to the quest that controls the looting: Scriptname TEMP_S extends Quest Group Looters ReferenceAlias Property Alias_Looter Auto Const endGroup Group Corpses ReferenceAlias Property Alias_Body01 Auto Const endGroup Group Quests Quest Property TEMP_Q_for_Aliases Auto Const Quest Property TEMP_Q Auto Const endGroup Group Globals GlobalVariable Property TEMP_G_01 Auto Const GlobalVariable Property TEMP_G_PackageFinished Auto Const endGroup Group Keywords Keyword Property TEMP_K_Looted Auto Const endGroup Event OnQuestInit() StartAliasQuest() ;START the quest TEMP_Q_for_Aliases. Corpse alias fill conditions are there. The Alias_Body01 ref alias on this quest is linked to that ref alias. EndEvent Function StartAliasQuest() if TEMP_Q_for_Aliases.IsRunning() == 1 ;failsafe TEMP_Q_for_Aliases.Stop() endif Utility.Wait(0.5) ;wait for stopping... if TEMP_Q_for_Aliases.IsRunning() == 0 ;Start the alias quest TEMP_Q_for_Aliases.Start() debug.notification("Alias quest started") endif Utility.Wait(0.5) ;wait for the aliases to get filled... If Alias_Body01.GetReference() == none ;Alias has not been filled (fill conditions are not met) debug.notification("Alias is NOT filled, start loot timer") StartTimer(20, 255) ;try to start the alias quest again. (LOOP timer) Else debug.notification("Alias is filled, StartLoot()") StartLoot() EndIf EndFunction Event OnTimer(int aiTimerID) if aiTimerID == 255 ;LOOP timer StartAliasQuest() debug.notification("LOOP timer expired") EndIf If aiTimerID == 555 ;FALSE TIMER: if the actor can't loot the body in 60 seconds, abort the package End_Loot() debug.notification("aiTimerID 555 expired") Endif EndEvent Function StartLoot() TEMP_G_01.SetValueInt(1) ;for the packages (Alias_Looter.GetReference() as Actor).EvaluatePackage() StartTimer(60, 555) ;failsafe: if the looter can't path to the body, abort the package ;WAIT FOR PACKAGE STOP EndFunction Function End_loot() ;called from package "on end" fragment / falsafe timer (ID: 555) If TEMP_G_PackageFinished.GetValueInt() == 0 ;function was called from the falsafe timer debug.notification("END loot called from FALSAFE TIMER") if TEMP_Q_for_Aliases.IsRunning() == 1 TEMP_Q_for_Aliases.Stop() debug.notification("Alias quest stopped") endif TEMP_G_01.SetValueInt(0) TEMP_G_PackageFinished.SetValueInt(0) StartTimer(2, 255) ;start again LOOP timer. For the failsafe timer, no need for 20 seconds. ElseIf TEMP_G_PackageFinished.GetValueInt() == 1 ; ;function was called from the package "on end" fragment LootProcedure() MarkBodyAsLooted() debug.notification("END loot called from PACKAGE") if TEMP_Q_for_Aliases.IsRunning() == 1 TEMP_Q_for_Aliases.Stop() debug.notification("Alias quest stopped") endif TEMP_G_01.SetValueInt(0) StartTimer(10, 255) ;start again LOOP timer EndIf EndFunction Function MarkBodyAsLooted() debug.notification("MarkBodyAsLooted() running") ;AliasColl_LootedBodies.AddRef((Alias_Looter.GetReference() as Actor)) ;add looted bodies to a ref coll alias. Ref coll actors have a keyword that prevents the looter from looting them again. Remove the looted bodies one by one with a Game Timer. LootedBody_01_Actor = (Alias_Body01.GetReference() as Actor) LootedBody_01_Actor.AddKeyword(TEMP_K_Looted) StartTimerGameTime(0.5, 355) ;looted body has to have this keyword for at least two hours. (so looter won't loot this body in this period). EndFunction Actor LootedBody_01_Actor Event OnTimerGameTime(int aiTimerID) If aiTimerID == 355 RemoveLootedBody() EndIf EndEvent Function RemoveLootedBody() debug.notification("RemoveLootedBody() Timer expired") LootedBody_01_Actor.RemoveKeyword(TEMP_K_Looted) EndFunction Function LootProcedure() ;called rom package "on end" fragment. This is the actual "loot function". If (Alias_Body01.GetReference()) != none && (Alias_Looter.GetReference()) != none (Alias_Body01.GetReference() as Actor).RemoveAllItems((Alias_Looter.GetReference() as actor)) debug.notification("Looted!") ;DEBUGGING... ElseIf (Alias_Body01.GetReference()) == none && (Alias_Looter.GetReference()) != none debug.notification("Alias_Body01 is none!") ElseIf (Alias_Body01.GetReference()) != none && (Alias_Looter.GetReference()) == none debug.notification("Alias_Looter is none!") ElseIf (Alias_Body01.GetReference()) == none && (Alias_Looter.GetReference()) == none debug.notification("Alias_Body01 AND Looter are none!") EndIf EndFunction Since there are no "Timers" in Skyrim's engine, and i don't know much about coding, i feel lost. I wonder if someone knows of a way to replace the timer functions with some Skyrim equivalent to make this madness work, if it's possible. I love how it works in FO4, npcs just run and get the looting, wherever the bodies are. Makes for some quite hilarious circumstances, my favorite one is when i kill someone and put a mine in his body and just wait . Here i attach the mod in question. Remember it's a Fallout4 mod, the use i get from it is to check how the aliases get filled, the quest that makes all the magic and the package involved for the looting, plus the scripts. NPCLootBodies.zip
  7. Anybody knows how to remove these baggy eyes? i'm using eyes of beauty and highpoly faces and highpoly heads.
  8. Hello. I'm trying to add a skeleton race and the idea is to make it spawn with random outfits the player can use. I already tried creating a skeleton race and an outfit addon with an alternative look specifically for the skeleton race. Then i added a custom armor i did months ago and added the new addon into it at index 0 so the game should load the usual human model for the player but it should load the skeleton model for the skeleton npc. The idea is so when the outfit is in the skeleton person (set as part of the skeleton race) it looks like a skeleton using the outfit, but when the player gets it from its inventory the outfit can be used. But this didn't work, the outfit is loaded in the skeleton corpse as the usual outfit so it looks like the outfit is loaded with the male or female body but the head and hands are the ones from the skeleton race. An easier way would be to just create an activator with the look of the skeleton using the outfit and when activated replaces itself for the skeleton naked and gives the outfit to the player but this isn't fun at all and the idea as mentioned was for the skeleton to load with a random outfit and inventory. I wonder if such a thing is even possible? when i started to work into this i really expected it to be easy but as usual that never is the case.
  9. Yeah but the idea was to keep the bobby pin and screwdriver system but change it when i get a professional lock pick in my inventory (my custom model), so it would be ideal if i can add the new meshes and change them accordingly. I don't want to change anything from the vanilla game just add an alternative, like i mentioned in skyrim if you have the skeleton key in your inventory you not only never break pins when lockpicking but also it loads the skeleton key so you can see it while you are picking a lock but if you drop the skeleton key it goes back to the shiv system.
  10. Thanks for the response. I took a look at the way it's done in Sklrim, and i found the same, it replaces the meshes, unfortunately i couldn't find the way it replaces it, like through script or mabe it's hardcoded? idk. The idea is not just replace the mesh, the idea is to replace the mesh only if i have the lock pick in my inventory, like if i drop it it should go back to the screwdriver.
  11. You can take a look at the scripts found in "SKK Combat Stalkers" https://www.nexusmods.com/fallout4/mods/57842 just get the full random version.
  12. Explain further what you are trying to do so we can help. To add a companion you certainly don't need to create a new worldspace with all the implications it implies (navmeshing, lod, precombines etc.)
×
×
  • Create New...