reelo2228 Posted May 1, 2016 Share Posted May 1, 2016 (edited) Hello Fellow Modders!!Beginning of this year, i made a simple retexture of the mannequins, to make it a little more creepy, http://www.nexusmods.com/fallout4/mods/1986/?.Then somewhere in the comments, people started to mention Weeping Angels from Doctor Who, which i thought would be a brilliant idea!So i patiently waited for Creation Kit to come out in order to make it happen!These are some of the progress i've done so far:1. Made new "actors" and "race" for male and female manniquins.2. Have them attack and scream and shout, with no affiliated factions and extremely aggressive (used feral ghouls for attack templates)3. Can be set on fire, plasmatized, disintergrated upon death. Oh, and they bleed.4. Have them turn back into manniquins and break into parts just like blowing up a regular manniquin5. Have voices and small chatters served as ambience.some of the pics to show: http://i.imgur.com/XiN2KJk.jpghttp://i.imgur.com/Xsdpk9i.jpghttp://i.imgur.com/Tny2qyh.jpghttp://i.imgur.com/40oK9Ot.jpghttp://i.imgur.com/5Ccbw7a.jpgHere are the problems i am facing and hoping that somebody reading this may offer assistance or tips at how i can solve it :1. I want to randomize the textures and the types of the mannequins everytime they are spawned, so that they may look a little different. Currently, there are 6 types of mannequins -Burnt Male -Burnt Female -Male -Female -Redcoat -Shroud.2. Here is where the actual Weeping Angel mechanism i'm stuck on - Having them approach and attack player when they are outside camera range (3rd of 1st person). And when looked upon, they stop dead where they were.3. Somehow trigger a script that lets the game replace ANY mannequin it spawns with my modded weeping angel actors, besides the Shroud Mannequin maybe, as that might affect the quest it is connected to.All my problems i think requires Scripting in one way or another, and i have close to ZERO knowledge on it >_<, i've read on Papyrus script used in Creation Kit, and apparantly my ideas may also require script extenders like in Fallout3 and Skyrim.So, i guess i could say, i am really really stuck in progress here. If anyone could provide assistance, i'd be absolutely grateful and provide you with loverlike treatments.REELO! Edited May 1, 2016 by reelo2228 Link to comment Share on other sites More sharing options...
reelo2228 Posted May 5, 2016 Author Share Posted May 5, 2016 Bump! Link to comment Share on other sites More sharing options...
mazakala Posted May 6, 2016 Share Posted May 6, 2016 I'm not terribly good at scripting either, but you probably need to use game.getplayer().HasDetectionLOS(Self) or something similar to determine if the player sees the creature. Link to comment Share on other sites More sharing options...
Reneer Posted May 6, 2016 Share Posted May 6, 2016 (edited) No need for script extenders. Here's a quick-and-dirty script for the Weeping Angel actor: Scriptname RenWeepingAngelActorScript extends Actor Event OnInit() Self.SetRestrained(true) RegisterForDirectLOSGain(Game.GetPlayer(), Self, asTargetNode = "Head") ; RegisterForDirectLOSLost(Game.GetPlayer(), Self, asTargetNode = "Head") RegisterForDetectionLOSLost(Self, Game.GetPlayer()) ; Difference between Direct and Detection LOS Lost: ; Direct = line-of-sight, doesn't matter if player is sneaking (I think) ; Detection = player can sneak around ; Currently set up so that the Weeping Angel should ; only STOP moving when they lose DETECTION of the player ; and START moving only when they have a direct LOS ; This should keep the Weeping Angel from moving around ; randomly endEvent Event OnGainLOS(ObjectReference akViewer, ObjectReference akTarget) Self.SetRestrained(true) ; RegisterForDirectLOSLost(Game.GetPlayer(), Self, asTargetNode = "Head") RegisterForDetectionLOSLost(Self, Game.GetPlayer()) endEvent Event OnLostLOS(ObjectReference akViewer, ObjectReference akTarget) Self.SetRestrained(false) RegisterForDirectLOSGain(Game.GetPlayer(), Self, asTargetNode = "Head") endEvent And here is another quick-and-dirty Quest script to add Weeping Angels to where mannequins are. Note that this doesn't replace mannequins, because that would be a pain to fix if the player decided to remove your mod and all the mannequins were disabled in the save-game. Scriptname RenWeepingAngelAdderQuestScript extends Quest Cell currentplayercell Cell prevplayercell Objectreference[] mannequins Objectreference FemaleMannequin Objectreference MaleMannequin Formlist MannequinsFormlist ActorBase YourMannequinActorBase Event OnInit() FemaleMannequin = Game.GetFormFromFile(0x0003b163, "Fallout4.esm") As Objectreference MaleMannequin = Game.GetFormFromFile(0x00036cd5, "Fallout4.esm") As Objectreference MannequinsFormlist.AddForm(FemaleMannequin) MannequinsFormlist.AddForm(MaleMannequin) YourMannequinActorBase = Game.GetFormFromFile(0x000000, "YOURMODESPHERE.ESP") As ActorBase ; CHANGE THIS mannequins = new Objectreference[128] ; don't feel like making an ESP for something this simple. Self.StartTimer(2.0, 10) endEvent Event OnTimer(int timerid) currentplayercell = Game.GetPlayer().GetParentCell() if (currentplayercell != prevplayercell && prevplayercell != none) mannequins[0] = none endif if (timerid == 10 && currentplayercell != prevplayercell && Game.GetPlayer().IsInInterior() == true) if (mannequins[0] == none) mannequins = Game.GetPlayer().FindAllReferencesOfType(MannequinsFormlist, 20000) int itrtwo = 0 if (mannequins.length > 0) while (itrtwo < mannequins.length) mannequins[itrtwo].PlaceActorAtMe(YourMannequinActorBase, 4, none) itrtwo = itrtwo + 1 endWhile endif endif endif prevplayercell = Game.GetPlayer().GetParentCell() Self.StartTimer(2.0, 10) endEventThese scripts compile - I haven't tested them in-game.Let me know if you have any questions or have trouble getting these scripts to work.If you decide to use these scripts, please give me credit in your mod files. :smile: Edited May 6, 2016 by Reneer Link to comment Share on other sites More sharing options...
reelo2228 Posted May 6, 2016 Author Share Posted May 6, 2016 Oh My Gosh!!! I'm gonna test this as soon as i get back home!Glad i read through the basics of scripting the other day and vague understands what's going on (you even typed out the mannequin's ID \:D/ ).Will credit even if i don't use these, you've just helped me move many steps ahead! :D :D And here is another quick-and-dirty Quest script to add Weeping Angels to where mannequins are. Note that this doesn't replace mannequins, because that would be a pain to fix if the player decided to remove your mod and all the mannequins were disabled in the save-game.I didn't actually thought of the save file being that important and would do such kind of mess, thanks for pointing that out Link to comment Share on other sites More sharing options...
WaRi0 Posted May 6, 2016 Share Posted May 6, 2016 Looks more like Autons than Weeping Angels but awesome none the less! :) Link to comment Share on other sites More sharing options...
Haoswidasee Posted May 6, 2016 Share Posted May 6, 2016 This is a brilliant idea overall, been using the textures in the Ultimate Fallout Mod Compilation since you released them. Can't wait for all the new functions. Lemme know! Link to comment Share on other sites More sharing options...
Flyingdebris Posted May 6, 2016 Share Posted May 6, 2016 oh, man, its like Condemned criminal origins all over again https://www.youtube.com/watch?v=FPP5Ja7YNas though to be fair, i think a mod like this should primarily be applied to creepy hand picked indoor locations rather than out in the general commonwealth. Otherwise it might become too common. Link to comment Share on other sites More sharing options...
Reneer Posted May 6, 2016 Share Posted May 6, 2016 (edited) Oh My Gosh!!! I'm gonna test this as soon as i get back home! Glad i read through the basics of scripting the other day and vague understands what's going on (you even typed out the mannequin's ID \:D/ ). Will credit even if i don't use these, you've just helped me move many steps ahead! :D :DGlad to help! Just let me know if you want / need any more functionality. And here is another quick-and-dirty Quest script to add Weeping Angels to where mannequins are. Note that this doesn't replace mannequins, because that would be a pain to fix if the player decided to remove your mod and all the mannequins were disabled in the save-game.[/size]I didn't actually thought of the save file being that important and would do such kind of mess, thanks for pointing that out Yeah, it's one of thoe things that you usually learn the hard way when making mods. though to be fair, i think a mod like this should primarily be applied to creepy hand picked indoor locations rather than out in the general commonwealth. Otherwise it might become too common.That could be done (pretty) easily by checking, say, the number of mannequins in a given interior cell. Maybe more than 4 or something like that? Up to reelo2228. :smile: Edited May 6, 2016 by Reneer Link to comment Share on other sites More sharing options...
reelo2228 Posted May 7, 2016 Author Share Posted May 7, 2016 (edited) So i've tried out the scripts and here are the feedbacks \:D/ 1. I've attached the AdderQuest script to a Quest in the kit, and ticked the box "start game enabled" and "run once", but in the test room i created, the object mannequins were not replaced. I read through the the scripts line by line, and although i don't understand every variable there, it all seems right and makes sense to me xD Scriptname RenWeepingAngelAdderQuestScript extends Quest Cell currentplayercell Cell prevplayercell Objectreference[] mannequins Objectreference FemaleMannequin Objectreference MaleMannequin Formlist MannequinsFormlist ActorBase WeepingMaleTest Event OnInit() FemaleMannequin = Game.GetFormFromFile(0x0003b163, "Fallout4.esm") As Objectreference MaleMannequin = Game.GetFormFromFile(0x00036cd5, "Fallout4.esm") As Objectreference MannequinsFormlist.AddForm(FemaleMannequin) MannequinsFormlist.AddForm(MaleMannequin) WeepingMaleTest = Game.GetFormFromFile(0x05001ecd, "Weeping Angel Test.ESP") As ActorBase mannequins = new Objectreference[128] Self.StartTimer(2.0, 10) endEvent Event OnTimer(int timerid) currentplayercell = Game.GetPlayer().GetParentCell() if (currentplayercell != prevplayercell && prevplayercell != none) mannequins[0] = none endif if (timerid == 10 && currentplayercell != prevplayercell && Game.GetPlayer().IsInInterior() == true) if (mannequins[0] == none) mannequins = Game.GetPlayer().FindAllReferencesOfType(MannequinsFormlist, 20000) int itrtwo = 0 if (mannequins.length > 0) while (itrtwo < mannequins.length) mannequins[itrtwo].PlaceActorAtMe(WeepingMaleTest, 4, none) itrtwo = itrtwo + 1 endWhile endif endif endif prevplayercell = Game.GetPlayer().GetParentCell() Self.StartTimer(2.0, 10) endEvent [/spoiler] 2. It seems as if the game is too slow to respond to the first Actor script, i placed it on the Mannequin actors. Initially, they stand still, and upon detection, they run to me, then slow down half way and eventually stops moving.Then, when i turn around, for a good 3 minutes or so, they start moving again, and this time, the script don't activate anymore, the mannequins begins to attack like a normal FeralGhoul AI (i used their attack data and AI as template). Looks more like Autons than Weeping Angels but awesome none the less! :smile:Just looked that up, and i must say, i've skipped a lot of doctors and this is the first time i saw that one :D oh, man, its like Condemned criminal origins all over againI remember that scene so well! though to be fair, i think a mod like this should primarily be applied to creepy hand picked indoor locations rather than out in the general commonwealth. Otherwise it might become too common.That could be done (pretty) easily by checking, say, the number of mannequins in a given interior cell. Maybe more than 4 or something like that? Up to reelo2228. :smile: Personally i feel it probably wouldn't matter, since there are so few mannequins in the World map, and it'd be cool to have one creeping up on you while exploring :DBut interior cells are definitely the place to be to get a proper feel of the action :D Edited May 7, 2016 by reelo2228 Link to comment Share on other sites More sharing options...
Recommended Posts