Jump to content

trilioth

Supporter
  • Posts

    91
  • Joined

  • Last visited

Everything posted by trilioth

  1. I will look into this when I get a chance. Thanks for the input.
  2. Have you checked out my tutorial? It's not all that detailed in the instructions. It merely points out the settings involved. It was meant for those who know their way around the GECK. You could also check out . He shows you what he is doing in the GECK. Edit: It's little struggles like not finding the parameter in a condition setting that help us learn why things need to be done in certain ways and helps us learn how to debug.
  3. I will use this comment space to document any changes made to the original post. I intend to as much information on this topic as I can find.
  4. Getting Your Custom Companion to Attack I had trouble with a couple of points: Getting my custom companion to attack an NPCGetting my custom companion to attack the player (through dialogue)I searched the forums to no avail. I even found a post where the maker of Alex Mercer as a companion had trouble, but there was no answer to her question. To get a companion to attack a specific NPC... I used a Use Weapon Package. I did this through a quest script using the AddScriptPackage function. I have tested this in two ways that had positive results. I can't remember all the different things I tried that didn't work. I actually went back through some testing phases in order to document this here as thoroughly I could. One way being that the companion (let's call him Bob) was set to be "fired" before starting the attack . The targeted NPC nor his allies attacked Bob for his actions. Even when it resulted in the death of the targeted NPC. To solve that problem I used the SetEnemy function with Bobs Faction and a common faction for the target NPC and his allies as parameters. I believe the faction that is chosen needs to track crime, but I have not tested for that. The NPCs involved only attacked Bob. The other way was where he was not "fired" nor waiting. When and only when an NPC died did his allies start attacking and they were hostile to both Bob and the player. Using SetEnemy on the Bob's faction did not change this. To get a companion to attack the player through dialogue... First, I should mention that I used the function SetIngoreFriendlyHits (SetIngoreFriendlyHits 1 or SIFH 1) in the hire topic result script. I was having trouble getting Bob to attack the player through dialogue and I eventaully I discovered that I had to turn off SIFH (SIFH 0). If you did not use the function SetIngoreFriendlyHits, then this should not be an issue. Also, I had to "fire" him through scripts. I did this in a quest script before the dialogue package was added using AddScriptPackage. It should work just the same if you "fired" him in the result script that initiates combat with the player (startcombat player should be the last command). If he is still a teammate he will not attack the player. This also seems to require that I remove Bob from TeammateFaction using the the RemoveFromFaction function. To get a companion to attack the player outside of dialogue... Using a quest script, I fire the companion making sure all the needed variables and settings are changed. Then I add the companion to a special faction that is already enemies with the player. I would like to add that for compatibility's sake, I chose to avoid editing the targeted NPC, nor any of the vanilla NPCs. Also, SetIngoreFriendlyHits is undocumented and the vanilla companions use this, but I have yet to see any scripting that turns it off. In using this funciton, I have learned that while "BobCompREF.SetIngoreFriendlyHits 1" will compile, it will cause problems. So far I have not seen any of the vanilla scripts use this function outside of a dialogue result script. Any further knowledge of this function's use would be greatly appreciated. Please feel free to share any knowledge you have involving initiating combat with custom companions. I thank you in advance for your contributions.
  5. You might want to check out Project Nevada. Project Nevada allows you to configure the level cap and experience gain. Edit: It also adjusts the number of levels required to gain a perk, thus allowing a perk every level. It doesn't allow for more perks per level though.
  6. MapPrimm didn't cover the area where I need the bark to fire, where as AudioINCPrimm did. I found a region named VMapSloanRegion; it only covers four cells in the worldspace WastelandNV: (-8, 2), (-7,2), (-8, 1) "Sloan" and (-7, 1). I haven't setup any barks for that region, but I hope that information helps.
  7. This was not intended to be a discussion on how people feel about limiting companions. I do understand that it will take more work on the modder's behalf to enforce limits and also that editing vanilla assets would cause conflicts. One can simply install a mod that changes the vanilla assets and put it lower in the load order. Companion DLC Access allows companions to access all DLC areas. There seems to be some issues with it based on user comments. Also, one could use Follower Cheat Menu - enhanced companion control (requires MCM, NVSE). From what I understand, this will edit the script variables I mentioned and thus allow for any custom companions that also use these variables. I have not used either of these mods personally.
  8. You might want to check if the companion is with waiting too. I used Regions as used with Cass (see VCassTimerGeneralBarkScript and VCassTimerRegionBarkScript), except Cass says them to herself and not the player. I added to the example a situation that checks against a vanilla script variable. This is a sample of what I have done and I know it works. Also, Bob will not say the related line, if Bob happens to visit the same region with the player later. That wasn't necessary in this case, but I added it as an example. Another feature of this example is that the Barks happen only once. Cass' scripts allow for repeats, but only after a certain amount of time has expired. You can use the Regions editor to get an idea of the defined regions. The Regions names listed there will tell the you value you need for the IsPlayerInRegion function. I didn't want to add trigger boxes to the world and this example shows an alternative method. Having a look at the Regions editor will give you a good idea of how other things in the game are achieved. I was just about to try and define my own region since the MapPrimm Region was not working for me. I instead found the AudioINCPrimm Region. scn BobCompQuestScript int BobBarkDone1 ; ...(some other code you might have) Begin GameMode ; ... if BomCompREF.Waiting == 0 && BomCompREF.HasBeenHired == 1 if BobBarkDone1 == 0 && IsPlayerInRegion AudioINCPrimm == 1 && VDialoguePrimm.bPlayerWarned == 1 ; DialoguePrimm.bPlayerWarned gets set to 1 after being warned by the NCR Trooper. ; This will make Bob say his BomCompBarkNCRPrimm topic defined in conversations BomCompREF.SayTo Player BomCompBarkNCRPrimm 1 set BobBarkDone1 to 1 endif ; ... elseif BomCompREF.HasBeenHired == 0 || BomCompREF.Waiting == 1 if BobBarkDone1 == 0 && VDialoguePrimm.bPlayerWarned == 1 ; If Bob was not with the player when he was warned, then he ; will not say the related line. set BobBarkDone1 to 1 endif endif ; ... End ; GameMode Edit: Somewhat ninja'd by IIamaRCA.
  9. Edit: Apparently using a reference for SetIngoreFriendlyHits (eg: BobCompREF.SetIngoreFriendlyHits 1) causes a problem. Just use SetIngoreFriendlyHits 1. Edit Again: I forgot to mention that you will need to set up the hired dialog with a condition to deny you if you have another companion. I will update the original post with the details later.
  10. Just a quick update here. When I get time I will edit the original post. Apparently using a reference for SetIngoreFriendlyHits (eg: BobCompREF.SetIngoreFriendlyHits 1) causes a problem. Just use SetIngoreFriendlyHits 1. Edit: It looks like my indents where nixed by the new forum code. Edit Again: New forum code will take some getting used to.
  11. I am working on a mod and I need to consider several angles. One angle has to do with Legion Reputation. In order to make sure that some situation doesn't catch me off guard here, I was wondering if any of you would be willing to share your experiences when playing a Legion Friendly Character. You may not have the answer to the fastest way to achieve Accepted Reputation with Legion, but your stories are just as valuable. I don't play Legion Friendly characters and I am in the middle of the work. Thanks in advance to all that contribute.
  12. I am not exactly sure what he is using, but it looks like it could be oHUD.
  13. :dance: I figured it out! The object script of the NPC needs the variable WeaponOut. I tested this without using the additem/removeitem work around. Edit: "int WeaponOut" You don't need to set it, just declare it.
  14. For your HUD request, I recommend oHUD. It's a combination of Gopher's Immersive HUD, Adjustable HUD and Extra HUD. Extra HUD adds the HUD elements you want. There are a couple of mods that I have tried that add extra enemies: Using IWS - Increased Wasteland Spawns and DFB - Random Encounters make the world much more like a war-zone, but at the same time it also means you level up faster and end up with a lot more loot. Note: All of these mods use The Mod Configuration Menu (MCM), which requires NVSE. You can use IWS and Random Encounters without MCM, but the HUD mods require it. If you are playing Hardcore mode, then that is reason enough to need a place to sleep. If enemies are nearby then you can't sleep. It would be nice to add the chance that you get attacked if you are trying to sleep out doors. I don't know of anything that does this. I would like to expand on one of you ideas a bit. It would be nice to spread around some random Wastelanders who appear friendly at first, and then turn on you later. I think this could be achieved through timing the events in a way. Like the Wastelander knows you saw him, but since you ignored him he will attack you. Some of them could come approach you for help or demanding your money and if you refuse then they could turn hostile. One of the problems with these ideas, would be location. Where would you find these guys? On the road between major locations? Surely not in the towns. Also the Jackals, Vipers and Fiends cover a lot of areas.
  15. I understand the sentiment. I am not proposing that mod author's should impose limits. I am merely explaining the limits involved with vanilla companions. This information could be used in understanding and preventing any issues with using custom companions.
  16. If I edit the original post, I will use this comment space to make note of any changes.
  17. Custom Companion Issues What I have learned thus far. Foreward: Creating custom companions has been a boost to my understaning about the use of Quests to handle dialogue, AI Packages and how to use conditions in relation to those things. I highly recommend creating your own companion as way to familiarize yourself with these features of the GECK. There are some issues involved with an attempt at setting up a companion with the same limitations of the vanilla companions. This is not a full explanation or tutorial, but merely an addendum to your understanding of setting up companions. Follower Limiting: It is simple enough to force a limit on the number of companions the player can have. You won't have edit any vanilla assets. There are three dialogue topics that relate to limiting the number of the companions: FollowersFiredYes, FollowersFiredYesSuite and FollowersHired. Changes are to be made within the results scripts. (For: FollowersHired) set VNPCFollowers.bPlayerHasFollower to 1 set VNPCFollowers.bHumanoidInParty to 1 set VNPCFollowers.nCurrentFollowers to (VNPCFollowers.nCurrentFollowers + 1) (For: FollowersFiredYes and FollowersFiredYesSuite) set VNPCFollowers.bHumanoidInParty to 0 set VNPCFollowers.nCurrentFollowers to (VNPCFollowers.nCurrentFollowers - 1) if VNPCFollowers.nCurrentFollowers == 0 set VNPCFollowers.bPlayerHasFollower to 0 endif Take note of the use of bHumanoidInParty. If you are working with a critter, replace that variable with bCritterInParty. If you use this information to make custom companion correspond to the limit of the number of companions you can have, then you will also have to add the above lines pertaining to firing in an OnDeath block in the custom companion's object script. Hiring and Firing Vanilla Companions: The VNPCFollowers Quest holds dialogue and variables relating to the vanilla companions. When setting up a custom companion one can simply use a new quest, and as mentioned above, access the variables relating to limiting the number of companions. When it comes to limiting companion access to content such as DLC world spaces and casinos, there is another set of variables that are used. I will be referring to the following variables as "hired variables": bBooneHiredbCassHiredbVeronicaHiredbLilyHiredbEDEHiredRaulHiredArcadeHiredRexHired Companion Access to Content: As what I am about to present to you may be considered spoiler content, It is hidden in the spoiler below. I am not going into detail about how to make the changes, but I will be pointing out the related assets and why they would need to be changed. Other Companion Related Features: Aside from what is mentioned above, I am only aware of the Ferocious Loyalty Perk and the Spray and Pray Perk. Spray and Pray Perk: Since the Spray and Pray Perk uses entry point data, I don't see any way to make changes relating to companions. I am guessing that any NPC that is set as a teammate will be covered by the this perk. It could also be related to the functionality of the SetIgnoreFriendlyHits. There doesn't appear to be an article for SetIgnoreFriendlyHits on the GECK pages, but I see this being used in the hiring of vanilla companions. And since it is not used in the firing of vanilla companions, I am guessing that it is directly related to SetPlayerTeammate. Ferocious Loyalty Perk: The Ferocious Loyalty Perk uses a quest script checks the player's health and VNPCFollowers.nCurrentFollowers in order to apply and remove an actor effect on companions. Companions are affected by checking the hired variables. FerociousLoyaltyQuest FerociousLoyaltyScript FerociousLoyaltyEffect Afterward: All of the compiled information presented here is based on my efforts. I personally looked at the all of data in the GECK, and drew my conclusions from what I have found. I have not studied any mods that add companions or alter the vanilla companions. If there is anything that you know that is not covered here, please let me know. The process of digging through the data in the GECK was a valuable learning experience. It was like being a detective and searching for clues.
  18. I can create custom companions. I just don't have the skills for 3D modeling. And my textures skills are lacking. Set up an NPC with the appearance, stats, clothing and the like and I can get him working like a vanilla companion. Check out my tutorial. There are a list of issues that I have yet to solve with companions, but I consider them minor issues. If you want the whole thing ironed out exactly like a vanilla companion, that would require editing some some of the vanilla scripts and quests to get to work, but it's doable and not beyond my skills. I just haven't tried it or tested it yet. I have all the DLCs, so that I could make sure that the entries into the other areas do as they should. I would be glad to do this to your specifications. Edit: I wasn't aware of the mod you released. If you are still looking for help on option 3 let me know.
  19. Those dusters would be awesome light armor. The one issue I have with armor mods is not seeing them on other NPCs. I think the clothes and dusters might go well with the Omertas or maybe some random NPCs who visit the Strip. Just saying. Either way, I hope this gets made. If only I was a 3D modeler.
  20. Bottle That Water. Apparently he never figured out how to check if surface water is irradiated. It may not be possible, but it works for other sources of irradiated water.
  21. I only found one: Snuffles as a follower The description does give much information. There is another molerat companion though: George the Molerat Edit: searching for "mole rat" instead of "molerat" rat I found four more. LOL :tongue:
  22. Did you use BOSS to sort your load order? If you are not using all the DLCs then you make sure you are not using WMX-FOOKNV-DLCs-CP.esp. Other than that, I am also using the MMUE WMX Compatibility Patch. Edit: Here is my load order. It was slightly different until just a while ago, when I updated to MMUE v8a, but as for FOOK and WMX there have not been any updates. Active Mod Files:
  23. I have used FOOK and WMX together. There are also some compatibility patches for FOOK and WMX. On the WMX files pages under option files you find WMX - Compatibility Grab-Bag 22-03-12. That is where you will find the compatibility patches for FOOK.
  24. I am using a fresh character. I have done nothing with him. I though about setting up another character in case it had something to do with selecting the White Legs race. I had another look at the wife's Guard Package. I tried unchecking the Warn/Attack Behavior. I also used pointed the wife to an xmarker instead of the husband. Now I am not getting the problem. I am guessing it was the Warn/Attack Behavior. Edit: I tested it again with the Guard Package pointed at an xmarker and the Warn/Attack behavior enabled. I didn't get attacked. Maybe it was the fact that she was set to guard her husband and I talked to him. Weird. I waited for 24 hours, after talking to him. Edit Again: I just had to do a thorough testing of this issue. I pointed the Guard Package back to the husband and they attack me after I talk to him.
×
×
  • Create New...