Hangman4358 Posted May 7, 2012 Share Posted May 7, 2012 Ok, i am baffled. I have created a new set of armor. Really just a glass retexture with some nifty bits added to it. And i have set it up to use its own nif files and all that. I also made a new ore and ingot for it and created a recipe for crafting the items from the forge and tempering them at the workpench. The problem i have is that when i make them at the forge, they are found under MISC. I based them off the glass set and first had them under the glass set in the forge, but then i messed with some of the keywords and now it is under MISC. The question is, how do i add it to its own category like the other sets, ie. iron or glass, instead of having it be under MISC. I have searched far and wide and have not found anything... Link to comment Share on other sites More sharing options...
majistik Posted May 7, 2012 Share Posted May 7, 2012 From my knoledge u cannot add your own names only use exisiting ones or use misc. If you want to add it to an exisiting catagory i think you take an exisiting weapon in this catagory and copy his values in the right side box and paste it to yours. I may be wrong. Link to comment Share on other sites More sharing options...
steve40 Posted May 8, 2012 Share Posted May 8, 2012 (edited) Yes, I do believe that you can create a custom armor category. I haven't tried this, but I'm fairly confident that it will work. Let's say you want to make a new category called "Blood" armor. This is what you should do. 1) In your Armor form in the CK, in the "Keywords" field (hopefully it is not greyed out), right-click and choose "New". In the box that pops up, type "ArmorMaterialBlood" (or your armor type) in the ID field (without quotes). Click OK in that box and then click OK on the Armor form to close it.2) Go to the Miscellaneous section of the CK Object Window and look for FormList subsection. In the right-hand window of that section, look for the FormList called MaterialsArmor. Double-click on that form to open it. A box will pop open with a list of keywords in it. Leave this box open for now, but drag the box over to one side as you will need to use it in a minute.3) Now navigate a couple of subsections down (in the left-hand side of the Objects Window of the CK, and find the Keyword section (still under Miscellaneous). Find your new armor type keyword (ArmorMaterialBlood) in the right-hand side of the window. Use the mouse to DRAG this keyword into the "MaterialsArmor" FormList box that you opened in step 2. Your keyword should now appear in the FormList. Click OK to close this FormList.4) Now save your mod with these changes. Try it out in Skyrim and see if the new "Blood" category appears when you do your crafting.5) To add further new armors to the "Blood" category, all you have to do is have your mod as "active" in CK then go to the Armor form of your next new armor and in the Keyword field, right-click and choose "Add" then find your new keyword (ArmorMaterialBlood) and add it. That's all :) Well, that's the theory, so give it a try and let me know if it works. Kudos would be appreciated if it does. :thumbsup: EDIT: It doesn't work. It's controlled by a script that is called by native code. Edited July 3, 2012 by steve40 Link to comment Share on other sites More sharing options...
diamok Posted May 8, 2012 Share Posted May 8, 2012 Although I did not import a new armor piece, I did duplicate a vanilla one and tested your theory steve40.What I did was remove the keyword for the vanilla category then add the new one in. Sadly, I could not get the new category to appear. Take care, Link to comment Share on other sites More sharing options...
Hangman4358 Posted May 8, 2012 Author Share Posted May 8, 2012 awww, i almost thought that would work. I totally did not think about the form list. Sadly it did not :( I have not downloaded any armor mods, are there any anybody knows of that even have their own category? Link to comment Share on other sites More sharing options...
steve40 Posted May 9, 2012 Share Posted May 9, 2012 (edited) Damn, I was pretty sure that would work. Maybe there's a further step that's necessary. I suspect that there might be a separate FormList for the crafting menus or something. There should also be some list or mechanism that specifies which armor types you are allowed to craft etc. When I find the time, I'll dig deeper into the CK and see if I can create a new armor category or not. I did a similar procedure to add a new help message to the Skyrim in-game help menu (adding the new message to the appropriate FormList) ... and it worked! Edited May 9, 2012 by steve40 Link to comment Share on other sites More sharing options...
Hangman4358 Posted May 9, 2012 Author Share Posted May 9, 2012 When you make a recipe for anything craftable you have to say where it is used (forge, enchanting alter, grind wheel, etc.), that link is a keyword And even for the forges there are multiple. the skyforge is different than the regular forge for example. But the anvil at which you can forge has the same list as the regular forge but i have yet to find how they are linked together. some of the form list names are completely unintuitive so maybe the problem is just that the form list for these items is just called babiesAndThings and nobody has looked at it yet :confused: I feel like there has to be a way though, we just have to work at it some more. it would be very strange to have these things hardcoded into the game, especially when they then use keywords to link to those catagories anyway :unsure: Link to comment Share on other sites More sharing options...
steve40 Posted May 9, 2012 Share Posted May 9, 2012 Agreed. It's even possible that there could be a quest/script that controls the crafting mechanism. We'll figure it out :yes: Link to comment Share on other sites More sharing options...
Hangman4358 Posted May 9, 2012 Author Share Posted May 9, 2012 So i went through and did some more looking. There is an entry under quests. Under World Interactions\craft Item Looks like there is some scripts attached to that. But i have no clue about papyrus or other TES scripting Link to comment Share on other sites More sharing options...
steve40 Posted May 9, 2012 Share Posted May 9, 2012 (edited) Yes. I don't have the CK on this computer, but I do have a copy of the scripts with me. The armor types are coded into Craftsmithing.psc. One of the functions is called by native code and is necessary for furniture to be able to smith items. Hmmm. Ok. I'll have a go at changing this script tonight. There's a chance that the game engine won't be happy about this. But, if it does work, the downside is that if another modder tries to add their own armor category, their updated script will overwrite your updated script. It would be necessary to merge every modders new armor categories into a single "universal" script, plus a .esm file with all the new keywords and updated formlist. What I need from you Hangman is the name of your new armor category and the minimum skill level that's required to be able to craft this type of new armor. Then i'll code them into the script and test it out to see if it works. Scriptname CraftSmithing extends ObjectReference ; Maps a material keyword to the minimum skill required to smith an ; object with that material int Function GetMinSkill(Keyword ItemMaterial) if(ItemMaterial == WeaponMaterialSteel) return 5 elseif(ItemMaterial == WeaponMaterialOrchish) return 15 elseif(ItemMaterial == WeaponMaterialDwarven) return 30 elseif(ItemMaterial == WeaponMaterialElven) return 45 elseif(ItemMaterial == WeaponMaterialGlass) return 60 elseif(ItemMaterial == WeaponMaterialEbony) return 75 elseif(ItemMaterial == WeaponMaterialDaedric) return 90 elseif(ItemMaterial == ArmorMaterialIron || ItemMaterial == ArmorMaterialHide) return 10 elseif(ItemMaterial == ArmorMaterialIronBanded || ItemMaterial == ArmorMaterialStudded || ItemMaterial == ArmorMaterialImperial) return 20 elseif(ItemMaterial == ArmorMaterialSteel || ItemMaterial == ArmorMaterialFullLeather || ItemMaterial == ArmorMaterialImperialReinforced) return 30 elseif(ItemMaterial == ArmorMaterialDwarven || ItemMaterial == ArmorMaterialElven || ItemMaterial == ArmorMaterialImperialHeavy) return 40 elseif(ItemMaterial == ArmorMaterialSteelPlate || ItemMaterial == ArmorMaterialScaled) return 50 elseif(ItemMaterial == ArmorMaterialOrcish || ItemMaterial == ArmorMaterialElvenSplinted) return 60 elseif(ItemMaterial == ArmorMaterialEbony || ItemMaterial == ArmorMaterialGlass) return 70 elseif(ItemMaterial == ArmorMaterialDragonPlate || ItemMaterial == ArmorMaterialDragonScale) return 80 elseif(ItemMaterial == ArmorMaterialDaedric || ItemMaterial == ArmorMaterialStormcloak) return 90 else return 0 endif EndFunction ; Called from native code. This function must be present to allow a furniture to smith items. ; Only change the function name, parameters, or return type if the call from native code is updated also. float Function CalculateSmithingValue(Keyword ItemMaterial, int iSmithingSkill) float fsmithingValue = 1.0 if(ItemMaterial != None) int iminSkill = GetMinSkill(ItemMaterial); if(iSmithingSkill >= iminSkill) fsmithingValue = 1.0 + (iSmithingSkill - iMinSkill) / 100.0 endif endif return fsmithingValue EndFunction ; Various materials items can be made of. ; The easiest way to get these bound is to duplicate a furniture ; that already has them set. keyword Property WeaponMaterialIron Auto keyword Property WeaponMaterialSteel Auto keyword Property WeaponMaterialOrchish Auto keyword Property WeaponMaterialDwarven Auto keyword Property WeaponMaterialElven Auto keyword Property WeaponMaterialGlass Auto keyword Property WeaponMaterialEbony Auto keyword Property WeaponMaterialDaedric Auto keyword Property ArmorMaterialIron Auto keyword Property ArmorMaterialHide Auto keyword Property ArmorMaterialIronBanded Auto keyword Property ArmorMaterialStudded Auto keyword Property ArmorMaterialImperial Auto keyword Property ArmorMaterialImperialReinforced Auto keyword Property ArmorMaterialImperialHeavy Auto keyword Property ArmorMaterialSteel Auto keyword Property ArmorMaterialFullLeather Auto keyword Property ArmorMaterialDwarven Auto keyword Property ArmorMaterialElven Auto keyword Property ArmorMaterialSteelPlate Auto keyword Property ArmorMaterialScaled Auto keyword Property ArmorMaterialOrcish Auto keyword Property ArmorMaterialElvenSplinted Auto keyword Property ArmorMaterialEbony Auto keyword Property ArmorMaterialGlass Auto keyword Property ArmorMaterialDragonplate Auto keyword Property ArmorMaterialDragonscale Auto keyword Property ArmorMaterialDaedric Auto keyword Property ArmorMaterialStormcloak Auto Edited July 3, 2012 by steve40 Link to comment Share on other sites More sharing options...
Recommended Posts