Jump to content

Deleted6874692User

Account closed
  • Posts

    35
  • Joined

  • Last visited

Everything posted by Deleted6874692User

  1. Okay, let's say I have my custom quests set up with a simple GetIsID: MyNPC condition first. So then I have a basic quest dialogue view that looks like this: Somebody should do something about that hagraven that's been harassing our livestock. ->I'll help you with that hagraven problem ->Goodbye Then, on another quest I have another dialogue view with generic topics that looks like this: ->Tell me about yourself ->Rumors How can I stretch the dialogue options from the latter into the former, so that it looks like this: Somebody should do something about that hagraven that's been harassing our livestock. ->I'll help you with that hagraven problem ->Tell me about yourself ->Rumors ->Goodbye So I've obviously simplified it a bit for the sake of giving an example, because there's a lot of dialogue going on here. I know I can link to branches outside of the quest via the Topic Info window, but that basically imports the branches to the current dialogue view, and I don't feel that is the optimal way of doing things... Is there a way to make these generic topics appear as an option in all dialogues related to this npc (without making the biggest dialogue view ever) ? Okay, I got this working thanks to you guys! Now, I've run into another problem and I basically need to do the exact opposite. xD I have a quest where my NPC is, well she's supposed to be upset. The dialogue I have set for her and the packages in here scene has her 'fleeing' to various x-markers (instead of 'traveling' to them) and stuff, so... that should speak for her current state of mind. Panic. The problem is, as soon as she's not engaged in her scene, or in any dialogue, she breaks character and spouts random comments like "need something?", "are you going to use that weapon?" and I... well, from a design perspective I have to say I don't really appreciate her tone sometimes. I guess I could give her a custom package where, during these stages in the quest, she's blocked from idle chatter and stuff, but then I'd have to manually add those random "somebody help!"-screams as she's running around... which would be very tedious... Can I block inappropriate stuff coming from her mouth by like, setting her "mood" to something like 'Fear' '100' ...? (I know the drop down menu when editing the actor itself does pretty much nothing) but, there's gotta be a way, right? Cheers!
  2. Here's a script that will change the name of an actor depending on a quest stage. Useful if you want your character to be called something else until he has introduced himself. Example: You ask the "Suspicious Bosmer" a bunch of control questions and eventually he'll reveal his real name. This doesn't work with 'Short Name', so you may want to leave that blank on your actor as you create him/her. Also, I'm a newbie at scripting stuff so if anybody has any suggestions to improve or slim this down then feel free to comment below. *Requires SKSE to work. Scriptname ChangeNameScript extends Actor ;This script is to be used as a base for eventual name changes in the future. ; Replace the 'RealName' and the 'UnknownName' variables to whatever you want. ; Hook it to the quest you are going to use with it. ;========================================================= ; Variables Quest Property NameChangeQuest Auto ;Hook the Intro Quest String Property RealName = "Real Name" Auto ;The Real name of this character. String Property UnknownName = "Unknown Name" Auto ;The name to use when this character is unknown to us. Int Property DefiningStage = 20 Auto ;The Stage of the quest when our character should switch name. Float Property UpdateTick = 5.0 Auto ;The update interval in seconds. ;____________________________________________________________________________ ;========================================================= ;The function that handles naming the character. Function NameIt() ;Check if the 'NameChangeQuest' is not completed already, is running - and is on a stage less than 'DefiningStage' or not ;If it is less than 'DefiningStage' if !NameChangeQuest.IsCompleted() || (NameChangeQuest.IsRunning() && (NameChangeQuest.GetStage() < DefiningStage) ) ;The Character hasn't introduced himself properly yet ; so his name should be equal to 'UnknownName' GetBaseObject().SetName(UnknownName) ;Register an update to check wether he still hasn't introduced himself. RegisterForUpdate(UpdateTick) ;If it is not less than 'DefiningStage' else if GetBaseObject().GetName() != RealName ;The Character has introduced himself with his real name ; and should therefore be referred to as such. GetBaseObject().SetName(RealName) endIf endIf endFunction ;____________________________________________________________________________ ;========================================================= ;Initializing the name of this character. ; NOTE: We probably only need the 'OnInit' event here, but the others are added as fool proof. Event OnInit() ;As we initialize this Character. NameIt() EndEvent Event OnLoad() ;As we load this Character. NameIt() EndEvent Event onCellAttach() ;As attach this Character to a cell. NameIt() EndEvent Event onLoadGame() ;As we load a save game. NameIt() EndEvent ;____________________________________________________________________________ ;========================================================= ;Handling this Characters name OnUpdate. ; NOTE: We have registered an OnUpdate. ; The following code should make sure his name gets updated if needed. ;On Update. Event OnUpdate() ;This event occurs ever X seconds set by 'UpdateTick' ;Check if the introductionary quest is less than 'DefiningStage' or not ;If it is less than 'DefiningStage' : if (NameChangeQuest.GetStage() < DefiningStage) ;Check if his name isn't what it should be. if GetBaseObject().GetName() != UnknownName ;If it is something else, make sure the Character is referred to by 'UnknownName'. GetBaseObject().SetName(UnknownName) endIf ;If it is not less than 'DefiningStage' else ;If the character does not have his real name by now : if GetBaseObject().GetName() != RealName ;The Character has introduced himself with his real name ; and should therefore be referred to as such. GetBaseObject().SetName(RealName) endIf ;We'll want to unregister the OnUpdate Event to stop it from firing. UnregisterForUpdate() endif EndEvent ;____________________________________________________________________________ Cheers!
  3. So I got rid of the X-Markers my NPC was supposed to look at and made references to objects in the room to test it out (baskets, an apple etc.) That didn't work at all either. It turns out that NPC's can only head track beings. I found that out by replacing all my X-Markers with goats. ... Not exactly what I had in mind for the scene. It looks even dumber now... It's not an option, just for testing purposes... Bah, geez! I'm running out of ideas here! Does anyone here know of a workaround? I'd rather not have to place a bunch of hack-job-inanimate goats out of boundaries just to have a believable scene xD
  4. I don't know what values you mean, but if the item itself is not manipulated in any way other than your esp, then your edit is law, be it name, weight, attackspeed or whatever. Keywords are added to the object, not the other way around. Looking at ex: FormId:'IronMace'. It has 'VendorItemWeapon', 'WeapMaterialIron' and 'WeapTypeMace' as keywords attached to it. So if I rename 'Iron Mace' to 'Iron Mallet', it still has the same keywords attached to it. Anything referencing the 'IronMace' FormId will find my 'Iron Mallet'. I'm 99.9% certain this is how it works at least for the majority of objects in the game, but don't etch it in stone. :) Cheers!
  5. You could try 'player.additem FormId X' spawning the items in-game and check manually if your uncertain, but I'm pretty confident that you are correct in that: if the unofficial patch doesn't interfere with any changes that your esp makes - then there's no need at all, to include it as a master for your esp.
  6. So, I have created a scene where an NPC is walking around in a room. I have X-Markers for him to walk on during different phases. I also have other X-Markers for him to look at while he's walking around talking, i.e. commenting things he's looking at (so that the scene makes sense from a design perspective). The problem is: The NPC tends to ignore what I've specificly ham-fisted him to look at. If the player is near, he'll ignore the X-Markers he's supposed to be looking at, i.e. looking awkwardly over the shoulder at the player while commenting on something he's clearly not even *noticed (from a design perspective). This is extremely annoying. I also have a dead_NPC in the room, which he is supposed to notice last. But if he walks near the dead_NPC he also ignores the X-Markers he's supposed to be looking at. Basically, he's looking at the dead_NPC while asking 'where is dead_NPC?' - then he turns around and says 'by the nine!'. The whole scene just ends up playing out like one big, confusing mishmash... He has packages without any unnecessary behavior, and they each switch with each phase. Like I said, I've tried to ham-fist his behavior to the extreme here. What he should be doing is very specific, yet he annoys me to the point of almost ramming my fist through my monitor at the moment xD It seems like something somewhere else is triggering this issue. Is there some sort of stupid scripting that overrides the NPC's focus whenever a player or another npc is near? -If so, why even include setting the npc head-tracking in the editor if some clever dev thought it'd be a good idea to ignore it as he saw fit.. ...Wait, scrap that previous line. -If so, how do I temporarily disable it? In short: The presence of both the player and the dead_NPC is interfering with specific instructions regarding head tracking in the scene. Any idea how to fix this? Thanks, and cheers!
  7. Allright, I'll do that then. Sorry if I caused any inconvenience. ;)
  8. Okay, well, thanks for the tip. I'll check that out at some point. However,that's not what I'm talking about here, I'm not discussing mods, I'm discussing modding. More specificly scenes in the creation kit, sorry if I didn't make myself clear enough. I have made a scene in a quest, where an npc walks around a and comments stuff in a room. So I have placed x-markers throughout the room for him to walk towards in different phases. He walks on the specified path so that's O.K. I have also placed x-markers for him to track with his head, i.e. look at while he's talking (to make sense in the scene). The problem is, he just looks wherever he wants to with his head. I'm pretty much ham-fisting everything he's supposed to do, but he's disregarding my specified instructions in the 'Dialog Scene Action'-window. I have a dead_NPC on the floor aswell. The NPC tends to ignore the x-markers and prioritize looking at either the Player or the dead_NPC. So this topic is about how to make an npc behave in a certain way. In fact, the less influence the player (and the dead_NPC) can play in the scene the better, since, like I said, the presence of the player (and the dead_NPC) seems to be interfering with my instructions :P ..Actually, am I in the wrong part of the forum posting questions? If so, I'd be happy if a moderator could move this topic.
  9. So I've got a question: I've tried setting up a scene where an npc walks around and looks at different things in a room. In other words, I've put up various XMarkers for him to head track as he walks around, but half of the time he ignores them, skips them or whatever. I can have him headtrack an npc several phases later but he breaks the head-tracking I've set to look at npc's, and if I get close he's looking awkwardly at me over his shoulders while he's commenting on something he's clearly not even looking at. Is there some kind of prioritysystem that prioritizes head-tracking of npc's and players regardless of what you clearly specify them to look at? If so, how do I override it? Because as is, the head-tracking seems pointless cause he's looking at whatever he wants to anyway. :S
  10. So, I have a question that's probably a bit noob'ish to even ask, but I couldn't find anything regarding this anywhere. There are 'Game Settings' for Oblivion, specifically in the 'oblivion.esm'-file. You can see them in the 'TES Construction Kit', or in editors like 'tes4Edit' for example. These allow you to modify certain settings in game and they are listed at websites like http://cs.elderscrolls.com for example. Take a look at http://cs.elderscrolls.com/index.php?title=Hand_to_Hand_Game_Settings for example and take note of, let's say 'fHandDamageBaseStrength'. This setting is nowhere to be found in the 'oblivion.esm'-file, but I can add it to my own '.esp' in 'tes4Edit' for example. In my case, it then gets the FormID '1C006707'. I can't get this to work. Adding it like I have simply just doesn't seem to do anything. So, back to my FormID: '1C' in that ID refers to my '.esp'-file in the load order if I'm not mistaken. Any Game Setting found in 'oblivion.esm' will start with '00' instead. That suggests that the Game Setting I tried to add is local to my '.esp'-file, thus has no effect, right? FYI: Changing '1C' to '00' makes my new game setting override something else in 'oblivion.esm'... Not necessary a game setting for that matter either - like some landscape or something completely random. I've seen mods trying this, for example Universal Movement Speed adds.. well, to quote: Also, not listed here is another value that I changed: fJumpFallVelocity Min It was originally set at 600, but I doubled it, setting it at 1200. This basically made players fall 2x faster, so the effects of gravity are stronger than before. The thing is, this just doesn't seem to work as the player in fact doesn't fall 2x faster, because the added Game Setting is local to the '.esp'-file in question, right? At least it's not working for me, experimenting and trying to figure this issue out. Again, sorry for being such a noob, I'm probably missing something very obvious, but the question I have is: How do I activate, in this case, 'fHandDamageBaseStrength' from my '.esp'-file? Thanks for reading this. Cheers!
×
×
  • Create New...