Raised This Month: $12 Target: $400
 3% 

[L4D / L4D2] Anti-Rush System (Reloaded) | 1.82 [Final] : Jan. 30, 2019 |


Post New Thread Reply   
 
Thread Tools Display Modes
Author
cravenge
Veteran Member
Join Date: Nov 2015
Location: Chocolate Factory
Plugin ID:
5126
Plugin Version:
1.82
Plugin Category:
Gameplay
Plugin Game:
Left 4 Dead
Plugin Dependencies:
    Servers with this Plugin:
     
    Plugin Description:
    A quite useful system developed in order to prevent early round starts.
    Old 04-09-2016 , 23:00   [L4D / L4D2] Anti-Rush System (Reloaded) | 1.82 [Final] : Jan. 30, 2019 |
    Reply With Quote #1

    Description:

    Nowadays, players tend to rush all the way through maps while leaving their teammates behind and that is not good since the purpose of playing the game is completing every campaign through teamwork.

    As what the plugin title states, I have created a way to prevent this from happening. What this plugin simply does is locks the starting saferoom doors tight, rendering the player's "+use" command (E) useless.

    Since most of the campaigns (stocks and customs alike) do not have starting saferoom doors in the first map, this plugin creates solid entities that will act as a barricade or block in order for the survivors (and infected if Versus) prepare themselves.

    Due to an oversight, there are some players that unintentionally joins far more later than the others. The reasons may vary but the most common one is problem with internet connection. I assure you I have it covered.

    ConVars:
    • anti-rush_system-l4d(2)_version (Default: 1.82)
      |Version of the plugin.|
    • ars-l4d(2)_duration_1st [15.0 - 60.0] (Default: 30.0)
      |Time needed to elapse before the barricades are taken down or the saferoom doors are unlocked. *This is the default for non-competitive game-modes such as Coop and Realism.*|
    • ars-l4d(2)_duration_2nd [15.0 - 60.0] (Default: 30.0)
      |Time needed to elapse before the barricades are taken down or the saferoom doors are unlocked in the second round of Versus.|
    • anti-rush_system-l4d(2)_notify [0 / 1] (Default: 1)
      |Enable/disable notifications from the plugin? *By default, if it is enabled, survivors will be notified once the countdown reaches 5 seconds.*|

    Commands:

    (For development/testing purposes only)
    • sm_lock (Root access only)
      - Barricades the freed path or locks the saferoom door immediately.
    • sm_unlock (Root access only)
      - Clears the blocked path or unlocks the saferoom door immediately.

    (These are only applicable if there are still players loading.)
    • sm_ready
      - Changes the command user's state to "Ready".
    • sm_unready
      - Changes the command user's state to "Not Ready".
    • sm_allready (Admin/VIP accesses only)
      - Forces all survivors' state to change into "Ready".
    • sm_allunready (Admin/VIP accesses only)
      - Forces all survivors' state to change into "Not Ready".

    Bugs:
    1. int "GetConnectingCount()" includes bots while counting.
    2. int GetSaferoomDoor() begins to loop after a mission lost.
    3. Abnormal behavior of starting saferoom door locking procedure.
    4. Clients crashing to desktop due to the countdown timer still ongoing during map changes.
    5. Countdown going into a pause state due to new clients joining.

    Installation:
    1. Place the .smx file in SourceMod's plugin folder.

      (If reconfiguring, get the .sp file and place it in SourceMod's scripting folder. For the .inc file, place it in the include folder found inside.)
    2. Place the .cfg file in SourceMod's data folder.
    3. (Recommended) Get the .zip archive which contains the HL2 models. Unzip it and place the contents in Left 4 Dead (2)'s left4dead(2) folder.

      (Remember to let the clients download them on their first join, in case they do not have them yet, if you're running a dedicated server.)
    4. (Recommended) Get the Stripper configs from the other .zip archive. Unzip then place them in Stripper's maps folder.

    To Do:
    1. Add support for first maps of custom campaigns and starting saferoom doors with custom models. (1% done)
    2. Exclude AFK players from being counted as human survivors.

    Notes:
    • If you set the timer values to something like 25.3 or 43.5, it will get rounded up/down to 25 or 44 respectively.
    • Some of the models used for path blocks are from Half-Life 2. They can be downloaded below along with the plugin.
    • You do not need to configure Stripper any more. The plugin has a feature which can automatically detect starting saferoom doors.
    • In the case of players not knowing what is happening, they will be notified every 10 seconds that there is a way they can start the countdown immediately while others are still loading.

      If they failed to comply, no worries since there is an "invisible" counter for failed checks applied in the background. By default, the countdown will commence after 60 failed checks. Be warned, though, that the counter will reset every time one of the loading players fully joins the game.

    FAQ:
    1. The plugin does not work!
      - Kindly explain as to how the plugin failed to operate. I cannot help you if you do not provide any specific details.
    2. I just found a bug but I don't know how to report it.
      - It is simple. Please do not hesitate to post them here. If your report becomes unattended, you can PM me since I tend to be busy nowadays.
    3. This is just similar to [L4D] Loading Bug Removal / Door Lock.
      - Well, in a way, but I am not one to judge. You can freely choose whether to use either one of them, both, or neither.
    4. Some players are able to start the round early while the path is blocked. Why is that?
      - It is because Valve decided to f*** up and placed invisible entities that trigger the "Survivors have left the safe area..." state.
      - Do not worry for I have included some Stripper configs below to prevent that from happening.
    5. There are no path blocks in custom campaigns!
      - Like I said, be patient. There is no need to rush. It takes time to get the precise coordinates and using the right model.
      - You can speed up the progress by contributing which means you can provide the coordinates and the map name through PM and I will determine the appropriate model(s) to use as path block(s).
    6. Why do I see ERROR models in L4D?
      - It is because you need the latest L4D2 Addons Support for L4D, which can be found in any of the most recently updated ports of L4D2 maps in the GameMaps website.

    Changelog:

    09-20-2018
    X First release.

    09-25-2018
    + Harmless bugs fixed.
    + Anti-door block to prevent some well-known exploits.

    09-28-2018
    + Critical bugs fixed.
    + Proper checking for "m_iGlowType" netprop in the include file.
    + Proper checking for custom saferoom door models in the config file.

    01-21-2019
    + Special infected can now pass through the path blocks. Yay!
    + Stopped the countdown timer from continuing any further during map changes.

    01-22-2019
    + Optimized the path blocking code.
    + Added a new section named "IsSolid" in the config file to toggle which type of path block should be used.
    + All starting saferoom doors are now detected by the plugin again.

    01-23-2019
    + Fixed the player check of the countdown timer.
    + Added new section "NeedsRotate" in the config file to prevent the new path blocking procedure from bugging out. (Has no effect if "IsSolid" is set to 1).
    + Common infected blocking the starting saferoom doors when opening them now dies.
    + Improved saferoom door locking procedure. (Now it can be opened once to prevent an exploit.)
    + Fixed the loop being incorrect when checking the config file.

    01-25-2019
    + No more misleading notifications.
    + L4D version now available
    + Starting saferoom doors will now stay open after being opened.

    01-30-2019
    + Prevented system from bugging out when changing or restarting campaigns.
    X Final release.
    Attached Files
    File Type: zip ARS (Half-Life 2 Models).zip (294.3 KB, 650 views)
    File Type: zip ARS (Stripper CFGs).zip (2.2 KB, 628 views)
    File Type: inc glow.inc (3.0 KB, 702 views)
    File Type: cfg anti-rush_system-l4d.cfg (12.6 KB, 485 views)
    File Type: cfg anti-rush_system-l4d2.cfg (15.6 KB, 639 views)
    File Type: sp Get Plugin or Get Source (anti-rush_system-l4d.sp - 916 views - 25.0 KB)
    File Type: sp Get Plugin or Get Source (anti-rush_system-l4d2.sp - 665 views - 25.3 KB)
    File Type: smx anti-rush_system-l4d2.smx (17.7 KB, 723 views)

    Last edited by cravenge; 01-30-2019 at 08:11.
    cravenge is offline
    noxman
    Member
    Join Date: Jun 2012
    Old 04-11-2016 , 14:54   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #2

    Thanks for your work!

    But, i noticed 2 bugs:

    #1 Bots rushing out even timer is not over
    #2 I set the timer to 40. After ~ 20 seconds the timer will force to 0.
    noxman is offline
    cravenge
    Veteran Member
    Join Date: Nov 2015
    Location: Chocolate Factory
    Old 04-11-2016 , 23:27   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #3

    Quote:
    Originally Posted by noxman View Post
    Thanks for your work!

    But, i noticed 2 bugs:

    #1 Bots rushing out even timer is not over
    #2 I set the timer to 40. After ~ 20 seconds the timer will force to 0.
    Easy fix for that:
    #1 Set "sb_unstick" to 0 to prevent bots teleporting.
    #2 Hmmm, strange. I've never encountered this bug before. What game you play? L4D or L4D2?

    EDIT: Ahh, someone or the bots rushing out as you say must have left the saferoom while timer is ongoing. Yup, it does that when players leave.

    EDIT 2: Don't change timer if you're currently playing. It will mess up the plugin. Hmm, I'll plan to add HookConVarChange to prevent that.

    Last edited by cravenge; 04-11-2016 at 23:39.
    cravenge is offline
    noxman
    Member
    Join Date: Jun 2012
    Old 04-13-2016 , 11:25   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #4

    Quote:
    Originally Posted by cravenge View Post
    Easy fix for that:
    #1 Set "sb_unstick" to 0 to prevent bots teleporting.
    #2 Hmmm, strange. I've never encountered this bug before. What game you play? L4D or L4D2?

    EDIT: Ahh, someone or the bots rushing out as you say must have left the saferoom while timer is ongoing. Yup, it does that when players leave.

    EDIT 2: Don't change timer if you're currently playing. It will mess up the plugin. Hmm, I'll plan to add HookConVarChange to prevent that.
    Yes, with "sb_unstick 0" the problem #1 is solved. But, bots gets stuck at the middle of the map.
    So, its not a solution for me.

    Edit: Okay, i fixed it myself with "sb_move". But i found a other bug, the Roundtwo cooldown does not affect.

    Last edited by noxman; 04-13-2016 at 15:00.
    noxman is offline
    cravenge
    Veteran Member
    Join Date: Nov 2015
    Location: Chocolate Factory
    Old 04-13-2016 , 21:52   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #5

    Quote:
    Originally Posted by noxman View Post
    Yes, with "sb_unstick 0" the problem #1 is solved. But, bots gets stuck at the middle of the map.
    So, its not a solution for me.

    Edit: Okay, i fixed it myself with "sb_move". But i found a other bug, the Roundtwo cooldown does not affect.
    Hmmm, are you sure you're not running other plugins that conflicts with this one? It works fine for me. Please give me the list of all your plugins.

    Last edited by cravenge; 04-13-2016 at 21:53.
    cravenge is offline
    KasperH
    Senior Member
    Join Date: Apr 2016
    Location: Hungary
    Old 04-17-2016 , 06:29   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #6

    Can't get the plugin for l4d2. "Plugin failed to compile!"
    KasperH is offline
    cravenge
    Veteran Member
    Join Date: Nov 2015
    Location: Chocolate Factory
    Old 04-17-2016 , 07:48   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #7

    Quote:
    Originally Posted by KasperH View Post
    Can't get the plugin for l4d2. "Plugin failed to compile!"
    Oops, forgot that you must get the .sp file because it will fail as it requires glow.inc which I attached after posting it for the first time.
    cravenge is offline
    KasperH
    Senior Member
    Join Date: Apr 2016
    Location: Hungary
    Old 04-17-2016 , 09:35   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #8

    Quote:
    Originally Posted by cravenge View Post
    Oops, forgot that you must get the .sp file because it will fail as it requires glow.inc which I attached after posting it for the first time.
    Oh figured out now! Works great! You can forget that PM know. Thx!
    KasperH is offline
    noxman
    Member
    Join Date: Jun 2012
    Old 04-19-2016 , 18:46   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #9

    Quote:
    Originally Posted by cravenge View Post
    Hmmm, are you sure you're not running other plugins that conflicts with this one? It works fine for me. Please give me the list of all your plugins.
    I removed all other 3rd party plugins, but still doenst work.
    noxman is offline
    cravenge
    Veteran Member
    Join Date: Nov 2015
    Location: Chocolate Factory
    Old 04-19-2016 , 20:54   Re: [L4D/L4D2] Anti-Rush System
    Reply With Quote #10

    Quote:
    Originally Posted by noxman View Post
    I removed all other 3rd party plugins, but still doenst work.
    What game are you playing? I tried both of them because I bought two games and they work fine. Please write the errors you get so it can be fixed.

    Last edited by cravenge; 04-19-2016 at 20:55.
    cravenge is offline
    Reply


    Thread Tools
    Display Modes

    Posting Rules
    You may not post new threads
    You may not post replies
    You may not post attachments
    You may not edit your posts

    BB code is On
    Smilies are On
    [IMG] code is On
    HTML code is Off

    Forum Jump


    All times are GMT -4. The time now is 06:56.


    Powered by vBulletin®
    Copyright ©2000 - 2024, vBulletin Solutions, Inc.
    Theme made by Freecode