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

[L4D2] ABM: A MultiSlots / SuperVersus Alternative (Updated: 11-13-17)


Post New Thread Reply   
 
Thread Tools Display Modes
NgBUCKWANGS
Senior Member
Join Date: Dec 2014
Old 01-05-2017 , 12:54   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #31

Quote:
Originally Posted by cravenge View Post
Hmmm.... It seems the duplicate bug still exists for me.

You see, I'm using Force Survivor Set plugin in my 9/11/13 players co-op servers to make all 8 survivors working and playable in all campaigns (except that Zoey has to be fake and have Rochelle as the base character).
I wish to avoid dependence on workarounds as much as possible. I don't use Windows enough to really figure this out. I play and test on Linux pretty much exclusively. But, check out AssignModel line 1166, AutoModelTimer line 1131 and OnSpawnHook line 483 for how I try to handle her if you're curious. If you can figure out a solution that's not intrusive, I'll listen

You can also friend me on Steam and maybe in real time we can talk about some issues.

With that said, on Windows and Linux, 8 bots gives me 1 unique character each. 16 bots is 2 clones each. 24 bots is 3 clones each. I get this 99% of the time. I really do want to say 100% but I am no longer surprised. If on a 24 man server, 3 Bill's left, the next 3 characters to enter will be Bill.

I didn't design my workaround with other plugins in mind but I do understand how some people have come to rely on them (Isn't it Valve that should really fix Zoey?). On L4D1 maps, you will get the real Zoey when it's her turn and on L4D2 maps, you'll get the model only (based on abm_zoey) but it's still 1 unique appearance in 8, 2 in 16, 3 in 24, etc on Windows and Linux.

I don't think I'll add any more workarounds for Zoey and ABM has reached a parity between servers at this point I'm pretty happy with and don't want to mess with anymore.

Thanks cravenge
NgBUCKWANGS is offline
cravenge
Veteran Member
Join Date: Nov 2015
Location: Chocolate Factory
Old 01-05-2017 , 18:17   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #32

Quote:
Originally Posted by NgBUCKWANGS View Post
I wish to avoid dependence on workarounds as much as possible. I don't use Windows enough to really figure this out. I play and test on Linux pretty much exclusively. But, check out AssignModel line 1166, AutoModelTimer line 1131 and OnSpawnHook line 483 for how I try to handle her if you're curious. If you can figure out a solution that's not intrusive, I'll listen
Wow, I just looked at the source and I was amazed at how you coded it in those lines unlike other plugins that just keep spawning bots without setting unique characters.

Seems to me, it needs a little rewrite for my problem to disappear.
cravenge is offline
NgBUCKWANGS
Senior Member
Join Date: Dec 2014
Old 01-05-2017 , 20:51   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #33

Quote:
Originally Posted by cravenge View Post
Wow, I just looked at the source and I was amazed at how you coded it in those lines unlike other plugins that just keep spawning bots without setting unique characters.

Seems to me, it needs a little rewrite for my problem to disappear.
Thanks cravenge, I appreciate the kind words
NgBUCKWANGS is offline
NgBUCKWANGS
Senior Member
Join Date: Dec 2014
Old 01-08-2017 , 01:26   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #34

Fellas, I am going to upload a new update here rather than on the main post. I haven't really put this through its paces but I feel it's important I get it out. It fixes one absolutely repeatable idle bug and has a few other methods that try and address seemingly random idle bugs (along with more fixes).

The bug that this should fix 100% is, if you make survivors duplicates (all Rochelles, all Zoeys) and have 2 humans in there. The first person to go idle automatically will go into spectator. This is absolutely solved. On a friends server which is quite busy with greater than 8 players almost constantly was at random times bit with people just being switched to spectator. All day yesterday this was a constant problem, all day today, no complaints about it (so far). I think I got it. If I didn't solve it, I hopefully set the code up to make fixing it easier.

Let me know what you think, thanks!
Attached Files
File Type: txt abm.txt (1.9 KB, 99 views)
File Type: smx abm.smx (30.5 KB, 117 views)
File Type: sp Get Plugin or Get Source (abm.sp - 211 views - 52.1 KB)
NgBUCKWANGS is offline
NgBUCKWANGS
Senior Member
Join Date: Dec 2014
Old 01-09-2017 , 00:28   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #35

For those of you that know how to compile from source, if you change line 542 in version 0.1.15 from

PHP Code:
if (IsClientValid(client)) { 
to

PHP Code:
if (targetTeam == && IsClientValid(client)) { 
You should see a massive performance improvement with specials (regardless of how they spawn). To test, do abm-mk -24 3 with any version prior to this tip and then do it again after. Tada, performance

Thanks to a good friend running ABM bugging me about how performance seemed bad and the clue being specials to blame. I looked into it and it turns out that targetTeam == 2 was the missing check that prevents equipping the special infected with a shotgun, bat and shot and etc. They don't need that stuff, sorry about that.

For those of you that would like to try a totally new way to deal with the plaguing spectating bug that also sets up a way forward for dealing with timeouts and other abnormal disconnects, I'll upload 0.1.16 here on this post. If 0.1.15 is experimental already, this one is the extreme alpha pup but I feel pretty confident with it. I also removed tanks from spawning with abm-mk because I've purposely made them random and random dictates if you want 24 specials, you'll get 24 tanks at some point.

Break it. Let me know which is better? 0.1.15 or 0.1.16?

Thanks
Attached Files
File Type: sp Get Plugin or Get Source (abm.sp - 298 views - 53.2 KB)
File Type: txt abm.txt (1.9 KB, 157 views)
File Type: smx abm.smx (30.9 KB, 152 views)
NgBUCKWANGS is offline
PepeZukas
Member
Join Date: Oct 2015
Location: Banana Republic
Old 01-10-2017 , 17:37   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #36

Does not work on Windows Server, admin menu options does nothing when selected.
Quote:
L 01/10/2017 - 204:51: [SM] Exception reported: invalid handle 3cc4 (error: 4)
L 01/10/2017 - 204:51: [SM] Blaming: abm.smx
L 01/10/2017 - 204:51: [SM] Call stack trace:
L 01/10/2017 - 204:51: [SM] [0] ArrayStack.PopString
L 01/10/2017 - 204:51: [SM] [1] Line 2035, /home/forums/content/files/2/5/6/5/9/1/159979.attach::GenericMenuHandler
PepeZukas is offline
NgBUCKWANGS
Senior Member
Join Date: Dec 2014
Old 01-10-2017 , 17:55   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #37

Quote:
Originally Posted by PepeZukas View Post
Does not work on Windows Server, admin menu options does nothing when selected.
Thanks PepeZukas, that should be fixed in 0.1.15 and up 0.1.15 and 0.1.16. I didn't update the main post with these but will with 0.1.17 very soon. Check out the post of 0.1.16 if you're using an earlier version and would like a massive performance boost. 0.1.16 has the boost and 0.1.17 will have plenty of nice fixes for spawning specials in campaign. I'll upload 0.1.17 in a bit and you can check it out.

Thanks again
NgBUCKWANGS is offline
NgBUCKWANGS
Senior Member
Join Date: Dec 2014
Old 01-10-2017 , 18:44   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #38

OK, I'm uploading 0.1.17 and the biggest changes here is a 751,234% performance boost with SI and something experimental that should never bite ya unless you ask for it (you've been warned). Admins can push themselves or others onto the SI team in cooperative. You or your mates will have proper ghost and when you die you will spawn as a ghost any time between 0 and 25 seconds. There is no timer to take over the next infected on purpose. You won't see climbable objects but you can play as SI from beginning to end.

This was inspired by my son and that fact that in a real Vs, you might have to put someone in on the other side. It was pretty easy considering that from the ground up I had all the teams in mind. Also, all my friends are quite fascinated with playing as specials and most of them never played a Vs. It's a way to get to know the SI without all the pressure, the "Bro we playing for booku dollas, the life of the planet, the universe, dark matter space and time". It''s actually a lot of fun. It reminds me of the old days when Vs was fun .

But the warning is simple. The server just might crash with humans on SI. It's the name of the game and no logic should ever get kicked in if a human doesn't go SI in cooperative. It'll be like it's not there but it's there if you want to experiment with it. I wouldn't recommend putting more than one person on SI in a campaign though just earlier and just for giggles I did the following
  • Started Dead Air
  • Put 3 humans on SI in coop
  • abm-mk -12 2 // made the survivors team size 12
  • ABM saw this and matched the SI team size (12 vs 12 cooperative)
  • played 3 maps and the server crashed on change to map 4

It was a lot of fun. If you try this, let me know what happens, if you crash it and know how to solve it, can you help me out? I hope you enjoy 0.1.17
Attached Files
File Type: smx abm.smx (31.8 KB, 94 views)
File Type: txt abm.txt (1.9 KB, 106 views)
File Type: sp Get Plugin or Get Source (abm.sp - 177 views - 55.0 KB)
NgBUCKWANGS is offline
NgBUCKWANGS
Senior Member
Join Date: Dec 2014
Old 01-11-2017 , 19:50   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #39

Hey fellas, in my tests to figure out the crashing of having "several" people on SI in campaign mode I've found a memory leak caused by the menus. I've fixed the memory leak in 0.1.18 but unfortunately that is not the issue that causes instability and crashes with several people on the SI side in campaign mode. I've had 2 successful games today with a single person on SI in coop but with more than a single person, things get flaky and it's unreliable.

I've yet to find the cause but I'm still looking and that last clue is something to go on.
Attached Files
File Type: sp Get Plugin or Get Source (abm.sp - 192 views - 54.1 KB)
File Type: txt abm.txt (1.9 KB, 98 views)
File Type: smx abm.smx (31.5 KB, 90 views)

Last edited by NgBUCKWANGS; 01-11-2017 at 20:09.
NgBUCKWANGS is offline
NgBUCKWANGS
Senior Member
Join Date: Dec 2014
Old 01-14-2017 , 12:21   Re: [L4D2] ABM: A L4D2 5+ Player Enhancement for Campaign
Reply With Quote #40

Fellas 0.1.19 has much better support for SI in cooperative. I've also got a clue about the crashes cooperative was experiencing and I believe (I'm not entirely sure but believe with a 90% certainty) L4DToolZ is to blame. The reason I believe this is because I've tried many times to do a 12vs12 in cooperative and it would almost always certainly crash but I've had sv_maxplayers set to 9.

There was always less than 9 real players but the server would crash like clockwork. Until one game I lowered the cooperative vs from 12vs12 to 9vs9 (by chance really) and we finished the campaign. When I upped it to 12vs12 again it crashed. It crashed for the next couple games until I actually raised sv_maxplayers to above 12. The moment I did this, I went 5 full games 12vs12 in cooperative.

The last game (Dead Air) crashed but it crashed the moment that falling plane hit the ground on map 5. Up to that point it was a 4 SI vs 1 survivor, 12 vs 12 overall. If you would like to try this all out for yourself here's what I did.
  • abm-mk -12 2 (-12 makes the survivors exactly size 12)
  • use the abm menu (say !abm) to switch your mates to infected
  • Every round your mates should spawn as SI ghost immediately

There are bugs and inconveniences though. Some of the inconveniences are, you will most likely not see ladders or have monster vision that can see in the dark. It can get really dark in places and you can find yourself stuck in others. Some of the bugs are you can either get stuck in spectator or spawn in a dummy (you can't attack and bots won't kill you). To solve all these cases which happen quite rarely but do happen, admins will have to reassign you back to team infected OR players on team infected can do "!takeover" to try and switch to another bot (must be alive).

Another bug is, no one may be assigned a tank by default (this happens quite often) but if one is available and you see it, you can do a !takeover and you should be able to actually ghost in as a tank.

Human survivors that are not admins can use !takeover to take over other survivors but cannot take over infected. If an admin pushes someone over to team infected, they'll then be able to take over other infected the same way it works for survivors.

This is all experimental but it all works quite better than I had expected. I wouldn't recommend 0.1.19 as stable (I have probably broken something somewhere) but it's as reliable as I could get it with all these features added.

If you give a try, let me know how it goes. Thanks!

Here are some cvars you might want to apply to server.cfg if you're putting humans on SI in coop.

Code:
sm_cvar director_always_allow_wanderers 1
sm_cvar director_intensity_relax_allow_wanderers_threshold 10.0
sm_cvar director_intensity_relax_allow_wanderers_threshold_expert 10.0
sm_cvar director_intensity_relax_allow_wanderers_threshold_hard 10.0
sm_cvar z_spawn_safety_range 200
sm_cvar tongue_miss_delay 3
sm_cvar tongue_hit_delay 15
sm_cvar tongue_dropping_to_ground_time 0.5
sm_cvar tongue_los_forgiveness_time 1.5
sm_cvar tongue_no_progress_choke_early_delay 1.0
sm_cvar z_pounce_stumble_radius 160
sm_cvar z_pounce_damage_interrupt 150
sm_cvar z_boomer_limit 32
sm_cvar z_charger_limit 32
sm_cvar z_hunter_limit 32
sm_cvar z_jockey_limit 32
sm_cvar z_minion_limit 32
sm_cvar z_smoker_limit 32
sm_cvar z_spitter_limit 32
sm_cvar z_max_stagger_duration 0.9
sm_cvar z_ghost_los_expected_progress 2000
sm_cvar tongue_choke_damage_amount 5
sm_cvar tongue_break_from_damage_amount 300
PS. With the cvars set as above a 12vs12 in cooperative feels like war.
Attached Files
File Type: sp Get Plugin or Get Source (abm.sp - 204 views - 54.6 KB)
File Type: txt abm.txt (1.9 KB, 95 views)
File Type: smx abm.smx (32.0 KB, 90 views)

Last edited by NgBUCKWANGS; 01-14-2017 at 12:26.
NgBUCKWANGS is offline
Reply



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 22:14.


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