Development discussion. Logged to https://ddnet.tw/irclogs/ Connected with DDNet's IRC channel, Matrix room and GitHub repositories β IRC: #ddnet on Quakenet | Matrix: #ddnet-developer:matrix.org GitHub: https://github.com/ddnet
Between 2019-12-28 00:00:00Z and 2019-12-29 00:00:00Z
The original ddrace physics code isn't that great... But you can easily get this wrong and there is just no documentation... And at this time there was nothing like a code review for tw mods
// Explode at most once per team
int PlayerTeam = ((CGameControllerDDRace*)m_pController)->m_Teams.m_Core.Team(apEnts[i]->GetPlayer()->GetCID());
if (GetPlayerChar(Owner) ? GetPlayerChar(Owner)->m_Hit & CCharacter::DISABLE_HIT_GRENADE : !g_Config.m_SvHit || NoDamage)
{
if (!CmaskIsSet(TeamMask, PlayerTeam)) continue;
TeamMask = CmaskUnset(TeamMask, PlayerTeam);
}
00:10
this is the broken part, what would be the correct fix?
00:11
NoDamage is true when the projectile (in this case from the map) has no owner, so its -1. Setting NoDamage to false would fix it, but I want a "correct" fix xd