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

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

#1816 Сообщение 11.08.2013, 00:50

Говорил что если кто-то начнёт делится изменениями и то последую примеру? Я так этого и не дождался.
Хозяин барин.
Так почему я должен выкладывать исходники исправлений для других?
Наверное потому, что ты сам пользуешься тем, что выложил кто то другой. Я, например. :)
Никакого отношения к нацистским группам и направлениям не имею.

Аватара пользователя
NiGHt-LEshiY
Полковник
Полковник
Сообщения: 10258
Зарегистрирован: 13.06.2008
Откуда: Россия
Благодарил (а): 752 раза
Поблагодарили: 2667 раз
Контактная информация:

#1817 Сообщение 11.08.2013, 14:28

Jonny писал(а):3. Буду ли я выкладывать все в сеть? Нет. Этому есть несколько причин. Во-первых поддержка мода требует значительно больше времени, чем просто его разработка. Мне не придется писать действие всех команд и переменных, не придется ничего никому объяснять. Во-вторых при всем разнообразии серверов - лично мне негде играть. С моей точки зрения на всех существующих серверах сделана какая нибудь невыносимая хрень, которая меня не устраивает. Все эти ползания, надписи кто кинул блевоту, переносные туррели и прочее дерьмо снижающее сложность игры - оно не стоит того, чтобы я поддерживал мод для третьей части публично. Я заинтересован в действительно сложной игре. А хардмод превратился в изимод. Можете официально его так и назвать, я возражать не стану :)
Можно выложить без поддержки. Это ведь ни к чему не обязывает, не диктует необходимость помогать всем и вся.
Jonny писал(а):4. Открытие исходного кода не привело к значительным улучшениям. На своем опыте могу сказать, что как мне приходилось писать все самому - так и приходится. В этом направлении совершенно серьезно говорю - для хардмода никто не сделал ничего. Все что делается - делается для себя, все закрыто.
Но к ухудшениям тоже не привело? Вероятно просто в этой части сообщества меньше кодеров и больше тех, кто просто пилит свои выделенные игровые серверы. Но вообще со стороны видно, что тема довольно популярна, может просто не повезло :)
Кодекс поведения участников сообщества — обязательно к прочтению.
Просьба присылать сообщения об ошибках в ЛС.

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

#1818 Сообщение 11.08.2013, 14:59

NiGHt-LEshiY писал(а):Но к ухудшениям тоже не привело?
Кто знает как бы оно было сейчас :)

Если бы сервер умел сам (достаточно хорошо) подстраиваться под средний уровень текущей группы игроков сервера - была бы идеальная ситуация. И у меня есть мысли на этот счет, которые возможно я реализую в будущем.

А так, даже если я жестко задам рамки установок мода это совершенно не гарантирует появления плагинов, так или иначе изменяющих настройки игры, что опять же приведет к куче серверов, где игроки ПРОСТО ИДУТ ИЗ ТОЧКИ А В ТОЧКУ Б. И всё! Я это собственными глазами видел! Они просто шли как стадо, а зараженные наносили им совершенно символический урон.

Наверное лучше все таки исключительно мои сервера, сами подстраивающие сложность в достаточно широких пределах (а не как сейчас), чем куча серверов непонятного назначения, коих сейчас большинство.
Последний раз редактировалось Jonny 11.08.2013, 15:09, всего редактировалось 1 раз.
Никакого отношения к нацистским группам и направлениям не имею.

Аватара пользователя
Paster
Сержант
Сержант
Сообщения: 62
Зарегистрирован: 22.12.2008
Благодарил (а): 9 раз

#1819 Сообщение 11.08.2013, 15:04

Leks
Содержание crash_log.log

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

L 08/10/2013 - 20:58:43: [fix_c6m3.smx] [GS] Skip Events
и т.д.
Может действительно, как писал выше denzel515 идет краш сервера.
Передам сервер L4d2 для администрирования:
- подробнее в скайп...

denzel515
Лейтенант
Лейтенант
Сообщения: 143
Зарегистрирован: 01.11.2007
Благодарил (а): 3 раза
Поблагодарили: 2 раза

#1820 Сообщение 12.08.2013, 06:08

Jonny писал(а):Прикольно. А как такое под лефт сделать?
Пытался сделать как здесь, но тест провалился.

Добавлено спустя 12 часов 21 минуту 40 секунд:
Ещё один баг, зайти в папку \cfg\sourcemod\ и удалить там l4dcsm.cfg и l4d2csm.cfg. Перезапустить сервак чтобы l4dcsm.cfg создался заного, иначе при выборе модели через !csm из самых нижних, у вас будет падать сервак!
Изображение

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

#1821 Сообщение 12.08.2013, 08:33

Я так понимаю, в новых версиях компилятор научился выявлять утечки памяти. Отличная штука, но теперь придется переписать работу статистики. И вероятно работу с базой игроков - тоже. :)

На текущий момент я не рекомендую использовать версию хардмода с включенной статистикой. Всем, кто использует 289-й хардмод, я советую попробовать перейти на мою "рабочую бету": hardmod_nostats.smx. На момент написания я насчитал семь таких серверов.


А вот решение одной из проблем хардкорного режима игры.

Скрипт: уборщик
Автоматическая очистка сервера от избыточных предметов. Такой своеобразный TTL предмета, по истечении которого, если предмет не был использован игроком, он удаляется.
Сервер способен работать при 200-300 предметах на карте одномоментно, а в случаях если вещи сильно разбросаны по карте, это число может вырасти до 500. При 700-1000 предметах сервер практически полностью погружался в вычисления, что влияло на работу скрипта очистки. В случае продолжения бесконечного спавна предметов сервер умирает. На нагрузку влияет математика физики - если вещи касаются друг друга, это заставляет производить тяжелые вычисления.

На данном видео используется конфиг хардкор на сервере хардмода, опция hm_loot_mod была выставлена на 150. На практике с каждого убитого босса выпадало примерно 60-70 предметов. Без автоматической очистки от лишних вещей при таком режиме игры, сервер захлебнется в вычислениях в течении первой минуты.
Никакого отношения к нацистским группам и направлениям не имею.

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

#1822 Сообщение 12.08.2013, 11:02

NiGHt-LEshiY писал(а):Но к ухудшениям тоже не привело? Вероятно просто в этой части сообщества меньше кодеров и больше тех, кто просто пилит свои выделенные игровые серверы. Но вообще со стороны видно, что тема довольно популярна, может просто не повезло :)
+1
Jonny писал(а):Я так понимаю, в новых версиях компилятор научился выявлять утечки памяти. Отличная штука, но теперь придется переписать работу статистики. И вероятно работу с базой игроков - тоже. :)

На текущий момент я не рекомендую использовать версию хардмода с включенной статистикой. Всем, кто использует 289-й хардмод, я советую попробовать перейти на мою "рабочую бету": hardmod_nostats.smx. На момент написания я насчитал семь таких серверов.
Я как-то разницы не заметил. Хотя и использую стату. Возможно проблемы только на win? учитывая что жалобы в основном только от win.

вот изменения что было в файле coop_votes.inc

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

new Handle:hm_blockvote_kick;
new Handle:hm_blockvote_map;
new Handle:hm_allowvote_map_players;
new Handle:hm_allowvote_map_fails;
new Handle:hm_blockvote_lobby;
new Handle:hm_blockvote_restart;
new Handle:hm_blockvote_difficulty;
new Handle:hm_blockvote_difference;
new Handle:hm_allowvote_mission;

new String:CV_FileName[MAX_FILE_NAME_LENGTH];

public CVotesOnPluginStart()
{
	Version += 12;
	RegAdminCmd("sm_veto", Command_Veto, ADMFLAG_ROOT, "sm_veto");
	RegConsoleCmd("sm_kicktarget", Command_KickTarget);
	RegConsoleCmd("sm_city17", Command_city17l4d2);
	RegConsoleCmd("sm_warcelona", Command_warcelona);
	RegConsoleCmd("callvote", Callvote_Handler);
	hm_blockvote_kick = CreateConVar("hm_blockvote_kick", "1", "", FCVAR_PLUGIN);
	hm_blockvote_map = CreateConVar("hm_blockvote_map", "1", "", FCVAR_PLUGIN);
	hm_allowvote_map_players = CreateConVar("hm_allowvote_map_players", "6", "", FCVAR_PLUGIN);
	hm_allowvote_map_fails = CreateConVar("hm_allowvote_map_fails", "5", "", FCVAR_PLUGIN);
	hm_blockvote_lobby = CreateConVar("hm_blockvote_lobby", "1", "", FCVAR_PLUGIN);
	hm_blockvote_restart = CreateConVar("hm_blockvote_restart", "1", "", FCVAR_PLUGIN);
	hm_blockvote_difficulty = CreateConVar("hm_blockvote_difficulty", "1", "", FCVAR_PLUGIN);
	hm_blockvote_difference = CreateConVar("hm_blockvote_difference", "0", "", FCVAR_PLUGIN);
	hm_allowvote_mission = CreateConVar("hm_allowvote_mission", "20", "", FCVAR_PLUGIN);
	BuildPath(Path_SM, CV_FileName, sizeof(CV_FileName), "hardmod/forbiddenmaps.txt");
}

IsMissionAllowed(String:map_name[MAX_MAP_NAME_LENGTH])
{
	Log("coop_votes.inc / IsMissionAllowed() / 1", 4);
	new result = 1;
	new Handle:file = OpenFile(CV_FileName, "r");
	if (file == INVALID_HANDLE)
	{
		Log("coop_votes.inc / IsMissionAllowed() / file == INVALID_HANDLE", 1);
		return result;
	}
	
	FileSeek (file, 0, SEEK_SET);
	new String:CV_StoredMap[MAX_MAP_NAME_LENGTH];
	while (!IsEndOfFile(file))
	{
		// we read the line
		if (ReadFileLine(file, CV_StoredMap, sizeof(CV_StoredMap)))
		{
			TrimString(CV_StoredMap);
			if (StrEqual(map_name, CV_StoredMap, false))
			{
				result = 0;
				break;
			}
		}
		else
		{
			break;
		}
	}
	CloseHandle(file);
	return result;
}

public Action:Command_Veto(client, args)
{
	for (new i = 1; i <= L4D_MAXPLAYERS; i++)
	{
		if (IsValidEntity(i) && IsClientInGame(i) && !IsFakeClient(i))
		{
			FakeClientCommand(i, "Vote No");
		}
	}
}

public Action:Command_KickTarget(client, args)
{
	if (client < 1)
	{
		return Plugin_Handled;
	}
	if (GetClientTeam(client) != TEAM_SURVIVORS)
	{
		return Plugin_Handled;
	}
	new target = GetClientAimTarget(client, false);
	if (!IsValidClient(target))
	{
		return Plugin_Handled;
	}
	if (GetClientTeam(target) != TEAM_SURVIVORS)
	{
		return Plugin_Handled;
	}
	FakeClientCommand(client, "callvote kick %d", GetClientUserId(target));
	return Plugin_Continue;
}

public Action:Callvote_Handler(client, args)
{
	if (client == 0)
	{
//		PrintToChatAll("\x05Server \x04 the voting");
		return Plugin_Continue;
	}

	decl String:voteName[MAX_NAME_LENGTH];
	decl String:initiatorName[MAX_NAME_LENGTH];
	GetClientName(client, initiatorName, sizeof(initiatorName));
	GetCmdArg(1, voteName, sizeof(voteName));
	
//	PrintToChatAll("\x03VOTE = \x05%s", voteName);
	
	if (strcmp(voteName,"Kick", false) == 0)
	{
		// this function must return either Plugin_Handled or Plugin_Continue
		return Kick_Vote_Logic(client, args);
	}
	if (strcmp(voteName, "ReturnToLobby", false) == 0) 
	{
		if (GetConVarInt(hm_blockvote_lobby) > 0)
		{
			PrintToChat(client, "\x04\"Vote\" access denied");
			return Plugin_Handled;
		}
		else
		{
			PrintToChat(client, "\x03\"Vote\" access granted");
//			PrintToChatAll("\x04%N started the voting", client);
			return Plugin_Continue;
		}
	}
	if (strcmp(voteName, "ChangeMission", false) == 0 || strcmp(voteName, "ChangeChapter", false) == 0) 
	{
		decl String:map_name[MAX_MAP_NAME_LENGTH];
		GetCmdArg(2, map_name, sizeof(map_name));
		if (!IsMissionAllowed(map_name))
		{
			new AdminId:ClientAdminId = GetUserAdmin(client);
			new flags = GetAdminFlags(ClientAdminId, Access_Effective);
			if (flags & ADMFLAG_VOTE || flags & ADMFLAG_CHANGEMAP) //  || flags & ADMFLAG_ROOT
			{
				CPrintToChat(client, "{red}Warning! This campaign is forbidden!\n\x03\"Vote\" access granted");
				return Plugin_Continue;
			}
			PrintToChat(client, "\x04\"Vote\" access denied [this campaign is forbidden]");
			return Plugin_Handled;
		}
		if (GetConVarInt(hm_allowvote_map_players) >= GetRealClientCount())
		{
			PrintToChat(client, "\x03\"Vote\" access granted");
//			PrintToChatAll("\x04%N started the voting", client);
			return Plugin_Continue;
		}
		if (GetConVarInt(hm_blockvote_map) > 0 && rounds < GetConVarInt(hm_allowvote_map_fails))
		{
			new AdminId:ClientAdminId = GetUserAdmin(client);
			new flags = GetAdminFlags(ClientAdminId, Access_Effective);
#if PLAYERS_ENABLED			
			if (PlayerVIP[client] > 0)
			{
				PrintToChat(client, "\x05[VIP] \x03\"Vote\" access granted");
//				PrintToChatAll("\x04%N started the voting", client);
				return Plugin_Continue;			
			}
#endif
			if (GetAdminLvl(client) > GetConVarInt(hm_allowvote_mission))
			{
				PrintToChat(client, "\x03\"Vote\" access granted");
//				PrintToChatAll("\x04%N started the voting", client);
				return Plugin_Continue;			
			}
			if (flags & ADMFLAG_VOTE || flags & ADMFLAG_CHANGEMAP) //  || flags & ADMFLAG_ROOT
			{
				PrintToChat(client, "\x03\"Vote\" access granted");
//				PrintToChatAll("\x04%N started the voting", client);
				return Plugin_Continue;
			}
			else
			{
				PrintToChat(client, "\x04\"Vote\" access denied [%d < %d]", GetAdminLvl(client), GetConVarInt(hm_allowvote_mission));
				return Plugin_Handled;
			}
		}
		else
		{
			PrintToChat(client, "\x03\"Vote\" access granted");
//			PrintToChatAll("\x04%N started the voting", client);
			return Plugin_Continue;
		}
	}
	if (strcmp(voteName, "RestartGame", false) == 0) 
	{
		if (GetConVarInt(hm_blockvote_restart) < 1)
		{
			PrintToChat(client, "\x03\"Vote\" access granted");
			return Plugin_Continue;
		}
		else
		{
			if (GetConVarInt(hm_blockvote_restart) == 1)
			{
				if (IsPlayerAlive(client))
				{
					PrintToChat(client, "\x05\"Vote\" access granted");
//					PrintToChatAll("\x04%N started the voting", client);
					return Plugin_Continue;
				}
				else
				{
					new AdminId:ClientAdminId = GetUserAdmin(client);
					new flags = GetAdminFlags(ClientAdminId, Access_Effective);
					if (flags & ADMFLAG_VOTE || flags & ADMFLAG_CHANGEMAP || flags & ADMFLAG_ROOT)
					{
						PrintToChat(client, "\x03\"Vote\" access granted");
//						PrintToChatAll("\x04%N started the voting", client);
						return Plugin_Continue;			
					}
					else
					{
						PrintToChat(client, "\x04\"Vote\" access denied");
						return Plugin_Handled;
					}
				}
			}
			else
			{
				PrintToChat(client, "\x04\"Vote\" access denied");
				return Plugin_Handled;
			}
		}
	}
	if (strcmp(voteName, "ChangeDifficulty", false) == 0) 
	{
		if (GetConVarInt(hm_blockvote_difficulty) > 0)
		{
			new AdminId:ClientAdminId = GetUserAdmin(client);
			new flags = GetAdminFlags(ClientAdminId, Access_Effective);
			if (flags & ADMFLAG_VOTE & ADMFLAG_CONVARS || flags & ADMFLAG_ROOT)
			{
				PrintToChat(client, "\x03\"Vote\" access granted");
//				PrintToChatAll("\x04%N started the voting", client);
				return Plugin_Continue;			
			}
			else
			{
				PrintToChat(client, "\x04\"Vote\" access denied");
				return Plugin_Handled;
			}
		}
		else
		{
			PrintToChat(client, "\x03\"Vote\" access granted");
//			PrintToChatAll("\x04%N started the voting", client);
			return Plugin_Continue;
		}
	}

//	PrintToChatAll("VOTE = %s", voteName);
	return Plugin_Continue;
}

public Action:Kick_Vote_Logic(client, args)
{
	decl String:initiatorName[MAX_NAME_LENGTH];
	GetClientName(client, initiatorName, sizeof(initiatorName));

	decl String:arg2[12];
	GetCmdArg(2, arg2, sizeof(arg2));
	new target = GetClientOfUserId(StringToInt(arg2));
	
	if (!target) return Plugin_Handled;

	new AdminId:ClientAdminId = GetUserAdmin(client);
	new AdminId:TargetAdminId = GetUserAdmin(target);
	
	if (GetConVarInt(hm_blockvote_kick) < 1)
	{
		PrintToChat(client, "\x03\"Vote\" access granted");
		return Plugin_Continue;
	}
	
	new flags = GetAdminFlags(ClientAdminId, Access_Effective);
	if (flags & ADMFLAG_VOTE || flags & ADMFLAG_ROOT || GetConVarInt(hm_blockvote_kick) < 2) 
	{
		if (GetAdminLvl(client) - GetConVarInt(hm_blockvote_difference) >= GetAdminLvl(target))
		{
			new flags2 = GetAdminFlags(TargetAdminId, Access_Effective);
			if (flags2 & ADMFLAG_GENERIC || flags2 & ADMFLAG_ROOT)
			{
				PrintToChat(client, "\x04\"Vote\" access denied");
				return Plugin_Handled;
			}
			else
			{
				PrintToChat(client, "\x03\"Vote\" access granted");
			}
		}
		else
		{
			PrintToChat(client, "\x04\"Vote\" access denied");
			return Plugin_Handled;
		}
	}
	else
	{
		PrintToChat(client, "\x04\"Vote\" access denied");
		return Plugin_Handled;
	}
//	PrintToChatAll("%N started the voting", client);
	return Plugin_Continue;
}

public Action:Command_city17l4d2(client, args)
{
	if (client < 1)
	{
		return Plugin_Handled;
	}
	new players = GetMaxClients();
	new ggg = 0;
	for (new i = 1; i < players; i++)
	{
		if (IsClientConnected(i) && IsClientInGame(i) && !IsFakeClient(i))
		{
			ggg++;
		}
	}
	if (ggg < 7)
	{
		return Plugin_Handled;
	}
	FakeClientCommand(client, "callvote ChangeMission city17l4d2");
	return Plugin_Continue;
}

public Action:Command_warcelona(client, args)
{
	if (client < 1)
	{
		return Plugin_Handled;
	}
	new players = GetMaxClients();
	new ggg = 0;
	for (new i = 1; i < players; i++)
	{
		if (IsClientConnected(i) && IsClientInGame(i) && !IsFakeClient(i))
		{
			ggg++;
		}
	}
	if (ggg < 7)
	{
		return Plugin_Handled;
	}
	FakeClientCommand(client, "callvote ChangeMission warcelona");
	return Plugin_Continue;
}
Тут добавлены две команды голосования за смену на доп. компанию
sm_city17 – это City 17
sm_warcelona - это warcelona
команды можно запустить только если на сервере больше 7 человек (если меньше, то она не запуститься).

Позже выложу ещё..

Добавлено спустя 21 минуту 7 секунд:
denzel515 писал(а):
Jonny писал(а):Прикольно. А как такое под лефт сделать?
Пытался сделать как здесь, но тест провалился.
Скачать
Плагин на сервер DS.smx в папку addons/sourcemod/plugins
Файл byfly_test.vpk на сервер и на фтп в папку addons
sv_downloadurl cсылку на ftp
Вопрос из черпан ?
Изображение

denzel515
Лейтенант
Лейтенант
Сообщения: 143
Зарегистрирован: 01.11.2007
Благодарил (а): 3 раза
Поблагодарили: 2 раза

#1823 Сообщение 12.08.2013, 11:19

leks19 писал(а):
denzel515 писал(а):
Jonny писал(а):Прикольно. А как такое под лефт сделать?
Пытался сделать как здесь, но тест провалился.
Скачать
Плагин на сервер DS.smx в папку addons/sourcemod/plugins
Файл byfly_test.vpk на сервер и на фтп в папку addons
sv_downloadurl cсылку на ftp
Вопрос из черпан ?
Сейчас сделаю тест, если будет работать, тогда огромное тебе спасибо, и не только от меня.
Изображение

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

#1824 Сообщение 12.08.2013, 12:16

denzel515 писал(а):
leks19 писал(а):
denzel515 писал(а):Пытался сделать как здесь, но тест провалился.
Скачать
Плагин на сервер DS.smx в папку addons/sourcemod/plugins
Файл byfly_test.vpk на сервер и на фтп в папку addons
sv_downloadurl cсылку на ftp
Вопрос из черпан ?
Сейчас сделаю тест, если будет работать, тогда огромное тебе спасибо, и не только от меня.
Это работает! Я ещё раньше показывал эти возможности johnny blaze но лично я отказался от этой идеи и на это есть причины.
Изображение

denzel515
Лейтенант
Лейтенант
Сообщения: 143
Зарегистрирован: 01.11.2007
Благодарил (а): 3 раза
Поблагодарили: 2 раза

#1825 Сообщение 12.08.2013, 12:32

Не пашет, Error downloading http://ctrev.us.to/left4dead2//addons/byfly_test.vpk он ищет твой файл.
Т.е. он ищет твой файл, а не все vpk которые есть в папке addons.
Изображение

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

#1826 Сообщение 12.08.2013, 14:46

denzel515 писал(а):Не пашет, Error downloading http://ctrev.us.to/left4dead2//addons/byfly_test.vpk он ищет твой файл.
Т.е. он ищет твой файл, а не все vpk которые есть в папке addons.
Скачало мой файл вить? Это был только пример того что возможно это сделать.
По поводу скачивания именно твоих файлов я нечего не говорил.
Изображение

denzel515
Лейтенант
Лейтенант
Сообщения: 143
Зарегистрирован: 01.11.2007
Благодарил (а): 3 раза
Поблагодарили: 2 раза

#1827 Сообщение 12.08.2013, 14:52

Ну может выложишь исходник, или ты так попонтоваться решил?
Или тебе нужны бабки, пиши сразу, а всякую херню типа выложил мод и без того чтобы написать что это для теста или ещё чего! И типа такой "вопрос исчерпан!" Типа я крутой я сделал скачку 1 файла, и выложил его, не написав что это фуфло и скачивается 1 файл. Если выкладываешь, то пиши что это <..> или тест скачка 1 файла.
Последний раз редактировалось NiGHt-LEshiY 12.08.2013, 14:52, всего редактировалось 2 раза.
Причина: Грубиян.
Изображение

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

#1828 Сообщение 12.08.2013, 15:17

denzel515 писал(а):Ну может выложишь исходник, или ты так попонтоваться решил?
Или тебе нужны бабки, пиши сразу, а всякую херню типа выложил мод и без того чтобы написать что это для теста или ещё чего! И типа такой "вопрос исчерпан!" Типа я крутой я сделал скачку 1 файла, и выложил его, не написав что это фуфло и скачивается 1 файл. Если выкладываешь, то пиши что это хуйня или тест скачка 1 файла.
Это тестовый плагин который требует обтачиванием напильником. Вообще не очень удачное решение использовать его как закачку карт для игроков.
Почему я не выкладываю его? На это есть много причин:
1.Это долго и игрок не будет ждать пол часа чтобы зайти и поиграть на сервере.
2.Некоторые сервера могут это использовать в корыстных целях
3.Исходники не выкладываю так как опять могут использовать в корыстных целях.
Я просто тебе показал что это возможно. Я сам это не использую =).

Добавлено спустя 2 минуты 22 секунды:
По поводу мода тут ты прав. Больше не буду.
Изображение

emilio3
Нович0к
Нович0к
Сообщения: 13
Зарегистрирован: 04.08.2013
Поблагодарили: 1 раз

#1829 Сообщение 12.08.2013, 20:33

Lesk you can add campaing Symbyosysv1.2 in rotation maps in l4d2_nextcampaing.smx for my server please would be very grateful,
here addons:
http://www.l4dmaps.com/details.php?file=24477

denzel515
Лейтенант
Лейтенант
Сообщения: 143
Зарегистрирован: 01.11.2007
Благодарил (а): 3 раза
Поблагодарили: 2 раза

#1830 Сообщение 13.08.2013, 00:46

leks19 писал(а):
denzel515 писал(а):Ну может выложишь исходник, или ты так попонтоваться решил?
Или тебе нужны бабки, пиши сразу, а всякую херню типа выложил мод и без того чтобы написать что это для теста или ещё чего! И типа такой "вопрос исчерпан!" Типа я крутой я сделал скачку 1 файла, и выложил его, не написав что это фуфло и скачивается 1 файл. Если выкладываешь, то пиши что это хуйня или тест скачка 1 файла.
Это тестовый плагин который требует обтачиванием напильником. Вообще не очень удачное решение использовать его как закачку карт для игроков.
Почему я не выкладываю его? На это есть много причин:
1.Это долго и игрок не будет ждать пол часа чтобы зайти и поиграть на сервере.
2.Некоторые сервера могут это использовать в корыстных целях
3.Исходники не выкладываю так как опять могут использовать в корыстных целях.
Я просто тебе показал что это возможно. Я сам это не использую =).

Добавлено спустя 2 минуты 22 секунды:
По поводу мода тут ты прав. Больше не буду.
Ну если в bz2 файлы, то качаются быстро! Карты не хотел туда запихивать. За бабло сделаешь для меня его?

Добавлено спустя 3 часа 11 минут 53 секунды:
Ещё один баг, или так задумано в конце карты к примеру c12m5_cornfield когда забегаешь в дом, и нажимаешь на рацию, через 1 сек тачка уже около дома, нет обороны дома и.т.д. Так на всех картах на которых нужно держать оборону.
Изображение

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