From f8d2e808fdd3d7db0bb8ce24cb48d440afd2732c Mon Sep 17 00:00:00 2001 From: Bacalhau Seco <64091315+bacalhau-seco@users.noreply.github.com> Date: Wed, 6 May 2026 16:55:20 +0100 Subject: [PATCH 1/5] fixed ugly smoke when using kRenderTransTexture the smoke grenade renders above the viewmodel and looks ugly overall. --- cl_dll/events/event_createsmoke.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cl_dll/events/event_createsmoke.cpp b/cl_dll/events/event_createsmoke.cpp index 2072bdfa4..0d267fbdf 100644 --- a/cl_dll/events/event_createsmoke.cpp +++ b/cl_dll/events/event_createsmoke.cpp @@ -75,7 +75,7 @@ void EV_CreateSmoke(event_args_s *args) pTemp->entity.curstate.fuser4 = gEngfuncs.GetClientTime(); // entity creation time pTemp->entity.curstate.renderamt = 255; - pTemp->entity.curstate.rendermode = kRenderTransTexture; + pTemp->entity.curstate.rendermode = kRenderTransAlpha; pTemp->entity.curstate.rendercolor.r = Com_RandomLong(210, 230); pTemp->entity.curstate.rendercolor.g = Com_RandomLong(210, 230); pTemp->entity.curstate.rendercolor.b = Com_RandomLong(210, 230); From d5d6efbff86cf36104d7e619be1962e2da2a4c23 Mon Sep 17 00:00:00 2001 From: Bacalhau Seco <64091315+bacalhau-seco@users.noreply.github.com> Date: Thu, 7 May 2026 18:06:53 +0100 Subject: [PATCH 2/5] allows players to change FOV --- cl_dll/hud_redraw.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/cl_dll/hud_redraw.cpp b/cl_dll/hud_redraw.cpp index 1f2ad596e..2b8bf98dc 100644 --- a/cl_dll/hud_redraw.cpp +++ b/cl_dll/hud_redraw.cpp @@ -56,6 +56,16 @@ void CHud::Think(void) newfov = HUD_GetFOV(); m_iFOV = newfov ? newfov : default_fov->value; + if (default_fov->value < 90.0f) + { + // prevents players from entering "scope" on every weapon + gEngfuncs.Cvar_SetValue("default_fov", 90.0f); + } + + if (m_iFOV == 90) { + m_iFOV = default_fov->value; + } + // the clients fov is actually set in the client data update section of the hud // Set a new sensitivity From 03bf243b827dc9a38859042c2a91ef31febd56a5 Mon Sep 17 00:00:00 2001 From: bacalhau Date: Thu, 7 May 2026 19:17:16 +0100 Subject: [PATCH 3/5] fixed weapon scaling --- cl_dll/view.cpp | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/cl_dll/view.cpp b/cl_dll/view.cpp index b3a565157..7096626f9 100644 --- a/cl_dll/view.cpp +++ b/cl_dll/view.cpp @@ -883,22 +883,17 @@ void V_CalcNormalRefdef ( struct ref_params_s *pparams ) // fudge position around to keep amount of weapon visible // roughly equal with different FOV - if (pparams->viewsize == 110) - { - view->origin[2] += 1; - } - else if (pparams->viewsize == 100) - { - view->origin[2] += 2; - } - else if (pparams->viewsize == 90) - { - view->origin[2] += 1; - } - else if (pparams->viewsize == 80) - { - view->origin[2] += 0.5; - } + float backOffset = 0.0f; + + if (gHUD.m_iFOV > 90 && gHUD.m_iFOV <= 100) + backOffset = 1.0f; + else if (gHUD.m_iFOV > 100 && gHUD.m_iFOV <= 110) + backOffset = 2.0f; + else if (gHUD.m_iFOV > 110) + backOffset = 4.0f; + + for (int i = 0; i < 3; i++) + view->origin[i] -= backOffset * pparams->forward[i]; // Don't allow viewmodel, if we are in sniper scope if( gHUD.m_iFOV <= 40 ) From 1e7c6697c4d0f50eb7ef8bc7d6a05621b3ac3c44 Mon Sep 17 00:00:00 2001 From: bacalhau Date: Thu, 7 May 2026 19:33:58 +0100 Subject: [PATCH 4/5] reverted the weapon scalling, it clips on the sides and im not sure why --- cl_dll/view.cpp | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/cl_dll/view.cpp b/cl_dll/view.cpp index 7096626f9..b3a565157 100644 --- a/cl_dll/view.cpp +++ b/cl_dll/view.cpp @@ -883,17 +883,22 @@ void V_CalcNormalRefdef ( struct ref_params_s *pparams ) // fudge position around to keep amount of weapon visible // roughly equal with different FOV - float backOffset = 0.0f; - - if (gHUD.m_iFOV > 90 && gHUD.m_iFOV <= 100) - backOffset = 1.0f; - else if (gHUD.m_iFOV > 100 && gHUD.m_iFOV <= 110) - backOffset = 2.0f; - else if (gHUD.m_iFOV > 110) - backOffset = 4.0f; - - for (int i = 0; i < 3; i++) - view->origin[i] -= backOffset * pparams->forward[i]; + if (pparams->viewsize == 110) + { + view->origin[2] += 1; + } + else if (pparams->viewsize == 100) + { + view->origin[2] += 2; + } + else if (pparams->viewsize == 90) + { + view->origin[2] += 1; + } + else if (pparams->viewsize == 80) + { + view->origin[2] += 0.5; + } // Don't allow viewmodel, if we are in sniper scope if( gHUD.m_iFOV <= 40 ) From f862d5e675c24fc6505af383cbdbca108290a3ab Mon Sep 17 00:00:00 2001 From: bacalhau Date: Thu, 7 May 2026 19:40:46 +0100 Subject: [PATCH 5/5] made default FOV stay after restarting the game --- cl_dll/hud.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cl_dll/hud.cpp b/cl_dll/hud.cpp index c7fee44ba..baff21ff1 100644 --- a/cl_dll/hud.cpp +++ b/cl_dll/hud.cpp @@ -313,7 +313,7 @@ void CHud :: Init( void ) cl_minmodels = CVAR_CREATE( "cl_minmodels", "0", FCVAR_ARCHIVE ); cl_min_t = CVAR_CREATE( "cl_min_t", "1", FCVAR_ARCHIVE ); cl_min_ct = CVAR_CREATE( "cl_min_ct", "2", FCVAR_ARCHIVE ); - default_fov = CVAR_CREATE( "default_fov", "90", 0 ); + default_fov = CVAR_CREATE( "default_fov", "90", FCVAR_ARCHIVE ); m_pCvarDraw = CVAR_CREATE( "hud_draw", "1", FCVAR_ARCHIVE ); fastsprites = CVAR_CREATE( "fastsprites", "0", FCVAR_ARCHIVE ); cl_gunsmoke = CVAR_CREATE( "cl_gunsmoke", "0", FCVAR_ARCHIVE );