If you want to get in touch with me more directly, or are looking for a proper place to learn more details about modding, check out this server. You can find me in the "[FO4] Mod Author Hub", under the Channel "Nuclear Wonderland".
Augoeides, I'd love you more than I already do for creating YAE if you'd consider whipping up a patch for Ketaros Treasures. There's a buttload of magazines with perks in there, so might be quite a bit of work, but I hope my eternal gratitude might be reward enough for you.
That's... a lot. I might consider it; there's a lot of magazine Perks, but they seem to be relatively minor in design, probably just a Perk Entry Point each, which isn't too bad. However, at a glance they all seem to be attached to a series, and as far as I can tell, you can't cycle through PBT's displays. So, for example, if a series of 5 magazines has 5 different effects, I'd have to make 5 different displays, whereas the mod itself just uses one.
I still might look it over, but it might be a while before I get around to it. I've got a general patch coming out to fix some base game stuff, then someone wanted me to tackle the Scrounger mod magazines. I really need to update my SRO patch, too. After all of that, I might be able to do Ketaros, but I don't think it's happening this month, unless I'm in a really good mood and have a ton of free time.
Ah yes, how could I forget on one of the classics?
Adding a single book wouldn't be hard to do, but my PC is down at the moment. With any luck I'll get it fixed this upcoming week, and I'll see if I can get out a tiny patch for it. I was planning on updating MBT soon anyway.
I'll see what I can do. Don't remember the process off the top of my head, but I think I used a series of editable lists. I might have to rewrite some of MPT though, to make it easier to patch, as I wasn't thinking of that (or how popular it would be) when I designed it.
Hoping to address my PC issue tomorrow (car was getting fixed this whole time, picking it up on the morning), but then I have a long list of things to address, plus I have to refresh my self on programming, as it's been 2 weeks without my PC and I can already feel my brain forgetting everything xD
I'll try to address what I can soon, but IRL is a bit chaotic atm, and I want to finish my latest YAE update, before being distracted by anything else.
I wouldn't mind taking the reigns on making some patches for this while you get your stuff in order if you don't mind. :O If you ever got around to figuring out how to explain it, that is~ lol
I just got my computer fixed a few days ago, but I've been tackling stuff strong. I'm almost done my main update for YAE I've been working on for over a month, then I'll pop open MPT and see what I can do. I haven't forgotten :P
So, I decided to take a break from what I was normally doing and spend a "couple hours" working on a "quick" patch for you... but that turned into 7 hours. I found out a few things wrong with the main mod, and was struggling to do some things, because xEdit was being a jerk.
So far, I just have MPT updated and Reading Comprehension done. I'd do more, but I have to study the magazines on each mod, and I know the others you suggested have 6+ which could take a very long time. I'll release what I have now, but in the future I'm going to have to update MPT with each additional patch, as due to the nature of "PipBoy Perks Tab" I have to store all "potential" patch data on MPT itself, then basically enable all of that data through the relevant patch, otherwise I'd have to make dozens of patches for multiple mod combinations, which would be a huge mess.
I was going to look at the Scrounger Magazines too before releasing those 2, but I got distracted by some other other things for a few days, so i figured I'd just release them now, since it's not a big deal to update MPT again later. I'm a bit worn out from working on my main stuff, but I'll eventually get back to MPT and do some more magazine patches. Let me know if there's anything wrong with the ones I released.
Actually finished these latest archives about a week ago, but set them aside on Discord, because I was planning on doing more patches, which in turn would require editing the main archive again, but I can always do that down the line. Sometimes the perfectionist in me slows things down more than it should, when really I should just release the archive and improve on it later.
You'd think I'd have learned that by now, but you can't teach an old dog new tricks. Look forward to more patches for MPT sometime in the future though, it's a fun side project for me to work on!
I'm aware of them. They are new entries I created after releasing the mod, because I had to make additions to it. Normally, for an ESL this wouldn't be a big deal, because I believe you can have up to 4,000 entries in a mod before it doesn't count as an ESL anymore. Even if you have FormID's that would exceed this amount, you can usually compact the FormID's of these entries with xEdit to fall under that 4,000 limit.
However, for whatever reason, xEdit refuses to save these 3 new entries and won't allow me to compact them either. xEdit just flat out ignores commands to alter them, yet also doesn't ignore their existence, and after a few hours of just trying to figure this out, I gave up and save the file in the Creation Kit, which is how mods are supposed to be done anyway.
It shouldn't cause any issues, but it's likely the mod isn't being treated as an ESL anymore. I'm planning on doing more revisions to MPT in the future (you can see one of the posts below for why), so I'll eventually address this, but it's outside my knowledge atm. I'll have to talk to someone who understand xEdit and this weird situation better.
I am planning to work on MPT again very soon (I have to make more patches for various magazine mods anyway), so it will be (hopefully) addressed.
Edit: I'll try to look into it today, MPT is a bit overdue for some love. Edit 2: I tried to compact the entries right after this post... and they immediately worked, but I don't know why. FML. I'll try to do some work on MPT today, and see if I can get it out by tonight.
Update: Managed to spend ALL day on MPT. I managed to make a patch for Backpacks of the Commonwealth and Mutant Menagerie, plus some minor work on YAE. It's been a busy day! I could release them now, but I'm going to toss them on my Discord channel for a couple days, and see if someone more familiar with those mods can spot anything I missed or screwed up on.
I still have no idea as to why I couldn't compact the FormID's of the entries before, but everything is working now. Modding is such a fickle thing.
I need to get back to working on my main project; this was meant to be a "fun distraction", that somehow took me the entire first half of the day to do. Once I get the next major update for YAE out, I'll start to focus more on my minor mods, releasing patches and what not.
Would it be possible to add a dynamic form ID list that I can manually patch? I mean, having a list pointing to other lists with references to mod added collections would allow for easy compatibility patches without having to recompile the quest script.
I played a bit with ChatGPT and this is what we came with:
Spoiler:
Show
Scriptname MPT:MagazinePerksTabScript extends Quest ; When this script starts, it runs through the current save, setting any Globals to their proper value for pre-existing saves before this patch.
;--- PERK PROPERTIES ---------------------------------------------------------------------------------------------- Actor Property PlayerRef Auto
Group PerkMag_Lists FormList Property MagazinePerksList Auto FormList Property MultilayeredMagazineList Auto FormList Property MasterPerkList Auto ; Master list of all magazine perks FormList Property MasterMagazineList Auto ; Master list of FormLists, each containing magazines for a specific perk EndGroup
Group PipBoyTabs_Values FormList Property MagazineActorValueList Auto FormList Property MagazineFilterList Auto EndGroup
; A value that reflects the total amount of Perk Ranks that a Player currently has when this script loads. Float fPerkRank = 0.0
; Persistent array to track processed perks Bool[] perkProcessedFlags
;--- EVENTS ------------------------------------------------------------------------------------------------------- Event OnInit() ; Initialize the boolean array to match MasterPerkList size if it hasn't been initialized If perkProcessedFlags == None || perkProcessedFlags.Length != MasterPerkList.GetSize() perkProcessedFlags = new Bool[MasterPerkList.GetSize()] EndIf MagazineListCheck() EndEvent
Function MagazineListCheck() Int iMagazineCheckIndex = MagazinePerksList.GetSize() - 1 Int iCurrentIndex = 0
While (iCurrentIndex <= iMagazineCheckIndex) Perk MagazinePerkCheck = MagazinePerksList.GetAt(iCurrentIndex) as Perk ActorValue MagazineDescription = MagazineActorValueList.GetAt(iCurrentIndex) as ActorValue GlobalVariable MagazineFilter = MagazineFilterList.GetAt(iCurrentIndex) as GlobalVariable
If PlayerRef.HasPerk(MagazinePerkCheck) If MultilayeredMagazineList.HasForm(MagazinePerkCheck) fPerkRank = 0.0 InventorySearch() PlayerRef.SetValue(MagazineDescription, fPerkRank) Else PlayerRef.SetValue(MagazineDescription, 1) EndIf
If MagazineFilter.GetValue() <= 0 MagazineFilter.SetValue(1) EndIf EndIf
iCurrentIndex += 1 EndWhile EndFunction
;--- FUNCTIONS ---------------------------------------------------------------------------------------------------- ; Checks the Player's inventory for magazines and tallies them to determine Perk Rank. Function InventorySearch() Int perkCount = MasterPerkList.GetSize()
; Resize perkProcessedFlags if necessary (in case of adding new perks) If perkProcessedFlags.Length != perkCount perkProcessedFlags = new Bool[perkCount] EndIf
Int i = 0 While i < perkCount Perk currentPerk = MasterPerkList.GetAt(i) as Perk FormList magazineList = MasterMagazineList.GetAt(i) as FormList
; Only process the perk if the player has it and hasn't been processed yet If PlayerRef.HasPerk(currentPerk) && !perkProcessedFlags[i] MagazineInventoryCount(magazineList) perkProcessedFlags[i] = True ; Mark as processed EndIf
i += 1 EndWhile EndFunction
Function MagazineInventoryCount(FormList _magazineList) Int iMagazineIndex = _magazineList.GetSize() - 1 Int iCurrentMagazine = 0
While (iCurrentMagazine <= iMagazineIndex) Book MagazineInventoryCheck = _magazineList.GetAt(iCurrentMagazine) as Book
If PlayerRef.GetItemCount(MagazineInventoryCheck) > 0 fPerkRank += 1 EndIf
iCurrentMagazine += 1 EndWhile EndFunction
This script moves the logic of the magazine category groups into the esp plugin.
I wanted to originally do that, to make a "blank mod" of sorts, but due to how PBT handles it's tabbing system, I can't. The Magazine Tab itself has to be handled entirely by my mod, you can't apparently "inject" new stuff into the tab via other mods.
As a result, I have to store variables for potential patches within MPT itself as inactive data on the list, and then use the patches to activate that data appropriately. It's also why patched Perks will appear last in the Magazines Tab, because I have to add them to the bottom of the list, as their location in the list has to correspond to the "filter" list, and I need all of the vanilla data together or there will be display errors. I did have a loop planned for use as a template going forward (as seen in MPT itself), but after like 8 hours of frustration I wasn't really in the mood to write an entire looping script for just a single magazine in Reading Comprehension. Future releases will use one, though.
In theory, I could just add a bunch of "blank variables" to bottom of both of those aforementioned lists, then have a loop on a blank patch itself look for those variables. However, the loop needs a reason to activate those variables in the first place, aka the Perks themselves or something else, which would be from the mod being patched, but since a "blank" wouldn't know what that mod is, it would have to be manually inputted by the user, which isn't hard, but you'd have to know what your doing, and as you can see this all gets very convoluted pretty quickly.
Still, I have thought about doing it, but ultimately this would clash with any custom patches I do going forward and would create a ton of new work for me in the end. I'll eventually address everything as best I can, but I'm already dumping 5 to 8 hours into my mods everyday, which is already too much for what's essentially an unpaid job.
Once the latest update to YAE is done, my time will be freed up a bit more for my smaller mods, and I'll be able to quickly update them for a bunch of stuff. It might be nice to finish a bunch of small patches for once, instead of spending weeks slaving away on something major. Although real life has been kicking me a lot the past month, so who knows what will happen.
That may be why return of the notes tab, creates an anonymous global variable per each note. As well as one list with all the note references and another with the “preprocessed” notes content.
In the latest update, LOOT is displaying the message: "This plugin contains records that have FormlDs outside the valid range for an ESL plugin. Using this plugin will cause irreversible damage to your game saves.". I assume I can ignore this message, since the plugin is already an ESP file, right?
For whatever reason, when I created a new entry for the mod, it gives the entry an insanely high FormID for the mod, even though there's barely anything in the mod itself and stays well below the requirements for an ESL. It's the same on the patch, and I spent hours remaking the entries and couldn't figure out why. I couldn't save the files in xEdit because of this, and had to do it in the Creation Kit, which gave me no troubles. I even tried forcibly changing the entry's FormID to something lower, but it keeps saying no.
Is it listed as an ESP? It should be an ESL. I'll look into this further, I didn't think it would cause any issues, and after spending literal hours on it, I just ignored it and moved on, thinking it was harmless. I really don't want to have to remake the entry again on both mods though (for like a fifth time), that's so time consuming D:
Oh, I checked back and the file is indeed an ESL flagged ESP. I have been playing the game with the update and have so far not have had any issues. It's just an error message on LOOT, so I just thought I'd notify about it.
Very good idea for a new Pip-Boy Tab ! I installed your mod mid-game. As far as I can see, the software has taken into account almost all the magazines collected so far. But I think the mod is wrong about "Guns and Bullets". I have collected 4 issues so far. Your mod shows one entry for it with a zero at the end of the line and the note that my critical damage is increased by 5%. This is not how it should be, is it? Otherwise, good mod, thanks for sharing
It's possible that something is overwriting your "Guns and Bullets" Perk. I edited the Perks themselves, so that they trigger code each time you collect a magazine.
Unless your talking about the initial startup, which should have counted all the magazines currently in your inventory and tallied them in the Magazines Tab. If you moved the magazines into a book rack or something like that, I don't have any way of counting them. I might have to look over something things, but as far as I can tell, it counts all the magazines for me, but there's always the possibility I missed something. The mod is definitely detecting your Guns And Bullets Perk though, that's how it places the entry in the Magazines Tab. I'm not sure why it's not counting the magazines properly, though.
Just to clarify, you still have the Perk Ranks you earned (the Perks are just invisible), while that Magazine Tab is a separate entity created by PBT. In the meantime, if you want to fix the number from 0, use console command: player.setav mptPerkAV_GunsAndBullets 4
So, I made a brand new save, and gave myself EVERY magazine in the game without the mod and saved, then installed the mod, and as far as I can tell, everything is working as intended.
The only thing I can think of, is that you didn't have the magazines on you when you installed MPT. I don't think there's a way for me to detect items in storage, unless it's a very specific storage place; I can't really go checking every storage chest in the game, etc.
I tried to keep the mod as light as possible, as in, I didn't want it constantly detecting your business, waiting to check you for magazines, as that would slow down the game. It's all a series of elaborate one-time switches; so if you missed your chance, you'll have to manually set the Magazine Tab variables via that console command I previously mentioned.
Thank you for the detailed response. Kudos to you You're right, I had previously stored the magazines in a display. Of course, I can understand that your mod cannot take this into account. In my next run, your mod will be included from the beginning.
Keep in mind that ActorValue I mentioned. I understand that not everyone is a programmer, but when I design my mods, I very deliberately name all of my data to be as clear as humanly possible. If any other problems arise with that display, keep in mind all of the ActorValues that register the number for that Magazine Tab start with "mptPerkAV_" followed by the literal name of the magazine. You can easily find these grouped together within xEdit.
The only part that might confuse you, is that some magazines have multiple ActorValues. This is because those magazines actually give multiple singular Perks, each of which does one thing. This is because sometimes a magazine does different things for each of its issues; like Astounding Awesome Tales might add critical strike damage with one issue, but increase companion damage with another issue. So, Bethesda just made both of those issues provide different Perks, which I had to assign 2 different ActorValues, in order to keep everything organized properly.
Hopefully that all made sense, and maybe you won't need to use this information if the mod continues to work correctly.
41 comments
-IAreBob
I still might look it over, but it might be a while before I get around to it. I've got a general patch coming out to fix some base game stuff, then someone wanted me to tackle the Scrounger mod magazines. I really need to update my SRO patch, too. After all of that, I might be able to do Ketaros, but I don't think it's happening this month, unless I'm in a really good mood and have a ton of free time.
You know, only the most popular requirement on the Nexus~
Adding a single book wouldn't be hard to do, but my PC is down at the moment. With any luck I'll get it fixed this upcoming week, and I'll see if I can get out a tiny patch for it. I was planning on updating MBT soon anyway.
Cant wait! :D
Scrounger's Weekly magazine collection
Mutant Menagerie - Life Finds A Way
Backpacks of the Commonwealth
Hoping to address my PC issue tomorrow (car was getting fixed this whole time, picking it up on the morning), but then I have a long list of things to address, plus I have to refresh my self on programming, as it's been 2 weeks without my PC and I can already feel my brain forgetting everything xD
I'll try to address what I can soon, but IRL is a bit chaotic atm, and I want to finish my latest YAE update, before being distracted by anything else.
I patiently await~
So far, I just have MPT updated and Reading Comprehension done. I'd do more, but I have to study the magazines on each mod, and I know the others you suggested have 6+ which could take a very long time. I'll release what I have now, but in the future I'm going to have to update MPT with each additional patch, as due to the nature of "PipBoy Perks Tab" I have to store all "potential" patch data on MPT itself, then basically enable all of that data through the relevant patch, otherwise I'd have to make dozens of patches for multiple mod combinations, which would be a huge mess.
Enjoy.
You'd think I'd have learned that by now, but you can't teach an old dog new tricks. Look forward to more patches for MPT sometime in the future though, it's a fun side project for me to work on!
[00:00] Start: Checking for Errors
[00:00] Checking for Errors in [FE 0AE] Magazine Perks Tab.esp
[00:00] mptCurrentESPversion [GLOB:FE0AE754]
[00:00] GLOB -> ObjectID 001754 is invalid for a light module.
[00:00] mptCurrentSaveVersion [GLOB:FE0AE755]
[00:00] GLOB -> ObjectID 001755 is invalid for a light module.
[00:00] mptUpdateQuest_100e "MPT Update - v1.00e" [QUST:FE0AE753]
[00:00] QUST -> ObjectID 001753 is invalid for a light module.
[00:00] Done: Checking for Errors, Processed Records: 147, Errors found: 3, Elapsed Time: 00:00
However, for whatever reason, xEdit refuses to save these 3 new entries and won't allow me to compact them either. xEdit just flat out ignores commands to alter them, yet also doesn't ignore their existence, and after a few hours of just trying to figure this out, I gave up and save the file in the Creation Kit, which is how mods are supposed to be done anyway.
It shouldn't cause any issues, but it's likely the mod isn't being treated as an ESL anymore. I'm planning on doing more revisions to MPT in the future (you can see one of the posts below for why), so I'll eventually address this, but it's outside my knowledge atm. I'll have to talk to someone who understand xEdit and this weird situation better.
I am planning to work on MPT again very soon (I have to make more patches for various magazine mods anyway), so it will be (hopefully) addressed.
Edit: I'll try to look into it today, MPT is a bit overdue for some love.
Edit 2: I tried to compact the entries right after this post... and they immediately worked, but I don't know why. FML. I'll try to do some work on MPT today, and see if I can get it out by tonight.
I still have no idea as to why I couldn't compact the FormID's of the entries before, but everything is working now. Modding is such a fickle thing.
I played a bit with ChatGPT and this is what we came with:
Scriptname MPT:MagazinePerksTabScript extends Quest
; When this script starts, it runs through the current save, setting any Globals to their proper value for pre-existing saves before this patch.
;--- PERK PROPERTIES ----------------------------------------------------------------------------------------------
Actor Property PlayerRef Auto
Group PerkMag_Lists
FormList Property MagazinePerksList Auto
FormList Property MultilayeredMagazineList Auto
FormList Property MasterPerkList Auto ; Master list of all magazine perks
FormList Property MasterMagazineList Auto ; Master list of FormLists, each containing magazines for a specific perk
EndGroup
Group PipBoyTabs_Values
FormList Property MagazineActorValueList Auto
FormList Property MagazineFilterList Auto
EndGroup
; A value that reflects the total amount of Perk Ranks that a Player currently has when this script loads.
Float fPerkRank = 0.0
; Persistent array to track processed perks
Bool[] perkProcessedFlags
;--- EVENTS -------------------------------------------------------------------------------------------------------
Event OnInit()
; Initialize the boolean array to match MasterPerkList size if it hasn't been initialized
If perkProcessedFlags == None || perkProcessedFlags.Length != MasterPerkList.GetSize()
perkProcessedFlags = new Bool[MasterPerkList.GetSize()]
EndIf
MagazineListCheck()
EndEvent
Function MagazineListCheck()
Int iMagazineCheckIndex = MagazinePerksList.GetSize() - 1
Int iCurrentIndex = 0
While (iCurrentIndex <= iMagazineCheckIndex)
Perk MagazinePerkCheck = MagazinePerksList.GetAt(iCurrentIndex) as Perk
ActorValue MagazineDescription = MagazineActorValueList.GetAt(iCurrentIndex) as ActorValue
GlobalVariable MagazineFilter = MagazineFilterList.GetAt(iCurrentIndex) as GlobalVariable
If PlayerRef.HasPerk(MagazinePerkCheck)
If MultilayeredMagazineList.HasForm(MagazinePerkCheck)
fPerkRank = 0.0
InventorySearch()
PlayerRef.SetValue(MagazineDescription, fPerkRank)
Else
PlayerRef.SetValue(MagazineDescription, 1)
EndIf
If MagazineFilter.GetValue() <= 0
MagazineFilter.SetValue(1)
EndIf
EndIf
iCurrentIndex += 1
EndWhile
EndFunction
;--- FUNCTIONS ----------------------------------------------------------------------------------------------------
; Checks the Player's inventory for magazines and tallies them to determine Perk Rank.
Function InventorySearch()
Int perkCount = MasterPerkList.GetSize()
; Resize perkProcessedFlags if necessary (in case of adding new perks)
If perkProcessedFlags.Length != perkCount
perkProcessedFlags = new Bool[perkCount]
EndIf
Int i = 0
While i < perkCount
Perk currentPerk = MasterPerkList.GetAt(i) as Perk
FormList magazineList = MasterMagazineList.GetAt(i) as FormList
; Only process the perk if the player has it and hasn't been processed yet
If PlayerRef.HasPerk(currentPerk) && !perkProcessedFlags[i]
MagazineInventoryCount(magazineList)
perkProcessedFlags[i] = True ; Mark as processed
EndIf
i += 1
EndWhile
EndFunction
Function MagazineInventoryCount(FormList _magazineList)
Int iMagazineIndex = _magazineList.GetSize() - 1
Int iCurrentMagazine = 0
While (iCurrentMagazine <= iMagazineIndex)
Book MagazineInventoryCheck = _magazineList.GetAt(iCurrentMagazine) as Book
If PlayerRef.GetItemCount(MagazineInventoryCheck) > 0
fPerkRank += 1
EndIf
iCurrentMagazine += 1
EndWhile
EndFunction
This script moves the logic of the magazine category groups into the esp plugin.
As a result, I have to store variables for potential patches within MPT itself as inactive data on the list, and then use the patches to activate that data appropriately. It's also why patched Perks will appear last in the Magazines Tab, because I have to add them to the bottom of the list, as their location in the list has to correspond to the "filter" list, and I need all of the vanilla data together or there will be display errors. I did have a loop planned for use as a template going forward (as seen in MPT itself), but after like 8 hours of frustration I wasn't really in the mood to write an entire looping script for just a single magazine in Reading Comprehension. Future releases will use one, though.
In theory, I could just add a bunch of "blank variables" to bottom of both of those aforementioned lists, then have a loop on a blank patch itself look for those variables. However, the loop needs a reason to activate those variables in the first place, aka the Perks themselves or something else, which would be from the mod being patched, but since a "blank" wouldn't know what that mod is, it would have to be manually inputted by the user, which isn't hard, but you'd have to know what your doing, and as you can see this all gets very convoluted pretty quickly.
Still, I have thought about doing it, but ultimately this would clash with any custom patches I do going forward and would create a ton of new work for me in the end. I'll eventually address everything as best I can, but I'm already dumping 5 to 8 hours into my mods everyday, which is already too much for what's essentially an unpaid job.
Once the latest update to YAE is done, my time will be freed up a bit more for my smaller mods, and I'll be able to quickly update them for a bunch of stuff. It might be nice to finish a bunch of small patches for once, instead of spending weeks slaving away on something major. Although real life has been kicking me a lot the past month, so who knows what will happen.
Is it listed as an ESP? It should be an ESL. I'll look into this further, I didn't think it would cause any issues, and after spending literal hours on it, I just ignored it and moved on, thinking it was harmless. I really don't want to have to remake the entry again on both mods though (for like a fifth time), that's so time consuming D:
I installed your mod mid-game. As far as I can see, the software has taken into account almost all the magazines collected so far.
But I think the mod is wrong about "Guns and Bullets". I have collected 4 issues so far.
Your mod shows one entry for it with a zero at the end of the line and the note that my critical damage is increased by 5%.
This is not how it should be, is it?
Otherwise, good mod, thanks for sharing
Unless your talking about the initial startup, which should have counted all the magazines currently in your inventory and tallied them in the Magazines Tab. If you moved the magazines into a book rack or something like that, I don't have any way of counting them. I might have to look over something things, but as far as I can tell, it counts all the magazines for me, but there's always the possibility I missed something. The mod is definitely detecting your Guns And Bullets Perk though, that's how it places the entry in the Magazines Tab. I'm not sure why it's not counting the magazines properly, though.
Just to clarify, you still have the Perk Ranks you earned (the Perks are just invisible), while that Magazine Tab is a separate entity created by PBT. In the meantime, if you want to fix the number from 0, use console command:
player.setav mptPerkAV_GunsAndBullets 4
The only thing I can think of, is that you didn't have the magazines on you when you installed MPT. I don't think there's a way for me to detect items in storage, unless it's a very specific storage place; I can't really go checking every storage chest in the game, etc.
I tried to keep the mod as light as possible, as in, I didn't want it constantly detecting your business, waiting to check you for magazines, as that would slow down the game. It's all a series of elaborate one-time switches; so if you missed your chance, you'll have to manually set the Magazine Tab variables via that console command I previously mentioned.
You're right, I had previously stored the magazines in a display. Of course, I can understand that your mod cannot take this into account.
In my next run, your mod will be included from the beginning.
The only part that might confuse you, is that some magazines have multiple ActorValues. This is because those magazines actually give multiple singular Perks, each of which does one thing. This is because sometimes a magazine does different things for each of its issues; like Astounding Awesome Tales might add critical strike damage with one issue, but increase companion damage with another issue. So, Bethesda just made both of those issues provide different Perks, which I had to assign 2 different ActorValues, in order to keep everything organized properly.
Hopefully that all made sense, and maybe you won't need to use this information if the mod continues to work correctly.
This mod will require a patch with S7 Skill System to function properly. Pretty simple conflict resolution though.
(S7 touches the magazine perks to make them give a skill(s) XP bonus per magazine).
Edit: That was a lot easier than I thought it would be. I just had to drag the entries over in xEdit. Hopefully I didn't miss anything.