Vsevolod Kremianskii
c287a57472
Load light flares from MDL
2021-05-03 20:36:49 +07:00
Vsevolod Kremianskii
1751023903
Implement danglymeshes
2021-05-03 18:37:38 +07:00
Vsevolod Kremianskii
2212f0ff00
Merge ScriptObject and Object
...
ScriptObject is redundant, now, that variables store id, not pointers.
2021-05-03 13:52:22 +07:00
Vsevolod Kremianskii
e5fab733b5
Fix non-English language support
...
Non-ASCII characters have codes larger than 127. When used as indices,
these must be treated as unsigned.
2021-05-03 12:20:42 +07:00
Vsevolod Kremianskii
0a4f7f7fe5
Ensure no framebuffer is bound after pipeline initialization
...
This fixes the black screen bug at TSL startup.
2021-05-03 11:19:50 +07:00
Vsevolod Kremianskii
028694c440
Do not update and draw in main loop if window is out of focus
2021-05-03 10:08:51 +07:00
Vsevolod Kremianskii
25253405ce
Revert to storing object id, not object pointer in scripts
...
- This is how vanilla does it
- It will supposedly be easier to save delayed actions this way
2021-04-22 17:53:55 +07:00
Vsevolod Kremianskii
0e0f018b5b
Add tool to convert LIP to JSON and vice versa
2021-04-22 14:02:43 +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
ea783f0f33
Fix CTD when object blueprint is missing
2021-04-20 08:23:21 +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
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
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
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
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
7b1847e324
Use high-precision clock in Stopwatch
2021-04-08 14:55:12 +07:00
Vsevolod Kremianskii
1830e87b87
Display damage ranges on equipment screen
2021-04-07 21:43:20 +07:00
Vsevolod Kremianskii
9c75b29493
Display hit points, attack and defense bonuses on equipment screen
2021-04-07 18:13:55 +07:00
Vsevolod Kremianskii
25dd7e3a4b
Show defense and saving throws on the character screen
2021-04-07 17:27:50 +07:00
Vsevolod Kremianskii
e641da973e
Display 3D model on character screen
2021-04-07 16:44:32 +07:00
Vsevolod Kremianskii
2e125d889c
Rename RenderWindow to Window
2021-04-07 14:09:44 +07:00
Vsevolod Kremianskii
fa94998898
Fix CTD if movie file is not found
2021-04-07 14:04:03 +07:00
Vsevolod Kremianskii
bddee04453
Rename Game init/deinit to initSubsystems/deinitSubsytems
2021-04-07 14:01:30 +07:00
Vsevolod Kremianskii
4b0cd35fe4
Rename Program members
2021-04-07 13:51:38 +07:00
Vsevolod Kremianskii
2a6bb68088
Remove adding hard-coded follow action to followers
...
It is already assigned by the AI script.
2021-04-07 13:05:43 +07:00
Vsevolod Kremianskii
b789c1c9de
Replace ModelSceneNode::Classification with ModelUsage
2021-04-07 12:26:17 +07:00
Vsevolod Kremianskii
1aa8e1f50d
Load portraits by PortraitId first, Appearance_Type second
2021-04-07 11:51:44 +07:00
Vsevolod Kremianskii
1c91fc707f
Replace portraitutil with Portraits class
2021-04-07 11:20:57 +07:00
Vsevolod Kremianskii
cf9667451f
Fix distance check on perception
2021-04-07 09:10:53 +07:00
Vsevolod Kremianskii
970ea065f8
Add map-based getFromLookup* overloads
2021-04-07 09:04:45 +07:00
Vsevolod Kremianskii
b71284cd1f
Explicitly mark swapBytes as inline
2021-04-07 08:44:20 +07:00
Vsevolod Kremianskii
9a8fe2ecaf
Fix infinite loop on combat round deletion
2021-04-07 08:34:09 +07:00
Vsevolod Kremianskii
6014bfdb1e
Store local variables in ScriptObject instead of Game
2021-04-06 23:51:34 +07:00
Vsevolod Kremianskii
2360a99e4b
Store RunScriptVar in ExecutionContext instead of Game
2021-04-06 23:39:39 +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
a9b840a264
Refactor combat so as to make it driven by the AI script
2021-04-06 12:01:49 +07:00
Vsevolod Kremianskii
097af6e93f
Set "user action" flag on attack action added by player
2021-04-05 18:54:48 +07:00
Vsevolod Kremianskii
62ac46376f
Reset selected and hilighted object hostility
2021-04-05 18:51:14 +07:00
Vsevolod Kremianskii
db3ee5fcb8
Run onUsed placeable scripts on click
2021-04-05 18:30:11 +07:00
Vsevolod Kremianskii
f006d0ea1a
Enable loading modules from MOD files
2021-04-05 16:10:17 +07:00
Vsevolod Kremianskii
b72ab32248
Fix writing ERF/MOD files
2021-04-05 15:43:47 +07:00
Vsevolod Kremianskii
20501ba4ab
Remove unused CombatState enum
2021-04-04 08:21:08 +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
2730abb00b
Fix refreshing the combat action queue, deactivate with delay
2021-03-29 20:03:43 +07:00
Vsevolod Kremianskii
c94432e1ae
Fix color glitches in selection overlay
2021-03-29 14:37:00 +07:00
Vsevolod Kremianskii
fb876e216f
Make animation resolving and model building part of Creature
2021-03-28 09:39:15 +07:00
Vsevolod Kremianskii
272fb6b0d4
Run end of combat round script for creatures
2021-03-27 19:14:49 +07:00
Vsevolod Kremianskii
a52e914b1b
Ensure all scripting messages are written to script debug channel
2021-03-27 19:05:30 +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
f124889100
Optimize SceneGraph.prepareGrass
...
Cull early grass clusters that are too far away.
2021-03-25 00:45:20 +07:00
Vsevolod Kremianskii
80061cc43f
Drop Action source files
...
They were redundant.
2021-03-25 00:34:31 +07:00
Vsevolod Kremianskii
d40e4550fb
Cleanup ByteCode handler registration
2021-03-25 00:12:16 +07:00
Vsevolod Kremianskii
eee68dad71
Add getEnum helper function to Routines
2021-03-25 00:07:32 +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
50584354ad
Replace Variable ctors with static factory functions
...
This is to make variable creation more robust at the cost of being more
verbose.
2021-03-24 23:12:44 +07:00
Vsevolod Kremianskii
07de49a78b
Use macros to declare routine implementations
2021-03-24 22:16:59 +07:00
Vsevolod Kremianskii
fe683324e2
Implement more combat-related script routines
2021-03-23 22:41:33 +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
59db8ae15c
Implement GetRacialType routine
2021-03-23 17:35:14 +07:00
Vsevolod Kremianskii
d3e6a859af
Add global variable to toggle shipBuild return value
2021-03-23 16:17:52 +07:00
Vsevolod Kremianskii
9e436508bd
Implement perception criteria when searching for nth nearest creature
2021-03-23 16:05:19 +07:00
Vsevolod Kremianskii
ff9d939c32
fix: Invert the order of components when reading vector from stack
2021-03-23 15:42:08 +07:00
Vsevolod Kremianskii
d58c356ef4
Add line-of-sight check to perception
2021-03-23 15:36:56 +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
32bc207b14
Check MDL signature as part of BinaryReader.load
2021-03-23 11:05:17 +07:00
Vsevolod Kremianskii
ecba6c70b6
When reading MDL, determine game by function pointers
2021-03-23 10:58:55 +07:00
Vsevolod Kremianskii
6f4ec13ab0
Fix animation blending not working
2021-03-23 10:17:28 +07:00
Vsevolod Kremianskii
48ae0226ea
Simplify AnimatedProperty
2021-03-23 10:02:27 +07:00
Vsevolod Kremianskii
c71a513401
ci: Remove Azure from APT sources
...
This should fix the GitHub actions build.
2021-03-23 09:47:45 +07:00
Vsevolod Kremianskii
76ef2b481e
Fix animating light properties
2021-03-23 00:28:01 +07:00
Vsevolod Kremianskii
8ee6fa3bdc
Fill Danglymesh struct when loading MDL
2021-03-22 22:50:11 +07:00
Vsevolod Kremianskii
e65ecd6ca4
Refactor animation keyframes
2021-03-22 22:40:36 +07:00
Vsevolod Kremianskii
2e47ae21ed
Refactor Model
2021-03-22 19:46:32 +07:00
Vsevolod Kremianskii
a0d95f16e5
Cleanup MdlReader
2021-03-22 19:30:26 +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
e5a41b92db
Read ALL known controller types
2021-03-22 14:24:39 +07:00
Vsevolod Kremianskii
11cb6cea28
Color is a light-only controller
2021-03-22 13:57:23 +07:00
Vsevolod Kremianskii
4b075ab56c
Remove redundant MdlReader.openMDX function
2021-03-22 13:55:00 +07:00
Vsevolod Kremianskii
d531e40a0f
Refactor MDL controllers
...
Loading code was getting untidy with all the switch cases and functions.
2021-03-22 10:10:05 +07:00
Vsevolod Kremianskii
3ee16a5a24
Implement MDL reference nodes
2021-03-22 02:09:24 +07:00
Vsevolod Kremianskii
3019831286
Fix regression where not all particles were drawn
2021-03-21 16:23:44 +07:00
Vsevolod Kremianskii
3c32d4f752
Make dynamic room lighting not part of "enhanced graphics" mode
2021-03-20 15:44:24 +07:00
Vsevolod Kremianskii
f4f3ac7b91
Update room visibility less frequently
...
When in a third-person camera mode, room visibility must only be updated
when the party leader changes rooms.
2021-03-20 15:23:52 +07:00
Vsevolod Kremianskii
801a6b5200
Rename onScreen to culledOut
2021-03-20 15:13:50 +07:00
Vsevolod Kremianskii
48bc91a675
Add ERF/MOD writer
2021-03-20 14:24:22 +07:00
Vsevolod Kremianskii
9a98be39d5
Reimplement instanced particle drawing
2021-03-20 12:06:51 +07:00
Vsevolod Kremianskii
639dadc4d4
Pass large UBO structs as smart pointers
2021-03-20 11:46:23 +07:00
Vsevolod Kremianskii
7011d0ff8d
Revert to using a separate UBO for all major features
2021-03-20 10:49:09 +07:00
Vsevolod Kremianskii
edccb17f6b
Make grass density dependant on surface area
2021-03-19 23:37:26 +07:00
Vsevolod Kremianskii
a29b1e7a08
fix: Fix writing PTH files
2021-03-19 17:35:36 +07:00
Vsevolod Kremianskii
e84ada326b
fix: Fix CTD when no PTH file is found
2021-03-19 17:18:08 +07:00
Vsevolod Kremianskii
5f5f173552
Render multiple grass clusters per face based on density
2021-03-19 13:28:01 +07:00
Vsevolod Kremianskii
cdd4c09536
Use a dedicated grass mesh
2021-03-19 13:15:03 +07:00
Vsevolod Kremianskii
08fc51f3aa
Improve grass rendering
2021-03-19 12:31:42 +07:00
Vsevolod Kremianskii
a1d65ab1f3
feat: Implement grass
...
Grass is placed at grass face centroids - must be evenly distributed
across these faces in the future.
2021-03-19 01:42:05 +07:00
Vsevolod Kremianskii
9143e884fc
perf: Make drawSingle non-virtual in SceneNode
2021-03-18 23:47:56 +07:00
Vsevolod Kremianskii
f545fcc195
feat: Load area grass properties
2021-03-18 23:35:49 +07:00
Vsevolod Kremianskii
5a8f02083b
feat: Add method to return grass surfaces to Surfaces
2021-03-18 23:21:23 +07:00
Vsevolod Kremianskii
0be6771175
feat: Load surface walkability from surfacemat.2da
2021-03-18 23:17:54 +07:00
Vsevolod Kremianskii
0fc2713d52
Disable particle grouping
...
Since it doesn't really help performance.
2021-03-17 18:27:42 +07:00
Vsevolod Kremianskii
3bbe40d507
Revert to using squared distances for slight performance gain
2021-03-17 18:16:30 +07:00
Vsevolod Kremianskii
49b6bdb0fb
Set non-squared drawDistance in game objects
2021-03-17 17:31:34 +07:00
Vsevolod Kremianskii
71d43a4fd3
refactor: Move skeletal uniforms into a separate UBO
...
So as to stay within 16K size limit, guaranteed by OpenGL.
2021-03-17 16:13:56 +07:00
Vsevolod Kremianskii
cab17fe23e
perf: Use vec4 to pass text char transform, not mat4
...
12 bytes vs 64 bytes per character.
2021-03-17 15:58:09 +07:00
Vsevolod Kremianskii
38c87b1e96
perf: Extract particle position from transform in shader
2021-03-17 15:42:51 +07:00
Vsevolod Kremianskii
957df9984c
Optimize text rendering
...
Might not work on all GPUs due to UBO size limit, need to split into
multiple UBOs.
2021-03-17 13:01:52 +07:00
Vsevolod Kremianskii
0beb844668
Cleanup font on destruction
2021-03-17 10:03:54 +07:00
Vsevolod Kremianskii
d38e19471e
perf: Use triangle strip when drawing fonts
2021-03-17 09:49:06 +07:00
Vsevolod Kremianskii
cee087458a
refactor: Replace verb render with draw everywhere except pipelines
2021-03-16 15:33:30 +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
ff86a296b0
refactor: Replace dynamic casts with static casts in scene nodes
2021-03-16 13:50:43 +07:00
Vsevolod Kremianskii
c17774d82c
fix: Only creatures must cast shadows
...
This fixes shadowing artifacts in some areas.
2021-03-16 13:24:26 +07:00
Vsevolod Kremianskii
db3ffa9ebe
perf: Use static pointer casts in ActionExecutor
...
No point dynamic casts, since we know the type in advance.
2021-03-16 12:38:32 +07:00
Vsevolod Kremianskii
2ff1314e2e
refactor: Replace multiple UBOs with a single one
2021-03-16 11:53:11 +07:00
Vsevolod Kremianskii
4acc288419
Replace min FPS with 1% Low in ProfileOverlay
2021-03-16 09:42:39 +07:00
Vsevolod Kremianskii
d32d974545
Replace FPS counter with ProfileOverlay
2021-03-16 00:33:24 +07:00
Vsevolod Kremianskii
46fa5eccb8
refactor: Minor refactoring of RenderWindow
2021-03-15 22:53:05 +07:00
Vsevolod Kremianskii
18a78eb9f1
Use Core OpenGL profile
...
Because why not - we do not use anything from the Compatibility profile.
2021-03-15 22:10:59 +07:00
Vsevolod Kremianskii
66aa13a0f3
fix: Party member must not enter combat during conversations
2021-03-14 15:27:23 +07:00
Vsevolod Kremianskii
b56080df2f
fix: Fix ActionPlayAnimation semantic
2021-03-14 15:18:19 +07:00
Vsevolod Kremianskii
1f49f09f1b
fix: RemovePartyMember must not destroy the creature
2021-03-14 15:06:33 +07:00
Vsevolod Kremianskii
9799711e41
fix: Prevent *mortal* friendlies attacking each other
2021-03-14 14:52:49 +07:00
Vsevolod Kremianskii
4d0483f487
feat: Load faction dispositions from repute.2da
2021-03-14 14:38:51 +07:00
Vsevolod Kremianskii
b6210747af
fix: Do not show Unlock action for KeyRequired doors
2021-03-14 13:57:02 +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
f4909ea1c3
feat: Index data directory in current path
2021-03-14 10:29:01 +07:00
Vsevolod Kremianskii
498d6efd8d
feat: Implement ActionWait
2021-03-14 10:11:33 +07:00
Vsevolod Kremianskii
3d29f31eb2
feat: Implement pause/resume conversation actions
...
When paused, conversation entries cannot be skipped by clicking the
mouse.
2021-03-14 09:51:59 +07:00
Vsevolod Kremianskii
3e2567a26f
feat: Initial find nearest creature by criterias implementation
2021-03-12 22:24:31 +07:00
Vsevolod Kremianskii
914bca91b2
feat: Add CreatureType enumeration
2021-03-12 15:13:32 +07:00
Vsevolod Kremianskii
9c1a7080ef
feat: Implement GetCurrentAction routine
2021-03-12 14:34:32 +07:00
Vsevolod Kremianskii
6c1e445452
fix: Fix enemies being spotted through doors
2021-03-12 13:49:02 +07:00
Vsevolod Kremianskii
de2de5151e
fix: Only blend animations when there is a previous animation
...
Hopefully this fixes animation "ghosting" with dead creatures.
2021-03-12 13:37:52 +07:00
Vsevolod Kremianskii
2ada61a1bc
fix: Do not render fully transparent model nodes
2021-03-12 12:38:23 +07:00
Vsevolod Kremianskii
0199f8e8fd
perf: Drop redundant particle sorting
2021-03-12 12:38:23 +07:00
Vsevolod Kremianskii
34a154f674
fix: Tweak and refactor collision detection
...
This fixes camera artifacts when colliding with doors, among other
things.
2021-03-12 12:38:23 +07:00
Vsevolod Kremianskii
3328cfe3e8
chore: Drop redundant _maxNodeIndex in Model
2021-03-11 20:45:39 +07:00
Vsevolod Kremianskii
d84ba3fd3d
feat: Add a switch to toggle walkmesh rendering
2021-03-11 20:36:16 +07:00
Vsevolod Kremianskii
e1b3ff3676
fix: Update animation regardless of the object being on screen
2021-03-11 19:57:32 +07:00
Vsevolod Kremianskii
b510e2c06d
fix: Fix loading OnUserDefined from placeable blueprints
...
Endar Spire is now effectively completable!
2021-03-11 19:43:09 +07:00
Vsevolod Kremianskii
3b03676b35
fix: Complete animation action if animation in not supported
2021-03-11 19:34:47 +07:00
Vsevolod Kremianskii
0a4fb262e6
chore: Log routine arguments when calling a routine from script
2021-03-11 19:20:55 +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
be572da467
feat(tools): Add tool to create RIM archives from folders
2021-03-11 16:12:28 +07:00
Vsevolod Kremianskii
0e9aa13753
refactor: Rename *File classes to *Reader
2021-03-11 14:58:55 +07:00
Vsevolod Kremianskii
5d8bd9823d
feat(game): Load DescIdentified property from item blueprint
2021-03-11 13:59:35 +07:00
Vsevolod Kremianskii
b51293430b
feat(launcher): Add check box to toggle ehanced graphics mode
2021-03-10 14:11:28 +07:00
Vsevolod Kremianskii
f2642d915e
fix: Fix levelling up not increasing the character level
2021-03-10 13:43:33 +07:00
Vsevolod Kremianskii
1054cb1cf6
feat: Run creatures spawn script, when created with CreateObject
2021-03-10 13:24:17 +07:00
Vsevolod Kremianskii
f6c08f1d21
fix: Friendly1 and Friendly2 are not mutual enemies after all (?)
2021-03-10 12:48:09 +07:00
Vsevolod Kremianskii
55180b4a53
fix(tools): Fix converting Vector GFF fields from JSON to GFF
2021-03-10 11:14:24 +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
abe3dbd30c
feat: Add overload to attach renderbuffer to framebuffer color
2021-03-09 23:25:39 +07:00
Vsevolod Kremianskii
5bd736222a
fix: Unbind shadows framebuffer after initializing it
...
This fixes TSL startup issue.
2021-03-09 23:03:23 +07:00
Vsevolod Kremianskii
e280a8a612
fix: Do not block k_ai_master from running
...
Quite a lot depends on it, not just combat.
2021-03-09 17:45:55 +07:00
Vsevolod Kremianskii
fcfed090a5
ci: Fix CI build (hopefully)
2021-03-09 16:16:33 +07:00
Vsevolod Kremianskii
2a5e99ec8b
fix: Quaternions in GFF are stored as WXYZ, not XYZW
2021-03-09 15:55:03 +07:00
Vsevolod Kremianskii
c11b8aed66
chore: Tweak log messages
2021-03-09 15:41:36 +07:00
Vsevolod Kremianskii
f792f71578
refactor: Split debug messages into configurable channels
2021-03-09 15:21:55 +07:00
Vsevolod Kremianskii
c13addca92
chore: Remove excessive logging
2021-03-09 14:38:03 +07:00
Vsevolod Kremianskii
9d925a90aa
fix: Must not be able to pick replies when entry is not skippable
2021-03-09 13:12:47 +07:00
Vsevolod Kremianskii
d4ff311cc1
fix: Bind default textures per framebuffer, not per shader program
2021-03-09 00:25:05 +07:00
Vsevolod Kremianskii
58fb95d942
fix: Fix loading TPC cubemaps
2021-03-08 23:49:40 +07:00
Vsevolod Kremianskii
5d7a7a3c9f
fix: Friendly1 and Friendly2 factions are mutual enemies
2021-03-08 23:27:00 +07:00
Vsevolod Kremianskii
2a93c816dc
fix: Change material walkability to match MDLops
2021-03-08 23:02:24 +07:00
Vsevolod Kremianskii
802141c3cf
feat: Add a toggle for debugging pathfinding
2021-03-08 22:50:17 +07:00
Vsevolod Kremianskii
fdb53ee494
fix: If item texture variation is not found, use the first variation
2021-03-08 22:35:29 +07:00
Vsevolod Kremianskii
100e0b25b4
fix: Fix render order of particles
...
An ugly hack that is probably worse than simply rendering particles one
by one (?).
2021-03-08 19:58:41 +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