[Left 4 Dead 1, 2] Кооп на 16-20 игроков

Обсуждаем все, что относится к выделенным серверам *NIX (Unix, Linux) и Windows
Сообщение
Автор
Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#1921 Сообщение 06.09.2013, 12:36

Здравствуйте, а зачем?

Добавлено спустя 23 часа 52 минуты 19 секунд:
Проблема со сценариями финальной сцены спасения на картах второго лефта решается удалением скриптов из папки сервера: ..\left4dead2\left4dead2_dlc1\scripts\vscripts

Сегодня пытался тестировать скрипты, но при смене кампаний на сервере начала случаться странная ошибка:

Код: Выделить всё

Received wrong spawn count 3 when at 2
Commencing connection retry to public(172.16.0.3:27015)
failed processing
 Dumping messages for channel CLIENT(172.16.0.3:27015) 0x099975E0
Header bits 96, flags == 33
1 messages
0 -----------------------
net_SignonState: type( 7 ) group ( 13 ) size ( 68 bytes ), startbit 6 end bit 286
   net_SignonState: state 7, count 3
RAW(net_SignonState) start
net_SignonState  >>  �d�`....�u.. ........... ac64d360 01000000 e0759909 20008803 07000000 03000000   
net_SignonState  >>  ........................ 00000000 00000000 00000000 00000000 00000000 00000000   
net_SignonState  >>   c\. ........... c\.     20635c06 20000000 00000000 12000000 20635c06            
RAW(net_SignonState) end
Raw
PKT  >>  �*...+..!�.....��....... a22a0000 072b0000 21aa1400 090900c7 c1000000 00000000   
PKT  >>  ....�...��L[�..[.���[�.� 00000000 80040000 c0d84c5b cc171c5b 98dbdad8 5b9d1b9d   
PKT  >>  \.��                     5c1e8080                                                
Bad server address public("172.16.0.3:27015")
BinkOpen( d:\games.steam\steamapps\common\left 4 dead 2\left4dead2\media\l4d2_background01.bik )
Херово, чо.

Добавлено спустя 18 минут 21 секунду:
Нашел отличный ролик про "самопомощь" от Джорджа Карлина, земля ему пухом. Кто знаком с буржуйским рекомендую: https://www.youtube.com/watch?v=KTETZy18pwk
Никакого отношения к нацистским группам и направлениям не имею.

Аватара пользователя
leks19
Капитан
Капитан
Сообщения: 376
Зарегистрирован: 10.02.2011
Откуда: Беларусь
Благодарил (а): 12 раз
Поблагодарили: 15 раз
Контактная информация:

#1922 Сообщение 07.09.2013, 00:41

Jonny писал(а):Проблема со сценариями финальной сцены спасения на картах второго лефта решается удалением скриптов из папки сервера: ..\left4dead2\left4dead2_dlc1\scripts\vscripts
фикс финалки и замена плагинов l4d_superboss_en и l4d2_monsterbots (скачать)
Скрытый текст

Код: Выделить всё

hm_probability_superhunter 5.0
hm_probability_supersmoker 5.0
hm_probability_superboomer 5.0
hm_probability_superjockey 5.0
hm_probability_superspitter 5.0
hm_probability_supercharger 5.0
hm_probability_supertank 5.0
hm_HP_superhunter 5.0
hm_HP_supersmoker 5.0
hm_HP_superboomer 5.0
hm_HP_superjockey 5.0
hm_HP_superspitter 5.0
hm_HP_supercharger 5.0
hm_HP_supertank 1.0
hm_movemultiple_superhunter 1.0
hm_movemultiple_supersmoker 1.0
hm_movemultiple_superboomer 1.0
hm_movemultiple_superjockey 1.0
hm_movemultiple_superspitter 1.0
hm_movemultiple_supercharger 1.0
hm_movemultiple_supertank 1.0
hm_monsterbots_maxbots 5
hm_monsterbots_type 12
hm_monsterbots_on 1
hm_monsterbots_interval 13
hm_monsterbots_nodirector 0
Добавлено спустя 35 секунд:
emilio3 писал(а):Leks, jonny assembly has no Spanish translation, spitterbox huntingbox bridgebox. etc. His assembly leks if you have Spanish translation, and it works perfect, I just need harmodnostast.smx without the!zoey and !francis in linux working but not working windows server crachs could you delete these commands in hardmod.sp for windows, it would be very grateful, only need harmodnostast.smx. thanks
I proposed to add Jonny translation. He does not want to even if I'm willing to help him. So talk to him yourself. My ideas and versions are buried and will not be more developed.
Изображение

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#1923 Сообщение 07.09.2013, 08:08

Что то мне подсказывает, что эта твоя "замена" плагинов и есть те самые плагины, исходники которых ты слил в один файл, не забыв приписать при этом авторство себе. Причем что касается плагина monsterbots, то используется модифицированная мной версия 1.1.7j (о чем можно догадаться по букве j).
Никакого отношения к нацистским группам и направлениям не имею.

Аватара пользователя
leks19
Капитан
Капитан
Сообщения: 376
Зарегистрирован: 10.02.2011
Откуда: Беларусь
Благодарил (а): 12 раз
Поблагодарили: 15 раз
Контактная информация:

#1924 Сообщение 07.09.2013, 13:51

Jonny писал(а):Что то мне подсказывает, что эта твоя "замена" плагинов и есть те самые плагины, исходники которых ты слил в один файл, не забыв приписать при этом авторство себе. Причем что касается плагина monsterbots, то используется модифицированная мной версия 1.1.7j (о чем можно догадаться по букве j).
Да там используется часть кода monsterbots но не твой.
Вообще я делал его для своего сервера. Он работает лучше чем другие плагины, по этому я его и заменил в своих сборках.
Изображение

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#1925 Сообщение 07.09.2013, 14:35

В купе на нижней полке едет мужик. Ночь. Все спят. Вдруг мужик видит, что мимо него с верхней полки прямо на пол валится комками дерьмо. Мужик вскакивает, расталкивает пассажира на верхней полке:
- Товарищ! Товарищ! Проснитесь, вы обосрались!
- А я и не сплю...

Добавлено спустя 6 минут 7 секунд:
leks19 писал(а):Да там используется часть кода monsterbots но не твой.
Что касается этого твоего высказывания, то это тоже ложь.
Вот часть кода оригинального l4d2_monsterbots

Код: Выделить всё

public Action:TimerUpdate(Handle:timer)
{
	if (!IsServerProcessing()) return;

    	if (GetConVarInt(monsterbotson) == 1)
	{
		if (GetConVarBool(monsternodirector))
		{
			new anyclient = GetAnyClient();
			if (anyclient > 0)
			{
				DirectorCommand(anyclient, "director_stop");
			}
			SetConVarInt(FindConVar("director_no_bosses"), 1);
			SetConVarInt(FindConVar("director_no_specials"), 1);
			SetConVarInt(FindConVar("director_no_mobs"), 1);
			SetConVarInt(FindConVar("z_common_limit"), 0);
		}
		SetConVarInt(FindConVar("z_max_player_zombies"), 32);
		
		timertick += 1;
		if (timertick >= GetConVarInt(monsterinterval))
		{
			CountMonsters();
			if (nummonsters < GetConVarInt(monstermaxbots))
			{
				new bot = CreateFakeClient("Monster");
				if (bot > 0)
				{
					
					new monster = GetConVarInt(monstertype);
					switch(monster)
					{
						case 0:
						{
							new random = GetRandomInt(1,6);
							switch(random)
							{
								case 1:
								SpawnCommand(bot, "z_spawn", "smoker auto");
								case 2:
								SpawnCommand(bot, "z_spawn", "boomer auto");
								case 3:
								SpawnCommand(bot, "z_spawn", "hunter auto");
								case 4:
								SpawnCommand(bot, "z_spawn", "spitter auto");
								case 5:
								SpawnCommand(bot, "z_spawn", "jockey auto");
								case 6:
								SpawnCommand(bot, "z_spawn", "charger auto");
							}

						}
						case 1:
						SpawnCommand(bot, "z_spawn", "smoker auto");
						case 2:
						SpawnCommand(bot, "z_spawn", "boomer auto");
						case 3:
						SpawnCommand(bot, "z_spawn", "hunter auto");
						case 4:
						SpawnCommand(bot, "z_spawn", "spitter auto");
						case 5:
						SpawnCommand(bot, "z_spawn", "jockey auto");
						case 6:
						SpawnCommand(bot, "z_spawn", "charger auto");
						case 7:
						SpawnCommand(bot, "z_spawn", "witch auto");
						case 8:
						SpawnCommand(bot, "z_spawn", "tank auto");
					}
				}
			}
			timertick = 0;
		}
	}
}
Вот мои изменения:

Код: Выделить всё

public Action:TimerUpdate(Handle:timer)
{
	if (!IsServerProcessing())
	{
		return;
	}

	if (GetConVarBool(monsterbotson))
	{
		if (GetConVarBool(monsternodirector))
		{
			new anyclient = GetAnyClient();
			if (anyclient > 0)
			{
				DirectorCommand(anyclient, "director_stop");
			}
			SetConVarInt(FindConVar("director_no_bosses"), 1);
			SetConVarInt(FindConVar("director_no_specials"), 1);
			SetConVarInt(FindConVar("director_no_mobs"), 1);
		}
		SetConVarInt(FindConVar("z_max_player_zombies"), 32);
		
		timertick += 1;
		if (timertick >= GetConVarInt(monsterinterval))
		{
			if (CountMonsters() < GetConVarInt(monstermaxbots))
			{
				new monster = GetConVarInt(monstertype);
				switch(monster)
				{
					case 0:
					{
						new bot = CreateFakeClient("Monster");
						if (bot)
						{
							new random = GetRandomInt(1, 6);
							switch(random)
							{
								case 1:
								SpawnCommand(bot, "z_spawn_old", "smoker auto");
								case 2:
								SpawnCommand(bot, "z_spawn_old", "boomer auto");
								case 3:
								SpawnCommand(bot, "z_spawn_old", "hunter auto");
								case 4:
								SpawnCommand(bot, "z_spawn_old", "spitter auto");
								case 5:
								SpawnCommand(bot, "z_spawn_old", "jockey auto");
								case 6:
								SpawnCommand(bot, "z_spawn_old", "charger auto");
							}
						}
					}
					case 1:
					SpawnCommand(GetAnyClient(), "z_spawn_old", "smoker auto");
					case 2:
					SpawnCommand(GetAnyClient(), "z_spawn_old", "boomer auto");
					case 3:
					SpawnCommand(GetAnyClient(), "z_spawn_old", "hunter auto");
					case 4:
					SpawnCommand(GetAnyClient(), "z_spawn_old", "spitter auto");
					case 5:
					SpawnCommand(GetAnyClient(), "z_spawn_old", "jockey auto");
					case 6:
					SpawnCommand(GetAnyClient(), "z_spawn_old", "charger auto");
					case 7:
					SpawnCommand(GetAnyClient(), "z_spawn_old", "witch auto");
					case 8:
					SpawnCommand(GetAnyClient(), "z_spawn_old", "tank auto");
					case 9:
					{
						new bot = CreateFakeClient("Monster");
						if (bot)
						{
							new random = GetRandomInt(1, 3);
							switch(random)
							{
								case 1:
								SpawnCommand(bot, "z_spawn_old", "smoker auto");
								case 2:
								SpawnCommand(bot, "z_spawn_old", "boomer auto");
								case 3:
								SpawnCommand(bot, "z_spawn_old", "hunter auto");
							}
						}
					}
					case 10:
					{
						new bot = CreateFakeClient("Monster");
						if (bot)
						{
							new random = GetRandomInt(1, 13);
							switch(random)
							{
								case 1, 2, 3:
								SpawnCommand(bot, "z_spawn_old", "boomer auto");
								case 4, 5:
								SpawnCommand(bot, "z_spawn_old", "smoker auto");
								case 6, 7:
								SpawnCommand(bot, "z_spawn_old", "hunter auto");
								case 8, 9, 10:
								SpawnCommand(bot, "z_spawn_old", "spitter auto");
								case 11, 12:
								SpawnCommand(bot, "z_spawn_old", "jockey auto");
								case 13:
								SpawnCommand(bot, "z_spawn_old", "charger auto");
							}
						}
					}
					case 11:
					{
						new bot = CreateFakeClient("Monster");
						if (bot)
						{
							new random = GetRandomInt(1, 16);
							switch(random)
							{
								case 1, 2, 3, 4:
								SpawnCommand(bot, "z_spawn_old", "boomer auto");
								case 5, 6, 7:
								SpawnCommand(bot, "z_spawn_old", "smoker auto");
								case 8, 9, 10:
								SpawnCommand(bot, "z_spawn_old", "hunter auto");
								case 11, 12, 13:
								SpawnCommand(bot, "z_spawn_old", "spitter auto");
								case 14, 15:
								SpawnCommand(bot, "z_spawn_old", "jockey auto");
								case 16:
								SpawnCommand(bot, "z_spawn_old", "charger auto");
							}
						}
					}
					case 12:
					{
						new SpawnLimits[10];
						new allowed_monsters = 0;
						SpawnLimits[0] = 0;
						SpawnLimits[ZC_SMOKER] = GetConVarInt(FindConVar("z_smoker_limit"));
						SpawnLimits[ZC_BOOMER] = GetConVarInt(FindConVar("z_boomer_limit"));
						SpawnLimits[ZC_HUNTER] = GetConVarInt(FindConVar("z_hunter_limit"));
						SpawnLimits[ZC_SPITTER] = GetConVarInt(FindConVar("z_spitter_limit"));
						SpawnLimits[ZC_JOCKEY] = GetConVarInt(FindConVar("z_jockey_limit"));
						SpawnLimits[ZC_CHARGER] = GetConVarInt(FindConVar("z_charger_limit"));
						for (new i = 1; i <= L4D_MAXPLAYERS; i++) SpawnLimits[GetClientZC(i)]--;
						for (new i = 1; i < 7; i++)
						{
							if (SpawnLimits[i] < 1) SpawnLimits[i] = 0;
							else allowed_monsters += SpawnLimits[i];
						}
						if (allowed_monsters)
						{
							new lottery = GetRandomInt(1, allowed_monsters);
							new ZOMBIE_WINNER = 0;
							while (lottery > 0)
							{
								ZOMBIE_WINNER++;
								if (lottery >= SpawnLimits[ZOMBIE_WINNER]) lottery -= SpawnLimits[ZOMBIE_WINNER];
								else lottery = 0;
							}
//							PrintToChatAll("ZOMBIE_WINNER = %d", ZOMBIE_WINNER);
							new bot = CreateFakeClient("Monster");
							if (bot > 0) switch (ZOMBIE_WINNER)
							{
								case ZC_SMOKER: SpawnCommand(bot, "z_spawn_old", "smoker auto");
								case ZC_BOOMER: SpawnCommand(bot, "z_spawn_old", "boomer auto");
								case ZC_HUNTER: SpawnCommand(bot, "z_spawn_old", "hunter auto");
								case ZC_SPITTER: SpawnCommand(bot, "z_spawn_old", "spitter auto");
								case ZC_JOCKEY: SpawnCommand(bot, "z_spawn_old", "jockey auto");
								case ZC_CHARGER: SpawnCommand(bot, "z_spawn_old", "charger auto");
							}
//							else PrintToServer("Failed to create fake client");
						}
//						else PrintToChatAll("allowed_monsters = false");
					}
				}
			}
//			else PrintToChatAll("Max zombies reached");
			timertick = 0;
		}
	}
}
Вот якобы твой код (ты же автор?), который был взят вовсе не из моей редакции, а видимо просто совпал случайным образом:

Код: Выделить всё

public Action:TimerUpdate(Handle:timer)
{
	if (!IsServerProcessing())
	{
		return Action:0;
	}
	if (GetConVarBool(monsterbotson))
	{
		if (GetConVarBool(monsternodirector))
		{
			new anyclient = GetAnyClient();
			if (0 < anyclient)
			{
				DirectorCommand(anyclient, "director_stop");
			}
			SetConVarInt(FindConVar("director_no_bosses"), 1, false, false);
			SetConVarInt(FindConVar("director_no_specials"), 1, false, false);
			SetConVarInt(FindConVar("director_no_mobs"), 1, false, false);
		}
		SetConVarInt(FindConVar("z_max_player_zombies"), 32, false, false);
		timertick = timertick + 1;
		if (GetConVarInt(monsterinterval) <= timertick)
		{
			if (GetConVarInt(monstermaxbots) > CountMonsters())
			{
				new monster = GetConVarInt(monstertype);
				switch (monster)
				{
					case 0:
					{
						new bot = CreateFakeClient("Monster");
						if (bot)
						{
							new random = GetRandomInt(1, 6);
							switch (random)
							{
								case 1:
								{
									SpawnCommand(bot, "z_spawn_old", "smoker auto");
								}
								case 2:
								{
									SpawnCommand(bot, "z_spawn_old", "boomer auto");
								}
								case 3:
								{
									SpawnCommand(bot, "z_spawn_old", "hunter auto");
								}
								case 4:
								{
									SpawnCommand(bot, "z_spawn_old", "spitter auto");
								}
								case 5:
								{
									SpawnCommand(bot, "z_spawn_old", "jockey auto");
								}
								case 6:
								{
									SpawnCommand(bot, "z_spawn_old", "charger auto");
								}
								default:
								{
								}
							}
						}
					}
					case 1:
					{
						SpawnCommand(GetAnyClient(), "z_spawn_old", "smoker auto");
					}
					case 2:
					{
						SpawnCommand(GetAnyClient(), "z_spawn_old", "boomer auto");
					}
					case 3:
					{
						SpawnCommand(GetAnyClient(), "z_spawn_old", "hunter auto");
					}
					case 4:
					{
						SpawnCommand(GetAnyClient(), "z_spawn_old", "spitter auto");
					}
					case 5:
					{
						SpawnCommand(GetAnyClient(), "z_spawn_old", "jockey auto");
					}
					case 6:
					{
						SpawnCommand(GetAnyClient(), "z_spawn_old", "charger auto");
					}
					case 7:
					{
						SpawnCommand(GetAnyClient(), "z_spawn_old", "witch auto");
					}
					case 8:
					{
						SpawnCommand(GetAnyClient(), "z_spawn_old", "tank auto");
					}
					case 9:
					{
						new bot = CreateFakeClient("Monster");
						if (bot)
						{
							new random = GetRandomInt(1, 3);
							switch (random)
							{
								case 1:
								{
									SpawnCommand(bot, "z_spawn_old", "smoker auto");
								}
								case 2:
								{
									SpawnCommand(bot, "z_spawn_old", "boomer auto");
								}
								case 3:
								{
									SpawnCommand(bot, "z_spawn_old", "hunter auto");
								}
								default:
								{
								}
							}
						}
					}
					case 10:
					{
						new bot = CreateFakeClient("Monster");
						if (bot)
						{
							new random = GetRandomInt(1, 13);
							switch (random)
							{
								case 1, 2, 3:
								{
									SpawnCommand(bot, "z_spawn_old", "boomer auto");
								}
								case 4, 5:
								{
									SpawnCommand(bot, "z_spawn_old", "smoker auto");
								}
								case 6, 7:
								{
									SpawnCommand(bot, "z_spawn_old", "hunter auto");
								}
								case 8, 9, 10:
								{
									SpawnCommand(bot, "z_spawn_old", "spitter auto");
								}
								case 11, 12:
								{
									SpawnCommand(bot, "z_spawn_old", "jockey auto");
								}
								case 13:
								{
									SpawnCommand(bot, "z_spawn_old", "charger auto");
								}
								default:
								{
								}
							}
						}
					}
					case 11:
					{
						new bot = CreateFakeClient("Monster");
						if (bot)
						{
							new random = GetRandomInt(1, 16);
							switch (random)
							{
								case 1, 2, 3, 4:
								{
									SpawnCommand(bot, "z_spawn_old", "boomer auto");
								}
								case 5, 6, 7:
								{
									SpawnCommand(bot, "z_spawn_old", "smoker auto");
								}
								case 8, 9, 10:
								{
									SpawnCommand(bot, "z_spawn_old", "hunter auto");
								}
								case 11, 12, 13:
								{
									SpawnCommand(bot, "z_spawn_old", "spitter auto");
								}
								case 14, 15:
								{
									SpawnCommand(bot, "z_spawn_old", "jockey auto");
								}
								case 16:
								{
									SpawnCommand(bot, "z_spawn_old", "charger auto");
								}
								default:
								{
								}
							}
						}
					}
					case 12:
					{
						new SpawnLimits[10];
						new allowed_monsters;
						SpawnLimits[0] = 0;
						SpawnLimits[1] = GetConVarInt(FindConVar("z_smoker_limit"));
						SpawnLimits[2] = GetConVarInt(FindConVar("z_boomer_limit"));
						SpawnLimits[3] = GetConVarInt(FindConVar("z_hunter_limit"));
						SpawnLimits[4] = GetConVarInt(FindConVar("z_spitter_limit"));
						SpawnLimits[5] = GetConVarInt(FindConVar("z_jockey_limit"));
						SpawnLimits[6] = GetConVarInt(FindConVar("z_charger_limit"));
						new i = 1;
						while (i <= 32)
						{
							SpawnLimits[GetClientZC(i)]--;
							i++;
						}
						new i = 1;
						while (i < 7)
						{
							if (SpawnLimits[i] < 1)
							{
								SpawnLimits[i] = 0;
								i++;
							}
							else
							{
								allowed_monsters = SpawnLimits[i][allowed_monsters];
								i++;
							}
							i++;
						}
						if (allowed_monsters)
						{
							new lottery = GetRandomInt(1, allowed_monsters);
							new ZOMBIE_WINNER;
							while (0 < lottery)
							{
								ZOMBIE_WINNER++;
								if (SpawnLimits[ZOMBIE_WINNER] <= lottery)
								{
									lottery -= SpawnLimits[ZOMBIE_WINNER];
								}
								else
								{
									lottery = 0;
								}
							}
							new bot = CreateFakeClient("Monster");
							if (0 < bot)
							{
								switch (ZOMBIE_WINNER)
								{
									case 1:
									{
										SpawnCommand(bot, "z_spawn_old", "smoker auto");
									}
									case 2:
									{
										SpawnCommand(bot, "z_spawn_old", "boomer auto");
									}
									case 3:
									{
										SpawnCommand(bot, "z_spawn_old", "hunter auto");
									}
									case 4:
									{
										SpawnCommand(bot, "z_spawn_old", "spitter auto");
									}
									case 5:
									{
										SpawnCommand(bot, "z_spawn_old", "jockey auto");
									}
									case 6:
									{
										SpawnCommand(bot, "z_spawn_old", "charger auto");
									}
									default:
									{
									}
								}
							}
						}
					}
					default:
					{
					}
				}
			}
			timertick = 0;
		}
	}
	return Action:0;
}
Добавлено спустя 6 минут 17 секунд:
Вообще я делал его для своего сервера.
Вообще если бы ты взял пару строк, а остальные 99% кода переделал, то да, я бы с тобой согласился - ты делал.
А ты не "делал", ты копи-пастил.
Никакого отношения к нацистским группам и направлениям не имею.

Аватара пользователя
leks19
Капитан
Капитан
Сообщения: 376
Зарегистрирован: 10.02.2011
Откуда: Беларусь
Благодарил (а): 12 раз
Поблагодарили: 15 раз
Контактная информация:

#1926 Сообщение 07.09.2013, 15:46

Jonny писал(а):В купе на нижней полке едет мужик. Ночь. Все спят. Вдруг мужик видит, что мимо него с верхней полки прямо на пол валится комками дерьмо. Мужик вскакивает, расталкивает пассажира на верхней полке:
- Товарищ! Товарищ! Проснитесь, вы обосрались!
- А я и не сплю...
спец. для тебя Jonny
Ну раз на то пошло, то у меня финал работает нормально что уже заставляет задуматься какие были там изминения. А если хочешь дальше спорить по этому поводу то вот тебе [email protected] пиши туда всё что думаешь и хочешь. Почитаю потом на досуге.
Изображение

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#1927 Сообщение 08.09.2013, 09:13

чо?

Добавлено спустя 17 часов 9 минут 57 секунд:
Исправления в работе плагина ACS_Classic (игроков не должно кикать при смене карты)
Исправления в работе хардмода (он по прежнему сохранял оружие там, где не надо. я классный, я знаю это)
Исправление в работе плагина l4d2_loot (должно работать нормально на абсолютно всех картах, а не только на стандартных и известных ему; речь идет о переключении режима выпадения вещей при прохождении карты)

L4D2_Coop-16_08.09.2013_windows.zip (4.8 МБ)
L4D2_Coop-16_08.09.2013_linux.zip (5.8 МБ)

Добавлено спустя 2 минуты 49 секунд:
Забыл. Еще изменение в сборке - добавлен плагин, блокирующий закрытие двери убежища в начале карты.
Никакого отношения к нацистским группам и направлениям не имею.

Аватара пользователя
SkazCS
Сержант
Сержант
Сообщения: 92
Зарегистрирован: 08.12.2011
Благодарил (а): 39 раз
Контактная информация:

#1928 Сообщение 08.09.2013, 10:11

leks19 писал(а):фикс финалки и замена плагинов l4d_superboss_en и l4d2_monsterbots (скачать)
Кстати, не работает твой плагин( пробовал с последней версией Jonny
Изображение

Аватара пользователя
Slaven555
Нович0к
Нович0к
Сообщения: 27
Зарегистрирован: 09.01.2013
Контактная информация:

#1929 Сообщение 08.09.2013, 11:09

Ну, не знаю. У меня этот плагин работает. Стало еще веселее играть а финалка и без него норм работала.
Изображение

theCHAMP
Сержант
Сержант
Сообщения: 72
Зарегистрирован: 15.12.2011

#1930 Сообщение 08.09.2013, 13:18

Jonny писал(а):Исправление в работе плагина l4d2_loot
Ну только положить етот ИСПРАВЛЕННЫЙ в сборку забыл ... а так ниче все ))))
Jonny писал(а):Исправления в работе плагина ACS_Classic
не пробую уже даже етот плагин....он как не менял с Колд стрима на вымерший центр у меня, так и не меняет...просто зависает серв и все.....ну может что и изменилось....испытаю
А и еще --- Jonny , когда уже заменишь l4d2_events на рабочий ??? а то он уже очень давно не работает как надо и не подгружает нужные события !!! Пользуюсь Евентом исправленный Лексом помоему ,и Андрей выкладывал вроде если правильно помню...

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#1931 Сообщение 08.09.2013, 13:37

Точно :)
l4d2_loot.smx (23.0 КБ)

Добавлено спустя 1 минуту:
Что именно events не подгружает?
Никакого отношения к нацистским группам и направлениям не имею.

andreiii
Лейтенант
Лейтенант
Сообщения: 228
Зарегистрирован: 24.11.2011
Благодарил (а): 1 раз
Поблагодарили: 8 раз

#1932 Сообщение 08.09.2013, 14:39

Jonny писал(а):Что именно events не подгружает?
map_start.cfg не подгружается, давно-давно писал об этом.

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#1933 Сообщение 08.09.2013, 14:45

Там нет ошибки, он работает как и должен.
если стоит опция l4d2_advanced_mode 2, то конфиг подгружаться не будет, так как онлайна на сервере 0
Чтобы подгружался нужно изменить на 1
Никакого отношения к нацистским группам и направлениям не имею.

Аватара пользователя
Slaven555
Нович0к
Нович0к
Сообщения: 27
Зарегистрирован: 09.01.2013
Контактная информация:

#1934 Сообщение 08.09.2013, 19:59

У меня events стоит от 22.07.12 и все вроде грузит.
Изображение

Аватара пользователя
leks19
Капитан
Капитан
Сообщения: 376
Зарегистрирован: 10.02.2011
Откуда: Беларусь
Благодарил (а): 12 раз
Поблагодарили: 15 раз
Контактная информация:

#1935 Сообщение 08.09.2013, 20:13

Jonny твоя работа?

Код: Выделить всё

dosp_attacksDoSProtect logged attacks:
 Attacker IP Packets Last packet
--------------------------------
 87.251.157.238 192645 2013.09.08 15:15:48
--------------------------------
Изображение

Ответить Вложения 3