Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  1. 123new

    123new

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

    • Автор: AKuznecov
      Доброго времени всем суток, с вами Андрей и сегодня я познакомлю вас с небольшим гайдом о том как переводить предметы на мировые языки из других модификаций но и свои собственные. Для этого нам понадобиться:
      1. Программа Notepad++ которую легко и просто можно скачать в интернете.
      2. Знания о том как устроена таблица csv по сути это Excel таблица просто и не более того.
      3. Разбинарщик файлов config.bin есть в стандартном наборе инструментов DayZ Tools. Найти его можно в этой папке \DayZ Tools\Bin\CfgConvert . Представляет из себя bat файл, его задача переконвертация из bin в cpp. Также можно использовать программу Unrap работает точно так же. Что 1 что 2 программы работают одинаково. Для этого надо перенести файл config.bin на 1 из 2 программ и всё сделается автоматически за вас. 
      4. Также понадобиться PBO Manager 1.4 для открытия архивов dayz.
      5. Отдельная папка для хранения наших
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

      Не страшитесь его он не такой уж и страшный как может показаться на первый взгляд. В нём все понятно до мелочей. В таком виде он нам и понадобиться, но чтобы данный файлик заработал как отдельный Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

      В самом вверху таблицы есть строка языков на которые можно перевести наши предметы. Языков может быть много поэтому я использую основные: Английский, Чешский, Немецкий, Русский, Польский и Венгерский, в вашем случае можете оставить какой нибудь один но лучше 2 языка с которыми вы будете работать и переводить. Шаг 3. Как я и говорил перевод предметов осуществляется в таблице csv но также и в config.cpp где данный перевод и задается следующими строчками: displayName и descriptionShort 1-я отвечает из игровое название предмета, а 2-я за перевод самого предмета для лучшего понимания что это такое.  Задание перевода предмета в config.cpp в строках displayName и descriptionShort должно начинаться с "$STR_название_предмета" без знака $ игра попросту пропустит и будет название STR_название_предмета. Не забывайте что нельзя писать по русски в данных строках если используйте $STR_ только английские слова. Для примера возьмем класс 
      class CfgVehicles { class Inventory_Base; // External class reference class BBP_T1_WallKit : BBP_KIT_BASE { scope = 2; displayName = "Tier 1 Wall Kit"; descriptionShort = "A tier 1 wall construction kit. Place on the ground to begin construction."; model = "\BaseBuildingPlus\models\construction_kit\BBP_T1_ConstructionKit.p3d"; rotationFlags = 0; isMeleeWeapon = 0; weight = 300; absorbency = 0; itemSize[] = {4, 2}; lootCategory = "Materials"; reversed = 0; itemBehaviour = 2; }; }; Мы видим что в строке displayName есть название предмета. а в строчке descriptionShort перевод на английском языке. Писать просто можно на любом но и видеть вы и другие игроки будут только на том языке что вы написали, для этого нам и нужна таблица csv. Из описания следует что это набор 1 уровня строительства то есть дерево, как я это понял потому что посмотрел в игре что это дерево вот и всё. Для того чтобы перевести наш предмет на другой язык нужна как я и говорил таблица csv поэтому и записываем в файл config.cpp следующее:
      class BBP_T1_WallKit : BBP_KIT_BASE { scope = 2; displayName = "$STR_BBP_T1_WallKit0"; descriptionShort = "$STR_BBP_T1_WallKit1"; }; Шаг 4. Как видно я прописал в строчках displayName и descriptionShort название и описание предмета поставив соответствующий тег $STR_название_предмета. В конце строчек у меня есть 0 и 1 для себе 0 - название предмета; 1 - перевод, в вашем случаи может быть всё что угодно. В файле config.cpp это всё игра будет видеть только что написано в строках displayName и descriptionShort с соответствующим тегом, смотриться это конечно в игре не очень. Поэтому данные строчки переносим в таблицу перевода csv. Добавляем только название без знака $ только STR_название_предмета. В файле csv всё должно начинаться с кавычек и заканчиваться запятой на конце перевода иначе никак.

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

      Шаг 5. Переписываем верхние оригинальные строчки под наш мод. Для удобства я переписал под папку с названием. И не забываем добавить проверочный аддон в строчке requiredAddons[] = {"BaseBuildingPlus"};
      Шаг 6. Пакуем всё это дело Addon Builderoм не забывая об добавлении нового расширения файла в разделе OPTIONS>General *.csv; Если будут ошибка ставим галочку напротив Enable extented logging - Включить продвинутое логирование и тогда аддон билдер укажет на ошибку в определенной строчке. Незабываем проверять закрывающие }; иначе будут ошибки
      Шаг 7. На выходе получаем готовый архив но без подписи, о том как делать подписать на архив где-то была на сайте думаю вы сможете найти. У себя я лично давно подписываю автоматом архивы.
      Шаг 8. Подключаем Аддон на сервер и на клиент и всё должно работать как часы. Я не стал показывать этот процесс

      Надеюсь вы поняли как переводить предметы на другие языки из других модов или свои.
      P.s. Если что-то будет не понятно пишите сюда разберемся вместе
       
    • Автор: RedLink
      Всем Привет.
      Представляю вам систему логирования действий игроков и т.д. по принципу InfiSTAR.
      Для установки вам понадобятся кастомный compiles.sqf (тем кто не знает как это сделать, -> поиск по форуму).
       
      1. Открываем в серверной части файл dayz_server\init\server_functions.sqf и в самом низу вставляем:
      "SK_log" addPublicVariableEventHandler {(_this select 1) call fnc_Log;}; 2. Теперь открываем в папке с миссией файл compiles.sqf и ищем что-то в этом плане:
       
      if (!isDedicated) then { блаблабла }; и после него вставляем
      fnc_log = { private ["_fileName","_message","_dll","_dll2","_display"]; _fileName = toLower (_this select 0); _message = _this select 1; _display = if (count _this > 2) then {_this select 2} else {false}; if (!isDedicated) then { SK_Log = [_fileName,if (typeName _message == "ARRAY") then {_message} else {toArray _message},_display]; publicVariableServer "SK_Log"; } else { _message = if (typeName _message == "ARRAY") then {toString _message} else {_message}; if (_display) then {diag_log format ["[%1] %2",toUpper (_fileName),_message];}; _dll2 = format["!InfiSTAR_Logs~%1~%2",_fileName,_message]; "LogDLL" callExtension _dll2; }; }; где "!InfiSTAR_Logs" - ваша папка, куда вы хотите складировать логи.
       
      3. Открываем файл publicVariable.txt в фильтрах Battleye и в первой строке "5 !=блаблабла" в конце добавляем "!=SK_Log" (пример ниже)
      5 !"donn_heli_monitor" !"fnc_log" !=fnc_log !"redHunter" !=redHunter !"cad_pvar_s" !"PVDZE_veh_Update" !="PVDZE_veh_Update" !="PVDZE_adminevents" !="PVDZ_plr_Death" !"PVDZ_plr_Death" !="PVDZE_atp" !"PVDZE_atp" !"PVDZ_plr_LoginRecord" !="PVDZ_plr_LoginRecord" !"PVDZE_log_lockUnlock" !=PVDZE_log_lockUnlock !"redHunter" !=redHunter !"redDiagLog" !=redDiagLog !="PVDZE_atp" !=(remExField|remExFP) !=(PVCDZ_obj_GutBody|drn_AskServerDynamicWeatherEventArgs|BIS_effects_gepv|achievement|dayzFlies) !=PVDZ_(drg_(RaDrag|RaLW|RLact)|getTickTime|hlt_Bleed|obj_(Delete|Publish|RoadFlare|Destroy|Fire)|veh_Save|veh_SF) !=PVDZ_(plr_(Death|Login[12]|LoginRecord|Save|SwitchMove)|Server(_Simulation|StoreVar)|sec_atp) !=PVDZ_(playerMedicalSync|object_replace|groupInvite) !=PVDZ_(send(|Unconscious)) !=PVDZ_Server_(buildLock|LogIt|UpdateGroup) !=PVDZ_Server_process(Code|SetAccessCode) !=PVDZ_objgather_(Delete|Knockdown) !=PVDZE_(obj_(Delete|Publish|Swap|Trade)|fullobj_Publish|maintainArea|veh_(Lock|Publish2|Upgrade)|handleSafeGear|plr_(DeathB|FriendRQ|TradeMenu)) !=PVAH_AdminReq !=PVAH_WriteLogReq !=PVAHR_0_[a-zA-Z0-9]{20,40} !"PVAHR_" !="PVAH_AdminReq" !="PVAH_WriteLogReq" !=PVAHR_0_[a-zA-Z0-9]{20,40} !="PVDZE_(query|store|spawn)Vehicle" !="PVDZE_PingSend" !="PVDZE_veh_Init" !"SK_Log" !=SK_Log  
      4. А теперь самое главное.
      Пример вывода лога в отдельный файл. Возьмем для примера файл смерти игрока от тех или иных причин.
      Открываем в серверной части файл server_playerDied.sqf и ищем там строку
       
      diag_log format["%1 (%2) %3 @%4 %5",_playerName,_playerID,_message,mapGridPosition _pos,_pos]; после нее вставляем
      ["DEATHS",format ["%1 (%2) %3 @%4 %5",_playerName,_playerID,_message,mapGridPosition _pos,_pos],true] call fnc_log; Таким образом в указанной в папке в п. 2 создатся файл deaths_блаблабла.txt, в котором будет отображен лог о смерти игрока по тем или иным причинам.
       
      Формат записи лога выглядит следующим образом:
      _message = format ["Что хочу то и пишу и хочу видеть значение %1",_значение%1]; ["ИМЯ_ФАЙЛА_ЛОГА",_message,true] call fnc_log; или напрямую
      ["Имя_файла_лога",format ["тут будет то что в значении %1",_значение%1],true] call fnc_log;  
      Представляю варианты 4-х DLL, которые работают для этой системы (качаете любую из них и переименовываете в LogDLL.dll). Эту DLL необходимо закинуть в папку с игрой (например в C:\Games\Arma 2 Operation Arrowhead).
      LogDLL.dll создает в папке с логами отдельную папку по названию лога.
      LogDLL_-_dd-MM-yyyy и иные ее интерпретации - создает в папке с логами отдельную папку с датой, в которой хранятся все логи за эту дату.
       
      Если есть вопросы, задавайте.
       
      Оригинал данного скрипта и ссылки на разработчика ниже.
      Копирайта

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • Автор: RedLink
      Всем привет.
      Возник один вопрос, который пока не могу догнать как решить.
      Суть следующая. В последней версии Инфистара есть код, который выводит логи в отдельную папку
      Путем нехитрых манипуляций добавляем ему вывод лог в отдельную папку с датой (ибо надоел тот кошмар, что там за 5 дней скапливается)
      А вот теперь сам вопрос.
      Если переменная dayz_ForcefullmoonNights = true;
      то создается папка с датой, которая указана в server_monitor.sqf - т.е. 2012,8,2 - что в принципе логично.
      А вот если dayz_ForcefullmoonNights = false; - то создается папка с датой, которая указана в mission.sqf (в моем случае это 2008,10,1. Хотя по логике должна присваиваться реальная дата, которая берется из того-же server_monitor при проверке на dayz_ForcefullmoonNights, т.к. в логе сервера мы видим, что TIME SYNC текущая дата сервера.
      Почему так происходит и как это можно поправить?
    • Автор: Onechot255
      2 дня пытаюсь пофиксить, без понятия.
      rpt:
      log:
      extdb:
       
      Причем в конфиге Use MPInterrupt check _UMP = false;
      Другие игроки нормально заходят, сервер на локалке
    • Автор: ro1and
      Помогите найти статус бар. Видел его на нескольких серверах, но ни здесь, ни на exilemod.com найти не получилось)
      Скриншот конечно так себе, но на данный момент лучше не могу найти.
      Заранее спасибо.
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.