tolerance Posted January 2, 2020 Share Posted January 2, 2020 is it possible for the head slot to not hide hair? like the hoods use just the hair slot, but when equipping just head slot item the hair disappears despite hoods being capable of being equipped. could there be like a plank hood scripted to show the hair you normally have, without a complex save game damaging, crash prone script? or like a small dll to change the head slot to only hide the head? Link to comment
fejeena Posted January 2, 2020 Share Posted January 2, 2020 Maybe with blockhead? What you want to do? Add another head? Or replace the head with an item? With blockhead you can not make a equip / unequip item like a helmet. But with blockhead you can replace the head with another head or a item during a quest , and later in the quest you can remove it and get back your original head . --------------- A invetory item that you click/activate ( but not equip) and it changed a quest variable in the quest script. If the variable is set to 1 it will add the blockhead head/item And if the variable is 0 head/item will be removed. But this will only work with the player, or with one NPC that is used in the quest script. Link to comment
tolerance Posted January 2, 2020 Author Share Posted January 2, 2020 well i have some ideas, but mainly a way to have racial disguises, like have a wolf in sheep's "clothing" or a fox infiltrating a human supremacist meeting or whatever like I've tried this and all you really need to do for the body and head is change the name of the skin material and select the textures wanted, but wigs don't look right and i don't want to make wigs for every character Link to comment
Blaze69 Posted January 2, 2020 Share Posted January 2, 2020 It's been a while since the last time I played around with Oblivion, and I never actually tinkered with using Blockhead through script, but it could be what you are looking for. AFAIK Blockhead can replace all character meshes and textures via script just like it does with the specific file path functionality, so in theory you could set up a spell or equippable item that would swap the PC's meshes and textures to those of a different race on use/equip, and then back once dispelled/expired/unequipped. So a kind of "glamour" or illusion, which BTW is even lore-friendly as per the enchanted earring used by Razum-dar and the PC during some quests in ESO. This should keep the hair and will also make the whole thing much smoother, as you would be effectively replacing the PC's actual body and textures so other clothes could still be worn over it instead of being locked into whatever specific outfit you set up. As I said I never actually looked into Blockhead use through scripts so I don't know if it's actually possible and how well it would work, but at least it sounds like it could be an option, if you're serious about this. Link to comment
fejeena Posted January 2, 2020 Share Posted January 2, 2020 With BlockHead you can not create a Item that every NPC can use. One NPC or the player is OK. The Ref of player or NPC have to be in the script. Example: 1 #################################### The head Blockhead will use: Yes change skin material to Not-Skin-name and set the right textures path ( argonian head texture if it is a argonian head mesh ) Put it a folder meshes\MyMod\disguiseHeads\Head1.nif -------------------------------------- You create a item in the esp and use a head mesh with removed bones and NiSkinInstance and added collision ( misc or clothes item ) And you add Object script that set the Quest variable "disguiseHead" in the below script to 1 or 0 ... Begin on activate If disguiseHeadQuest.disguiseHead == 0 set disguiseHeadQuest.disguiseHead to 1 else set disguiseHeadQuest.disguiseHead to 0 endif endif end -------------------- You add a quest with name disguiseHeadQuest ------------------------------ And a quest script: sqn disguiseHeadScript short disguiseHead Begin GameMode if GetGameLoaded If GetStage MyQuest >= 40 && disguiseHead == 1 ;;;; You need to set the head wen you start the game because Blockhead is not in your save file . PlayerRef.SetHeadAssetOverride "MyMod\disguiseHeads\Head1.nif" 0, 2 PlayerRef.Update3D endif endif ;;; your quest script entries. ;;;; and after you bought the disguise Head Item and quest is set to 40 If GetStage MyQuest >= 40 && disguiseHead == 1 ;;; is set by activating the item in you invetory PlayerRef.SetHeadAssetOverride "MyMod\disguiseHeads\Head1.nif" 0, 2 PlayerRef.Update3D endif If GetStage MyQuest >= 40 && disguiseHead == 0 PlayerRef.ResetHeadAssetOverride 0, 2 ;;; reset the head. PlayerRef.Update3D endif ;;;;;;; If you use a Mod with Blockhead heads, like OCO2 , I think you have to add the Mod head again instead of reset ( But I never used OCO2 ) ;;;; PlayerRef.SetHeadAssetOverride " ...OCO2 head path... " 0, 2 endif end ############################### example 2 with head texture Spoiler The head Blockhead will use: We use a argonian headDO NOT change skin material , the name is skin. Put it a folder meshes\MyMod\disguiseHeads\Head1.nif __________________ Head texture We use the vanilla argonian textures path -------------------------------------- You create a item in the esp and use a head mesh with removed bones and NiSkinInstance and added collision ( misc or clothes item ) And you add Object script that set the Quest variable "disguiseHead" in the below script to 1 or 0 ... Begin on activate If disguiseHeadQuest.disguiseHead == 0 set disguiseHeadQuest.disguiseHead to 1 else set disguiseHeadQuest.disguiseHead to 0 endif endif end -------------------- You add a quest with name disguiseHeadQuest ------------------------------ And a quest script: sqn disguiseHeadScript short disguiseHead Begin GameMode if GetGameLoaded If GetStage MyQuest >= 40 && disguiseHead == 1 ;;;; You need to set the head wen you start the game because Blockhead is not in your save file . PlayerRef.SetHeadAssetOverride "MyMod\disguiseHeads\Head1.nif" 0, 2 PlayerRef.SetHeadAssetOverride "characters\argonian\headargonian.dds" 0, 1 PlayerRef.SetHeadAssetOverride "characters\argonian\headargonian_n.dds" 0, 1 PlayerRef.Update3D endif endif ;;; your quest script entries. ;;;; and after you bought the disguise Head Item and quest is set to 40 If GetStage MyQuest >= 40 && disguiseHead == 1 ;;; is set by activating the item in you invetory PlayerRef.SetHeadAssetOverride "MyMod\disguiseHeads\Head1.nif" 0, 2 PlayerRef.SetHeadAssetOverride "characters\argonian\headargonian.dds" 0, 1 PlayerRef.SetHeadAssetOverride "characters\argonian\headargonian_n.dds" 0, 1 PlayerRef.Update3D endif If GetStage MyQuest >= 40 && disguiseHead == 0 PlayerRef.ResetHeadAssetOverride 0, 2 ;;; reset the head nif. PlayerRef.ResetHeadAssetOverride 0, 1 ;;; reset head texture ;;; I hope that will reset also the _n.dds. I never used Blockhead reset, only add . PlayerRef.Update3D endif ;;;;;;; If you use a Mod with Blockhead heads, like OCO2 , I think you have to add the Mod head again instead of reset ( But I never used OCO2 ) ;;;; PlayerRef.SetHeadAssetOverride " ...OCO2 head path... " 0, 2 ;;;; PlayerRef.SetHeadAssetOverride " ...OCO2 head path... " 0, 1 ;;;; .dds ;;;; PlayerRef.SetHeadAssetOverride " ...OCO2 head path... " 0, 1 ;;;; _n.dds endif end You can do the same with a NPC and use the NPC ref NPCRef.SetHeadAssetOverride "MyMod\disguiseHeads\Head1.nif" 0, 2 Link to comment
tolerance Posted January 2, 2020 Author Share Posted January 2, 2020 ok, i'll try that once i get a stable game, thank you so much Link to comment
fejeena Posted January 2, 2020 Share Posted January 2, 2020 If you want to change the body texture too: But then it is SetBodyAssetOverride not SetHeadAssetOverride PlayerRef.SetBodyAssetOverride " ...your texture path... .dds", 5, 1 ;;; that is foot texture, all you need for roberts male PlayerRef.SetBodyAssetOverride " ...your texture path... .dds", 4, 1 ;;;; for HGEC you also need the hand texture And for reset Player.ResetBodyAssetOverride 5, 1 Player.ResetBodyAssetOverride 4, 1 ---------------------------------------------------- So you have to set a gender check in the quest script. If player.GetIsSex male == 1 PlayerRef.SetBodyAssetOverride " ...your texture path... .dds", 5, 1 PlayerRef.Update3D endif If player.GetIsSex female == 1 PlayerRef.SetBodyAssetOverride " ...your texture path... .dds", 5, 1 PlayerRef.SetBodyAssetOverride " ...your texture path... .dds", 4, 1 PlayerRef.Update3D endif ------------------------ Edit: and you can add the _n.dds too. Link to comment
Guest Posted January 4, 2020 Share Posted January 4, 2020 Something tells me Oblivion is more advanced than I thought. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now