At these ticrates there's no floating point error accumulation.
Signed-off-by: bones_was_here <bones_was_here@xonotic.au>
test_sv_game:
stage: test
script:
- - export EXPECT=d6d7e42bd894e2996fd58df286d0886b
+ - export EXPECT=e67187c8446f97a8b062a431dccb89e0
- qcsrc/tools/sv_game-hashtest.sh
- exit $?
void entcs_think(entity this)
{
- this.nextthink = time + 0.033333333333; // TODO: increase this to like 0.15 once the client can do smoothing
+ this.nextthink = time + 0.015625; // TODO: increase this to like 0.125 once the client can do smoothing
entity player = this.owner;
FOREACH(EntCSProps, it.m_check(this, player),
{
#pragma once
-SYSTEM(in, 30, 10);
+SYSTEM(in, 32, 10);
#pragma once
-SYSTEM(phys, 30, 10);
+SYSTEM(phys, 32, 10);
void sys_phys_fix(entity this, float dt);
bool sys_phys_override(entity this, float dt);
me.TR(me);
if(cvar_type("crypto_aeslevel") & CVAR_TYPEFLAG_ENGINE)
me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(2, 1, "crypto_aeslevel", _("Use encryption (AES) when available")));
- me.TR(me);
- me.TR(me);
- me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Bandwidth limit:")));
- me.TD(me, 1, 2, e = makeXonoticTextSlider_T("_cl_rate",
- _("Specify your network speed")));
- e.addValue(e, _("Slow ADSL"), "20000");
- e.addValue(e, _("Fast ADSL"), "40000");
- e.addValue(e, _("Broadband"), "66666");
- e.configureXonoticTextSliderValues(e);
if(cvar("developer") > 0)
{
me.TR(me);
me.TR(me);
me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Maximum:")));
me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_maxfps"));
- ADDVALUE_FPS(60);
- ADDVALUE_FPS(100);
- ADDVALUE_FPS(125);
- ADDVALUE_FPS(150);
- ADDVALUE_FPS(200);
- ADDVALUE_FPS(250);
- ADDVALUE_FPS(400);
+ ADDVALUE_FPS(128);
+ ADDVALUE_FPS(256);
+ ADDVALUE_FPS(512);
+ ADDVALUE_FPS(1024);
+ ADDVALUE_FPS(2048);
e.addValue(e, ZCTX(_("MAXFPS^Unlimited")), "0");
e.configureXonoticTextSliderValues(e);
me.TR(me);
me.TR(me);
me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Idle limit:")));
me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_maxidlefps"));
- ADDVALUE_FPS(10);
- ADDVALUE_FPS(20);
- ADDVALUE_FPS(30);
- ADDVALUE_FPS(60);
+ ADDVALUE_FPS(16);
+ ADDVALUE_FPS(32);
+ ADDVALUE_FPS(64);
+ ADDVALUE_FPS(128);
e.addValue(e, ZCTX(_("IDLFPS^Unlimited")), "0");
e.configureXonoticTextSliderValues(e);
me.TR(me);
BADCVAR("sv_vote_master_commands");
BADCVAR("sv_vote_master_password");
BADCVAR("sv_vote_simple_majority_factor");
- BADVALUE("sys_ticrate", "0.0166667");
- BADVALUE("sys_ticrate", "0.0333333");
+ BADVALUE("sys_ticrate", "0.0078125");
+ BADVALUE("sys_ticrate", "0.015625");
+ BADVALUE("sys_ticrate", "0.03125");
BADCVAR("teamplay_mode");
BADCVAR("timelimit_override");
BADPREFIX("g_warmup");
gl_polyblend 0 // whether to use screen tints, this has now been replaced by a better system in CSQC
r_motionblur 0 // motion blur value, default is 0
r_damageblur 0 // motion blur when damaged, default is 0 (removed in Xonotic)
-net_slist_queriespersecond 60 // to be reduced if any major issues arise (ping times increased etc.)
// TODO: revisit bloom settings on the GL32 renderer!
r_bloom_blur 4
makesaved music_playlist_list0
makesaved music_playlist_random0
-cl_netfps 60 // should match or be a multiple of sys_ticrate
-_cl_rate 40000 // fast adsl
+cl_netfps 64 // should match or be a multiple of sys_ticrate
+_cl_rate 262144 // should allow the max csprogs.dat speed of 128hz * 1400
+
+scr_loadingscreen_maxfps 32
+cl_maxidlefps 32
+cl_maxfps 256
gl_texture_anisotropy 8
seta gl_texturecompression 0 // FIXME the description is wrong - when this is 0, e.g. gl_texturecompression_sky still takes effect
gl_texturecompression_q3bsplightmaps 0
gl_texturecompression_sky 1
-cl_maxfps 250
-
seta cl_weaponpriority "vaporizer okhmg okrpc oknex vortex fireball mortar okmachinegun machinegun hagar rifle arc electro devastator crylink minelayer okshotgun shotgun shockwave hlac tuba blaster porto seeker hook" "weapon priority list"
seta cl_weaponpriority_useforcycling 0 "when set, weapon cycling by the mouse wheel makes use of the weapon priority list (the special value 2 uses the weapon ID list for cycling)"
seta cl_weaponpriority0 "okrpc devastator mortar hagar seeker fireball" "use weapon_priority_0_prev for prev gun from this list, weapon_priority_0_best for best gun, weapon_priority_0_next for next gun. Default value: explosives"
// we must change its default from 1.0 to 1 to be consistent with menuqc
set slowmo 1
-// ticrate
-//sys_ticrate 0.0166667 // 60fps. This would be ideal, but kills home routers.
-sys_ticrate 0.0333333 // Use 30fps instead.
+// 3 ticrates are officially supported: 1/32 1/64 1/128
+sys_ticrate 0.015625
// Audio track names (for old-style "cd loop NUMBER" usage)
set _cdtrack_first "1"
sv_cullentities_trace_eyejitter 0
// less "lagging" of other players, but also less PL tolerant... let's try this
-sv_clmovement_inputtimeout 0.066 // slightly less than 2 frames, so only one frame can be compensated
+sv_clmovement_inputtimeout 0.06249 // slightly less than 2 32hz frames, so only one frame can be compensated
// strength sound settings
set sv_strengthsound_antispam_time 0.1 "minimum distance of strength sounds"