Results 129 comments of razor

The engine already automatically disconnects you. See `CL_CheckTimeout` in `codemp/client/cl_main.cpp` I guess I can add a countdown.

slightly related: the text rendering was normalised in c329a9d19cc337a59086b6a21f693b5c56b772f0

JA++ has CPMA physics including air control, ramp-jumping, double jumping and framerate independent jump height. Might also toy with a quake physics config (removing force jump etc)

See https://github.com/videoP/jaPRO/blob/13a24040c96cf504c8367fb551080a7b90ea2b12/codemp/game/g_trigger.c#l1169-1354

[entity definitions](https://github.com/videoP/racepack5/blob/a1349eb5ffda63768f56846cbef00c7ba55885a5/scripts/japro_entities.def) [entity list](https://github.com/videoP/jaPRO/blob/93b7ee554e79393853f05fa5bb48d108bd727c16/codemp/game/g_spawn.c#L511-L513) [entity spawn functions](https://github.com/videoP/jaPRO/blob/6eab7339d9bdae93ecd10d5d66abad76a52e3375/codemp/game/g_trigger.c#L1740-L1803) [validate race settings](https://github.com/videoP/jaPRO/blob/6eab7339d9bdae93ecd10d5d66abad76a52e3375/codemp/game/g_trigger.c#L1189-L1631)

Should be as simple as another exported function writing to a buffer

Started in 86929c3ac95c9a6e391d2e36c11e25887c489e8e

There is already a tabbed chatbox that will separate global, team, admin, private channel messages. I'm not sure if I like it anymore, but I'll keep it in there. cg_chatTabs...

After many discussions on Discord, my conclusion is: File-specific hacks do not belong. The assets carried over from JK2 should be fixed/adjusted to accommodate for the default life value changing....

I think this is because of performance. Imagine each arc of lightning having to trace against every surface in sight..