Skip to content

Commit

Permalink
Beta 1.4
Browse files Browse the repository at this point in the history
  • Loading branch information
mwilsnd committed Aug 3, 2021
1 parent 85dbf7e commit 069d083
Show file tree
Hide file tree
Showing 179 changed files with 12,855 additions and 6,308 deletions.
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
*.lib
*.pdb
*.log
*.txt
*.idb
*.pch
*.tlog
Expand Down Expand Up @@ -49,4 +48,5 @@ ModelBaker-test-*
*.exe
*.o
*.obj
*.lst
*.lst
*.code-workspace
6 changes: 6 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,9 @@
[submodule "Deps/json"]
path = Deps/json
url = https://github.com/nlohmann/json.git
[submodule "Deps/EASTL"]
path = Deps/EASTL
url = https://github.com/electronicarts/EASTL.git
[submodule "Deps/EABase"]
path = Deps/EABase
url = https://github.com/electronicarts/EABase.git
6 changes: 6 additions & 0 deletions BuildScripts/build_eastl.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
@echo off
cd %2
set build_folder=%1
mkdir %build_folder%
pushd %build_folder%
call cmake ../ %3 -DEASTL_BUILD_TESTS:BOOL=OFF -DEASTL_BUILD_BENCHMARK:BOOL=OFF
61 changes: 61 additions & 0 deletions BuildScripts/project_eastl.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
local outputDir = "%{cfg.buildcfg}-%{cfg.system}-%{cfg.architecture}"
local loc = "/Deps/EASTL"
local locBase = "/Deps/EABase"

local function readFile(strPath)
local f = io.open(strPath, "r")
assert( f )

local t = {}
for line in f:lines() do
t[#t+1] = line
end

local src = table.concat(t, "\n")
f:close()
return src
end

local function writeFile(strPath, strData)
local f = io.open(strPath, "w")
assert(f, "Failed to open file ".. strPath.. "!\n")
f:write(strData)
f:close()
end

return function( root, platform )
local args = "-G"

if platform == "vs2019" then
args = args.. "Visual Studio 16 2019"
else
args = args.. "Visual Studio 15 2017 Win64"
end

-- CMake blows
-- No way (that I can see) to force the static runtime on the command line
-- Rewrite the cmakelists file to do this for the targets we care about
local flags = [[set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")]]
-- Lua also blows
local flagsEscaped = [[set%(CMAKE_CXX_FLAGS_RELEASE "%${CMAKE_CXX_FLAGS_RELEASE} /MT"%)
set%(CMAKE_CXX_FLAGS_DEBUG "%${CMAKE_CXX_FLAGS_DEBUG} /MTd"%)]]

local data = readFile(root.. loc.. "/CMakeLists.txt")
if not data:find(flagsEscaped) then
data = data.. "\n".. flags
writeFile(root.. loc.. "/CMakeLists.txt", data)
end

os.execute(("call \"%s\" \"%s\" \"%s\" \"%s\""):format(
"BuildScripts/build_eastl.bat",
root.. loc .. "/build",
root.. loc,
args
))
externalproject "EASTL"
location(root.. loc .. "/build")
uuid "5BC9CEB8-8B4A-11D0-8D21-01A0C91FF942"
kind "StaticLib"
language "C++"
end
3 changes: 1 addition & 2 deletions BuildScripts/project_polyhook.lua
Original file line number Diff line number Diff line change
Expand Up @@ -66,9 +66,8 @@ project "PolyHook2"
functionlevellinking "Off"
runtime "Release"
omitframepointer "On"
flags { "MultiProcessorCompile" }

flags {
"LinkTimeOptimization", "NoBufferSecurityCheck",
"NoMinimalRebuild", "NoRuntimeChecks",
"NoMinimalRebuild", "NoRuntimeChecks", "MultiProcessorCompile"
}
49 changes: 49 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,52 @@
# Beta 1.4
* Bumped module and MCM version number to 13

**Fixes:**
* Merge pull request #48 from ersh1/master (Compatibility fix for True Directional Movement).
* Github issue #31, Fixed FOV issues with mods like Undeath and Triumvirate (Wildshape)
* Github issue #35, directory enumeration no longer throws on unicode paths.
* Fixed distance clamping causing the camera to jump when strafing while using True Directional Movement.
* Fixed FOV offsets being applied in the map menu.
* Fixed an issue where a setting string might already be in the string cache from another mod, but in the wrong case.
* Fixed an issue that caused the normal game crosshair to disappear.
* Fixed new game not hooking D3D11 until after saving and loading.
* Fixed Improved Camera patch causing some issues - Now requires the offical reddit release version (beta4) for the compatibility fix to work - sorry, but I have to read a memory address inside Improved Camera to achieve a functional compatibility mode. Fixes distance clamping causing the camera to jump around when the player moves off-screen.
* Invalidate crosshair enable status when exiting a dialog menu.
* Camera is more aggressive about moving to the desired goal position on both camera state transitions and after loading a new cell.
* Now dynamically reading arrow tilt angle during runtime - Mods that change these values should work correctly now.

**New Stuff:**
* Added an FOMOD installer and consolidated both versions in 1 download.
* Github issue request #30, Added a new key binding to cycle through saved presets (Keep in mind each saved preset needs this key bound, otherwise when you switch the loaded preset won't have your keybind saved).
* Github issue request #43, Added a new option and key binding to turn the camera on and off.
* Github issue request #44, Added a new setting and key binding to offset the camera height by a set amount via hotkey.
* Now factoring arrow draw time in the arrow trajectory computation. (Should help with inaccuracy reported when using the eagle eye perk)
* Added a new setting under the "General" page which allows you to force the camera state back to third-person, meant to fix rare instances where the camera gets stuck in a different state.
* Added a new setting under the "General" page which resets the crosshair back to sane settings, in an attempt to recover a missing crosshair reported by some users.
* Added new settings to offset the stealth meter/sneak crosshair by a configurable amount - either when the world-space crosshair is active, or at all times while sneaking.
* Crosshair now supports conjuration casting mode - crosshair changes color to a red tint when the player is unable to summon at the desired location.
* Now smoothing POV transition from third to first person.
* Added a custom crash handler which can be enabled via the MCM and will detect when a crash happens inside SmoothCam, creating a mini-dump file. If you have this happen, follow the instructions in the message box to report this issue and share the dump file so the crash may be investigated.
* Added EASTL as a source code/compile dependency.

**Changes:**
* Renamed the "Info" page in the MCM to the "General" page.
* Removed the compatibility page from the MCM, moved compat options to the "General" page.
* Slightly altered the raycasting logic for camera collisions (Fixes camera collision jitter).
* Adjustments to arrow prediction math.
* Increased the allowed size range of the crosshair in the MCM.
* Explicitly looking for the arrow node for the raycast origin now - Accounts for some mods that attach other effects to the arrow before being fired (maybe).
* New external debug console, for printing useful information (in debug builds).
* Update gen_addrmap to look at member_fn_0..N macros.
* Added offset caching, we can now unload the offset DB and free up some more ram.
* Refactored camera into the low-level camera, and Thirdperson+Firstperson cameras owned by the low-level camera.
* Refactored camera states.
* Rewrote the papyrus preprocessor in D, using a more proper tokenizer system.
* Some reverse engineering of Skyrim's renderer, updates to d3d_context.
* Added a shader cache.
* New abstracted detour utilities.
* Updated build scripts.

## Beta 1.3
* Bumped module and MCM version number to 12

Expand Down
Binary file removed CodeGen/MCM/SmoothCamMCM.pex
Binary file not shown.
Loading

0 comments on commit 069d083

Please sign in to comment.