Commit Graph

1149 Commits

Author SHA1 Message Date
Azamat H. Hackimov
83de469e96 Add plog license information
plog is licensed under MIT license.
2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
9172c9dd9f Checkout plog submodule to tag 1.1.10 2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
ad3aa8bb42 Cleanup misc submodule
Move common parts from platform-specific ifdefs.
2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
25c4837b1d Editor: fix compilation
Add `"mono.h"` where needed.
2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
cc61f5de31 Convert win32 to use new logging facility 2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
83ff0eef99 GitHub Actions: recursive checkout sources 2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
e19bb71cf7 Convert core game to use new logging facility 2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
14691a5549 Convert networking to use new logging facility 2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
b1f9b61d44 Cleanup ddebug submodule
Remove unused functions.
2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
0abd11f08f Convert ui to use new logging facility 2024-09-10 03:00:26 +03:00
Azamat H. Hackimov
a4f00480b1 Convert streamaudio to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
ae8e1b4a48 Convert sndlib to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
df93488815 Convert rtperfomance to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
d8de33eb35 Convert renderer to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
c32c2d3db3 Convert physics to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
ffdbc8b621 Convert music to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
b9de85791d Convert model to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
b11927fc46 Convert mem to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
4259fe4c18 Convert manage to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
dc82d2314d Convert linux to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
e627dfc546 Convert grtext to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
a16420789d Convert ddio to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
76d0711aa3 Convert dd_grwin32 to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
9d2aaf12f2 Convert cfile to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
c76637d97f Convert bitmap to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
867a1d2e07 Convert AudioEncode to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
a3324dc06e Convert 2dlib to use new logging facility 2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
30f8fefa0b Cleanup sdlmain.cpp
Remove unused global variables, rewrite internal functions, remove `-game_checksum` cmdline option.
2024-09-10 03:00:25 +03:00
Azamat H. Hackimov
c6ab519652 Add plog library as logging facility
Added additional cmake option `USE_SYSTEM_PLOG`.
2024-09-10 03:00:23 +03:00
Louis Gombert
9fcd4e7857
Merge pull request #558 from jengelh/crashes.2
Fix some 8 other game crashes [ASAN]
2024-09-07 21:57:49 +02:00
Louis Gombert
7c9fd48ea6
Merge pull request #566 from jengelh/scorch
Repair non-sensical scorch iterations
2024-09-07 21:49:34 +02:00
Louis Gombert
8c39002076
Merge pull request #567 from jengelh/spello
Fix a bunch of spellos in comments and strings
2024-09-07 21:48:51 +02:00
Jan Engelhardt
5f0bdf8184 Fix spello "it's" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
38b835a03b Fix spello "its" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
a3a31c77a2 Fix spello "seperate.." 2024-09-03 13:26:51 +02:00
Jan Engelhardt
4d9ff9cdc6 Fix some one-off spellos 2024-09-03 13:26:51 +02:00
Jan Engelhardt
1c32732f59 Fix spello "wierd" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
a09efdaf20 Fix spello "conforming" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
96c787bfb2 Fix spello "interative why" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
b14470bbff Fix spello "independan.." 2024-09-03 13:26:51 +02:00
Jan Engelhardt
1036c3c677 Fix spello "targett" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
edbde82918 Fix spello "agression" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
b88d7d4b7a Fix spello "recersive" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
762d0689fb Fix spello "visabil.." 2024-09-03 13:26:51 +02:00
Jan Engelhardt
ad9c2ba1d0 Fix spello "guarentee" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
234e666ce0 Fix spello "charactor" 2024-09-03 13:26:51 +02:00
Jan Engelhardt
337e8eaa17 Repair non-sensical scorch iterations
Gazing at my own code/modification, I find it is embarrasingly wrong.
Since ``sp`` is re-initialized at every loop iteration, setting it to
(the locally-constant) ``Scorch_start`` is incorrect. Make ``sp``
really mirror ``i`` at all times; this way, it also will not be
necessary anymore to update ``sp`` within the loop.

Fixes: 20ed30eef8
2024-09-03 00:09:39 +02:00
Louis Gombert
a4ef5fd0d5
Merge pull request #556 from winterheart/gamespy-reactivate
Reactivate Gamespy functionality
2024-09-02 23:18:07 +02:00
Louis Gombert
221a2abc53
Merge pull request #561 from tophyr/pr/osx-xattr
Add xattr command to OS X usage instructions
2024-09-02 23:06:55 +02:00
Jan Engelhardt
c3a6b1258c Resolve assertion when CollectorNomad2 dies
It is possible to cause the death of the CollectorNomad2 object (rush
to it before it possibly leaves again into the sidepackets the ship
won't fit through). The transition happens here:

```
f0  KillObject (objp=0x3d4d3e0 <Objects+384000>, killer=0x3cef7e0 <Objects>, damage=3) at /home/jengelh/D3/Descent3/damage.cpp:1036
f1  ApplyDamageToGeneric (hit_obj=0x3d4d3e0 <Objects+384000>, killer=0x3cef7e0 <Objects>, damage_type=6, damage=3, server_says=0, weapon_id=255) at /home/jengelh/D3/Descent3/damage.cpp:1401
f2  collide_generic_and_player (robotobj=0x3d4d3e0 <Objects+384000>, playerobj=0x3cef7e0 <Objects>, collision_point=0x7f877f40a830, collision_normal=0x7f877f40a858, f_reverse_normal=true, hit_info=0x7f877f40a810) at /home/jengelh/D3/physics/collide.cpp:2127
f3  collide_two_objects (A=0x3cef7e0 <Objects>, B=0x3d4d3e0 <Objects+384000>, collision_point=0x7f877f40a830, collision_normal=0x7f877f40a858, hit_info=0x7f877f40a810) at /home/jengelh/D3/physics/collide.cpp:2505
f4  do_physics_sim (obj=0x3cef7e0 <Objects>) at /home/jengelh/D3/physics/physics.cpp:1515
f5  ObjDoFrame (obj=0x3cef7e0 <Objects>) at /home/jengelh/D3/Descent3/object.cpp:2824
f6  ObjDoFrameAll () at /home/jengelh/D3/Descent3/object.cpp:2988
f7  GameFrame () at /home/jengelh/D3/Descent3/GameLoop.cpp:2980
f8  GameSequencer () at /home/jengelh/D3/Descent3/gamesequence.cpp:1221
f9  PlayGame () at /home/jengelh/D3/Descent3/game.cpp:834
f10 MainLoop () at /home/jengelh/D3/Descent3/descent.cpp:550
f11 Descent3 () at /home/jengelh/D3/Descent3/descent.cpp:508
f12 oeD3LnxApp::run (this=0x7f877f00db50) at /home/jengelh/D3/Descent3/sdlmain.cpp:151

<frame 2> (gdb) p robotobj
$1 = {
	type = 2 '\002' (OBJ_ROBOT), dummy_type = 255 '\377', id = 276,
	flags = 2135072, name = 0x5020000aff30 "CollectorNomad2",
	handle = 2432, next = 178, prev = -1,
	control_type = 1 '\001' (CT_AI), movement_type = 2 '\002' (MC_ROLLING),
	render_type = 1 '\001' (LRT_GOURAUD), lighting_render_type = 1 '\001', roomnum = 58,
	pos = {x = 2350.21484, y = -263.523956, z = 1868.59888},
	orient = {
		rvec = {x = 0.882905424, y = 1.63964216e-14, z = -0.469550878},
		uvec = {x = -1.25793295e-14, y = 1, z = 1.12662192e-14},
		fvec = {x = 0.469550878, y = -4.04037088e-15, z = 0.882905424}
	},...}
```

Thus, KillObject sets obj->control_type=CT_DYING. In the same game
tick, Level6.cpp then calls aAIGoalFollowPathSimple which triggers
the assertion.

```
Int3 in $GIT/Descent3/osiris_predefs.cpp at line 571.(Descent 3 Debug Break)

f0  osipf_AIGoalFollowPathSimple (objhandle=2432, path_id=21, guid=7, flags=1052928, slot=3) at $GIT/Descent3/osiris_predefs.cpp:571
f1  AI_GoalFollowPathSimple (objhandle=2432, path_id=21, guid=7, flags=1052928, slot=3) at $GIT/scripts/osiris_import.h:170
f2  aAIGoalFollowPathSimple (objhandle=2432, pathid=21, flags=1052928, goalid=7, priority=3) at $GIT/scripts/DallasFuncs.cpp:3649
f3  LevelScript_0000::CallEvent (this=0x5020000ba430, event=256, data=0x7f963e71d930) at $GIT/scripts/Level6.cpp:2465
f4  CallInstanceEvent (id=0, ptr=0x5020000ba430, event=256, data=0x7f963e71d930) at $GIT/scripts/Level6.cpp:2209
f5  Osiris_CallLevelEvent (event=256, data=0x7f963e71d930) at $GIT/Descent3/OsirisLoadandBind.cpp:2000
f6  GameFrame () at $GIT/Descent3/GameLoop.cpp:3020
f7  GameSequencer () at $GIT/Descent3/gamesequence.cpp:1221
f8  PlayGame () at $GIT/Descent3/game.cpp:834
f9  MainLoop () at $GIT/Descent3/descent.cpp:550
f10 Descent3 () at $GIT/Descent3/descent.cpp:508
f11 oeD3LnxApp::run (this=0x7f963e80db50) at $GIT/Descent3/sdlmain.cpp:151
```
2024-09-02 22:53:27 +02:00