При попытке скомпилировать карту через jasshelper.exe или clijasshelper.exe с использованием Wine (дело происходит на линуксе) - карта компилируется без ошибок, однако итоговый файл перестает запускаться через игру.
При попытке сохранить карту через JNGP (все на том же линуксе, через тот же вайн) - карта спокойно компилируется и работает в дальнейшем.
В карте присутствует мемхак от анрайза, pjass.exe заменен. Скрипт для компиляции прилагаю:
CUR_DIR=$(pwd)
FILE_NAME="test.w3x"
FILE_PATH="$CUR_DIR/$FILE_NAME"

cd ../../apps/JNGP/jasshelper
cp $FILE_PATH .
wine ./jasshelper.exe --nooptimize common.j Blizzard.j $FILE_NAME

Я использовал параметр --scriptonly и передавал jasshelper'у только файлы со скриптом, а извлекать/добавлять файлы можно через Ladik MPQ Editor.
`
ОЖИДАНИЕ РЕКЛАМЫ...
19
Я использовал параметр --scriptonly и передавал jasshelper'у только файлы со скриптом, а извлекать/добавлять файлы можно через Ladik MPQ Editor.
Принятый ответ
Ответы (1)
8
Обдумав ваш ответ пришел к следующему решению (надо учитывать, что я еще до создания вопроса решил перетащить весь код из карты в отдельные файлы для удобного редактирования и нормального отображения коммитов):
  1. Достал из карты war3map.j, вытащил из него функции main, config и все с ними взаимосвязанные
  2. Переместил эти функции в файл war3map.vj в отдельную директорию scripts
  3. В директории scripts меня уже дожидались все вытащенные скрипты из карты
  4. При помощи vJASS импортировал в файл war3map.vj - основной скрипт init.vj
  5. Переработал свой скрипт под использование не только jasshelper но и mpqeditor (спасибо прекрасной доке от nazarpunk)
  6. И вуаля, теперь при изменении кода в карте у меня всё компилируется и закидывается в w3x архив, после чего я могу врубать варкрафт и тестировать то, что наклипал
Итоговый скрипт прилагаю:
MAP_NAME="cursedwar.w3x"

CUR_DIR=$(pwd)
FILE_NAME="war3map.vj"
OUT_FILE_NAME="war3map.j"
FILE_PATH="$CUR_DIR/scripts/$FILE_NAME"
JASS_HELPER_DIR="../../apps/JNGP/jasshelper"
MPQ_EDITOR_PATH="../../apps/MPQEditor/x64/MPQEditor.exe"

wine $JASS_HELPER_DIR/jasshelper.exe --nooptimize --scriptonly $JASS_HELPER_DIR/common.j $JASS_HELPER_DIR/Blizzard.j $FILE_PATH $OUT_FILE_NAME &&

wine $MPQ_EDITOR_PATH /add $MAP_NAME $OUT_FILE_NAME
Если кому-то понадобится, то более подробно с этой шляпой можно ознакомится в репозитории
Чтобы оставить комментарий, пожалуйста, войдите на сайт.