AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Metamod:Source Plugins (https://forums.alliedmods.net/forumdisplay.php?f=76)
-   -   L4D/L4D2 Tickrate Enabler (https://forums.alliedmods.net/showthread.php?t=299669)

Spirit_12 07-22-2017 14:36

L4D/L4D2 Tickrate Enabler
 
2 Attachment(s)
Tickrate Enabler 1.4 by ProdigySim

Description

Enables the "-tickrate" switch to be used from the command line to set the game's tickrate.

Patches Boomer Vomit behavior to fix an issue where vomit range scaled inversely with tickrate. Supports both Windows and Linux installs.

Removes global upper-limits on the max client data rate (was 30000), and removes the (30k) limits on rate control cvars:


Code:

- sv_maxrate
 - sv_minrate
 - net_splitpacket_maxrate

Instructions

HTML Code:

- Place tickrate_enabler folder in your server's addons folder.

 - Place tickrate_enabler.vdf (L4D2) or tickrate_enabler_l4d1.vdf (L4D1) in your server's addons folder.

 - Add "-tickrate <desired_tickrate>" to your server's launch parameters. e.g. -tickrate 100

 - Make sure the following convar settings are properly set in server.cfg or otherwise:
    * sv_maxupdaterate 100
    * sv_maxcmdrate 100
    * fps_max 150
      // higher than 100 recommended, as ticks calculated seems to dip otherwise. sv_maxrate 0
      // 0 = unlimited, but you can also set this manually. Default is 30k for 30tick, use math.
      // Setting higher sv_minrate can be used to force users to use higher data rates.

 - Note that fps_max and sv_maxrate are hidden variables on most scenarios.

 - Done. Enjoy 100 tick L4D2 gameplay.


Changelog / TODO

HTML Code:

1.4: No revision, just a recompile.

    Big thanks to Lux for updated offset.
    Compatible with the June 15, 2021 update.

1.4: Contributed by $atanic $pirit

    Fixed L4D2 CVomit::UpdateAbility Windows offsets.
    Fixed l4d Linux offsets.(Thanks to epzminion.)

1.3:

    Fixed L4D1 CVomit::UpdateAbility linux offsets.

1.2: thanks to vintik

    Fixed maxrate patching on Windows (L4D1+2)
    Added an extra maxrate patch on Linux that probably does nothing.

1.1:

    Patches 2 hard coded max rate limits
    Removes CVar Max on sv_max/minrate, net_splitpacket_maxrate
    Some code reorganization

1.0:

    Patches boomer vomit to behave properly on modified high tickrates
    Code cleaner perhaps

0.1:

    -tickrate only pseudo-release

TODO:

- Investigate other bugs
- Remove 30K rate limit from HLTV clients.

Credits / License

tickrate_enabler is copyright Michael "ProdigySim" Busby 2012

Parts of this project contain GPLv3 code adapted from SourceMod (Allied Modders L.L.C.) and Left4Downtown2 (Igor Smirnov et. al.).

This entire project is released under the AlliedModders modified GPLv3.



Note: The Hardcode 60 zip contains the hardcoded 60 tickrate. This can be used on servers where direct command line access is not possible. By default this will run the servers at 60.

Note: This is not my plugin, I've just fixed the Windows offset for it. I'm going by V1SoR's previous reply on the topic. If anyone has any problems with it, then feel free to take it down.

Quote:

Originally Posted by V1SoR (Post 2481627)
I don't know why this needs a separate thread, but if the moderators don't mind, go ahead. You have my permission, just mention somwhere that you're not an author or a contributor, and specify the nicknames of those who are.

Updated Source: https://github.com/Satanic-Spirit/Tickrate-Enabler
Original Source: https://bitbucket.org/ProdigySim/l4d2_tickrate_enabler

Spirit_12 07-23-2017 16:41

Re: L4D/L4D2 Tickrate Enabler
 
Update: (Thanks to epzminion.)

- Fixed l4d Linux offsets.
- Fixed linux builds.

Skorpyo 09-05-2017 08:47

Re: L4D/L4D2 Tickrate Enabler
 
I'm currently having some difficulty getting this plugin to work on a Windows server. The command line has the -tickrate command set, and I added the rate settings to the server.cfg. I have also tested executing them as sm_cvar's. I tried restarting the server with them set to sm_cvar commands as well. The tickrate_enabler.dll is confirmed to be installed on the server. Everything appears to be correct on the server side of things, however the rates remain locked at 30.2. Any idea on what could have went wrong?

Spirit_12 09-05-2017 09:50

Re: L4D/L4D2 Tickrate Enabler
 
Does plugins_print show it to be loaded in? Also, what is the output of sm_cvar sv_maxupdaterate and sm_cvar sv_maxcmdrate ?

Skorpyo 09-05-2017 15:22

Re: L4D/L4D2 Tickrate Enabler
 
Quote:

Originally Posted by Spirit_12 (Post 2546785)
Does plugins_print show it to be loaded in? Also, what is the output of sm_cvar sv_maxupdaterate and sm_cvar sv_maxcmdrate ?

It appears to be just not loading the plugin, the plugins list does not show the tickrate enabler as being active, when I type "sm plugins list". Nor does it show any errors. Near the end of the log when the server starts, a "basecommands.smx" entry for each rate command is shown, as "changed cvar" (and then the appropriate values)

epzminion 09-05-2017 16:42

Re: L4D/L4D2 Tickrate Enabler
 
Quote:

Originally Posted by Skorpyo (Post 2546880)
It appears to be just not loading the plugin, the plugins list does not show the tickrate enabler as being active, when I type "sm plugins list". Nor does it show any errors. Near the end of the log when the server starts, a "basecommands.smx" entry for each rate command is shown, as "changed cvar" (and then the appropriate values)

This is not a Sourcemod plugin. It won't appear in your "sm plugins list". Type plugin_print in console as Spirit_12 mentioned, and it will appear in that list if loaded:
Code:

Loaded plugins:
---------------------
0:      "Metamod:Source 1.10.7-dev"
1:      "Tickrate_Enabler 1.4, ProdigySim"
---------------------

If it is loaded correctly and you're still not exceeding 30 fps, then check the cvars Spirit_12 mentioned. Also check the value of fps_max. I think it defaults to 30.

Skorpyo 09-05-2017 17:29

Re: L4D/L4D2 Tickrate Enabler
 
Quote:

Originally Posted by epzminion (Post 2546897)
This is not a Sourcemod plugin. It won't appear in your "sm plugins list". Type plugin_print in console as Spirit_12 mentioned, and it will appear in that list if loaded:
Code:

Loaded plugins:
---------------------
0:      "Metamod:Source 1.10.7-dev"
1:      "Tickrate_Enabler 1.4, ProdigySim"
---------------------

If it is loaded correctly and you're still not exceeding 30 fps, then check the cvars Spirit_12 mentioned. Also check the value of fps_max. I think it defaults to 30.

plugins_print wasn't doing anything so I could only assume that it was related to the sm plugin list. fps_max changing works just fine, however the updaterate and cmdrate changes, despite saying they were changed server side, do nothing. I can see now, that it was a typo, and that "plugin_print" is the correct console command. The only thing that shows up for me is metamod source. The same result happens on a PC that I have direct access to, to confirm the dll is installed. It just behaves as if the tickrate enabler is not there at all. Does the version of metamod source installed have anything to do with it?

For reference, I tried the exact settings listed in the post. and also with sm_cvar in front of them. also tried -tickrate 60 in the command line with matching cfg settings. The vdf and dll are in the addons folder like stated. I could have missed a crucial step, but I don't see it.

epzminion 09-05-2017 17:48

Re: L4D/L4D2 Tickrate Enabler
 
Quote:

Originally Posted by Skorpyo (Post 2546908)
plugins_print wasn't doing anything so I could only assume that it was related to the sm plugin list. fps_max changing works just fine, however the updaterate and cmdrate changes, despite saying they were changed server side, do nothing. I can see now, that it was a typo, and that "plugin_print" is the correct console command. The only thing that shows up for me is metamod source. The same result happens on a PC that I have direct access to, to confirm the dll is installed. It just behaves as if the tickrate enabler is not there at all. Does the version of metamod source installed have anything to do with it?

For reference, I tried the exact settings listed in the post. and also with sm_cvar in front of them. also tried -tickrate 60 in the command line with matching cfg settings. The vdf and dll are in the addons folder like stated. I could have missed a crucial step, but I don't see it.

The Metamod version should not matter. You don't actually even need to have MM:S installed to load it. Since it isn't being loaded, my guess is the files aren't installed in the correct locations.

Make sure you have tickrate_enabler_l4d1.vdf in your addons folder. If you placed it inside your metamod folder, move it out of there and put it back into the base addons folder where the metamod.vdf file is.

The way the vdf is set up, the tickrate_enabler.dll file must be in a subdirectory of addons named tickrate_enabler.

Double-check both of those files and see if it fixes the problem.

Skorpyo 09-05-2017 19:10

Re: L4D/L4D2 Tickrate Enabler
 
Quote:

Originally Posted by epzminion (Post 2546915)
The Metamod version should not matter. You don't actually even need to have MM:S installed to load it. Since it isn't being loaded, my guess is the files aren't installed in the correct locations.

Make sure you have tickrate_enabler_l4d1.vdf in your addons folder. If you placed it inside your metamod folder, move it out of there and put it back into the base addons folder where the metamod.vdf file is.

The way the vdf is set up, the tickrate_enabler.dll file must be in a subdirectory of addons named tickrate_enabler.

Double-check both of those files and see if it fixes the problem.

I'll update with results, but to be clear, is the l4d1 file needed for a L4D2 server, or for L4D1 servers only? I just assumed the separate versions were for separate games.

epzminion 09-05-2017 19:15

Re: L4D/L4D2 Tickrate Enabler
 
Quote:

Originally Posted by Skorpyo (Post 2546930)
I'll update with results, but to be clear, is the l4d1 file needed for a L4D2 server, or for L4D1 servers only? I just assumed the separate versions were for separate games.

Oh sorry, I assumed you were using L4D1. And no, you won't need any of the L4D1 files in L4D2.

In L4D2 you will need the tickrate_enabler.vdf from the "Package-l4d2" folder in the archive in your addons folder and the corresponding tickrate_enabler.dll in the addons/tickrate_enabler/ folder.


All times are GMT -4. The time now is 11:10.

Powered by vBulletin®
Copyright ©2000 - 2021, vBulletin Solutions, Inc.