cdcooley Posted November 22, 2017 Share Posted November 22, 2017 Any side effects from having 100 aliases filled with actors running at the same time? In terms of save game bloat and persistence.If the actors weren't already persistent they will be (although actors are already semi-persistent) so that adds a little to memory use and save game size but the event won't be that large. It certainly isn't what I would call bloat since it's a single fixed amount used much like anything else a might add to the game. Link to comment Share on other sites More sharing options...
powerofthree Posted November 25, 2017 Share Posted November 25, 2017 (edited) Any side effects from having 100 aliases filled with actors running at the same time? In terms of save game bloat and persistence.If the actors weren't already persistent they will be (although actors are already semi-persistent) so that adds a little to memory use and save game size but the event won't be that large. It certainly isn't what I would call bloat since it's a single fixed amount used much like anything else a might add to the game. Ok cool so that's not a big issue then. I have another question - I'm trying to do a multi dimensional array where array 2 gets filled after array 1 is full but this isn't working. Any ideas? int iVictims01 = Victims01.Length while iVictims01 iVictims01 -= 1 if !( Victims01[ iVictims01].GetReference()) Victims01[ iVictims01].ForceRefTo(DeadVictim) return else int iVictims02 = Victims02.Length while iVictims02 iVictims02-= 1 if !( Victims02[ iVictims02].GetReference()) Victims02[ iVictims02].ForceRefTo(DeadVictim) return endif endwhile EndIf endWhile Edited November 25, 2017 by powerofthree Link to comment Share on other sites More sharing options...
ymf331 Posted November 25, 2017 Share Posted November 25, 2017 (edited) i haven't messed with papyrus too much, but from what i know of programming in general it doesn't seem like a string would have any such property as a reference. edit: as in, even if the name of an npc was stored in your array as a string, most languages would require you to somehow declare that you're referencing an object. Edited November 25, 2017 by ymf331 Link to comment Share on other sites More sharing options...
powerofthree Posted November 25, 2017 Share Posted November 25, 2017 i haven't messed with papyrus too much, but from what i know of programming in general it doesn't seem like a string would have any such property as a reference. edit: as in, even if the name of an npc was stored in your array as a string, most languages would require you to somehow declare that you're referencing an object. It does have the two ReferenceAlias arrays declared as properties, I just didn't include them. Link to comment Share on other sites More sharing options...
cdcooley Posted November 26, 2017 Share Posted November 26, 2017 I have another question - I'm trying to do a multi dimensional array where array 2 gets filled after array 1 is full but this isn't working. Any ideas?If you mean you're trying to treat the two arrays as if they are one longer array then try this: int i = Victims01.Length while i > 0 i -= 1 if !Victims01[i].GetReference() Victims01[i].ForceRefTo(DeadVictim) return endif endwhile i = Victims02.Length while i > 0 i -= 1 if !( Victims02[i].GetReference()) Victims02[i].ForceRefTo(DeadVictim) return endif endwhile But if those reference arrays are being filled with aliases in the CK you shouldn't need two arrays because the limit of 128 elements only applies when creating arrays in the script itself. The CK can create arrays with thousands of elements (although that's a bit tedious). Link to comment Share on other sites More sharing options...
powerofthree Posted November 26, 2017 Share Posted November 26, 2017 I have another question - I'm trying to do a multi dimensional array where array 2 gets filled after array 1 is full but this isn't working. Any ideas?If you mean you're trying to treat the two arrays as if they are one longer array then try this: int i = Victims01.Length while i > 0 i -= 1 if !Victims01[i].GetReference() Victims01[i].ForceRefTo(DeadVictim) return endif endwhile i = Victims02.Length while i > 0 i -= 1 if !( Victims02[i].GetReference()) Victims02[i].ForceRefTo(DeadVictim) return endif endwhile But if those reference arrays are being filled with aliases in the CK you shouldn't need two arrays because the limit of 128 elements only applies when creating arrays in the script itself. The CK can create arrays with thousands of elements (although that's a bit tedious). Wait, really? I always thought the 128 limit applied to all arrays. Huh, that simplifies things. Link to comment Share on other sites More sharing options...
flyddon Posted November 27, 2017 Share Posted November 27, 2017 Hello all, So the time has come and my mod will see the Light of Day, at least in alpha state. So my question to BSA or not to BSA? I am ready to pack up my mod and was reading up on How to pack, and then looking at some mods I have and I am confused. It seems all tut about BSA are written back in 2013 and 2014, they seem easy enough, however I notice that the more recent mods do not have BSA, they are zipped files with a mod.esp in a data folder, and then the folder structure data/mesh and data/texture and data/sound and so on .. each of these folders and sub folders have the actual files that support the mod. so Why have a BSA if it works without? Do I need a BSA ? Are BSA's outdated? Link to comment Share on other sites More sharing options...
IsharaMeradin Posted November 27, 2017 Share Posted November 27, 2017 BSAs are not out dated.A BSA in a normal setting allows your assets to be turned on and off with the plugin. Meaning that if the plugin is not active the BSA contents will not load. This is the BSA's selling point. However, Mod Organizer changes things up a bit. It allows BSAs to load without their respective plugin being active. It also lets BSA files take priority over earlier loaded loose files. Due to these odd MO behaviors some authors who use Mod Organizer skip creating a BSA and stick with loose files. There is also a size limit to BSA files. For mods that would exceed that amount, the authors tend to leave the files loose rather than requiring edits to be made to the game's INI files in order to allow additional BSA files to load. In a nutshell, BSA files are not required for the mod to function. Personally, I'd rather have a BSA whenever possible as there are only two files two worry about: the plugin and the BSA. Link to comment Share on other sites More sharing options...
flyddon Posted November 27, 2017 Share Posted November 27, 2017 BSAs are not out dated.A BSA in a normal setting allows your assets to be turned on and off with the plugin. Meaning that if the plugin is not active the BSA contents will not load. This is the BSA's selling point. However, Mod Organizer changes things up a bit. It allows BSAs to load without their respective plugin being active. It also lets BSA files take priority over earlier loaded loose files. Due to these odd MO behaviors some authors who use Mod Organizer skip creating a BSA and stick with loose files. There is also a size limit to BSA files. For mods that would exceed that amount, the authors tend to leave the files loose rather than requiring edits to be made to the game's INI files in order to allow additional BSA files to load. In a nutshell, BSA files are not required for the mod to function. Personally, I'd rather have a BSA whenever possible as there are only two files two worry about: the plugin and the BSA. OK then for me to get my mod to my tester, just gathering all my "loose files" (in the correct folder layout) and having the plugin... would be fine and all should work. But you are saying, doing it the BSA way would not be a waste of time either. Does Nexus Mod Manager have any issues with loose files? (I guess not since I have downloaded many mods with no BSA. Link to comment Share on other sites More sharing options...
cdcooley Posted November 27, 2017 Share Posted November 27, 2017 Loose files are a drain on computer resources for no good reason. With loose files the operating system has to be involved in every file access. With a BSA the interaction with the OS is minimal. The game was designed to use BSAs to the point that if you upload mods to Bethesda.net or the Steam sites you can't have loose files. Those not packing their resources are simply doing it wrong. (The handfull of people who really need loose files to resolve conflicts can unpack the specific files needed.) Link to comment Share on other sites More sharing options...
Recommended Posts