Jump to content

Search the Community

Showing results for tags 'alias'.

  1. Hello modders, I have run into an issue and I can't find a solution anywhere. I'm trying to get an NPC to equip an item created as an alias in his inventory. I've been trying to tinker with an EquipItem script either on the item/NPC/Alias but nothing seems to work. Does anyone have any idea how to script this, or to design it in a better way? Much appreciated for your time and help! https://ibb.co/jP20sR
  2. In the Creation Kit, there is a count column for every resource. I can right click a form, select "Use Info", and a window pops up listing the cells where the references are located in the vanilla game. I can click on anything in the list, and that specific reference will load in the render window. So... the game (at least the Creation Kit) knows how many instances / references are tied to each form and where they are. In fact, I've seen this in FO4Edit too, as "Build Reference Info". My question is... can I replicate that result in Papyrus? I am working on a teleport mod that finds statics or furniture, moves a marker to there with offsets, moves marker to navmesh, then moves player to that marker. So far, the categories have been a little tedious to create, but not overwhelming. There are 20 Red Rockets (including filling station remnants and gas prices signs), and there are 13 power lifts on overpasses or tall buildings. Unfortunately, there are 60 bus stop shelter benches and 43 Pulowski preservation shelters. That's a lot of refs to click, load in the render window, and force to a specific ref alias in each refquest. I'm probably going to select a handful and ignore the rest. But what if a function automagically listed the 60 refs? My existing code could import them and the mod would be done within a week. I've seen requests for Find All References (not just of type or within distance) and I guess that's what I'm looking for too. Only it would be both loaded and unloaded refs. Does Papyrus have an obscure function that mimics CK's Use Info feature? If not, guess I will keep selecting refs by hand in the render window, but 80% of available options are going to be ignored due to time/work constraints. Here's a video of my WIP: https://www.youtube.com/watch?v=2oXbgoB4SZ8
  3. Alright, I have a series of quests made, but they won't run properly and I need some scripting advice... I have a unique actor in an alias in Quest A Upon completion of Quest A, stage 10 of Quest B will be set And in Quest B the unique actor again is filled in an alias However, because the actor is filled with an alias from Quest A, it won't fill Quest B I tried adding Alias.Clear() to the fragment of the last stage of Quest A before setting stage 10 of Quest B and upon stage 10 in Quest B added Alias.ForceRefIfEmpty(ActorWorldreference) to the fragment (Alias and ActorWorldreference would both have the right properties made, of course, the script compiles perfectly but just does not do what I want it to do) This didn't work. Does anyone have an idea on how to empty the Reference of the Quest A Alias, and make Quest B refill it? (I have to do this several times to different ReferenceObjects and Actor References in multiple quests that I really want to have their own Quest Names, so I'm not really looking for 'why not make it all one quest' answers)
  4. I run basically this part of a script in an oneffectstart magic spell script Event OnEffectStart(Actor akTarget, Actor akCaster) int I = 6 While (I > 0) I -= 1 ;Count Down RefAlias = SleepQuest.GetAlias(I) as ReferenceAlias aRefSpot = RefAlias.GetReference() ;If (RefAlias as bool && RefAlias.ForceRefIfEmpty(akTarget as ObjectReference)) ; this line didn't seem to work if (RefAlias == "None" || aRefSpot == "None") ; this line works but the next didnt RefAlias.ForceRefTo(akTarget as ObjectReference) ; this does not seem to update the quest Alias Debug.notification("Target has been effected with I being " + I + " Target is " +akTarget ) I = 0 endif endEventThe script seems to run but when cast on the target the quest never seems to fill the Alias ? The Quest has 6 reference Alias positions to store an actor. My question I guess is is there something about the Magic Effect script that causes ForceRefIfEmpty or ForceRefTo commands to not work as expected ?
  5. Hello, something i want to discuss the positives and negatives of the two methodes to apply scripts to objects. my thoughts: Reference Alias+Update Script Quest + "Less memory" / less bloat + Easier to handle/distribute + Set a maximum of applied scripts - needs to be reapplied - inconsistent when refreshed/reapplied Cloak Effect + Scripts are attached permamently - more scripts -> more memory used -> larger savegames/savegame bloat - less convient to handle/apply and keep track Really would like to know, what you guys think and if i'm wrong and forgetting something
  6. Okay, so I'm working on my first "quest mod" by fallowing The unique object fetch tutorial by seddon on youtube. I BELIEVE I have followed everything step by step but for whatever reason i cannot get the quest to start. In game, i opened command and typed 'sqv (nameofquest)' and it says No Papyrus Script Attatched 3 Aliases for Quest '(questname)' (questId) Ref 'NPCAlias' -> None Ref 'ContainerAlias' -> None Ref 'QuestObjectAlias' -> None Quest State: Enabled? No State Stopped Current Stage 0 Priority 45 http://i.imgur.com/LKF9dx6.png Any Help would be greatly Appreciated
  7. edit - sorry, i posted in the wrong topic. i don't use forums much :(
  8. I typically would use Quest Property COB_Transporter Auto ConstReferenceAlias RefAlias but because the Script is Const on a Terminal and doesn't like Variable Properties I thought id add a Script to the Terminal which I could import and use its Function ? I tried this and the Script I attached to the Terminal compiled fine but to call it from with in the Fragments seems to bomb with cannot call the member function alone or on a type, must call it on a variable Anyone who can show me from with in the Terminal Script how would I call a quest Variable on an Alias named TransportSubject My Quest name is COB_Transporter and all I am looking to do is get the A basic ObjectReference aRefperson = RefAlias.GetReference() from my quest I very much Appreciate any examples
  9. Hi! I was testing this "find matching reference in loaded area" fill type for an alias. But I can't get it to fill in game for some reason. All other aliases get filled on game load but this one doesn't want to. Please help. Thank you in advance!
  10. Hi everybody! Here's a newbie in modding with CK. I was wandering if there's a good way to set a scene or a dialogue so that many NPCs sharing same parameters (e.g. keyword, class, faction, etc.) can use the same rensponse texts. In Fallout 3/NV GECK this result can be reached, for example, by putting a Base NPC in a particular class or faction and then setting conditions like GetIsClass == <nameoftheclass> or IsInFaction <nameoffaction> == 1 on quest topics. I see that in Fallout 4 workshop settlers and workshop vendors have this kind of shared dialogues too but I can't figure out how CK works. I guess I have to work with aliases but I haven't find yet any tutorial that explains how to do that (but only about alias based on unique actor). Any ideas or references to suggest? :confused:
  11. Does anyone know what are they used for? Also I couldn't find any papyrus functions related to them, like GetLinkedAlias similarly to GetLinkedRef. Is there any usage example?
  12. I have never tried this but was wondering can a quest with a few alias have the same actor assigned to more then one of those alias ?
  13. Hi, I need help with a quest that should start at level 31. The quest in general is devided in 2 quests, "ST_CSOI01Intro and ST_CSOI01. The issue is in the ST_CSOI01Intro. The quest control the object at the Docks Of Istlod and the Courier / letter delivery to the player. Okay now, let explain how this quest should works: 1: Before the player reach level 31: The ship at the Docks of Itslod and its "normal crews" are disables, there is only 2 guards that watch the Docks's cabin. 2: The player has reach level 31: The Courier boy give a letter to the player At the moment that the player got it in his inventory, the quest objective "Read the letter" show up . At the same time, the ship and the pirates are enable; the initial guards are disable and replaced by a dead version of them. 3: The player read the letter When the player read the Letter, that start offcially the quest :ST_CSOI01 and close the Intro quest ST_CSOI01Intro. The map Marker of Stonecrest is added to the map. Now, I'll by screenshots the quest in the ck 1 : The Increase level Node : https://i.imgur.com/MqX6M9P.jpg 2 : The Quest Data : https://i.imgur.com/YvCgIVp.jpg 3 : Stage window : https://imgur.com/a/p0Vo0 Stage 0 : ;Give the Courier the Letter from Greira CourierScript.AddItemToContainer(Alias_GreirasLetter.GetReference()) ;Disable the Initial guards pST_CSOI01InicialGuardDisableMarkerEXT.disable() ;Enable the Ship and the Pirates PirateEnableMarkerInt.Enable() PirateEnableMarkerExt.Enable() ;Enable the Ship pST_CSOI01EnableShipClothersEXT.Enable() Stage 5 : ;Player must read the letter SetObjectiveDisplayed(5, 1) Stage 200 : ;Player has read the letter, start the ST_CSOI01 main quest CompleteAllObjectives() Alias_MapMarker.GetRef().AddtoMap() Stop() 4 : The Objective window : https://i.imgur.com/kUtjRwB.jpg 5: Quest alias page https://i.imgur.com/3pzWTXM.jpg 6 : the quest script http://pastebin.com/HPQaJAqG 7: The script attached the the letter itself Scriptname ST_CSOI01GreirasLetterScript extends ObjectReference Quest Property pST_CSOI01 Auto auto State waiting Event OnRead() pST_CSOI01.SetStage(5) GoToState("allDone") EndEvent endState State allDone ;do nothing endState As you can see, everything should works without the increace Level Event, (if set with no level minimum). But as soon that I add the node and the level restriction, it stop working... CAn you help me to solve this please?
  14. edit: *fixed* see third post. I'm looking for a way to display the players current location inside a messagebox. Similar to the companion-dismiss message - as it uses quest location aliases. I tracked down the code to the follower script, where the location is somewhere forwarded to the quest alias that will be used inside the messagebox. Hower I haven't figured out where this forwarding happens and my result "GetCurrentLocAlias.ForceLocationTo(Game.GetPlayer().GetCurrentLocation())" weren't doing the trick. It shouldn't be that compelx but I haven't figured it out yet. Any ideas?
  15. I have created a quest and have 10 Alias or slots say to fill for actors I want to be able to fill the first empty Alias with in a script that each actor has attached. I also want to be able to remove or clear that actors Alias so that another actor with the same script can fill the empty place. Actor has script that when a certain thing event triggers it it will add the actor to a quest Alias if the quest alias is cleared the next actor with the same script can just fill that spot when there event is activated. Any Papyrus people (Quest guys) want to show me a quick bit of code. Thank You
  16. Hey there, this is my first mod for Skyrim it's for the SE. It is a house mod that will 1. Add a tiny quest that involves a series of riddles. 2. After the quest you have access to the home. 3. In the home lies a chest in the bed room, that the player can own among the many other things they can use. However the chest is locked and requires you to find the secret door in the house that leads to a dungeon. At the end of the dungeon you will find the key for the chest. So far I've made the house and placed most of the things I want in it besides a few more containers and decorations. I've yet to create the dungeon due to being stuck on creating the quest. The quest has a series of notes. The first note is laying near the steps of the new house. upon open there is a OnOpen script attached that starts the first stage of the quest. The problem is what follows. 1. I do not want the players who maybe somehow "Stumbled" across the rest of the notes be able to access these notes. Now I highly doubt they will stumble across them but just in case i want this solved. 2. I've tried using the Alias menu on the quest tab to add the notes to the specific chests. This DOES NOT work. They never get added when i use "GetStage - Quest - == 10.00 Value" Which i was under the impression this would then add the note to the specific chest upon entering stage 10 of the quest. 3. Even without declaring a GetStage condition under the Alias tab, the note does not spawn in the chest. Even with Optional Checked, and making a reference to object IN (Chest). 3.4 Now the notes will SPAWN if I manually add a single note to the chest. However once I do this there will be a note in the chest regardless of what happens. And after the game loads 2 notes appear. One from manually adding it and one from the Alias Item Note. So it's as if somehow the game now decides it wants to load the note because there is one already in it? 4. I've attempted to script out the spawning of the note yet it seems to totally bypass my first condition and head straight to the && akActionRef. Or maybe I'm doing something wrong here. Scriptname myNoteSpawn extends ObjectReference Quest Property myQuest Auto Book Property Letter Auto ObjectReference Property chest Auto Int Property myStage Auto Event OnOpen(ObjectReference akActionRef) if(myQuest.GetStage() == myStage && akActionRef == Game.GetPlayer()) chest.AddItem(Letter) endif endevent 5. After everything totally not working I have managed to allow the note to spawn regardless of what stage by adding a condition to the OnRead script I created that checks if the stage is not (Certain Stage) Do not initiate the next. This seems to work but it is not what I'm looking to do. I do not want the players to at all have access to anything other than the first note before the quest starts.
  17. Hi, It's been 6 day now since i am working on a quest for my mod (The Bearclaw forest, http://www.nexusmods.com/skyrim/mods/68246/? ). I wanted to make a quest where after finding a strange note on a corpse, the player have to go to the forest (A new landscape) where you meet "John The Guard", a npc. I made all the dialogue, and some scripting for the quest (i followed some tutorial like the BenduOlo one). The first stages of the quest works (Taking the note from the dead body, even if i can't find how to make a quest marker for the next stage..) But my problem is: The npc "John The Guard" won't be defined as an alias for the quest and won't talk to me.. I tried to make him optional/or not optional, to make him Unique/ or forced ref alias. But nothing, i tried everything! I also tried to set John's Persistent location by creating a location in my worldspace but i can't do that, i can't create a real location in my worldspace since it's independant from tamriel. I made a .SEQ file in case my problem is due to the dialogue bug but still nothing When i use the console (~) in game, and type " SQV MEOWQ01 ". The game says this: http://image.noelshack.com/fichiers/2015/32/1439119610-sans-titre.png Thank you for reading, i hope you can help me.. I don't want to be stopped in my big quest project
  18. Hello Nexus community! This is my first time posting, so if I violate any rules please let me know through email. :smile: I have a few questions and some head-splitting issues about(mostly) quests. So I'll dive right into the issues I'm facing. My quest is 5 stages long.(two of them, 0 & 40, are my blank-beginning and end stages. three others are what the player sees.) -At stage 10 I am given the quest, and must pick up a door key... Here's my first problem with that. I have assigned the door key(Alias) to objective 10, but the navpoint(little arrow over objectives) doesn't appear. Though the quest can continue on to the next stage. -At stage 20 I must kill a unique NPC. The NPC(Alias) is assigned to objective 20. The navpoint shows above the NPC as normal. However the npc in question, when killed, doesn't advance the stage of the quest. The navpoint remains on him as if he is still alive. -At stage 30 I have to talk to the unique NPC who gave me the quest. This part is largely undone because I wanted to make sure the first two stages are playable before tackling other aspects. (The concept of this stage is to have the player forcegreet the quest giving NPC and then be sent to prison, or to a new location.) I'm not quite sure what you want to look at, so I will try to detail what scripts are being, or attempting to, run for each stage. [==========================================================================================] Stage 10: -Key (the object used to unlock door) Has an Alias attached to object?: Yes(as Forced to the Key (AKA: selected in the render window)) Alias attached to appropriate Objective?: Yes Is PAPYRUS attached to object?: Yes PAPYRUS: propertyname=AAArOPmainquest1 (which is also the name of my quest ID) Scriptname aOPkeystealscript extends ObjectReference Quest Property AAArOPmainquest1 Auto Event OnContainerChanged(ObjectReference newcontainer, ObjectReference oldcontainer)if (newcontainer == Game.GetPlayer())AAArOPmainquest1.SetStage(20)AAArOPmainquest1.SetObjectiveDisplayed(20)AAArOPmainquest1.SetObjectiveCompleted(10)EndifEndEvent [==========================================================================================] Stage 20: -NPC (Braotus, the NPC that the player must kill to advance the quest) Has an Alias attached to object?: Yes(as Unique Actor to the NPC) Alias attached to appropriate Objective?: Yes Is PAPYRUS attached to object?: Yes PAPYRUS: propertyname=KillBraotusQuestAdvancement Scriptname AAArOPBraotusDeath extends ObjectReference Quest Property KillBraotusQuestAdvancement Auto Event OnDeath(Actor killer)KillBraotusQuestAdvancement.SetStage(30)KillBraotusQuestAdvancement.SetObjectiveDisplayed(30)KillBraotusQuestAdvancement.SetObjectiveCompleted(20)EndEvent [==========================================================================================] Stage 30:-NPC (Denosis, the NPC that the player will talk to and ultimately get arrested by)Has an Alias attached to object?: Yes(as Unique Actor to the NPC)Alias attached to appropriate Objective?: YesIs PAPYRUS attached to object?: No PAPYRUS: propertyname= nil(None yet) [==========================================================================================] Now, as far as I know, I am not reaching Stage 20 because NPC Braotus is still alive even after having his health cut to zero and his carcass falling with a "thump".(I've sent him to the afterlife many a time) In addition, Stage 10's objective, the Key, isn't showing its navpoint to me, even though I am at the appropriate stage. Stage 30 is still a bit away. Until I figure out what I've done wrong here I won't be advancing. I've spent nearly 60 hours learning how to make quest and dialogue. Roughly 48 of those hours were without break.(48 straight hours of head bashing, though I learned a lot) If you require extra information please let me know. If anyone has any insight on my dilemma, please divine your wisdom to me! I really want to master the use of the creation kit and develop this mod to its fullest. ~Thank you for your patience and taking the time to read and consider all this!! :3
  19. Hi guys, I'm trying to compile this attached to an ObjectReference (which is not an Alias, but may have filled an optional one) to try and clear the Alias this object may have filled: If Game.GetModByName("NewMod.esp") != 255 Quest _NM_MyQuest = Game.GetFormFromFile(0x000008B8, "NewMod.esp") as Quest int idx = _NM_MyQuest.GetNumAliases() while idx > 0 idx -= 1 Alias nthAlias = _NM_MyQuest.GetNthAlias(idx) as Alias if nthAlias ObjectReference nthAliasRef = nthAlias.GetReference() If nthAliasRef == MyObjectReference nthAlias.Clear() Debug.Notification("MyObjectReference cleared as Alias") EndIf EndIf endWhile EndIf I know I'm mixing apples and pineapples here, trying to call referenceAlias functions on an Alias - and of course Papyrus tells me "GetReference()" is not a function and "Clear()" is not a function either - but I can't figure out which functions to use to go from my nthAlias Alias to an Alias_nthAlias ReferenceAlias before I can call GetReference() to get a nthAliasRef that I'll be able to compare to my objectReference before clearing the Alias if need be... :huh: Could a kind soul enlighten me, please? Many thanks in advance :smile: (and Happy Easter - uh, if it's Easter in your country too I mean)
  20. Hi, I am making a big quest and I want to know how to remake an actor killable again after some stage of the quest. I need two alias, one that make Evette San essential before the quest and before stage 18 of the quest. Stage 18 have the scrip that make her killable again. This script is not working in game: Alias_ST_TSWREvetteSan.GetActorReference().GetActorBase().SetEssential(False) So that Why I need probably a second alias of her that the dead flag is check. But How should it work?
  21. Hi guys, I'm trying to create a quest using Vanilla furniture as aliases. For testing purposes, I created a test quest, StartsGameEnabled, with a priority of 70. Created 2 aliases, Chair00 and Chair01, both optional, references to find in Loaded Area from a FormList listing all Skyrim chairs and a simple script attached to each Alias tab: Event OnActivate(ObjectReference akActionRef) ObjectReference ChairRef = GetReference() If ChairRef != None Debug.Notification("this chair has been activated") EndIf Wait(1.5) If akActionRef == Game.GetPlayer() Debug.Notification("Player is akActionRef") EndEvent I placed one CommonChair in a test cell and Coc'ed from the Launch screen to that test cell. Never got any message box to show. So I added one start stage to the quest with a fragment script to make sure that the quest did start, with a debug line 'if Alias_Chair00 != None' and 'If Alias_Chair01 != None'. Coc again to the test cell, now both notifications from that fragment fired, sort of comforting me in the fact that the quest had properly started and aliases were filled. Still, when I activate the damn chair, I get no notification at all. I know I'm doing something wrong but I can't figure out what. I'm sort of new with quests, the only ones I created before used specific references or the player as aliases - that worked of course. Can someone please help me understand where I goof in this case? A thousand thanks in advances :smile: Hoamaii PS. I missed the last 'EndIf' before "EndEvent" when I pasted this, but it's there!.. ;)
  22. Hi guys, I need a second brain to figure out how to properly fill a property for InterScript communication from a dummy quest to some other quest's aliases script. Here's how I'd like it to work: Let's say I have one script called "MySendingInfoScript" wanting to send some bool info (true or false) to another script "MyReceivingInfoAliasScript" attached to several aliases. "MyReceivingInfoAliasScript" attached to several aliases would go something like that: Scriptname MyReceivingInfoAliasScript extends AliasReference bool Property InfoSent = false Event OnSomeEvent() If InfoSent DoSomeStuff() Else DoSomethingElse() EndIf EndEvent Then I need "MySendingInfoScript" to properly reference the Aliases scripts which are going to use that info. Same script attached to several Aliases, they all need to get the info. I've done something like: Scriptname MySendingInfoScript extends MyDummyQuest MyReceivingInfoAliasScript Property Alias_MyAlias00 Auto MyReceivingInfoAliasScript Property Alias_MyAlias01 Auto MyReceivingInfoAliasScript Property Alias_MyAlias01 Auto Event OnUpdate() ; for the sake of the example Alias_MyAlias00.InfoSent = true Alias_MyAlias01.InfoSent = true Alias_MyAlias02.InfoSent = true EndEvent Somehow, the way I fill the properties doesn't look right - I also need to reference the quest which uses these aliases, right? I can't figure out how to do that... Could a kind soul help me avoid brain CTD here?... A thousand thanks in advance! Edit: Uh... could it be just adding something like "Alias_MyAlias00 = MyDummyQuest.GetAlias(1) as MyReceivingInfoAliasScript " to the script?
  23. I've been racking my brain trying to get the ForceToRef function to fill a quest alias through papyrus script. My goal is to track the specific instance of an item as a quest object (so it can't be dropped) while it is equipped by the player. The Quest does not start game enabled and has repeatable stages checked. The Quest contains one empty stage. The Quest Alias starts empty, has a fill type of "specific reference" and has "optional" and "quest object" flagged. I've tried all sorts of scripts, placing the ForceRefTo function on ObjectReference script, Quest script, and ReferenceAlias script; None of them filled the alias.
  24. Hey, after I found the right door for my project I need to rewrite the script for it. My plan is to create a room full of the saarthal doors (the one from the winterhold academy quest) that you can destroy without the need to wear the amulet and withouth it need to be a spell. So I found the script and it reads as followed: Again, the goal is to rewrite it so that you don't need the quest, the amulett or a spell. Can someone help me with that? Thanks
  25. Hi all, so I've been happily working on my mod for some time and it's all been working fine until now... My plugin is a series of quests, and the first quest sets them in motion. This first quest is based off of a custom follower. I'd like to point out first of all that; All custom dialogue worked All conditions and stages in the quest worked All aliases were in the correct order and filled properly and so on The quest, 'AAQTeekeeusConversationQuest' is start game enabled with a priority of 60. In the quest conditions is a GetisId pointing to my unique follower NPC. In the Dialogue views, my first branch has a topic that allows the player to comment on Teekeeus' clothing, this has the condition that the quest stage is < 10, and the speaker is Teekeeus. Following the conversation through sets stage 10, and the quest begins. However, this dialogue option is not there now in game, only the Follower dialogue (handled by custom made followerdialogue quests that all work). Using the SQV command on the console shows the quest is running, at stage 0, but NONE of the alias have been filled. Using the console to setstage to 10 or above has the journal working fine, but still no quest dialogue or markers are showing, and SQV still shows no Aliases fave filled. I cannot fathom why the quest dialogue and quest aliases have dropped dead. I have been over and checked the order of things, the conditions... nothing has changed from when it all worked... so what am I missing? Oh, regarding the SEQ file bug. The mod was working fine before and since I became aware of it. Generating an SEQ file has made no difference to the mod (assuming it worked... the Creation kit often 'stops working', despite generating an SEQ file in the right place). These are my quest aliases: http://i128.photobucket.com/albums/p168/Mabrothrax/Screenshot2014-08-281327_zpsaa60d79c.jpg One thing that crossed my mind - the plugin has become dependent on Dawnguard and Dragonborn recently, not that this should affect the quest in question? I know broken quest stuff comes up often, but I can't find any solution, or even the issue. Please help!
×
×
  • Create New...