TheLastIstari Posted October 22, 2009 Share Posted October 22, 2009 Well, I've been learning some beginning scripting, looking into quests, dialogue and such, and now I'm considering looking into the AI packages so I can see if I can get NPCs to wander all of Cyrodiil with no set path, just existing for a casual bump in the wilderness, or perhaps more advanced, occasionally finding one in a dungeon (ala OOO 1.3, or so I've heard) Now, I'm curious, is this all accomplished with travel packages? Or is there scripting involved? I'd personally love to be able to get NPCs roaming Cyrodiil and raiding & looting random dungeons. I'd like to know if the Travel Packages can pick this up, or if I need scripting or if this is even possible. Although I would think it's possible as it's just getting the NPCs to mimic the PC behaviour. So if one of the modders could explain to me if this is indeed possible, what would be the right way to go about it, and could they also be so kind as to explain the limitations? Link to comment Share on other sites More sharing options...
Vagrant0 Posted October 22, 2009 Share Posted October 22, 2009 I'd like to point to a long abandoned project of mine;http://www.tesnexus.com/downloads/file.php?id=6084 It should provide a basic example of how to manage packages across many NPCs, and how to make them move around from one place to another (although I never did get around to notating the scripts). And should provide some ideas. However, the main limitations of travel packages and NPCs are as follows; 1. NPCs will move between non-loaded areas if they have low processing enabled, and will only run packages in non-loaded areas if they are flagged as a quest NPC (quest flag). Otherwise, they will only move around when in the loaded area, or will simply be moved to a destination upon load where time was passing (wait, sleep, fast travel). 2. NPCs will always pick the shortest route between points, and will try to stick to roads (blue pathnodes which are present when "generate roads for worldspace" is used) whenever possible. In most cases they won't ever move through wilderness areas unless specifically told where to go and what to do there (find, wander, use item, ambush packages usually). If shortcuts exist between cities (like mage guild teleporters) the NPCs may end up avoiding roads entirely. 3. NPCs which are in wilderness or dungeon areas will not fight or do much of anything, even if quest NPC, unless the player is there to see it. Meaning that if your only intention is to have random adventurers in dungeons, it's usually better to just have them exist as leveled (medium-low chance) spawns in those dungeons with some generic wander/find/ambush packages. As opposed to having an NPC running from one dungeon to the next on some sort of set schedule. Not only is the likelihood of ever seeing that NPC increased using the spawned version but there is a lower system impact since that NPC only gets processed when the player is in the loaded area. NPCs normally will not ever loot other NPCs, so the only real benefit of this is being able to see a room in a dungeon that is already cleared out. Even in the case of a traveling, quest NPC, they won't ever clear up to that room they're supposed to travel to unless the player is there to see them do it the whole way. Ambush packages won't change this either. Which is all kinda why most of the NPC mods just focus on towns and roads. Everywhere else just ends up being a bit lacking. Link to comment Share on other sites More sharing options...
TheLastIstari Posted October 22, 2009 Author Share Posted October 22, 2009 Oh, I see, that makes sense. So perhaps the best way to go about creating somewhat "lifelike" adventurers would be to have two copies of the NPCs, each with different IDs to avoid conflict. One to travel the roads and such, another to spawn randomly in dungeons, to make it seem like that the NPCs really do roam an raid, correct? Link to comment Share on other sites More sharing options...
DagonTheranis Posted October 22, 2009 Share Posted October 22, 2009 If you do use travel packages, be careful where you set the destination if your going to, There's a npc in oblvion who got her daily attendance set to castle bruma instead of bravil, so she wanders up there every day! Just goes to show always double check. Link to comment Share on other sites More sharing options...
Vagrant0 Posted October 23, 2009 Share Posted October 23, 2009 Oh, I see, that makes sense. So perhaps the best way to go about creating somewhat "lifelike" adventurers would be to have two copies of the NPCs, each with different IDs to avoid conflict. One to travel the roads and such, another to spawn randomly in dungeons, to make it seem like that the NPCs really do roam an raid, correct?Well, the best way would probably be some sort of system like I had setup, just with more locations tossed in. The advantage of that setup is that although your encounters would be rare, they would be fairly consistent and look like they had some order and meaning behind them. Although the player only sees a portion of the behavior, and most of it is just in passing, it would be seen as being a bit more unique than just seeing some sort of generic NPC somewhere, or seeing an NPC with the same name in two places which are far away from eachother. But that's just my biased opinion, and requires quite alot of work to setup depending on how much depth you wanted to have with those NPCs. I think I might have a more updated, not as well functioning, version of the mod with more notations and examples (I had started adding packages for Anvil and Kvatch, but got sidetracked with adding a mining camp near Anvil) if you really wanted to try using the framework. It was designed to be expandable for every town, with as many NPCs in each town as there are free beds, I just never had a chance to really put it to use. If you were planning to go with the spawning method, your best bet is to make many NPCs, and be as generic as possible to avoid having copies anywhere. The other option would be to use an NPC(s) with a quest script who occasionally gets moved to an area where the player is running around, and uses some sort of localization variables to select packages for that area. For instance, when the player enters Chorrol, have a chance for the NPC to be moved to the inside of one of the inns, or along one of the roads outside town. Once moved, change a variable on that NPC which is used by package conditions which are attached to a schedule of packages which are setup around Chorrol. The NPC would then continue running that schedule for a few days, then be sent to a waiting area until called again for another town. With a couple NPCs and multiple groups of localizations, you should be able to create a decent illusion. It's still quite alot of work, but would allow for more consistency and meaning than just randomly appearing adventurers. Link to comment Share on other sites More sharing options...
TheLastIstari Posted October 23, 2009 Author Share Posted October 23, 2009 Alright, I'll be looking into your mod to see just what you did, hope you don't mind, Vagrant, and then I'll go from there and see how it works. Thank you both for all of your help, I really appreciate it. Link to comment Share on other sites More sharing options...
Recommended Posts