Alexei Dobrohotov 
								
							 
						 
						
							
							
							
							
								
							
							
								c6882dbc6b 
								
							 
						 
						
							
							
								
								Skip REFR::XPTL  
							
							... 
							
							
							
							Needed by Yukichigai Unofficial Patch 
							
						 
						
							2023-07-13 10:22:25 +03:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								11204d35d6 
								
							 
						 
						
							
							
								
								Use zlib directly for ESM4  
							
							... 
							
							
							
							Fallback to decompression by block of fixed size when decompressing the
whole archive fails. 
							
						 
						
							2023-06-10 00:12:57 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f841a1377f 
								
							 
						 
						
							
							
								
								Skip ATTR subrecord in CLAS record  
							
							... 
							
							
							
							Present in FalloutNV.esm. 
							
						 
						
							2023-06-09 23:44:39 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e8ef1a2a0c 
								
							 
						 
						
							
							
								
								Add default initialization for ESM4::TeleportDest::flags  
							
							
							
						 
						
							2023-06-04 01:50:08 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								3152078c7e 
								
							 
						 
						
							
							
								
								Restore missing std::endl removed by an overeager regex  
							
							
							
						 
						
							2023-06-01 13:48:41 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								0e33730f5d 
								
							 
						 
						
							
							
								
								Remove useless logging  
							
							... 
							
							
							
							As suggested in https://gitlab.com/OpenMW/openmw/-/merge_requests/3086#note_1413234840  
							
						 
						
							2023-06-01 13:31:48 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								a58dc6fd30 
								
							 
						 
						
							
							
								
								Use the logging system instead of std::cout in components/esm4  
							
							... 
							
							
							
							- Remove debug-related includes
- Add some trivial missing includes
- Remove useless {}
- Move the known-but-skipped-records are the end of the switch-cases
- Always throw on unknown records 
							
						 
						
							2023-06-01 13:31:48 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									psi29a 
								
							 
						 
						
							
							
							
							
								
							
							
								27a879de9a 
								
							 
						 
						
							
							
								
								Merge branch 'tree_and_furniture' into 'master'  
							
							... 
							
							
							
							Load ESM4::Tree and ESM4::Furniture
See merge request OpenMW/openmw!3040  
							
						 
						
							2023-06-01 09:15:46 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								5cb4c66266 
								
							 
						 
						
							
							
								
								Avoid using ESM4::Cell with uninitialized fields  
							
							
							
						 
						
							2023-05-29 22:37:25 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								1b669db017 
								
							 
						 
						
							
							
								
								Load ESM4::Tree and ESM4::Furniture  
							
							
							
						 
						
							2023-05-29 18:47:27 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								12304d36aa 
								
							 
						 
						
							
							
								
								std::cout => Log(Debug::Verbose)  
							
							
							
						 
						
							2023-05-29 12:10:42 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								ad8cfde4e0 
								
							 
						 
						
							
							
								
								ESM::LandData no longer a virtual interface  
							
							... 
							
							
							
							instead it is constructed from ESM::Land or ESM4::Land 
							
						 
						
							2023-05-29 12:10:42 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								f600730459 
								
							 
						 
						
							
							
								
								fixes functions that were virtual but not tagged as override.  
							
							
							
						 
						
							2023-05-29 12:10:41 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								2bb17279df 
								
							 
						 
						
							
							
								
								linux build  
							
							... 
							
							
							
							clang format 14.0
Arm64 build 
							
						 
						
							2023-05-29 12:10:41 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								d0211acf9e 
								
							 
						 
						
							
							
								
								Fixes bug in terrain loading + collision heightmap works  
							
							... 
							
							
							
							although terrain rendering is 100% broken right now 
							
						 
						
							2023-05-29 11:32:13 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								c35c7b3640 
								
							 
						 
						
							
							
								
								ESM4::Land loaded, added to store and to land objects  
							
							... 
							
							
							
							it does not work yet. Some things are displayed, but it looks all wrong. 
							
						 
						
							2023-05-29 11:31:37 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								fffcf52316 
								
							 
						 
						
							
							
								
								land manager cache's key is an ExteriorCellLocation  
							
							... 
							
							
							
							ESM4::Land is now a ESM::LandData 
							
						 
						
							2023-05-29 11:31:37 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								c98c532213 
								
							 
						 
						
							
							
								
								Replace all asserts in components/esm[34] with throw  
							
							
							
						 
						
							2023-05-27 16:10:53 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								44a65512e8 
								
							 
						 
						
							
							
								
								Replace another assert with a throw  
							
							
							
						 
						
							2023-05-26 10:23:58 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2f18da08d7 
								
							 
						 
						
							
							
								
								Add missing include  
							
							
							
						 
						
							2023-05-23 12:26:16 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7c16ecb258 
								
							 
						 
						
							
							
								
								Skip more unknown ESM4 subrecords  
							
							... 
							
							
							
							CNAM from HDPT is a part of Dawnguard.esm.
ATKR from RACE is a part of Dawnguard.esm.
CIS2 from SCRL is a part of Dragonborn.esm.
SPMV from RACE is a part of Dragonborn.esm. 
							
						 
						
							2023-05-22 22:09:08 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e537d1d0d4 
								
							 
						 
						
							
							
								
								Ignore missing localization string files by esmtool  
							
							... 
							
							
							
							Dawnguard.esm from Skyrim depends on files stored in Dawnguard.bsa which is not
processed by esmtool. 
							
						 
						
							2023-05-22 22:09:08 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								358b7ad3ec 
								
							 
						 
						
							
							
								
								Keep ESM4 localized strings in memory  
							
							... 
							
							
							
							Size of the files is in order of megabytes at max. Storing offset lookup table
to read from file on demand is less efficient than reading from memory for such
size.
Read and store offsets first. Sort them to read values sequentially. Memoize
last offset and value to avoid reading the same value twice. Use seek only when
current possition does not match offset. Optimize seek for short distance by
calling read instead. 
							
						 
						
							2023-05-22 22:09:06 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Alexei Kotov 
								
							 
						 
						
							
							
							
							
								
							
							
								401ebfd7f2 
								
							 
						 
						
							
							
								
								Merge branch 'fix_oblivion_loading' into 'master'  
							
							... 
							
							
							
							Fix Oblivion loading
See merge request OpenMW/openmw!3050  
							
						 
						
							2023-05-22 18:18:35 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								a9bf671992 
								
							 
						 
						
							
							
								
								Fix Oblivion loading  
							
							... 
							
							
							
							Found by elsid@, and due to !3043  
							
						 
						
							2023-05-22 18:24:39 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								8b654f276d 
								
							 
						 
						
							
							
								
								Replace all the asserts with throw in components/esm4/reader.cpp  
							
							
							
						 
						
							2023-05-22 17:42:32 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								534e20cf3a 
								
							 
						 
						
							
							
								
								Replace another assert with a throw  
							
							... 
							
							
							
							It fixes the following crash:
```nasm
[----------------------------------registers-----------------------------------]
RAX: 0xffffffffffffffe4
RBX: 0x7fffffffbd88 --> 0x0
RCX: 0x555555861f01 --> 0xd6000055555582fa
RDX: 0x1
RSI: 0x0
RDI: 0xff
RBP: 0x2e94
RSP: 0x7fffffff9bb0 --> 0x0
RIP: 0x55555574e286 (<_ZN4ESM44Cell4loadERNS_6ReaderE+182>:	mov    eax,DWORD PTR [rax+0xc])
R8 : 0x0
R9 : 0x555555836bd0 --> 0x555555861f90 --> 0x100000000000000
R10: 0xffffffff
R11: 0x0
R12: 0x7fffffffbd88 --> 0x0
R13: 0x7fffffffbd30 --> 0x7fffffffbd28 --> 0xff0001
R14: 0x7fffffff9da0 --> 0x10fc
R15: 0x7fffffff9ea8 --> 0x7fffffff9eb8 --> 0x0
EFLAGS: 0x10206 (carry PARITY adjust zero sign trap INTERRUPT direction overflow)
[-------------------------------------code-------------------------------------]
   0x55555574e27c <_ZN4ESM44Cell4loadERNS_6ReaderE+172>:	mov    rdi,r12
   0x55555574e27f <_ZN4ESM44Cell4loadERNS_6ReaderE+175>:	xor    esi,esi
   0x55555574e281 <_ZN4ESM44Cell4loadERNS_6ReaderE+177>:	call   0x5555557edfb0 <_ZNK4ESM46Reader3grpEm>
=> 0x55555574e286 <_ZN4ESM44Cell4loadERNS_6ReaderE+182>:	mov    eax,DWORD PTR [rax+0xc]
   0x55555574e289 <_ZN4ESM44Cell4loadERNS_6ReaderE+185>:	cmp    eax,0xff
   0x55555574e28e <_ZN4ESM44Cell4loadERNS_6ReaderE+190>:	ja     0x55555574e314 <_ZN4ESM44Cell4loadERNS_6ReaderE+324>
   0x55555574e294 <_ZN4ESM44Cell4loadERNS_6ReaderE+196>:	cmp    al,0x5
   0x55555574e296 <_ZN4ESM44Cell4loadERNS_6ReaderE+198>:	jne    0x55555574e314 <_ZN4ESM44Cell4loadERNS_6ReaderE+324>
[------------------------------------stack-------------------------------------]
0000| 0x7fffffff9bb0 --> 0x0
0008| 0x7fffffff9bb8 --> 0x0
0016| 0x7fffffff9bc0 --> 0x0
0024| 0x7fffffff9bc8 --> 0x0
0032| 0x7fffffff9bd0 --> 0x0
0040| 0x7fffffff9bd8 --> 0x0
0048| 0x7fffffff9be0 --> 0x0
0056| 0x7fffffff9be8 --> 0x0
[------------------------------------------------------------------------------]
Legend: code, data, rodata, value
Stopped reason: SIGSEGV
0x000055555574e286 in ESM4::Cell::load (this=0x7fffffff9da0, reader=...) at /home/jvoisin/dev/openmw/openmw/components/esm4/loadcell.cpp:68
68	   if (reader.grp().type == ESM4::Grp_ExteriorSubCell && reader.grp().label.grid[1] == 0
gdb-peda$ bt
    this=<optimized out>, reader=...) at /home/jvoisin/dev/openmw/openmw/apps/esmtool/tes4.cpp:547
    recordInvocable=...) at /home/jvoisin/dev/openmw/openmw/./components/esm4/readerutils.hpp:31
    at /home/jvoisin/dev/openmw/openmw/./components/esm4/readerutils.hpp:23
    at ../csu/libc-start.c:381
``` 
							
						 
						
							2023-05-21 20:07:52 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									psi29a 
								
							 
						 
						
							
							
							
							
								
							
							
								e1754b840a 
								
							 
						 
						
							
							
								
								Merge branch 'fix_empty_vector' into 'master'  
							
							... 
							
							
							
							Guard an undefined behaviour
Closes  #6725 
See merge request OpenMW/openmw!3037  
							
						 
						
							2023-05-21 17:33:13 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								81bd034a9e 
								
							 
						 
						
							
							
								
								Guard an undefined behaviour  
							
							... 
							
							
							
							`std::vector.back()` on an empty `std::vector` is undefined.
This should fix  #6725 .
Thanks to @Capostrophic for the investigation. 
							
						 
						
							2023-05-20 19:35:06 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								cde7aeac3d 
								
							 
						 
						
							
							
								
								Replace an asert with a conditional throw  
							
							... 
							
							
							
							The assert is reachable, resulting in a brutal `abort`
instead of a nice exception. 
							
						 
						
							2023-05-20 19:33:14 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								be26fbdacb 
								
							 
						 
						
							
							
								
								Explicitly intialize the fields in ESM4::Cell that don't have default constructors.  
							
							
							
						 
						
							2023-05-18 20:21:47 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								61232f4b75 
								
							 
						 
						
							
							
								
								Fix uninitialized mWaterLevel in esm4/loadwrld.cpp  
							
							
							
						 
						
							2023-05-18 02:10:39 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								15f3e3ae71 
								
							 
						 
						
							
							
								
								Support ESM4 IDLE record  
							
							
							
						 
						
							2023-05-17 22:59:34 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								584c0dbcdc 
								
							 
						 
						
							
							
								
								Support reading bool GMST by ESM4  
							
							
							
						 
						
							2023-05-17 22:59:34 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								010db45a10 
								
							 
						 
						
							
							
								
								Read ESM::FormId using ESM4::Reader::getFormId  
							
							
							
						 
						
							2023-05-17 22:59:29 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								93b3d9238c 
								
							 
						 
						
							
							
								
								mWater level disabled for skyrim.  
							
							
							
						 
						
							2023-05-12 22:05:54 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								3de08e654f 
								
							 
						 
						
							
							
								
								Better handling of water levels for exterior cells.  
							
							... 
							
							
							
							Especially for skyrim and it's weird water level values in exteriors.
If we don't have a valid exterior water level we use the world's water level 
							
						 
						
							2023-05-12 22:05:54 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								a62e75fd19 
								
							 
						 
						
							
							
								
								Initial attempt at loading esm4 exteriors  
							
							
							
						 
						
							2023-05-12 22:05:52 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Bret Curtis 
								
							 
						 
						
							
							
							
							
								
							
							
								95fff7b77b 
								
							 
						 
						
							
							
								
								show which file is not found  
							
							
							
						 
						
							2023-05-10 21:43:55 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									jvoisin 
								
							 
						 
						
							
							
							
							
								
							
							
								c7a3f43915 
								
							 
						 
						
							
							
								
								Minor header cleanup  
							
							... 
							
							
							
							This has been done via CLion's "unused include directive",
set to "detect completely unused". 
							
						 
						
							2023-04-30 16:26:03 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								7b6f0cefb9 
								
							 
						 
						
							
							
								
								Fix regressions in ESM4 reader caused by  !2902  
							
							
							
						 
						
							2023-04-22 17:07:54 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								3546d2b3e5 
								
							 
						 
						
							
							
								
								Make Store<ESM4::Reference> to use FormId instead of RefId  
							
							
							
						 
						
							2023-04-20 01:47:16 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								00beb06391 
								
							 
						 
						
							
							
								
								Initial Lua bindings for ESM4 types; bindings for ESM4Door.  
							
							
							
						 
						
							2023-04-20 01:47:16 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								ff774d6406 
								
							 
						 
						
							
							
								
								Load more ESM4 records  
							
							
							
						 
						
							2023-04-09 18:52:11 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Petr Mikheev 
								
							 
						 
						
							
							
							
							
								
							
							
								f09a689a4f 
								
							 
						 
						
							
							
								
								Merge ESM::RefNum and ESM4::FormId  
							
							
							
						 
						
							2023-04-09 00:23:32 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									psi29a 
								
							 
						 
						
							
							
							
							
								
							
							
								aad9ce53db 
								
							 
						 
						
							
							
								
								Merge branch 'esm4_gmst' into 'master'  
							
							... 
							
							
							
							Support loading ESM4 GMST records
See merge request OpenMW/openmw!2892  
							
						 
						
							2023-04-04 09:51:02 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								dbed00842e 
								
							 
						 
						
							
							
								
								Split components/esm4/common.hpp header  
							
							
							
						 
						
							2023-04-04 10:12:20 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									elsid 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								87ac85223a 
								
							 
						 
						
							
							
								
								Support loading ESM4 GMST records  
							
							
							
						 
						
							2023-04-04 09:59:35 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								f99e65843a 
								
							 
						 
						
							
							
								
								Removes most cellId.hpp include, simplifies id generation for cells.  
							
							
							
						 
						
							2023-04-03 14:16:32 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									florent.teppe 
								
							 
						 
						
							
							
							
							
								
							
							
								6895a452ef 
								
							 
						 
						
							
							
								
								restores the concept of worldspace for MWWorld::Cell  
							
							
							
						 
						
							2023-04-03 14:16:04 +02:00