Перейти к содержимому


Фотография

Как прописать появление Танка и Ведьмы на каждой карте

Танк и Ведьма

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 52

#41 Pa4h

Pa4h

    Новичок

  • Пользователь
  • Pip
  • 48 сообщений

Отправлено 23 Сентябрь 2022 - 5:54

Всем спасибо за ответы! Получилось спаунить Танка и Вичку на каждой карте.

Еще пару дней\недель потестирую и выложу сюда инструкцию с плагином.



#42 Весельчак

Весельчак

    Новичок

  • Пользователь
  • Pip
  • 28 сообщений

Отправлено 23 Сентябрь 2022 - 20:24

Все достаточно просто Прикрепленный файл  TankWitch.sp   1,99К   16 Количество загрузок:

 


Сообщение отредактировал Весельчак: 23 Сентябрь 2022 - 20:25


#43 Pa4h

Pa4h

    Новичок

  • Пользователь
  • Pip
  • 48 сообщений

Отправлено 25 Сентябрь 2022 - 10:55

Все достаточно просто attachicon.gif TankWitch.sp

Если бы было так просто....

Режиссер не спаунит Танка на первых картах. Даже если принудительно задать процент появления при помощи Left4Dhooks.



#44 Весельчак

Весельчак

    Новичок

  • Пользователь
  • Pip
  • 28 сообщений

Отправлено 25 Сентябрь 2022 - 16:26

Если бы было так просто....
Режиссер не спаунит Танка на первых картах. Даже если принудительно задать процент появления при помощи Left4Dhooks.

Покажите свой код, плагин который я скинул выше прекрасно работает.

#45 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 029 сообщений

Отправлено 25 Сентябрь 2022 - 18:22

Пример спавна танка и ведьмы через vscripts, проверял только на винде это первый вариант. Установка left4dead2\scripts\vscripts

ProhibitBosses = false // true блокирует танка и ведьму
DisallowThreatType = false // true блокирует танка и ведьму но можно и отдельно. Блокирует ZOMBIE_WITCH блокирует ZOMBIE_TANK
TankLimit = 5
WitchLimit = 5

Хотел сюда пример полностью загрузить но нельзя. Нужно файл nut создать с названием карты, пример карты c8m1_apartment.nut

//-----------------------------------------------------
//
//
//-----------------------------------------------------
Msg("Beginning c8m1_apartment  script\n");

DirectorOptions <-
{
	ProhibitBosses = false
	DisallowThreatType = false
	TankLimit = 5
	WitchLimit = 5
}


#46 dr_lex

dr_lex

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 053 сообщений

Отправлено 26 Сентябрь 2022 - 9:13

 

Пример спавна танка и ведьмы через vscripts, проверял только на винде это первый вариант. Установка left4dead2\scripts\vscripts

ProhibitBosses = false // true блокирует танка и ведьму
DisallowThreatType = false // true блокирует танка и ведьму но можно и отдельно. Блокирует ZOMBIE_WITCH блокирует ZOMBIE_TANK
TankLimit = 5
WitchLimit = 5

Хотел сюда пример полностью загрузить но нельзя. Нужно файл nut создать с названием карты, пример карты c8m1_apartment.nut

//-----------------------------------------------------
//
//
//-----------------------------------------------------
Msg("Beginning c8m1_apartment  script\n");

DirectorOptions <-
{
	ProhibitBosses = false
	DisallowThreatType = false
	TankLimit = 5
	WitchLimit = 5
}

А не проще сделать плагин чтобы по-умолчанию были данные конфиги?)
 

#pragma semicolon 1
#include <sourcemod>
#include <left4dhooks>
#pragma newdecls required

#define	MAX_FALSE 0
#define MAX_LIMIT 5

public Action L4D_OnGetScriptValueInt(const char[] key, int &retVal)
{
	int val = retVal;
	if (StrEqual(key, "ProhibitBosses"))
	{
		val = MAX_FALSE;
	}
	if (StrEqual(key, "DisallowThreatType"))
	{
		val = MAX_FALSE;
	}
	if (StrEqual(key, "TankLimit"))
	{
		val = MAX_LIMIT;
	}
	if (StrEqual(key, "WitchLimit"))
	{
		val = MAX_LIMIT;
	}
	
	if (val != retVal)
	{
		retVal = val;
		return Plugin_Handled;
	}
	return Plugin_Continue;
}

Сообщение отредактировал dr_lex: 26 Сентябрь 2022 - 9:14

  • AlexMy и Figa это нравится

#47 RyanAnderson

RyanAnderson

    Пользователь

  • Пользователь
  • PipPipPip
  • 303 сообщений

Отправлено 26 Сентябрь 2022 - 11:25

dr_lex если не ошибаюсь, именно ты помог мне спавнить Танка и Ведьму одновременно, одним плагином.

Мы еще делали такую лютую смесь, что при убийстве Ведьмы, игроку давалось 200 хп, и экран у него на 30 секунд затемнялся.



#48 dr_lex

dr_lex

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 053 сообщений

Отправлено 26 Сентябрь 2022 - 15:16

dr_lex если не ошибаюсь, именно ты помог мне спавнить Танка и Ведьму одновременно, одним плагином.

Мы еще делали такую лютую смесь, что при убийстве Ведьмы, игроку давалось 200 хп, и экран у него на 30 секунд затемнялся.

Я помню что, что-то делал с таймером, остальное хз) Но так как мне эта тема не интереса то я не сохраняют такие работы у себя, так как интереса в них нет, и развития не будет естественно.
Из всего похожего сейчас по спауну, у меня только свой личный плагин l4d2_hx_monsterboss. Который переписывался на основе идеи MonsterBots и Superboss .

Если коротко то там у меня спаун боссов идет так:

float vPos[3];
if (L4D_GetRandomPZSpawnPosition(0, ZOMBIE_WINNER, 5, vPos))
{
	L4D2_SpawnSpecial(ZOMBIE_WINNER, vPos, NULL_VECTOR);
}

Готовый пример уже выкладывал BloodyBlade

А также если интересно что реализовал:

Скрытый текст


Сообщение отредактировал dr_lex: 26 Сентябрь 2022 - 15:20


#49 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 029 сообщений

Отправлено 26 Сентябрь 2022 - 18:30

 

А не проще сделать плагин чтобы по-умолчанию были данные конфиги?)
 

#pragma semicolon 1
#include <sourcemod>
#include <left4dhooks>
#pragma newdecls required

#define	MAX_FALSE 0
#define MAX_LIMIT 5

public Action L4D_OnGetScriptValueInt(const char[] key, int &retVal)
{
	int val = retVal;
	if (StrEqual(key, "ProhibitBosses"))
	{
		val = MAX_FALSE;
	}
	if (StrEqual(key, "DisallowThreatType"))
	{
		val = MAX_FALSE;
	}
	if (StrEqual(key, "TankLimit"))
	{
		val = MAX_LIMIT;
	}
	if (StrEqual(key, "WitchLimit"))
	{
		val = MAX_LIMIT;
	}
	
	if (val != retVal)
	{
		retVal = val;
		return Plugin_Handled;
	}
	return Plugin_Continue;
}

Так в том и смысл заключался что не обязательно использовать плагин для танка и ведьмы. В сети много плагинов которые делают практически одно и тоже. 

 

 

А не проще сделать плагин чтобы по-умолчанию были данные конфиги?)
 

#define	MAX_FALSE 0
#define MAX_LIMIT 5

 

Для ProhibitBosses только true/false, DisallowThreatType только true|false|ZOMBIE_WITCH|ZOMBIE_TANK обе переменные bool хотя нужно уточнять на офф. сайте valve



#50 Pa4h

Pa4h

    Новичок

  • Пользователь
  • Pip
  • 48 сообщений

Отправлено 26 Сентябрь 2022 - 19:03

dr_lex писал:

Скрытый текст

 

Это работает!!! На днях выложу свой плагин


  • RyanAnderson это нравится

#51 dr_lex

dr_lex

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 053 сообщений

Отправлено 26 Сентябрь 2022 - 20:38

dr_lex писал:

Скрытый текст

 

Это работает!!! На днях выложу свой плагин

Ещё бы) Я через L4D_OnGetScriptValueInt подправил многое у себя на сервере) Даже спаун мобов на некоторых кампаниях типа Черноболя, где настроено на 50-80 лимит из положенного 30), и за чего просто вызывало лаги на сервере особенно на финале перед бункером. А так через L4D_OnGetScriptValueInt единые правила для всех работают не зависимо от настроек авторов доп. кампаний.


Так в том и смысл заключался что не обязательно использовать плагин для танка и ведьмы. В сети много плагинов которые делают практически одно и тоже. 

 

 

Для ProhibitBosses только true/false, DisallowThreatType только true|false|ZOMBIE_WITCH|ZOMBIE_TANK обе переменные bool хотя нужно уточнять на офф. сайте valve

true и false это тоже самое что 1 и 0
Так же это был пример как сделать) Если не сработает что мало вероятно, то можете сами дописать bool
 


Сообщение отредактировал dr_lex: 26 Сентябрь 2022 - 20:41


#52 AlexMy

AlexMy

    Постоянный пользователь

  • Пользователь
  • PipPipPipPipPip
  • 1 029 сообщений

Отправлено 26 Сентябрь 2022 - 20:58

Ещё бы) Я через L4D_OnGetScriptValueInt подправил многое у себя на сервере) Даже спаун мобов на некоторых кампаниях типа Черноболя, где настроено на 50-80 лимит из положенного 30), и за чего просто вызывало лаги на сервере особенно на финале перед бункером. А так через L4D_OnGetScriptValueInt единые правила для всех работают не зависимо от настроек авторов доп. кампаний.


true и false это тоже самое что 1 и 0
Так же это был пример как сделать) Если не сработает что мало вероятно, то можете сами дописать bool
 

 

скрипт vscripts нашёл аналог плагину глобальный на все карты, пару карт первых в разных кооп проверил вроде работает.



#53 Pa4h

Pa4h

    Новичок

  • Пользователь
  • Pip
  • 48 сообщений

Отправлено 23 Май 2023 - 16:52

Спустя много месяцев тестирования выкладываю свой плагин. Как и обещал)))

Есть команда !boss

Плагин спаунит Танка и Вичу на всех картах, кроме "c5m5_bridge", "c7m1_docks", "c7m3_port", "c6m3_port", "c4m5_milltown_escape"

На финальных картах Танк и Вичка всегда появляются в самом начале!

 

GitHub


  • history_maker это нравится


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных