Jump to content

DaWrecka

Members
  • Posts

    66
  • Joined

  • Last visited

Posts posted by DaWrecka

  1. Wow, a lot happened after I went to bed.

    The trouble with any actor templated to a levelled list is that their base object (GetBaseObject, aka gbo) is not static, but dynamic, ie if you called getbaseobject on the ref in-game you would get a form whose formid starts with FF (255). This explains the problem with some of the debug readouts, in that IsInList called on the ref won't match the base form that is stored in the geck. To get that base form, you'd need GetBaseForm (gbf) and look it up in the list with ListGetFormIndex.

     

    That it should also be a problem for a formlist working as filter for an event handler is new to me, but I honestly didn't test event handlers as much as arrays, string vars etc, at the time i wrote the tutorial (and haven't had much use for them either so far, except UDEs). I suspect the filter check done by the event handler follows the gbo rather than the gbf method. So it seems that you're stuck with using a formlist of refs rather than forms.

     

    The trouble with any actor templated to a levelled list is that their base object (GetBaseObject, aka gbo) is not static, but dynamic, ie if you called getbaseobject on the ref in-game you would get a form whose formid starts with FF (255).

    This was exactly what I'd expected. However, OP said checking their base ID in-game with GBO did return the same ID as what was on the form list passed to the handler. Either that or we misunderstood one another. But the thing that I find interesting and confusing here is that there are other levelled actors on the form list that have their deaths registered accurately by the handler as intended.
    Not quite accurate; I think some clarification is in order.

     

    Taking Grouse as an example; Grouse has his own NPC_ form, base ID xx015698; If you call GetBaseObject on GrouseRef, his reference in the world which has a formID of xx033174, it returns the value xx015698, which is on the NPCParadiseFallsSlaverLIST. However, the NPC_ record Grouse uses LvlSlaver as a template. The same applies for Carolina Red, Jotun, Ymir, Pronto, and Richter; all six use LvlSlaver, all six have their own NPC_ form which is referenced in the world, all six references return the expected base form when you call GetBaseObject on them, all six references return a value for GetBaseObject which IS on the filter list. And none of the six is caught by the event handler if the filter FLST uses those base forms.

     

    LvlSlaver is, itself, an NPC_ record; however, it uses EncSlaver as its template, which is indeed a LVLN, or leveled NPC, record.

     

    The other candidates on the SlaverLIST include EulogyJones, Forty, and ParadiseFallsSlaver1, which have no template at all; ParadiseFallsSlaver2, 3, 4 and 5, and ParadiseFallsSlaverGuard01, which use ParadiseFallsSlaver1 as their template; Cutter, who uses DocAATEMPLATE as her template; and ParadiseFallsSlaverGuard02, ParadiseFallsSlaverGuard03, and ParadiseFallsSlaverGuard04, which use ParadiseFallsSlaverGuard01.

     

    So to answer Mktavish's question...

    Which Lvled actors did have their death registered ?

    None of them. Of the NPCs using LvlSlaver as their template, none of them are processed by the event handler, unless I filter based on their refs and not their base forms.

     

    How about a formlist with the refs instead?

    This works - at least it does in this instance, because all of the references are already persistent. I'm not sure whether it would work in a different case where one or more of the references weren't already persistent.

     

    EncSlaver is the Base ID of the lvled character in the mix. Why those specific named base Id's show up in the render window as an M with an arrow.

    It holds 8 base ID's of other NPC's to pick from , what the NPC LvlSlaver relys for everything in template data.

     

    LvlSlaver is just an intermediary I guess. Never having a ref id of it ???

     

    So was saying you take all 8 base ID's from the pic list of EncSlaver ... and put in a form list.

    But then also if you click opening up some of those in its list ... you will see some rely on still more others.

     

    So then the end of those strings need to be what is in the form list right ?

     

    Ugg ... think better forget about that route.

    This sounds like a rabbit hole that Alice would run from screaming if she so much as glanced at it.

    Whats wrong with just passing the 6 ref ID's next to the Resident list ?

    In this particular case: Nothing. But that might not be the same for all cases.

     

    The easier thing in my view would be to set a variable from a script on each npc.

     

    Most have one already in this script " ParadiseFallsSlaverScript" But some don't like Grouse.

     

    So could just copy/paste this block from that one to his.

     

    Begin OnDeath

    set MQ07.KillCount to ( MQ07.KillCount + 1 )

    End

     

    Or probably better just make your own "OnDeath" block similar ... setting a variable in a quest script , or the quest script that rewards the player for this.

    The reason I want to avoid this is conflicts; if I edit those scripts, but another mod is installed that ALSO edits those scripts, it's a crapshoot whether I get the events I need. Setting up an event handler avoids that conflict - assuming it works reliably, of course.

     

    EDIT: No, I don't know why the forum isn't displaying the timestamps and handles for the quotes. It wants to be dumb, I guess.

  2. If necessary, it can still work for this specific application, yeah? or is there some reason you don't want to do it here? Is it that they weren't already persistent references, so you don't want to alter them and produce an unnecessary compatibility problem? You could use this:

    https://geckwiki.com/index.php/SetPersistent

    I suppose you'd need to associate the actors with reference variables via an array first, though, which is a little annoying. Although, rather than using the form list method, could you use an array script and do it by faction?

     

    Just thinking of relatively painless workarounds.

    I'm not sure you can pass an array variable as a filter to SetEventHandler. Otherwise it might work.

     

    ...or it would, except it turns out that all of the slavers I'm interested in are already set as persistent, meaning that that for this instance at least, making a form list of the references is pretty easy thanks to a modified version of matortheeternal's PowerList script. In fact, I've just done that.

    Regarding your actual problem of the event handler not catching these NPCs when they die, and messaging Sax, I'm mad to find out what you learn, as this is a perplexing little snag and it's getting to me that I can't think of what could be the trouble.

    This DoctaSax?
  3. I had a feeling the base IDs wouldn't work. Did you try matching their in-game GBO ID to the base ID in the GECK?

    I did; GrouseRef definitely returns the same result for GetBaseObject as the base form that's on the formlist.

    I think something about the way the game generates the actor breaks the connexion to the base object, at least as far as event handlers are concerned. I would message Sax if you really want an answer, as I know he does a lot of work with stuff like this (and is the author of the best event handler tutorial I know of).

    I'll have to give that a try.
  4. So it would seem you need to pass their Ref ID for "GetDead" or "OnDeath" block in the event handler.

     

    Sorry not really familiar with event handlers ... but I assume you can pass any form ID in them ?

    According to the Wiki, you can pass a ref, a base form, or a list.

    So just a matter of adding those 6 npc ref ID's along side the resident form list .... maybe ?

    Not ideal, but it might suffice as a workaround.

     

    Hmm... I wonder... what would happen if I were to add LvlSlaver as a filter...? (EDIT: Not a lot, it turns out)S

     

    So I tried registering handlers with explicit filters for those six... Using their base forms didn't work. Using their references did.

     

    Still not ideal, since it means you have to have persistent references for everything whose death you might want to handle, with unique refIDs. (I forget whether you can put non-persistent references on a form list)

  5. So you are saying so far all NPC's relying on the lvlSlaver for Stats only ,which rely on EncSlaver for everything. Are not working so far ? Where as Eulogy and Forty don't use the template data at all , are working ?

    Hmm. It seems you're right. All of the ones which aren't working all use LvlSlaver as their template. There are other Slavers who have "Use Stats" and a template; However, none of those templates are LVLI forms. The only other commonality is that the ones which have been working have a Model Filename of "Characters\_Male\Skeleton.NIF", while the ones which don't work - which all use LvlSlaver - all use "marker_creature.nif", which is probably more of a 'red flag' than a cause.

  6. Oh right. Addendum; I found that the handler fails to catch Ymir's death. Ymir's editor location is the PF barracks, although he gets moved to the main courtyard by a script some time before you get there. Pronto is always in Lock and Load, though.

     

    ...further addendum, Carolina Red is NOT caught. I'm going through them one-by-one right now to make absolutely certain which deaths are caught and which aren't, and I'm going to take another look after that.

     

    So. I've been through the lot of them now, and the following slavers aren't trapped by the event handler:

    Grouse
    Richter
    Pronto
    Carolina Red
    Jotun
    Ymir

     

    so it seems the four I was comparing before were all faulty. Yay for wasting my own time. FNVEdit is currently loading up and this time, I'm certain I'll be checking the right bloody ones...

     

    However, one point I feel I should make; if I declare my event handler with no filters at all, it DOES trap those deaths, and it DOES process them correctly - meaning that all of those slavers ARE on the list that's used for filtering, because if they weren't I'd be getting entirely different messages in the console.

  7.  

    Defo sounds as if the levelled actor is the trouble. You need to check for differences between the way the functioning levelled actors are done and the way these three are done. I'll do some research in the meantime as I don't have FO3. This is really weird (and I secretly love it and find it mentally engaging because I'm sick).

    Hmm. Okay. So, comparing the following slavers:

    • Jotun, whose death is trapped
    • Carolina Red, whose death is trapped
    • Grouse, whose death is NOT trapped
    • Ymir, whose death is NOT trapped
    and narrowing it down to things which are common to all four; common to one pair and not the other; (ingoring Voice Type for example, since the two working ones have different voice types, the two non-working ones also have different voice types, and to cap it off Ymir - who doesn't work - has the same voice type as Jotun - who does) or just otherwise seem worthy of mention; we have these similarities and differences; (I'm using FNVEdit for these comparisons, with my full load list, to make sure that it isn't an override from something else making things difficult)

    • All four have the "arrow-M" model in the GECK.
    • All four use the LvlSlaver template.
    • All four have the "Use Stats" template flag and no others.
    • All four have the Slaver class.
    • All four have Height and Weight set to 0.00 in their base form
    • None of them have the Essential, "No low level processing", "Quest item", "Respawn", "Is CharGen Face Preset", "No Knockdowns", "Respawn", or "No VATS Melee" flags set.
    • Grouse and Ymir have unique scripts, both of which have OnDeath blocks. Jotun has no script at all, but Carolina Red has a script, ParadiseFallsSlaverScript, which also has an OnDeath block.
    • All four are set to Aggressive, Foolhardy, 50 Responsibility, Mood Neutral, and Assistance "Helps Friends and Allies".
    • All four have their references set to Persistent
    I'm just not seeing any differences to explain this...

    This is pretty obvious but the sort of thing that sometimes gets overlooked, so I'll mention it: by any chance are those three involved in quests or marked "essential"?

     

    All of them are killable, so they're not Essential. Pronto and Grouse are both involved in quests, Pronto in the unmarked quest Economics of Violence, Grouse in the marked sidequest Strictly Business and the story quest Rescue From Paradise. Richter, however, isn't involved in any quests. In fact, in-game he doesn't even have a name, just "Slaver".
  8. I wish I had Fallout 3 till I could check for you but I don't, so I would say that my instinct tells me that something is wrong with the form list and that Grouse, Richter, and Pronto are somehow not on it. Obviously, you're saying that's not the case, but is it possible that as it's an unused list in the vanilla game, they perhaps made more than one version of the characters that aren't being caught by the event handler and that the old versions of these characters were put on the form list before they decided not to use it and thus never updated it?

    I've checked with GECK and FNVEdit; the base forms in the world are definitely the same ones as on the form list, and there is nothing in my load order overriding the list.

     

    I DID notice that Grouse, Richter and Pronto have the "capital M with an arrow through it" model within GECK that's associated with levelled actors... The logical conclusion would be that it's connected, except there are other slavers like Jotun and Carolina Red who also have the same "arrow-M" model in the GECK, and those have no problem.

     

    EDIT: Oh, also, a detail I just remembered: If I register the event handler with no filters at all, meaning it catches ALL kills - it will catch Grouse, Richter and Pronto; And when the event handler processes those kills, it reports that yes, those NPCs ARE on the Slaver list, in that both IsInList returns true, and ListGetFormIndex returns a value that is not equal to -1, and they return a base object that, to my eyeballs, is on the list.

     

    This probably isn't the problem but do be aware that event handlers must be set every time the game is launched, meaning a save file that was made after the handler is set will not have the handler active if the game is exited to the desktop and relaunched.

    I'm aware of this, and no it's not the problem; I have a savegame I'm using for testing which, immediately after loading, has a console entry that states the event handler has been registered; I kill Richter, nothing in console. Kill Grouse, no console output. Move in and kill Forty, the function's debug logging strings appear to show that Forty's death has been registered.

  9. I'm working on updating a FO3 mod I made to Tale of Two Wastelands. In that mod, I had a quest stage call GetDead() on every slaver in Paradise Falls, and give the player some bennies once every one was dead. In the update, I decided to try and update it with NVSE capabilities into something more efficient; I decided to try using an OnDeath event handler to trap the death of characters like so:

    SetEventHandler "OnDeath" fnProcessParadiseSlaverDeath, "first"::NPCParadiseFallsSlaverLIST

    fnProcessParadiseSlaverDeath is an Object script containing a function which I've included here:

    scn fnProcessParadiseSlaverDeath
    
    short iKillFlag ; The kill flag associated with the current victim
    
    ref Victim
    ref Attacker ; Not actually needed for our purposes, but the parameter must still be present
    
    begin Function { Victim, Attacker }
        if ParadiseLostQUST.bParadiseIsAlreadyLost
            DebugPrint "fnProcessSlaverDeath: Paradise Falls already destroyed, exiting"
            RemoveEventHandler "OnDeath" fnProcessParadiseSlaverDeath
            return
        endif
        
        let Attacker := NPCParadiseFallsSlaverLIST ; DebugPrint throws a hissy fit if you try to pass it a form list directly. It demands a variable!
        ; No deviations! Or you vill be beaten! Achtung! Allarme! And other noises of stubborn insistence!
        ; We have no actual use for the Attacker variable, so why the f*#@ not?
        
        if Victim.IsInList Attacker
            DebugPrint "Victim %i is found on list %i: continuing", Victim, Attacker
        else
            DebugPrint "Victim %i could not be found on list %i: exiting", Victim, Attacker
            Return
        endif
        
        if Victim.GetType == 42 ; NPC_
            DebugPrint "fnProcessSlaverDeath: Victim is NPC type, continuing"
        else
            DebugPrint "fnProcessSlaverDeath: Victim is not an NPC, aborting"
            Return
        endif
        
        DebugPrint "fnProcessSlaverDeath: Found reference %i", Victim
        let Victim := Victim.GetBaseObject
        DebugPrint "fnProcessSlaverDeath: Found base object %i", Victim
        
        let iKillFlag := ListGetFormIndex Attacker Victim
        if iKillFlag == -1 ; Sanity check
            DebugPrint "fnProcessSlaverDeath ERROR: ListGetFormIndex returned value of -1 for Victim and list %i: unable to continue", Attacker
            Return
        else
            DebugPrint "fnProcessSlaverDeath: Victim found on list %i in position %.0f", Attacker, iKillFlag
        endif
        
        DebugPrint "fnProcessSlaverDeath: Previous set of kill flags is %x", ParadiseLostQUST.iKillFlags
        let ParadiseLostQUST.iKillFlags := ParadiseLostQUST.iKillFlags | (2 ^ iKillFlag)
        DebugPrint "fnProcessSlaverDeath: Kill flags have been set to %x", ParadiseLostQUST.iKillFlags
        if eval (ParadiseLostQUST.iKillFlags == ((2 ^ (ListGetCount Attacker))-1))
            DebugPrint "fnProcessSlaverDeath: All kills flagged, executing ParadiseLostQUST stage 200"
            SetStage ParadiseLostQUST 200
        endif
    end



    NPCParadiseFallsSlaverLIST is a FLST, mostly-empty in FalloutNV.esm and even unused in Fallout3.esm and TaleOfTwoWastelands.esm, that contains base form IDs for every slaver from Paradise Falls. From the debugging lines printed to the console, and saved to my log, I can tell that while the event handler is called on most of the people on that list, including Eulogy Jones, Forty, and some of the unnamed slavers, it isn't called on Grouse, Richter, or Pronto - even though all three are definitely on the FLST.


    So I tried setting the event handler another way:

    SetEventHandler "OnDeath" fnProcessParadiseSlaverDeath, "first"::NPCParadiseFallsResidentLIST

    ResidentLIST is basically like the SlaverLIST, except it includes the slaves. This one still doesn't work; the event handler still fails to catch the death of Grouse, Richter, or Pronto.


    So far the only way I've found to actually have my event handler reliably catch all of the slaver deaths is to declare the event handler with no filter at all - which is obviously not ideal. Especially when it SHOULD be working, but isn't because, I don't know, maybe because this engine is held together with spit and sellotape.


    I have no idea what the crap is going on here; can anyone provide pointers?


    tl:dr; I'm declaring an OnDeath event handler using a form list as a filter for the victims, but the stupid engine is being an arse and refusing to call that event handler for some NPCs which are definitely on that list. Can anyone tell me WTF is going on and WTF I can do to fix?
  10. I'm trying to configure FNV so my Steam controller's face buttons do the same as they would on an Xbox controller. It's... not entirely possible, but not too bad. Or at least, it wouldn't be too bad, if I could assign Enter as the Accept key in menus. But I can't figure out how to do it. I'm familiar with how to change the buttons used, but I can't figure out how to use Enter/Return.

     

    I've been using vats_menu.xml as my testbed. At the top is a fairly clear block of:

        <_PCButton_X>    return_button </_PCButton_X>
        <_PCButton_E>    accept_button </_PCButton_E>
        <_PCButton_R>    special_attack_button </_PCButton_R>
        <_PCButton_F>    special_attack_2_button </_PCButton_F>
    

    I tried changing the _PCButton_E to _PCButton_Return, _PCButton_Enter, _PCButton_ENT and _PCButton_RET, but none of these work; strangely, the E key remains the "accept" button - by which I mean pressing Return won't commit the VATS attack in-game, but pressing the E key does. I'm aware that changing what the game displays has to be done further-down; Right now I'm more concerned with getting Enter to do the job.

     

    tl:dr; I want to use Return as my "accept" key in menus. How do I set this in the menu XML?

  11. Recently I moved some files from one of my hard drives to an SSD, but it seems in the process I deleted something important by accident, and now NMM crashes immediately on startup. No trace window, nothing.

     

    The files I moved were everything in My Games. My Documents has an NTFS junction in its place pointing to the new home on the SSD. Fallout New Vegas itself and Fallout 3 don't have any problems running with this setup, meaning I can load my saves, play the game, and so on.

     

    When I try to start NMM, I get the usual "has stopped working" dialogue box with the following info:

     

    Problem signature:
    Problem Event Name: CLR20r3
    Problem Signature 01: NexusClient.exe
    Problem Signature 02: 0.61.23.0
    Problem Signature 03: 57335ff7
    Problem Signature 04: mscorlib
    Problem Signature 05: 4.6.1076.0
    Problem Signature 06: 56d79d90
    Problem Signature 07: 157f
    Problem Signature 08: fd
    Problem Signature 09: IOIBMURHYNRXKW0ZXKYRVFN0BOYYUFOW
    OS Version: 6.1.7601.2.1.0.256.1
    Locale ID: 2057
    Additional Information 1: 0dcd
    Additional Information 2: 0dcd0adae731b902f2beb72a0bbd3056
    Additional Information 3: 2f8d
    Additional Information 4: 2f8dc41268b2739488f9cfdf9f7b1ab7

     

    Going into Event Viewer nets me a little more information, in the form of a .NET Runtime error with the following data:

     

    Application: NexusClient.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.IO.DirectoryNotFoundException
    at System.IO.__Error.WinIOError(Int32, System.String)
    at System.IO.FileStream.Init(System.String, System.IO.FileMode, System.IO.FileAccess, Int32, Boolean, System.IO.FileShare, Int32, System.IO.FileOptions, SECURITY_ATTRIBUTES, System.String, Boolean, Boolean, Boolean)
    at System.IO.FileStream..ctor(System.String, System.IO.FileMode, System.IO.FileAccess)
    at System.CodeDom.Compiler.TempFileCollection.EnsureTempNameCreated()
    at System.CodeDom.Compiler.TempFileCollection.AddExtension(System.String, Boolean)
    at System.Configuration.Internal.WriteFileContext..ctor(System.String, System.String)
    at System.Configuration.Internal.InternalConfigHost.StaticOpenStreamForWrite(System.String, System.String, System.Object ByRef, Boolean)
    at System.Configuration.ClientSettingsStore+ClientSettingsConfigurationHost.OpenStreamForWrite(System.String, System.String, System.Object ByRef)
    at System.Configuration.MgmtConfigurationRecord.SaveAs(System.String, System.Configuration.ConfigurationSaveMode, Boolean)

    Exception Info: System.Configuration.ConfigurationErrorsException
    at System.Configuration.MgmtConfigurationRecord.SaveAs(System.String, System.Configuration.ConfigurationSaveMode, Boolean)
    at System.Configuration.ClientSettingsStore.WriteSettings(System.String, Boolean, System.Collections.IDictionary)

    Exception Info: System.Configuration.ConfigurationErrorsException
    at System.Configuration.ClientSettingsStore.WriteSettings(System.String, Boolean, System.Collections.IDictionary)
    at System.Configuration.LocalFileSettingsProvider.SetPropertyValues(System.Configuration.SettingsContext, System.Configuration.SettingsPropertyValueCollection)
    at System.Configuration.SettingsBase.SaveCore()
    at System.Configuration.SettingsBase.Save()
    at System.Configuration.ApplicationSettingsBase.Save()
    at Nexus.Client.Program.UpgradeSettings(Nexus.Client.Properties.Settings)
    at Nexus.Client.Program.Main(System.String[])

     

    Clearly I deleted a directory I shouldn't have, but now I can't find out WHAT directory; uninstalling and reinstalling hasn't helped. I've tried renaming the NMM folder in Program Files to something else, as some have suggested in other threads; I've tried running NMM as administrator; uninstalling and reinstalling; no dice. I'm out of ideas; anyone got any insight?

  12. So many mods have weapons that I'd love to use, but are actually all but useless to me due to the fact that I mostly roll with stealth fields. I'd like to change that.

     

    I know it's possible to have something that's visible even after a stealth field; There's a KAC PDW model in the Book of Earache whose Aimpoint scope has a laser dot that remains visible even when I'm stealthed. But I cannot for the life of me figure out how to replicate the effect on a different mesh; I can only replicate the effect if I copy the entire laser dot block.

     

    I've tried copying the NiStringExtraData from the node; I've tried duplicating the NiStencilProperty data. I've tried duplicating the NiAlphaProperty values, and the NiMaterialProperty values, I've tried dthe works... The only thing that's worked is if I paste the laser dot in its entirety; everything else I've tried, I either get no difference, or the weapon crashes the game as soon as I put the Pipboy down. So I turn to you, modders who've been doing this longer than I have; how can I pull this off?

     

    I'm leery about attaching the model file for examination; I don't actually know who it belongs to, and I don't know if it's available legitimately elsewhere; Compounding this is the fact that I know the guy who released the Book of Earache took some models without permission and got banned for it, and I'm not sure which ones.

  13. It may be more expedient to try and figure out why GECK is blowing up on you. (Personally, while I'm handy with the programming side, I'm horrendous at level design, so...)

     

    First things first, I'd suggest flattening your GECK configuration, resetting it to defaults, by finding your My Games\FalloutNV directory, and deleting GECKCustom.ini. That done, load GECK once, close it, and then re-edit bAllowMultipleMasterLoads to 1, just to get over that asinine idiocy. (Seriously, what moron on the coding team even made "multiple master loads" an option in the first place, let alone made it disabled by default?) Next, install GECK Powerup; www.nexusmods.com/newvegas/mods/41642/? - the main advantage to this for me is that it gives you a log file you can refer to when errors happen. (it should be named nvse_plugin_geckpu_ew.log and located in your main NV directory with Geck.exe)

     

    If flattening your configuration doesn't fix the problem, GECKpu's log might give you enough information to figure out what's going on.

     

    If that doesn't work, tell us what actually happens, and pastebin the log. The worst anyone can say is "I have no idea what's going on there".

  14. As the topic says. My first port of call was to try using Body Part Data, but it seems only creatures use those directly. So then I noticed that ragdolls have a field for Bodypart Data, and started looking for a way to make the NPCs use a custom ragdoll. That led me to http://forums.nexusmods.com/index.php?/topic/1462650-skeletons-body-part-data-and-npcs-problem/ which indicates that apparently NPCs can't use anything but the one default ragdoll and Bodypart Data.

     

    So that brings me here. I'm not really looking to make these NPCs immune to crippling as such - I just want to make it so that their body parts can't be severed or exploded. If BodyPartData isn't going to help, I'm totally out of ideas. Is it even possible to make NPCs who always leave corpses in one piece?

  15. I had this problem a little while back. You'd have to take a bit of a leaf out of WMK for Fallout 3... A single weapon record only supports 3 mod kits, so if you want more you'll need additional weapon records. Additional weapon records probably means you'll need workbench recipes. Probably the easiest way to have multiple mods would be to just have all of the mods attached at the same time in a workbench recipe; that does make it more difficult to detach mods, though.

     

    Keep in mind that any mods attached using the Pip-boy menu to a weapon that's used as a component of a workbench recipe get destroyed. (which can be a bit of a pain in the arse if you ask me)

  16. I managed to solve this by chance; the white fox race itself was flawless. However, I noticed that the Elder and Child versions were NOT. Both of those had the wrong race set for their Younger/Older properties - the pink race. (likely I copied the pink fox records, altered the texture options, and forgot to update the Older/Younger properties)

  17. (A note before we begin; if you're the type who uses "furfag" as a pejorative, you might want to walk away. Trust me. It'll be less painful for you.)

     

    I have several modded races installed on my game, but one in particular has a peculiar property. Namely, while I can set an NPC to that race in FNVEdit or GECK without any problems, and use the race through the chargen race menu without problems... But if I attempt to use MatchRace with an NPC of one particular race as the source, I get a different race. Like so;

     

    I've taken some screenshots to illustrate things better than I can with words.

     

    http://www.catballbakesale.webspace.virginmedia.com/Fallout/RaceError/Screenshot430.jpg

    Here, I've selected the white vixen to show her RefID, and I've entered the console command to copy her race to the player character. (the caucasian in the foreground) When I press Enter, she should become a white fox too... right?

     

    http://www.catballbakesale.webspace.virginmedia.com/Fallout/RaceError/Screenshot431.jpg

    Apparently not.

     

    I've done some tests, and I've found that this isn't just a texture issue; using a white fox as the MatchRace source actually sets the target to the pink fox race; GetIsRace with the white fox formID will return false and with the pink fox formID, returns true. What I can't get is WHY. I have no idea where to even start looking for the issue... can anyone assist?

  18.  

    Isnt that fox based off of Oblivion's dog (meshes and textures), if it is then its not legal to use in Fallout.

    I'm not planning to distribute it, just use it, so I don't foresee a problem. (unless uploading screenshots using it crosses the line... Hmm. That could be a problem.)

    Why not retexture the coyote, its pretty similar in shape to that fox your using.

    Retexturing is beyond my abilities too... I'll check those tutorials, see if I can follow them though.
  19. I thought that, but the black fox picture seems just too much perfect to be a wrong rigged beast. Well I guess you can easily check it, preview your black fox inside the GECK like in your screenshot, but go inside the animation tab and pick a random animation, see if it moves correctly

     

    EDIT: Nivea's right.

    The bright side of this is that their structure is very similar, it shouldn't be a big pain to port it over a NV dog skeleton

    I have no idea how to do such a thing though... are there any idiot's guides on the subject?
×
×
  • Create New...