Commit graph

1475 commits

Author SHA1 Message Date
Vsevolod Kremianskii
2b7fd07b8d tools: Create destination directory if it does not exist when extracting 2021-04-22 13:05:29 +07:00
Vsevolod Kremianskii
00b082a253 Make choosing steps in extract.py interactive 2021-04-22 12:52:25 +07:00
Vsevolod Kremianskii
224bead91c Put field types into a separate property when converting GFF to JSON 2021-04-22 12:39:07 +07:00
Vsevolod Kremianskii
b6c5a9a8cd Refactor save games
SAV file is now an ERF archive with GFF (and later TGA) files.
2021-04-22 11:00:11 +07:00
Vsevolod Kremianskii
e3b5f3eba1 Improve shadows
- Treat lights with radius of 1000 and higher as directional
- Use orthographic projection for directional shadow lights
2021-04-21 09:51:26 +07:00
Vsevolod Kremianskii
874a4006b6 Fix CTD in danm14aa 2021-04-20 10:27:58 +07:00
Vsevolod Kremianskii
31290dc7d0 Set g_shipBuild to true by default
Due to excessive log output.
2021-04-20 10:17:12 +07:00
Vsevolod Kremianskii
43ada622db Implement area fog 2021-04-20 10:06:10 +07:00
Vsevolod Kremianskii
b4d4803c7d Tweak filelists.py
- Add copyright notice
- Add generated filelists to .gitignore
2021-04-20 08:23:39 +07:00
Vsevolod Kremianskii
ea783f0f33 Fix CTD when object blueprint is missing 2021-04-20 08:23:21 +07:00
Vsevolod Kremianskii
38932c9aef Add Python script to unwrap audio files based on Flowtorn filelists 2021-04-15 12:49:32 +07:00
Vsevolod Kremianskii
852221baf1 Fix erasing double colons from strings 2021-04-15 12:10:28 +07:00
Vsevolod Kremianskii
f356b4704c Fix erasing special characters from strings 2021-04-15 12:05:20 +07:00
Vsevolod Kremianskii
a3fe3960dd Strip double colon surrounded substrings from text
This happens in TSL.
2021-04-15 11:58:31 +07:00
Vsevolod Kremianskii
97237bf713 Make filelists.py accept both Speaker and VO_ResRef
This yields roughly twice as much dialog entries.
2021-04-15 11:53:14 +07:00
Vsevolod Kremianskii
c70d860d4b Explicitly make wav_dir global in get_lines_from_dlg
Somehow the function finds more files this way?
2021-04-15 11:17:38 +07:00
Vsevolod Kremianskii
b99fa9739b Make uniq_sound global when traversing DLG files 2021-04-15 10:10:05 +07:00
Vsevolod Kremianskii
6efd9951c7 Change filelists strategy to search by Speaker, not VO_ResRef 2021-04-15 10:04:30 +07:00
Vsevolod Kremianskii
6ddda21f45 Change wav_dir in filelists to point to wrapped audio files 2021-04-15 09:57:37 +07:00
Vsevolod Kremianskii
e8a9179760 Add extract.py step to extract voices from streamwaves/streamvoice 2021-04-15 08:46:28 +07:00
Vsevolod Kremianskii
5a534bfcfa Rewrite filelists.py to parse DLG files
This is required for TSL support.
2021-04-14 22:30:46 +07:00
Vsevolod Kremianskii
0b226fce6e Add scripts for Flowtron
- Python script to generate Flowtron filelists
- Flowtron patch to enable inference from models
2021-04-14 10:24:17 +07:00
Vsevolod Kremianskii
c3f857a9ee Rename Python scripts to extract.py and analyze.py 2021-04-13 16:02:36 +07:00
Vsevolod Kremianskii
7179d5e862 Revise UTC and UTI loading
Based on resource analysis.
2021-04-13 13:18:18 +07:00
Vsevolod Kremianskii
624e0c61bf Revise UTW, UTT, UTS, UTP, UTE and UTD loading
Based on resource analysis.
2021-04-13 09:46:29 +07:00
Vsevolod Kremianskii
796fc05535 Accept command line arguments in analyze_resources.py 2021-04-13 07:43:43 +07:00
Ziemas
6e0cf0e802 Simplify recieve frame logic. 2021-04-13 07:22:39 +07:00
Ziemas
8b6c5d138f Update FFMPEG API usage.
Stop using deprecated functions.
2021-04-13 07:22:39 +07:00
Vsevolod Kremianskii
9c8dcdb841 Tweak list of fields loaded from blueprints
Based on their usage from resource analysis.
2021-04-12 23:28:45 +07:00
Vsevolod Kremianskii
5b90c6d542 Add Python script to analyze extracted resources 2021-04-12 21:36:17 +07:00
Vsevolod Kremianskii
572acc03bc Load all UTI fields 2021-04-12 20:15:18 +07:00
Vsevolod Kremianskii
fb74b91e04 Load all UTC fields 2021-04-12 20:04:23 +07:00
Vsevolod Kremianskii
2f7261de54 Load all UTP fields 2021-04-12 18:52:08 +07:00
Vsevolod Kremianskii
56a4c94e8c Fix rendering transparent textures with additive blending
E.g., map on the Endar Spire bridge.
2021-04-12 17:56:00 +07:00
Vsevolod Kremianskii
0523998163 Add NCS disassembling step to extract_resources.py 2021-04-12 16:47:17 +07:00
Vsevolod Kremianskii
e01bc053f3 Add Python script to extract and convert resources 2021-04-12 16:06:53 +07:00
Vsevolod Kremianskii
2a95fbfb3f Ignore case when extracting BIF files 2021-04-12 13:42:14 +07:00
Vsevolod Kremianskii
66d2a68c45 Load all UTD fields 2021-04-12 13:42:06 +07:00
Vsevolod Kremianskii
75927cca92 Load all UTW fields 2021-04-12 11:45:55 +07:00
Vsevolod Kremianskii
0823cc1d5c Load all UTT fields 2021-04-12 11:20:07 +07:00
Vsevolod Kremianskii
44b96010bb Remove _facing from SpatialObject
It already has _orientation, which could be used to retrieve facing.
2021-04-12 10:15:17 +07:00
Vsevolod Kremianskii
99dc0a494b Load all UTS fields 2021-04-12 08:43:30 +07:00
Vsevolod Kremianskii
6df8c67403 Replace getInt with getEnum where applicable 2021-04-12 07:59:35 +07:00
Vsevolod Kremianskii
d5c9c6fdf8 Implement loading Encounter from GIT and UTE
Also:

- Add getEnum method to GffStruct
- Rename _heartbeat to _onHeartbeat
2021-04-12 07:55:03 +07:00
Vsevolod Kremianskii
1c6e3e05cc Revert to reading individual fields in MdlReader
This is to account for endianess.
2021-04-11 12:20:37 +07:00
Vsevolod Kremianskii
c95d00b1a3 Fix CI compilation with Boost::Endian 2021-04-11 07:27:50 +07:00
Vsevolod Kremianskii
5c9f7f6c21 Revert to writing individual fields in TlkWriter
This is slower, but takes endianess into account.
2021-04-11 06:52:23 +07:00
Vsevolod Kremianskii
e21f3c66bf Use Boost::Endian for byte order conversion
Less code to maintain and faster due to intristics.
2021-04-11 06:39:03 +07:00
Vsevolod Kremianskii
b00bb7bb00 Add tool to "unwrap" audio files 2021-04-10 16:49:12 +07:00
Vsevolod Kremianskii
6905d35e1f Implement JSON to TLK tool
While at it, make TLK to JSON tool output SoundResRef.
2021-04-10 15:13:52 +07:00