воскресенье, 27 октября 2019 г.

Отладка в M.U.G.E.N. 1.1 (Debug). Командная строка. Недокументированые параметры командной строки


Полагаю, что многие из вас, кто занимаются программированием движка M.U.G.E.N., знают, что можно запускать муген через командную строку с различными параметрами, к примеру:

mugen.exe -p1 "kfm" -p2 "kfm" -p2.ai 1 -p2.color 2 -s "stage0" -r "big" -rounds 3

Запуск с такими параметрами даст вам возможность поиграть персонажем "kfm" против его искусственного интеллекта в режиме quick vs, причем они будут с разными палитрами, на арене stage0.def в скринпаке big в течении трёх раундов. Данный вариант запуска очень полезен при создании и редактировании персонажей, арен, скринпаков (таким же образом тестируется ваш персонаж при работе с Fighter Factory), поскольку запуск происходит значительно быстрей, чем полный запуск сборки. Ниже приводится список параметров командной строки для M.U.G.E.N. версии  1.1:






-p[1-4] "kfm" - Имя игрока (лучше всего заключать его в кавычки). Всего может быть до 4 игроков (IKEMEN GO PLUS поддерживает, на момент написания статьи, до 8 одинаковых). Не забудьте убрать скобки при - запуске они не нужны)));
-p[1-4].ai 1 - Включение искусственного интеллекта (ИИ) для игрока. Каждому игроку включается отдельно аргументом 1 (см. пример выше);
-p[1-4].color 2 - Палитра персонажа. Обычно у персонажей до 12 палитр, которые можно выбирать при запуске в игре при выборе персонажа с помощью кнопок A B C X Y Z либо комбинацией этих кнопок с кнопкой START. В примере - вторая палитра;
-p[1-4].life - Количество энергии персонажа (устанавливается редко, по умолчанию равно значению константы data.life вашего игрока - обычно1000). Можно в качестве параметра передать значение 9999999 - тогда энергия не закончится никогда))));
-p[1-4].power - Количество силы персонажа (которая необходимо для выполнения гиперударов и некоторых спецприемов. По-умолчанию, равна нулю, накапливается по мере боя). Максимальное значение данного параметра - значение константы data.power вашего игрока (обычно 3000), больше, в отличии от -p.life, установить не получиться;
-s "stage0" - Параметр для запуска боя на определенной арене - в данном случае stage0.def;
-r "big"- Параметр для запуска игры с определнным вариантом офрмления (motif, screenpack, располагаются в папке data). В нашем примере - big;
-h или -?  - Помощь по командам;
-rounds 3 - Количество раундов, после которых программа автоматически закроется. По-умолчанию игра не ограничена по раундам;
-log - При указании имени файла (logfile) после данного параметра в него произойдет запись отчета (лога) - служебной информации. Не совсем понятно назначение параметра, поскольку при любом его значении служебная информация сохраняется в файле mugen.log в папке с мугеном.  

Кроме этих также существуют отладочные параметры, которые обычно не используются в игре. Дополнительных аргументов не требуют. Вот они:

-nojoy - Отключение поддержки геймпада;
-nomusic - Отключение музыки:
-nosound - Полное отключение всех звуков. 

Официальная помощь по параметрам командной строки на этом исчерпывается. Однако, существует несколько недокументированных отладочных команд, которые мне удалось обнаружить, воооружившись HEX-редактором. Вот они:

-ailevel [1-8] - Позволяет установить уровень сложности ИИ (если ИИ не включен для персонажа - параметр ничего не делает). По своей сути, это установка триггера AILevel в определенное значение. 
-gamedir "d:\Games\M.U.G.E.N\mugen_test" - Параметр для запуска персонажей/арен/скринпаков из других папок с мугеном той же версии (данный путь указан как пример). Можно, к примеру, запустить персонажа не из собственной папки chars, а из другой сборки. Аргументом служит строка - полный путь.
-sessionseed N - Инициализация генератора случайных чисел (RNG) числом N. После этого в логе можно посмотреть в строке "Session RNG seed is ...", в которой вместо троеточия будет стоять ваше число N. При установке в ноль не даёт ничего. .
-speed [-9...9] - Позволяет менять скорость игры: -9 - самая медленная, 0 - стандартная скорость, 9 - наиболее быстрая.  
-speedtest - Тест скорости для движка. Никаких дополнительных аргументов не требует. Игра запускается с максимально возможной скоростью, вывод на экран иногда отсутствует совсем либо отдельными кадрами, иногда игра заканчивается ошибкой. Если запускать без персонажей, то можно услышать шум боя и игра завершается ошибкой либо, в итоге, зависает;  
-stresstest 1 - Стресстест для движка. Похож на -speedtest режим, но есть отличия - вместо тебя играет ИИ, вне зависимости от выбора режима игры в меню - аркада, выживание, тренировка. Выбор персонажа осуществляется автоматически, как и выбор типа single/simul/turns. Возможен и запуск Quick vs;
-storyboard "chars/kfm/intro.def" - Просмотр интро, в данном случае - персонажа kfm. Неплохая вещь для проверки intro, ending, logo и т.п. После окончания просмотра - автоматически закрывается.  

Это все параметры, которые удалось обнаружить. Напишите в комментариях, если знаете еще какие-то. До следующих встреч.

1 комментарий:

  1. Grand Sierra Resort Casino & Spa - Mapyro
    MapYRO Real-time 부천 출장샵 driving directions 정읍 출장안마 to Grand Sierra Resort Casino & Spa, 25 S Lake 평택 출장샵 Tahoe, 울산광역 출장샵 based on live traffic updates and road 동해 출장샵 conditions – from Mapyro

    ОтветитьУдалить