wcstorm11 Posted March 17, 2012 Share Posted March 17, 2012 Read Topic^ Hi all!I recently, after a LONG time away, started playing new vegas again :dance: One of the things that always annoyed me was the ammo weight addition for hardcore mode. I like all the other features but this. Is there a mod that gets rid of ammo weight? If not, how might I attempt to do this? I have attempted this before, and the closest I got was an unstable mod that worked after a few seconds every time the game loaded. Thanks in advance! Link to comment Share on other sites More sharing options...
Gribbleshnibit8 Posted March 18, 2012 Share Posted March 18, 2012 Well, you could just go edit all the ammo records and set the weight to 0. That should do it. Link to comment Share on other sites More sharing options...
wcstorm11 Posted March 18, 2012 Author Share Posted March 18, 2012 Gah, yeah I guess that's gonna have to do :/ Thanks Link to comment Share on other sites More sharing options...
Gribbleshnibit8 Posted March 19, 2012 Share Posted March 19, 2012 Alternatively, if you want to be super lazy about it, ie more compatible, you could write a pretty simple script to edit all the weights automatically. scn AmmoWeightToZeroSCRIPT ;variables short listLength short listLengthTwo short countLength short countlengthTwo ref listItem ref listItemTwo BEGIN GameMode if getGameRestarted == 0 return endif set listLength to ListGetCount FullAmmoList ;This is a list you make that holds all the other ammo lists set countLength to 0 Label 1 set listItem to ListGetNthForm FullAmmoList countLength if (listItem.GetType == 85) set listLengthTwo to ListGetCount listItem set countlengthTwo to 0 Label 2 set listItemTwo to ListGetNthForm listItem countLengthTwo if (listItemTwo.GetType == 41) SetWeight listItemTwo 0 endif set countLengthTwo to (1+countLengthTwo) if countLengthTwo < listLengthTwo Goto 2 endif elseif (listItemTwo.GetType == 41) SetWeight listItem 0 endif set countLength to (1+countLength) if countLength < listLength Goto 1 Endif END I haven't tested this (validated at Cipscis' Code Validator), but basically what you'd do is just make a quest and a quest script and set the quest to run every second or so. Make your own custom list with the name "FullAmmoList" and add all of the ammo lists into it. Then what it should do is when you run the game it will go through once and search your list, take each of those lists, and then set all the weights to zero. This will work for any mod added ammo that gets added to the vanilla form lists, but it won't cover DLC or mods that make new ammo lists. GRA would need to be patched for, as would HH and a few others. If you (or anyone else) implements this method, let me know and I'll fix it up to handle the DLC without needing a separate patch file. Additional notes, this could be written to not need the custom list at all, it would just be longer and I didn't feel like looking up the names of all the ammo lists. Link to comment Share on other sites More sharing options...
wcstorm11 Posted March 19, 2012 Author Share Posted March 19, 2012 That code is very similar to what I tried before, with the results described. Is there a way to permanently edit the weight values (aka run the script just once?). Link to comment Share on other sites More sharing options...
Gribbleshnibit8 Posted March 19, 2012 Share Posted March 19, 2012 Oh, well then. What was wrong with it before? Why was it unstable? Did it cause crashes, etc? As for getting it to work instantly, just set the quest delay to .01. To answer your other question no, there's no script based way to get it to set permanently. The weights are part of the ESM data and anything you do to change them in the game won't stick around. Only way to override them is with a plugin that changes them. Link to comment Share on other sites More sharing options...
urbanfog Posted March 19, 2012 Share Posted March 19, 2012 Alternatively, if you want to be super lazy about it, ie more compatible, you could write a pretty simple script to edit all the weights automatically. scn AmmoWeightToZeroSCRIPT ;variables short listLength short listLengthTwo short countLength short countlengthTwo ref listItem ref listItemTwo BEGIN GameMode if getGameRestarted == 0 return endif set listLength to ListGetCount FullAmmoList ;This is a list you make that holds all the other ammo lists set countLength to 0 Label 1 set listItem to ListGetNthForm FullAmmoList countLength if (listItem.GetType == 85) set listLengthTwo to ListGetCount listItem set countlengthTwo to 0 Label 2 set listItemTwo to ListGetNthForm listItem countLengthTwo if (listItemTwo.GetType == 41) SetWeight listItemTwo 0 endif set countLengthTwo to (1+countLengthTwo) if countLengthTwo < listLengthTwo Goto 2 endif elseif (listItemTwo.GetType == 41) SetWeight listItem 0 endif set countLength to (1+countLength) if countLength < listLength Goto 1 Endif END I haven't tested this (validated at Cipscis' Code Validator), but basically what you'd do is just make a quest and a quest script and set the quest to run every second or so. Make your own custom list with the name "FullAmmoList" and add all of the ammo lists into it. Then what it should do is when you run the game it will go through once and search your list, take each of those lists, and then set all the weights to zero. This will work for any mod added ammo that gets added to the vanilla form lists, but it won't cover DLC or mods that make new ammo lists. GRA would need to be patched for, as would HH and a few others. If you (or anyone else) implements this method, let me know and I'll fix it up to handle the DLC without needing a separate patch file. Additional notes, this could be written to not need the custom list at all, it would just be longer and I didn't feel like looking up the names of all the ammo lists. Hahaha that was so nice of you, to write the script for him, I´ll feel delighted of that gest Xp Link to comment Share on other sites More sharing options...
wcstorm11 Posted March 19, 2012 Author Share Posted March 19, 2012 Yeah it was a script just like that one. It would corrupt my saves after a bit and didnt always work :/ Link to comment Share on other sites More sharing options...
Recommended Posts