123new

AdminBookMenu для DayZ 0.62

1 сообщение в этой теме

И снвова здравствуйте, товарищи!

Думаю, многие из вас уже натыкались на BookMenu в сборках серверной части 0.62 в сети, но большинство не смогло их установить. В данной теме я опишу гайд, который поможет вам установить похожее меню на свой сервер, созданный на основе серверных файлов моей сборки:

 

Начнем:

1. Скачиваем архив: https://yadi.sk/d/tLLdv6vJRoYThQ

https://mega.nz/#!6CoyiCbY!FlMeng4M3ZtSQk1ttjim1-AD-_J8AerXrqK7VK0FWRI

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

2. Помещаем файл AdminBook.c по пути: scripts\4_World\Entities\ItemBase

3. Открываем в Notepad++: scripts\4_World\Entities\ManBase\PlayerBase.c
4. Находим:

void OnGetActions (ActionMenuContext ctx, Man player)
	{  	
		super.OnGetActions(ctx, player);
		if ( GetDayZGame().IsNewPlayer() && GetGame().IsServer() && m_ActionManager ) m_ActionManager.OnGetActions(ctx);
	}

И меняем на

void OnGetActions (ActionMenuContext ctx, Man player)
	{  	
		super.OnGetActions(ctx, player);
		if ( GetDayZGame().IsNewPlayer() && GetGame().IsServer() && m_ActionManager ) m_ActionManager.OnGetActions(ctx);

		float mySwitch;
		player.GetVariable ("toggleFreeCamOptions", mySwitch);
		
		if ( mySwitch == 1) //Shows actions on player only if switch is toggled on//set to 1 if 0 then does not show it!
		{
			ctx.AddAction("EXIT", 					1, 	NULL, 	1, 	true, 	true);
			// ctx.AddAction("TELEPORT TO PLAYER", 	2, 	NULL, 	1, 	true, 	true);
			// ctx.AddAction("MY ACTION #3", 		2, 	NULL, 	1, 	true, 	true);
			// ctx.AddAction("MY ACTION #4", 		2, 	NULL, 	1, 	true, 	true);
		}
		
	}

А также находим:

bool OnAction(int action_id, Man player, ParamsReadContext ctx)
	{
		super.OnAction(action_id, player, ctx);
		if( GetDayZGame().IsNewPlayer() && action_id == 109 && GetGame().IsServer() &&  m_ActionManager) m_ActionManager.OnAction();
	}

и меняем на

bool OnAction(int action_id, Man player, ParamsReadContext ctx)
	{
		super.OnAction(action_id, player, ctx);
		if( GetDayZGame().IsNewPlayer() && action_id == 109 && GetGame().IsServer() &&  m_ActionManager) m_ActionManager.OnAction();
		
		if ( GetGame().IsServer() )
		{
			switch (action_id)
			{
				case 1:
					
					string PlayerAdmin;
					player.GetVariable ( "PlayerName", PlayerAdmin );
					
					string cameraCode = "{ if (name _x == '" + PlayerAdmin + "') then {(owner _x) SpawnForClient { _cam = 'camconstruct' camCreate [0,0,0]; _cam CameraEffect ['Terminate', 'Back']; camDestroy _cam; }; }; }forEach players;";
										
					GetGame().ExecuteSQF(cameraCode);

					player.SetVariable( "toggleFreeCamOptions", 0);

					break;
					
				case 2:
				
					string freeCamTeleportPos;
					player.GetVariable ( "freeCamTeleportPos", freeCamTeleportPos );
					
					vector teleportLocation = freeCamTeleportPos.ToVector();
					
					player.SetPosition(teleportLocation);

					break;
					
			};
		};
	}

P.S. Это необходимые опции для выхода с режима наблюдения

5. Открываем файл: MPMissions\dayz_Auto.ChernarusPlus\scripts\init\init_newBody.sqf  и находим строки:

playerBodies set [count playerBodies,_agent];
	_agent setVariable ["UID",_uid];

Добавляем ниже строки

_agent setVariable ["toggleFreeCamOptions",0];
	_agent setVariable ["freeCamTeleportPos",0];

Там же находим строку

myNotifiers = _agent getVariable ["myNotifiers",[]];

и добавляем ниже

_agent setVariable ["playerName",name _agent];

6. Открываем: scripts\DataBase\DataBase.h

И добавляем в конце файла следующее:

// InGame AdminMenu 'AdminBook' by 123new
	static const string AdminMenu_adminList = "76561200555123705,UID4,UID5"; 
	static const string AdminMenu_ModerList = "UID1,UID2,UID3";

Где, как вы уже догадались, в указанном формате UID модеров и админов на сервере

P.S. Соблюдайте, чтобы UID в списке админов не дублировался в списке модераторов, и наоборот

7. Запускаем сервер,добавляем в лут себе объект с id "BookTheThreeMusketeers" и проверяем то что мы сделали!
Меню будет на правой кнопке мышки на книжке, если вы прописали верно ваш UID.

 

У администрации доступно:
1. Изменение погоды
2. Выдача 3 наборов с лутом в качестве примера (сами потом редактируйте, на enscript) (при выдаче лута скидывайте книгу на землю!!!)
3. Наблюдение за игроками (дистанция ограничена дальностью отрисовки и синхронизации объектов на стороне клиента игры)

У модерации доступно:
1. Наблюдение за игроками (дистанция ограничена дальностью отрисовки и синхронизации объектов на стороне клиента игры)

Замеченные недостатки:
Поскольку меню работает по никам игроков, то возможны проблемы, поскольку некоторые символы могут не восприняться enscript текущей версии игры и вызывать проблемы скрипта.
Дальность наблюдения ограничена (см выше)
Поскольку Enscript 0.62 версии игры крайне сырой, возможны 'убегания' меню за экран

Где редактировать меню?
Все просто, тут весь код: scripts\4_World\Entities\ItemBase\AdminBook.c

Благодарности: Автору uhneb за его вариант с рабочим меню, которые сделал он, либо комьюнити, с которым он работал
Работоспособность: DayZ 0.62

Возможно, можно сделать эти меню более граммотно с нынешними знаниями по 0.63, но я считаю это уже нецелесообразным!

 

Чужая наработка автора BorizK (за что и благодарим его) на базе этого меню:

Описание имеется там же несколькими сообщениями ниже!

 

Замечу, что данный гайд основывается именно на мою версию сборки серверных файлов игры DayZ 0.62, но не исключено, что может подходить и к вашим серверным файлам! Также, возможно дорабатывать и изменять опционал меню, используя привычные sqf-функции. Для этого создавайте эти функции в sqf из mpmission, а затем дорабатывайте само book-menu под нужные вам опции. Пример исполнения sqf-кода на enscript (только для dayz 0.62) имеется в опции наблюдения!

Изменено пользователем 123new (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Забронировать это рекламное место


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Похожие публикации

    • Автор: DAP
      [Server Manager] DayZ Standalone (Arma-ArmaII-ArmaIII,Miscreated)

      Server Manager :
      Дата выпуска: 2014
      Разработчик, издатель: -=scorpions=-
      Платформа: Windows server 2012 / Windows server 2016 / Windows 7 / Windows server 2008 /Windows 10
      Версия программы: 07.02.2019 [Stable]
      Язык интерфейса: RU / EN
      Доступность: платная
      Требование : Microsoft .NET Framework 4.5.2 и выше
      Официальная группа : VK
      Оплата : 500 RUB, 200 UAH, 10 USD (подписка на год)
       
      Описание :
      Программа для управления сервером и его контролем,
      многофункциональность,позволяет гибко настраивать дополнительные функции к работе сервера.Для установки данного приложение,
      требуется хост с виндовс не менее Windows server 2008,сервер и панель (Server Manager), должны быть на одном ПК!.
       
      Функции и их описание:
       

      Так как Лаунчер работает только совместно с Server Manager,будет описание лаунчера так же в этой теме:

      LAUNCHER :
      Дата выпуска: Определяется заказчиком
      Разработчик, издатель: -=scorpions=-
      Платформа: Windows 7 / Windows 10
      Версия программы: Определяется заказчиком
      Язык интерфейса: RU / EN
      Доступность: платная (от : 3000 RUB, 1100 UAH, 35 USD в зависимости от заказа)
      Требование : Microsoft .NET Framework 4.7.2 и выше
       
      Описание :
      Данная программа создана для удобства и контроля игроков на честную игру.При заказе данного продукта Вы получаете Server Manager бесплатно (подписка на год + установка)
       
      Функции и их описание:
       

       
    • Автор: NoNameUltima
      ASCP (переделка DZEU)
       
      Возможности вкладки RCon:
      Просмотр чата - любые переписки, отправка собственных сообщений в чат, а так же отправка личных сообщений выбранному игроку. Цвет фона, и сообщений настраивается. Просмотр игроков находящихся на сервере(страна- флаг, GUID, IP, Порт, пинг) Таблица администрации - вы можете добавлять администраторов, и модераторов, - при входе на сервер будет выводится специализированное сообщение(в зависимости от настроек). Белый список. Оповещения(по дням недели, времени, интервалу. Как технические - рестарты и т.п., так и текстовые). Авто кики, с сообщениями о не правильных установках игрока(Например у вас запрещены некоторые символы в именах игроков). Работа с бан листами - отсев дубликатов, склейка банов. Список имен, GUID'ов, и дат, игроков заходивших на ваш сервер. Возможность запрета смены имени игрока, после первого захода на сервер.*Опция в режиме тестирования. Стандартные команды RCon(смена пароля, перезагрузка списка банов и т.п.) Настройки задающие IP, порт, пароль, максимально допустимую длину имени, максимально допустимое время нахождения в лобби и т.п. Авто-сохранение журналов чата ежечасно по указанным вами путям. Возможности вкладки сервер:
      Ручной запуск сервера. Настройки задающие авто-запуск сервера, командную строку, путь к файлу сервера.  
      Дополнительно:
      Авто-запуск батч файла перед стартом сервера, внутри которого вы можете выполнять любые события. Например связанные с чисткой БД. *Для примера созданы и приложены события для А2 DayZ Epoch: - Удаление определенной техники, на каждом рестарте. - Удаление объектов поврежденных более чем на Х процентов, на каждом рестарте. - Нанесение Х урона объектам, раз в сутки. - Удаление персонажей, которе не заходили на сервер более Х суток. - Пополнение кол-ва объектов для торговцев, на каждом рестарте, в зависимости от оставшегося кол-ва. - Удаление объектов не используемых более Х часов, на каждом рестарте. Авто-сохранение файлов серверных журналов. По файлам и папкам. Авто-очистка папок с журналами, от файлов старше Х дней(настраивается). Просмотр реал-тайм журналов сервера, таких как RPT файлы и т.п.  
      Работа программы проверялась на ОС'ях:
       
      Windows 7 Windows server 2008 Windows server 2012  
      Использовались сервера:
      A2OA DayZ Epoch\Overpoch, A3 Exile\DayZ SA  
      Пример bat файла, для запуска DZSAL
      @echo off set DayZExe=DZSALModServer.exe set DayZConfig=Instance_1\server.cfg set DayZBasic=Instance_1\basic.cfg set DayZProfiles=Instance_1 set DayZUser=Instance_1 set DayZName=Ultima set PORT=2302 set [email protected];@UltimaServerAdmin; set [email protected];@Ultima;@UltimaClientAdmin; set [email protected];@UltimaServerAdmin; set IP=192.168.1.2 start "" "%DayZExe%" -ip=%IP% -instanceId=1 -port=%PORT% -ignoremod=%IGNOREMOD% -skipserver -serverMod=%SERVERMODS% -mod=%MODS% -config=%DayZConfig% -cfg=%DayZBasic% -profiles=%DayZProfiles% -user=%DayZUser% -name=%DayZName% -nologs -adminlog -freezecheck -FilePatching *Батч файл запускает http сервер, с лаунчером, без запуска самого сервера DayZ(за запуск сервера отвечает ASCP), и игнорирует серверные моды.
       
      Проблемы кодировок:
      На Windows сервер, иногда, неверно установлены кодировки, и вместо кириллицы, либо "кракозябры", либо вообще не видно текста.
      Решение проблемы достаточно простое -
      Запускаем из командной строки: regedit (кто не знает, как это сделать, можно просто открыть любую папку в windows, и вверху в строке где написан путь к папке, написать regedit). Далее идем по пути регистра: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage] В правом окошке видим кодировки, находим кодировки начинающиеся с 1250, и до 1255. Правым кликом на кодировку, - изменить значение, и меняем на 1251, т.е. 1250=1251, 1251=1251, 1252=1251.... Перезагружаемся.  
      Полную версию программы можно приобрести за 1500р.
      P.S. Тем кто брал DZEU - может получить полную версию ASCP бесплатно.
       
      Немного скриншотов:
       
      Окошко статуса сервера:

      Окно настроек:

      Окно игроков:

       
    • Автор: lishuping
      Купи новый сервер DAYZ SA,Оставьте сообщение.
    • Автор: NoNameUltima
      Автор:
      Я. Версия админки:
      v.R2  
      Описание:
      Админка поставляется с ключами, и подписями. Админка разделена на 2 части - клиентская, и серверная. Так же работает в оффлайн режиме.  
      Для установки админки, необходимо:
      На сервере подключить серверный мод. На сервере подключить клиентский мод. На сервере скопировать ключ из клиентского мода, и поместить в папку keys сервера. На клиенте добавить клиентский мод. В конфигурационный файл администрации прописать UID(ы) администраторов и модераторов.  
      Рабочие пункты админки:
       
      Отображение в 3D(ESP от 0 до 1000м)
      Настройки радиуса отображения Игроки. Зомби. Техника. Постройки. Объекты. Отображение на карте(в радиусе игрока от 0 до 1000м):
      Настройки радиуса отображения Игроки. Зомби. Техника. Постройки. Объекты. НПЦ. Сервер:
      Установка времени на сервере. Установка погоды на сервере(В бете). Собственные:
      Телепорт по векторам(4 - по направлению взгляда. 5 - вверх). Телепорт по карте. Неуязвимость. Бесконечный БК. Невидимость. Защита от зомби. Игроки:
      Телепорт игрока к администратору. Телепорт администратора к игроку. Телепорт в заданные координаты. Лечение. Очистка инвентаря. Выдача БК к текущему оружию(в руках). Заблокировать. Разблокировать. Убить. Отсоединить. Забанить(свой файл банов по UID) Создание объектов:.
      Фильтр при выборе раздела создания предметов(поиск по имени класса).  
      Другое:
      Админская карта. Дебаг монитор. Информационный виджет. Удаление объектов.(только при включенном дебаге - отображающем объект в прицеле).  
      Горячие клавиши:
      [        -     Вызов панели администратора. HOME     -     Вкл\Выкл отображения полосы отладки. DELETE   -    Удаление объекта в прицеле. 4  -    Телепорт по направлению взгляда. 5  -    Телепорт вверх. SHIFT+M - Карта администратора. F11 - Дебаг администратора.  
      Сообщения:
      Вывод сообщений игрокам, о действиях модератора(если в админке UID указан, как UID модератора).  
      Журналы:
      Действия администрации.  
      Стоимость:
      3500  
      Видео:( ВНИМАНИЕ! В ВИДЕО, ВНУТРИ ПАНЕЛИ АДМИНИСТРАТОРА, РАБОТАЮТ ТОЛЬКО ТЕ ПУНКТЫ КОТОРЫЕ УКАЗАНЫ ВЫШЕ! ОСТАЛЬНЫЕ ПУНКТЫ ДОБАВЛЕНЫ НА БУДУЩЕЕ, И МОГУТ БЫТЬ ИЗМЕНЕНЫ)
      P.S. Обновления платные - 25% от стоимости админки.
      Скайп: hf-trade