Jump to content

Recommended Posts

  • ET Member
Posted

Source code at: https://github.com/RngesusSolutions/jaymod2.2.0

Full Change log at: https://github.com/RngesusSolutions/jaymod2.2.0/commit/fd9f42394fed91098184d3fa020ff264cd6b4478

Precompiled for those that chose not to compile themselves: https://github.com/RngesusSolutions/jaymod2.2.0/releases/download/2.3.0/jaymod-2.3.0.zip

 

Jaymod 2.3.0 is a fairly large update, with most of the work focused on fixing frame-rate-dependent behavior and cleaning up a number of older gameplay and server issues.

The biggest change is that several systems now use actual elapsed time instead of relying on frame count.

Weapon cooling now keeps the fractional remainder between frames, which means weapons no longer overheat early at high FPS. The STEN heat limit was also changed from 1200 to 1350 so it still gets the intended 16-shot burst after the cooling fix.

Recoil now runs on a fixed 15 ms schedule, turn spread keeps fractional changes instead of rounding them away, uniform stealing now takes 2.5 real seconds, and flame range no longer changes depending on sv_fps.

The pmove_fixed leaning crash has also been fixed. Fixed-movement clients should no longer build up commands in antiwarp, show inflated ping, or receive false Connection Interrupted messages.

Shooting and movement received a number of corrections as well.

Crouched bullets and +activate traces now start from the correct eye height. Mounted MG42 fire now lines up properly with the crosshair, crouch-spam scripts are rate-limited, and prone clearance keeps the leg offset that was actually trace-tested.

Overkill damage now only awards XP for health that was actually removed. Dead players can no longer shove, and dead or feigning players can no longer be shoved.

Crosshair offsets now use real screen pixels at any resolution, and antilag reconciliation can be adjusted with g_hitmodeAntilagInterp.

Weapons and equipment also received several smaller fixes.

Thrown knives eventually stop bouncing instead of rattling around forever. Satchel detonators now check the correct clip value and no longer switch away randomly. Weapon cycling now skips binoculars by default, although cg_cycleBinoculars 1 restores the old Jaymod 2.2.0 behavior.

A new cvar, g_panzerMapLimit, can be used to stop one player from holding the panzer every map.

For example, with g_panzerMapLimit 3, a player can receive the panzer for three completed maps in a row. They are then locked out for the next three completed maps before they can take it again.

The system tracks the player by GUID in user.db, so reconnecting does not reset it. A map only counts if the panzer was actually granted, and map_restart does not advance the counter.

There are also fixes for tank and emplaced-gun mounting, fire-support message spam, engineer defuse traces, and landmine spotting. Mines spotted in the same batch now share a single announcement and score update, which also reduces unnecessary snapshot and ranking work.

Spectator and score handling has been cleaned up too.

Spectators now keep their own score instead of inheriting the score of the player they are following. Players waiting to spawn can only follow their own team, and limbo followers are moved if their target changes teams.

Scope FOV and reticle state are now cleared after spectating a scoped player.

A full g_maxGameClients now only blocks spectators who are trying to join. Changing class or team on a full server will no longer dump an active player into spectator.

End-of-map XP awards now use XP earned during the current map instead of career totals. Per-map revives and headshots reset correctly, stale stats are no longer restored when a new stats period begins, and projectiles can no longer continue dealing damage after their owner disconnects.

The ignore list now applies to voice chat as well as text chat.

cg_noVoiceChats is now a bit field:

0 - Hear everything
1 - Mute all voice chat
2 - Enables the team-voice exception without muting anything by itself
3 - Hear team and fireteam voice only, with global voice muted

The lagometer now draws all 48 samples correctly at every resolution, and the crosshair and no-shoot indicators use the same pixel-accurate offset.

There are several server-side improvements as well.

The Admin DB can now autosave on a timer using g_dbAutoSave. Servers can require a matching Jaymod client version with g_requireClientVersion, and map scripts can read the current active Axis and Allied player count through g_playerCount.

Weapon-to-item lookups are now cached, command-map entity messages use fixed buffers, Axis and Allied landmines are counted in a single entity pass, and event-count overflow now fails safely instead of creating invalid network events.

New server cvars:

g_requireClientVersion
g_dbAutoSave
g_aimSpreadTurnScale
g_hitmodeAntilagInterp
g_playerCount
g_panzerMapLimit
g_debugBullets

New client cvar:

cg_cycleBinoculars

Overall, 2.3.0 is mainly about making Jaymod behave consistently across different frame rates while fixing a number of long-standing issues in movement, weapons, spectators, scoring, voice chat, networking, and server administration.

 

This fixes 100% of the valid bugs listed by user cake @ https://github.com/cakeET/jaymod/issues

If anything thats remains unpatched or I have patched improperly please open an issue on github

 

  • Like 1
  • Thanks 2
  • Love 3
  • Surprise 1
Posted

Did you change anything about hitboxes?

The distance between the visible player model and the actual hitbox location seems to depend on:

  • the frame rate of the client firing at the moving target (com_maxFPS)
  • the speed of the player relative to the map
  • the server frame rate (sv_fps)

The amount behind appears to be as much as 1 server frame (50 ms). Using cl_timenudge -25 appears to cut the gap in half.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.