* toggle use_folders on
* Rename pipelines
* its a strcpy :(
* add miniz, add xorstream, add non-working ziploader
* start integrating libzip (WIP)
* use ExternalProject test (doesnt work maybe?!)
* further work in integrating libzippp [WIP]
can't build libzip yet (neither manually nor in the vs build), as it doesn't find zlib
* LibZip build script
* make libzip build too
todo: specify cmake find_library to check the paths we install to
* prepare everything in cmake
* fix rebuilding of libzip/zlib
* fix stupid double quotes
* libzippp works
* Setup libzippp archive loading
* Remove allocation of new data when adding file to TextureServer
* Enable CI on dev
* Create LICENSE (#5)
* add mbedtls
* fix cmake (forgot to substitute, woops)
* fix %lu warnings for printing addresses
* enable debug messages, some formatting
* remove mbedtls, fix libzip for /MD(d)
* some code changes
* fix cmake logic, str replace min cmake version in libzip-src/CMakeLists.txt to 3.15
* linker errors in release
* c++ify a little
* remove unnecessary duplicate c++23 definition
* Fixes to gMod_XorStream when calculating stream length
* Fix loading tpf contents with password
* Implemented complete parsing
* Cleanup file loading
* Change to NI
* Revert "Change to NI"
This reverts commit 19b511d907.
* update XorStreamReader to read whole file, then xor
* delete a lot of unused code
* loading logic
* rename console window
* 1.5.4
* remove pointless mutex
* wtf is this code
---------
Co-authored-by: Alex Macocian <amacocian@yahoo.com>
* remove GUI parts as those will not be updated
* move to header/source
* add cmakelist to create solution
* Change Readme
* Implement modlist.txt loading
* Setup versioning and CD pipeline
* Setup DirectX in pipeline
* Make uMod load from uMod.dll directory
* Fix file loading
* Remove break
* Fix CD pipeline (#1)
* Test cd pipeline
* See what's in Lib directory
* See inside lib/x86
* Manually adjust the build environment
* Disable CD pipeline in PRs
Create CI pipeline
* Fix slashes in path
* Fix build call
* Attempt to fix paths
* Copy dx headers inside the /header folder
* Use ps
* Change cache location
* Path changes
* Improve CMake to look for lib and header files
* Fix missing Lib folder
* Move changes to CD pipeline
* Disable CI on merge and fix CD (#2)
* Fix CD tag (#4)
* Hijack existing DirectX calls (#5)
* Create a dll without listener (#6)
* Fix asset creation in CD pipeline (#7)
* Setup file loading
* create necessary files
* merge latest changes, set output dir
* Change main to master in pipelines
Add fallback for DX libs in CMakeLists
* Setup new generator
* formatting
* remove listener
* Change CD to pick the dll from bin
Change release name to gMod
* more formatting
* add editorconfig
* Setup versioning
* Remove CODEOWNERS
---------
Co-authored-by: Alex Macocian <amacocian@yahoo.com>
- OTM_TextureClient::MergeUpdate: force reload does now switch the correct texture (previously it lead to a crash)
- OTM_TextureClient::MergeUpdate: volume and cube textures are now loaded (if they were not loaded before)
- OTM_TextureServer: if textures were added more than once, they could not be deleted correctly
- OTM_Sender::SendTextures: if texture were loaded, but get unloaded due to a rearranging of the list, they are now marked correctly as unloaded
Improvements:
- OTM keeps in mind the actual window position
- added a MORE_TEXTURES flag for the pipe comunication: if more data is written to the pipe, than the size of the buffer, the Mainloop of the OTM_TextureServer will wait for the rest of the date before it prepare an update for the OTM_TextureClient.
- added the last missing texture formats of D3DFORMAT (except two formats)
Improvements:
- DLL: The fake textures are sorted according their hash values (see previous commit) and now the MergeUpdate() function is improved in speed.
DLL: Fake textures are sorted by their hash values and therefore the search is faster (if the game loads a texture).
I rearranged the code in the OTM_DX9/OTM_DX9_dll.cpp, I hope it is now easier to read.
Changed c-runtime linkage of the GUI to static.
The use of Mutex is enabled, for a secure execution of the server thread in the dll.
BugFix:
- GUI: If texture are removed (which were previously loaded) they are now marked as not loaded.
- DLL: Added AddRef/Release counter to ensure a clean up before the device is destroyed.
- DLL: The reference to the FileToMod array is now update to the new value (after merging an updated).
- DLL: SingleTexture is now unswitched, if it was switched with a texture, which shall be replaced with a texture due to a new update.
- when loading a template, the layout function of the sizer is called, thus the new packages are also shown
- Author and NoComment are also loaded from a language pack
- append '\0' at the end of game name (dll injection)
- Release() fake texture (if force reload) instead of calling RemoveTexture(..)
Improvements:
- template support, you can now have more than one template set one of them as default.
- update function will only update the texture if this is needed or the reload button is pressed.
- textures will also be removed, if they are removed from the package list.
- OTM_IDirect3DDevice9::UpdateTexture passes not the correct textures to the original function
- OTM_IDirect3DTexture9: functions which handle with the original data are now redirected to the cross reference (if the texture was switched)
- GUI: memory expand function: more then 10 games can be started and mor then 100 texture packs be added.
- remove dots, slash and backslash at the beginning of filenames in the texmod.def
- selected language will now be stored
- now one has to set all keys, if save single texture is set to true
BugFix:
- removed CheckBoxVSizer, it was unused, but object were detached
- correct estimation of the number of hash entries in OTM_Sender::SendTextures
Improvements:
- added a comment support for tpf and zip files
- a bug prevented to unload Mods, which were new added to the list
Improvements:
- OpenTexMod can now be started only once
- language support (German package provided)
- added more error comments
-BoolSaveSingleTexture was not initialized on start of OTM_TextureServer
Improvements:
-add error handling for all operations in the GUI
-colour support for font an switched texture (if save single texture is enabled)
-hash function to crc32 function (tpf support)
Improvements:
-whole textures can be send to game (needed for zip and tpf)
-zip support (normal and as tpf format)
-tpf support
- OTM_FileHandler::Remove and OTM_TextureHandler::Remove set now the correct Reference
- SingleTexture is deleted, if device is released the last time
- if original texture is released the last time and it is linked with SingleTexture, SingleTexture is not released any more
- texture->AddRef is now directed to the original texture (if texture was switched)
- texture->Release() is now directed to the original texture (if texture is switched)
improvement:
- texture->Release(): if a texture is released which was switched also the fake texture is released, for that no OTM_TextureHandler FakeTextures is needed any more.
- you can run the makefile with NO_INJECTION=1 and a dll without hook is compiled, copy this dll to the game directory, if you don't like to or even can't use the dll-injection over hooking.