Commit graph

102 commits

Author SHA1 Message Date
8715cf5309
Apply formatting 2023-11-23 20:28:21 +01:00
e52c2b4cff
Add mod config option for loose files
Just the field in the config file, for now.
2023-11-23 20:28:20 +01:00
96f3625b7a
Fix submodule refs
Some checks failed
build/msvc Build for the target platform: msvc
lint/clippy Checking for common mistakes and opportunities for code improvement
build/linux Build for the target platform: linux
2023-11-23 13:16:03 +01:00
4ec44720b0
sdk: Don't fail decompilation on LJD error
All checks were successful
lint/clippy Checking for common mistakes and opportunities for code improvement
build/msvc Build for the target platform: msvc
build/linux Build for the target platform: linux
2023-11-17 15:10:20 +01:00
46a61a7473
Use exit status to determine LJD failure
All checks were successful
lint/clippy Checking for common mistakes and opportunities for code improvement
build/msvc Build for the target platform: msvc
build/linux Build for the target platform: linux
2023-11-17 09:58:53 +01:00
fc759c005d
oodle: Fix building for target Windows
Some checks failed
lint/clippy Checking for common mistakes and opportunities for code improvement
build/msvc Build for the target platform: msvc
build/linux Build for the target platform: linux
2023-11-08 09:43:50 +01:00
5f43fd17ba
Vendor ansi-parser
The fork updates `nom` to version 7, removing rustc's deprecation
warning.
2023-11-08 09:43:18 +01:00
08d417fd5d
Update steamlocate-rs
While this is an unstable dev release, its only significant change is
exactly the one I need: dropping `steam-vdf` and its out-of-date `nom`
dependency.
2023-11-07 15:45:58 +01:00
48f98a43fe
oodle: Fix linking statically
Some checks failed
lint/clippy Checking for common mistakes and opportunities for code improvement
build/linux Build for the target platform: linux
build/msvc Build for the target platform: msvc
2023-11-06 13:42:51 +01:00
7080dcb8de
sdk: Use common ljd flags
Some checks failed
lint/clippy Checking for common mistakes and opportunities for code improvement
build/linux Build for the target platform: linux
build/msvc Build for the target platform: msvc
2023-10-30 14:07:00 +01:00
57224622d9
sdk: Don't wait for cleanup
Some checks failed
lint/clippy Checking for common mistakes and opportunities for code improvement
build/linux Build for the target platform: linux
build/msvc Build for the target platform: msvc
2023-10-30 09:28:15 +01:00
93db78d58f
sdk: Implement decompiling Lua
Closes #48.
2023-10-30 09:28:07 +01:00
93388a6299
fix(sdk): Fix compiling Lua on Windows
The previous fix when the compiled bytecode wasn't accepted by the game
did work fine for Linux. But apparently on Windows, it procudes a stack
overflow when attempting to open a Lua state.

This reverts LuaJIT to a commit from 2019, which is quite old, but does
work. Further investigation is needed to determine if or how never
versions of LuaJIT could be used.

Fixes #110.
2023-04-09 14:37:07 +02:00
690098d7c7
feat(dtmm): Improve debug logging
This re-enables stdout/stderr logging for release binaries for DTMM.
As a GUI application, it usually won't be started from a CLI, and there
should be no negative impact from that.
But since stdout logging is synchronous and much faster than the async
action that writes to the log file, it might get to log more when the
application panics.
2023-04-09 14:33:55 +02:00
1887cdf2ef
fix(sdk): Fix creating invalid bytecode
An update to LuaJIT made an option enabled by default that changed the
bytecode output.

Fixes #99.
2023-04-06 12:17:16 +02:00
f30608e6f1
feat(dtmm): Enable colors for regular log lines 2023-04-05 14:48:23 +02:00
e48ef539b1
feat(dtmt): Implement mod migration utility
Closes #87.
2023-03-28 20:52:11 +02:00
0e9903bd6b Merge pull request 'Improve deployment after game update' (#92) from feat/deployment-improvements into master
Reviewed-on: #92
2023-03-28 20:50:27 +02:00
597bc77464
chore: Fix clippy warnings 2023-03-28 20:49:31 +02:00
4f99fdb5b0
feat(dtmm): Improve error dialog visuals
Closes #62.
2023-03-28 14:45:21 +02:00
a0166f07ff
fix(ci): Fix linking on Linux 2023-03-23 15:32:33 +01:00
e2a285a739
feat: Add Docker images for CI compilation 2023-03-23 13:42:03 +01:00
ba753cf6bb
feat: Implement static linking, second attempt
This is mostly just the code from the previous attempt. All that was
missing were the `.lib` files to link to on Windows.
2023-03-16 18:09:40 +01:00
b64aea684c
chore: Update serde_sjson 2023-03-15 21:31:38 +01:00
1c470b51f8
fix(dtmm): Fix fetching endorsed mods 2023-03-15 17:53:03 +01:00
2fb0d8fb72
feat(nexusmods): Implement NXM URI parsing 2023-03-15 17:06:58 +01:00
d4d1d52f45
feat(nexusmods): Implement parsing download file names
When downloading manually from Nexus, the file name encodes information
needed to map the file to the mod object.
2023-03-15 17:06:27 +01:00
2452f9b4ab
feat(nexusmods): Implement additional endpoints 2023-03-15 17:05:58 +01:00
5ca1ca3506
feat(nexusmods): Start API implementation 2023-03-15 17:04:59 +01:00
888c3e900a
chore: Update crates 2023-03-10 11:36:45 +01:00
978701bed8
feat(dtmm): Implement mod logo
Closes #15.
2023-03-09 20:07:22 +01:00
65c0974de2
feat(dtmm): Add additional details fields
Ref: #15.
2023-03-09 14:52:40 +01:00
4995190199
feat(dtmm): Check mod order
Closes #13.
2023-03-09 11:57:08 +01:00
6b168bad6b
fix(dtmm): Fix game directory check when there is no Steam
Fixes #60.
2023-03-09 11:54:31 +01:00
308613d5fc
feat(dtmt): Improve error messages when compiling Lua
Fixes #58.
2023-03-08 21:27:29 +01:00
a8db19cf9f
refactor: Capitalize error messages 2023-03-08 20:40:30 +01:00
2d48b96dc1
feat(dtmm): Check Steam update before deployment
Closes #35.
2023-03-06 16:07:43 +01:00
3a85fdeb16
feat(dtmm): Locate Steam installation 2023-03-06 16:07:15 +01:00
14406ecae9
fix(dtmm): Use a well-known format to serialize timestamps 2023-03-06 16:07:14 +01:00
4a1e88987c
fix: Force unix path separators for engine values
The engine, and therefore the SDK, too, use unix path separators.
However, on Windows, `PathBuf` automatically produces backslashes.

Fix #46.
2023-03-03 17:36:53 +01:00
ed4a22c97a
Revert "feat(sdk): Switch to statically linked Oodle"
This reverts commit d08321a645.

Closes #42.
2023-03-02 13:51:44 +01:00
638b081cb7
version: dtmt v0.3.0, dtmm v0.1.0 2023-03-01 22:29:27 +01:00
d08321a645
feat(sdk): Switch to statically linked Oodle
This removes another runtime dependency.
2023-03-01 22:14:31 +01:00
fa8764984f
feat(dtmm): Rework log levels and filters
Keep the flexibility for dev, but in prod drop stdout and restrict the
log view to stuff useful to the user.
2023-03-01 20:12:18 +01:00
baf4bed3bd
chore: Update serde_sjson 2023-03-01 19:49:05 +01:00
3895ab12d6
feat(dtmm): Implement log view
Ref: #7.
2023-02-27 16:32:29 +01:00
1d26a5c113
fix(sdk): Fix generating Lua file names during compilation 2023-02-25 16:28:21 +01:00
cd9554fbe3
fix(dtmm): Fix deploying mod bundles
Two different functions were each reading the bundle database
from the backup, so their changes would overwrite each other.
Additionally, mod bundles were missing from the database.

Ref: #28.
2023-02-25 16:09:09 +01:00
0b17e8edf5
fix(sdk): Fix generating bundle name from file path 2023-02-25 16:07:16 +01:00
93c8f4fe9c
fix(sdk): Add missing value in Package binary format
After digging through the VT2 SDK `.exe`, I found that `.package` files
(`stingray::ResourcePackageResource`) actually have more data than I
originally knew about. Most notably, there is a 1 byte `flags` value
that is written at the end of every package file.

Depending on what value those flags have, more data could come after it,
but in most cases, it's just that one byte, which I must have missed in
the binary.

Ref: #28.
Ref: #36.
2023-02-25 13:57:37 +01:00