Commit graph

274 commits

Author SHA1 Message Date
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
1c6e3e05cc Revert to reading individual fields in MdlReader
This is to account for endianess.
2021-04-11 12:20:37 +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
Vsevolod Kremianskii
ddb680c120 Separate TalkTable and TlkReader classes 2021-04-10 12:15:46 +07:00
Vsevolod Kremianskii
1c91fc707f Replace portraitutil with Portraits class 2021-04-07 11:20:57 +07:00
Vsevolod Kremianskii
8b2613b717 Refactor blueprints
Blueprint loading is once again part of respective object classes. This
is because blueprints are not stateful and thus there is no need to
cache them separately.
2021-04-06 23:33:55 +07:00
Vsevolod Kremianskii
9f955664fb Add tool to convert ASCII PTH to PTH
This is inteded to be used alongside KotorBlender.
2021-03-31 13:55:15 +07:00
Vsevolod Kremianskii
fb876e216f Make animation resolving and model building part of Creature 2021-03-28 09:39:15 +07:00
Vsevolod Kremianskii
40e48cc02c Refactor combat to take advantage of k_ai_master
Still doesn't work properly.
2021-03-27 18:49:33 +07:00
Vsevolod Kremianskii
c3ba96b222 Rename rp folder in libgame into d20 2021-03-27 10:27:50 +07:00
Vsevolod Kremianskii
6a17b286e9 Cleanup Routines, unify code style in routine implementations 2021-03-26 16:44:24 +07:00
Vsevolod Kremianskii
80061cc43f Drop Action source files
They were redundant.
2021-03-25 00:34:31 +07:00
Vsevolod Kremianskii
70956e438d Store ExecutionContext as a smart pointer in Variable
This is to save space.
2021-03-24 23:51:42 +07:00
Vsevolod Kremianskii
c6deb588ec Implement more combat-related routines 2021-03-23 20:46:05 +07:00
Vsevolod Kremianskii
8a7885e19e Implement get*Target combat routines 2021-03-23 19:59:16 +07:00
Vsevolod Kremianskii
581984f7c0 Implement Get/SetNPCAIStyle 2021-03-23 18:37:16 +07:00
Vsevolod Kremianskii
6d35fdb455 Implement creature perception (sight and hearing) 2021-03-23 15:01:25 +07:00
Vsevolod Kremianskii
9c5be9b87a Refactor resource management
- Move GameID into libgame
- Move resource provider registration into Game
- Move GUI background loading into GameGUI
2021-03-23 13:21:24 +07:00
Vsevolod Kremianskii
e65ecd6ca4 Refactor animation keyframes 2021-03-22 22:40:36 +07:00
Vsevolod Kremianskii
ac55ac6a8d Read Danglymesh header and AABB tree from MDL 2021-03-22 19:27:54 +07:00
Vsevolod Kremianskii
100f318c81 Refactor MDL model loading
Read structs directly from memory.
2021-03-22 18:41:33 +07:00
Vsevolod Kremianskii
48bc91a675 Add ERF/MOD writer 2021-03-20 14:24:22 +07:00
Vsevolod Kremianskii
08fc51f3aa Improve grass rendering 2021-03-19 12:31:42 +07:00
Vsevolod Kremianskii
9143e884fc perf: Make drawSingle non-virtual in SceneNode 2021-03-18 23:47:56 +07:00
Vsevolod Kremianskii
0be6771175 feat: Load surface walkability from surfacemat.2da 2021-03-18 23:17:54 +07:00
Vsevolod Kremianskii
4eda8ce7a7 refactor: Replace dynamic casts with static casts in game objects 2021-03-16 15:13:57 +07:00
Vsevolod Kremianskii
d32d974545 Replace FPS counter with ProfileOverlay 2021-03-16 00:33:24 +07:00
Vsevolod Kremianskii
4d0483f487 feat: Load faction dispositions from repute.2da 2021-03-14 14:38:51 +07:00
Vsevolod Kremianskii
a45ad2fe27 feat: Implement MoveToLocation and FollowLeader actions 2021-03-14 13:57:02 +07:00
Vsevolod Kremianskii
c07cf9ee5d feat: Implement playing Ready animation 2021-03-14 13:14:32 +07:00
Vsevolod Kremianskii
498d6efd8d feat: Implement ActionWait 2021-03-14 10:11:33 +07:00
Vsevolod Kremianskii
3e2567a26f feat: Initial find nearest creature by criterias implementation 2021-03-12 22:24:31 +07:00
Vsevolod Kremianskii
5efd1e02b8 chore: Log caller tag when executing a script 2021-03-11 19:04:49 +07:00
Vsevolod Kremianskii
c120f8382e feat: Add Stopwatch utility class 2021-03-11 18:19:45 +07:00
Vsevolod Kremianskii
cee4c4b048 refactor: Move talktable management from Resources into Strings 2021-03-11 17:02:06 +07:00
Vsevolod Kremianskii
da7f5eebbb build: Rename launcher to reone-launcher 2021-03-11 16:21:39 +07:00
Vsevolod Kremianskii
be572da467 feat(tools): Add tool to create RIM archives from folders 2021-03-11 16:12:28 +07:00
Vsevolod Kremianskii
9ac90910ac build: Add _CRT_SECURE_NO_WARNINGS to all targets on WIN32 2021-03-11 14:59:18 +07:00
Vsevolod Kremianskii
0e9aa13753 refactor: Rename *File classes to *Reader 2021-03-11 14:58:55 +07:00
Vsevolod Kremianskii
ac8e2b47f0 build: Fix building launcher on Debian 2021-03-10 03:48:59 -05:00
Vsevolod Kremianskii
6b3f489ed5 feat(launcher): Group graphics settings under a static box 2021-03-10 10:21:56 +07:00
Vsevolod Kremianskii
675e933844 refactor: Differentiate GOG TSL from Steam TSL
Steam TSL has slightly different cursors in the executable.
2021-03-10 00:58:11 +07:00
Vsevolod Kremianskii
b5a44bc98e feat(launcher): Add game directory selection and configuration saving 2021-03-09 22:43:53 +07:00
Vsevolod Kremianskii
9ba8da5ab4 feat: Add basic launcher executable
Barely useful at this point.
2021-03-09 21:19:55 +07:00
Vsevolod Kremianskii
4d46f9c292 chore: Drop experimental multiplayer code
It was supposed to be rewritten either way.
2021-03-08 14:56:18 +07:00
Vsevolod Kremianskii
32e81a037b build: Make libvideo non-optional 2021-03-08 14:45:59 +07:00
Vsevolod Kremianskii
df8fec4193 chore: Drop support for SWTOR assets
This doesn't really add to the project.
2021-03-08 12:33:50 +07:00
Vsevolod Kremianskii
013f746cff chore: Drop JobExecutor class
It is unused and is not available on Ubuntu 18.04 out of the box.
2021-03-08 12:18:05 +07:00