SaveScum / skyrim-plugin-decoding-project

Automatically exported from code.google.com/p/skyrim-plugin-decoding-project
0 stars 0 forks source link

Worldspace trimming code left over from Oblivion #130

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Download the following: http://skyrim.nexusmods.com/mods/25704/
2. Run standard filter for cleaning.
3. Observe the results for "Wyrmstooth" [WRLD:01000D62] and "Dimfrost" 
[WRLD:010825E1]

There should be a hair over 6000 of these being removed.

This removal process is a holdover from Oblivion where TES4Edit was tasked with 
removing useless cells from large worldspace mods in an effort to cut down on 
their resource consumption.

Fallout 3, New Vegas, and Skyrim do not require this to be done. In fact, GECK 
and the CK will both cause this data to get regenerated upon saving the file 
again, resulting in unnecessary work.

If possible, this should get flagged to only run for Oblivion for when 3.0.30 
is ready.

Original issue reported on code.google.com by arthmoor on 4 May 2013 at 8:10

GoogleCodeExporter commented 9 years ago
Observe what?
Downloaded, applied filter, removed ITM
[Removing "Identical to Master" records done]  Processed Records: 70818, 
Removed Records: 0, Elapsed Time: 00:00

What should I look at?

Original comment by zila...@gmail.com on 4 May 2013 at 8:57

GoogleCodeExporter commented 9 years ago
That's definitely not right. I wonder if he ran the cleaning himself on that 
one before putting it on Nexus. I got the one from Steam.

http://steamcommunity.com/sharedfiles/filedetails/?id=125728404

Google won't let me upload the ESP. It's too big, although their error message 
just kept saying "Error 400" without elaborating.

Original comment by arthmoor on 4 May 2013 at 9:45

GoogleCodeExporter commented 9 years ago
I downloaded previous version from nexus, now I see.
Empty temporary groups were removed. This is not specific to Oblivion, ITM 
procedure removes any empty GRUP records, doesn't matter of what type - 
persistent, temporary, vwd, top level grups, etc. Just any GRUP records that 
are empty. Without this cleaning for CELL, DIAL, WRLD won't work even if they 
are ITM since they will contain child GRUP records.
Does this issue affect anything in game? If not, I'd prefer to leave it as is. 
It is possible to add a specific check for CELL child GRUPs, but what will it 
fix if nothing is broken?

Original comment by zila...@gmail.com on 4 May 2013 at 1:06

GoogleCodeExporter commented 9 years ago
No, it doesn't affect anything other than the surprised look on the modder's 
face when they see TES5Edit claiming it has over 6,000 ITMs that the CK insists 
on putting back whenever it's saved :)

Original comment by arthmoor on 4 May 2013 at 7:47

GoogleCodeExporter commented 9 years ago
It is not an issue :)
Besides, they are not ITM, just empty GRUPs. Don't know why Elminster counted 
them as ITM too and included in ITM report. But it is too late to change now 
anyway, will screw BOSS databases for games.

Original comment by zila...@gmail.com on 4 May 2013 at 8:25

GoogleCodeExporter commented 9 years ago
Besides, empty CELLs without a landscape record is an error of modder, ususally 
caused when expanding worldspace with border region instead of importing a 
proper sized heightmap.

Original comment by zila...@gmail.com on 4 May 2013 at 8:29

GoogleCodeExporter commented 9 years ago
There would be little danger in disrupting BOSS counts since there are very few 
mods out there with worldspaces this large. So if suppressing the report of the 
information would work, I'd say do it.

Right now all this is doing is raising an alarm for these people, who may in 
turn decide to tell others not to use the program.

Original comment by arthmoor on 4 May 2013 at 8:48

GoogleCodeExporter commented 9 years ago
It will affect not only large worldspaces, but a whole lot of other plugins 
even without own worldspaces.
For example some plugin has a single ITM ref in Tamriel worldspace. Now it will 
remove REFR, Temporary GRUP, CELL, SubBlock GRUP, Block GRUP, WRLD, Worldspace 
GRUP and report 7 ITMs. Example of such case:
Removing: [REFR:000FC7E4] (places RockL03 [STAT:00018BA5] in GRUP Cell 
Temporary Children of [CELL:00008E1A] (in Tamriel "Skyrim" [WRLD:0000003C] at 
7,30))
Removing: GRUP Cell Temporary Children of [CELL:00008E1A] (in Tamriel "Skyrim" 
[WRLD:0000003C] at 7,30)
Removing: [CELL:00008E1A] (in Tamriel "Skyrim" [WRLD:0000003C] at 7,30)
Removing: GRUP Exterior Cell Sub-Block 3, 0
Removing: GRUP Exterior Cell Block 0, 0
Removing: Tamriel "Skyrim" [WRLD:0000003C]
Removing: GRUP Top "WRLD"
[Removing "Identical to Master" records done]  Processed Records: 8, Removed 
Records: 7, Elapsed Time: 00:00

With an update to exclude GRUP records it will report only 3 ITM. A lot of 
counters will become invalid.
If some people decide not to use xEdit, it's up to them.

Original comment by zila...@gmail.com on 5 May 2013 at 5:30

GoogleCodeExporter commented 9 years ago
I understand what you're explaining, but in the case I'm trying to illustrate 
here the mod doesn't contain anything in those worldspaces that is an actual 
ITM.

With Oblivion, when this data was removed, resaving the mod in the CS didn't 
cause it to get regenerated. It would appear as though the later games have 
changed that for some reason. GECK and CK now both insist on saving this data 
again every time.

Original comment by arthmoor on 5 May 2013 at 5:36

GoogleCodeExporter commented 9 years ago
CS/GECK/CK assumes that CELL has landscape and creates Temporary group even 
without checking for existence of LAND first (quite possibly a bug to correct 
with CKE). In Skyrim.esm every cell has landscape (when I checked some border 
cells), looks like there are no empty cells with just a Temporary GRUP.
Wyrmstooth is poorely done, author incorrectly used border region(s) and hence 
the result.
Preventing the removal of empty GRUPs now when cleaning will screw
1) cleaning of records that have child GRUPs (WRLD, CELL, Top level groups)
2) BOSS ITM counters
It is a lot of problems basically for nothing, just to amend several poorely 
done mods.
If you still insist on "fixing" it, I'll see what can be done.

Original comment by zila...@gmail.com on 5 May 2013 at 6:42

GoogleCodeExporter commented 9 years ago

Original comment by zila...@gmail.com on 28 Jun 2013 at 12:41