NewJK
NewJK is our optional improved custom executable that replaces the vanilla JKA executable (jamp.exe). As a custom executable, it is capable of implementing many improvements that are not possible with simple PK3 mods (like Newmod).
It can improve FPS, has many crash fixes and stability improvements, and adds extra features like raw mouse input. While NewJK is not required to use Newmod, we highly recommend it.
Newmod users should only use NewJK or the vanilla executable. Other projects (OpenJK, EternalJK, JAMME, etc.) are not recommended for use with Newmod.
Non-Newmod users are fully encouraged to use NewJK. Newmod and NewJK are independent projects; neither requires the other. Many benefits of NewJK can be enjoyed on any client mod, not just Newmod.
Installation
NewJK can be downloaded from the download page.
What's different about NewJK?
Select which executable you are currently using:
If you don't know which executable you are using, you are almost certainly using "vanilla" (the default executable that is installed with JKA).
Select which mod you are currently using:
Compared to your current setup, if you switched to NewJK, you would gain these features:
- Potentially improved FPS.
- Many crash fixes and stability improvements.
- Raw mouse input added and enabled by default, although you can optionally set the new Raw Mouse cvar (
in_raw
) to0
to disable it and use vanilla-style mouse input (allows for Windows mouse acceleration, etc). - The new No Border cvar (
r_noBorder
) can be enabled to run in borderless windowed mode. - The new Center Window cvar (
r_centerWindow
) can be enabled to automatically position windowed JKA in the center of your screen. - Fixed improper scaling when using Windows DPI settings other than 100%.
- Your gamma (
r_gamma
) setting now only affects the JKA window (i.e., not your desktop or other windows), although you can optionally set the new Gamma Shaders cvar (r_gammaShaders
) to0
to disable it. - Nested quotation marks are now supported in commands and binds, allowing for easier and more robust configuration. This allows entering commands like
bind a "bind b "set c "d ; e" ; say "hello there"""
- The resolution cvar (
r_mode
) can be set to-2
for automatic screen resolution detection. - Maximum cvars raised from 1224 to 8192, preventing any remote chance of ever getting the MAX_CVARS crash.
- You can now bind key combinations using an Alt / Ctrl / Shift modifier key. For example,
bind ctrl+x kill
will make Ctrl + X performkill
. - You can now bind the right-side Alt / Ctrl / Shift keys separately from the left-side keys. For example,
bind rctrl kill
will make the right-side Ctrl key performkill
. Don't worry, your existing configuration is still 100% compatible — if no binding is specifically set for the right-side key, then the generic binding is used. The left-side key always uses the generic binding. - The new Force Game cvar (
fs_forceGame
) can be used to force thefs_game
cvar to a certain setting, preventing annoying servers from changing your game mod folder. - You can now play on JKA version 1.0.0 servers.
- You can now play on "pure" servers regardless of your mods by using the new Pure Bypass cvar (
fs_pureBypass
). - Multiple JKA windows can be run simultaneously without crashing.
- On laptops with dual graphics, JKA will automatically run on the high-performance GPU.
- Fixed laggy/buggy behavior and "Connection Interrupted" when playing with high latency with a high Max FPS (
com_maxFPS
). - Fixed sounds bugging out and looping during "Server is changing maps".
- Improved how sounds are handled while minimized. Sounds are now allowed to freely start, progress, and finish while minimized; they are simply inaudible.
- Added new Delay/Wait Freely commands (
delay
,waitf
), which are enhanced versions of the base JKAwait
command. - The new Console Font (
cl_consoleFont
) and Console Font Size (cl_consoleFontSize
) cvars customize the font style and size of console text. - The new Top Left Font (
cl_topLeftFont
) and Top Left Font Size (cl_topLeftFontSize
) cvars customize the font style and size of text appearing in the top left corner of the screen. - The new Console Height cvar (
cl_consoleHeight
) allows customizing the portion of the screen that the console occupies. - Added support for additional keyboard shortcuts in the chat and console: Ctrl and Backspace/Del/←/→, as well as their Shift+Ctrl variants.
- Added a new Announcer Volume (
s_volumeAnnouncer
) cvar, which controls the volume of the announcer (this was previously controlled by the more generals_volume
). - Added a new Master Volume (
s_volumeMaster
) cvar, which all other volume settings are multiplied by. - The new Fullbright Models (
cg_fullbrightModels
) cvar allows you to force player models to full brightness, optionally with custom colors. - The new Fullbright Items (
cg_fullbrightItems
) cvar allows you to force item models to full brightness, optionally with custom colors. - The new Fullbright Weapons (
cg_fullbrightWeapons
) cvar allows you to force weapon models to full brightness, optionally with custom colors. - The new Siege Fullbright Models (
cg_fullbrightSiegeModels
) cvar allows you to force siege player models to full brightness, optionally with custom colors. - Significantly reduced input lag for all key presses and mouse movements.
- Working Alt + Tab as well as
minimize
command. - Fixed lag when taking your first screenshot of the session.
screenshot
command without argument uses timestamp for filename instead of base JKA numbering system.screenshot
command no longer requires quotation marks for custom filenames containing spaces.- Support for orange and grey text colors with
^8
and^9
. - Extended valid range of the Time Nudge cvar (
cl_timeNudge
) to allow values between -1000 and 1000. Negative values are automatically corrected to zero while spectating, following someone, or watching a demo. - Extended valid range of the Max Packets cvar (
cl_maxPackets
) to allow values between -20 and 1000. - Enter can now auto-complete commands from the main menus, instead of just from in-game.
- Fixed duplicated effects bug (e.g. seeing seven repeater shots when you only clicked once).
- Fixed some siege textures not producing proper footstep effects.
- Fixed
echo
command not properly preserving colors between spaces. - Fixed crash when starting local server with widescreen resolution.
- Fixed crash when looking at Ragnos NPC.
- Fixed broken rendering with invalid primitives.
- Fixed rendering of transparent shadowed text.
- Added the new Shift Toggle Console cvar (
cl_shiftToggleConsole
), which allows you to choose whether to require holding Shift to open and/or close the console. Depending on your setting, you can also use keys that are normally blocked (e.g. for binds or chat), such as ` on English keyboard, ' on Brazillian keyboard, etc. - Server list no longer considers colors and non-alphanumeric characters for sorting by name.
demo
command no longer requires quotation marks for filenames containing spaces.- Fixed the "jittery text" bug that makes small text appear ugly.
- Fixed not seeing certain effects (including disruptor shots and tripmine lasers) if they originated behind you.
- Malicious servers are prevented from forcing invalid/troll cvars on your client.
- Removed ugly white box flash from some explosion effects.
- Removed the large amount of base JKA console spam that was printed in between maps.
- Doppler effect for moving sound sources (e.g. rockets).
- You can now pause demo playback by pressing Esc, or by setting the Time Scale cvar (
timescale
) to0
. - The chat box is now limited to the actual maximum number of characters that servers will accept (149 digits). As you approach the maximum, it will display the number of remaining available digits.
- You can now type percent signs, quotation marks, and Euro symbols into chat.
- Fixed userinfo cvars not updating while the menus are open (e.g. typing
model reelo
with menu open). - The File System Restart command (
fs_restart
) can be used to restart the file system. - Fixed bugs with typing accented/special letters in non-English keyboards.
- You now automatically reconnect upon getting kicked by a reliable commands error.
- CD check bypass allows playing non-Steam JKA without the disc inserted.
- Enabled scrolling in console with mouse wheel.
- Unrecognized console commands are no longer sent as chat messages.
- Ugly "RECORDING XYZ.dm_26" text is removed.
- Fixed connection hijack exploit on malicious servers.
- Fixed pressing Esc during demo playback causing you to exit to the main menu.
- Potentially improved FPS.
- Restored vanilla executable behavior of pressing Enter to auto-complete commands, and expanded it to work in the main menus.
- Restored vanilla executable behavior of color codes being hidden while typing.
- The cfg that automatically gets read/written has been restored to the vanilla filename
jampconfig.cfg
. - Vanilla executable-style portablility is used by default. So instead of using
/Documents/My Games/NewJK
for game files (or whateverfs_homepath
is set to), classic single-folder behavior is used. Combined with thejampconfig.cfg
change, this allows you to easily swap executables without needing to mess with folders or cfgs. If you prefer using OpenJK's defaultfs_homepath
behavior, you can still do that by adding+set fs_portable 0
as an argument when running NewJK. - JKA now defaults to running in full screen at your native resolution, just like any modern PC game (
r_fullscreen 1
andr_mode -2
). - Fixed duplicated effects bug (e.g. seeing seven repeater shots when you only clicked once).
- Nested quotation marks are now supported in commands and binds, allowing for easier and more robust configuration. This allows entering commands like
bind a "bind b "set c "d ; e" ; say "hello there"""
- Extended valid range of the Time Nudge cvar
cl_timeNudge
to allow values between -1000 and 1000. Negative values are automatically corrected to zero while spectating or following someone. - Extended valid range of the Gamma cvar
r_gamma
to allow values up to 10. screenshot
command no longer requires quotation marks for custom filenames containing spaces.- Ugly "RECORDING XYZ.dm_26" text when recording a demo is removed by default.
- Added the new Shift Toggle Console cvar (
cl_shiftToggleConsole
), which allows you to choose whether to require holding Shift to open and/or close the console. Depending on your setting, you can also use keys that are normally blocked (e.g. for binds or chat), such as ` on English keyboard, ' on Brazillian keyboard, etc. - The server list no longer considers colors and non-alphanumeric characters for sorting by name.
- Fixed pressing Esc during demo playback causing you to exit to the main menu.
demo
command no longer requires quotation marks for filenames containing spaces.- Fixed not seeing certain effects (including disruptor shots and tripmine lasers) if they originated behind you.
- Removed ugly white box flash from some explosion effects.
- Removed the large amount of base JKA console spam that was printed in between maps.
- You can now pause demo playback by pressing Esc, or by setting the Time Scale cvar
timescale
to0
. - The chat box is now limited to the actual maximum number of characters that servers will accept (149 digits). As you approach the maximum, it will display the number of remaining available digits.
- You can now type percent signs, quotation marks, and Euro symbols into chat.
- Although raw mouse input is still enabled by default, you can now optionally disable it and get vanilla-style mouse input by setting the new Raw Mouse cvar
in_raw
to0
(allows Windows mouse acceleration, etc). - Fixed userinfo cvars not updating while the menus are open (e.g. typing
model reelo
with menu open). - You can now bind key combinations using an Alt / Ctrl / Shift modifier key. For example,
bind ctrl+x kill
will make Ctrl + X performkill
. - You can now bind the right-side Alt / Ctrl / Shift keys separately from the left-side keys. For example,
bind rctrl kill
will make the right-side Ctrl key performkill
. Don't worry, your existing configuration is still 100% compatible — if no binding is specifically set for the right-side key, then the generic binding is used. The left-side key always uses the generic binding. - Fixed mouse getting stuck in the center of your screen when minimizing JKA immediately after startup.
- The new Force Game cvar (
fs_forceGame
) can be used to force thefs_game
cvar to a certain setting, preventing annoying servers from changing your game mod folder. - You can load patched map files (e.g.
maps/mp/mapname.bsp.patched
), so as to use clientside map patches without causing autodownload to start. - The File System Restart command (
fs_restart
) can be used to restart the file system. - On laptops with dual graphics, JKA will automatically run on the high-performance GPU.
- You now automatically reconnect upon getting kicked by a reliable commands error.
- Fixed bugs with typing accented/special letters in non-English keyboards.
- You can now play on JKA version 1.0.0 servers.
- You can now play on "pure" servers regardless of your mods by using the new Pure Bypass cvar (
fs_pureBypass
). - Fixed laggy/buggy behavior and "Connection Interrupted" when playing with high latency with a high Max FPS (
com_maxFPS
). - Fixed sounds bugging out and looping during "Server is changing maps".
- Improved how sounds are handled while minimized. Sounds are now allowed to freely start, progress, and finish while minimized; they are simply inaudible. No more violently assaulting your ears when you maximize JKA.
- Added new Delay/Wait Freely commands (
delay
,waitf
), which are enhanced versions of the base JKAwait
command. - The new Console Font (
cl_consoleFont
) and Console Font Size (cl_consoleFontSize
) cvars customize the font style and size of console text. - The new Top Left Font (
cl_topLeftFont
) and Top Left Font Size (cl_topLeftFontSize
) cvars customize the font style and size of text appearing in the top left corner of the screen. - The new Console Height cvar (
cl_consoleHeight
) allows customizing the portion of the screen that the console occupies. - Added support for additional keyboard shortcuts in the chat and console: Ctrl and Backspace/Del/←/→, as well as their Shift+Ctrl variants.
- Added a new Announcer Volume (
s_volumeAnnouncer
) cvar, which controls the volume of the announcer (this was previously controlled by the more generals_volume
). - Added a new Master Volume (
s_volumeMaster
) cvar, which all other volume settings are multiplied by.