Добавлен
Есть ли весомые причины выбрать именно луа или именно jass для создания карты? Типа- в луа мб меньше утечек и тп.
С учетом того, что в основном все делаю на гуи

Принятый ответ

Луа топ, а патч для него плохой, вот и думайте, для какой аудитории вы делаете карту. Если же в ваши карта и так и так никто не играет, то однозначно луа, удобно и полезно
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
19
4 года назад
0
Похожие вопросы:

ответ
правда в идеале хотелось бы иметь хот редеплой.
Имеется в виду в самой игре или что?
и по-хорошему, чтобы не затирались скрипты после пересохранения карты в предакторе
Для этого придется сначала вытаскивать скрипт из оригинальной карты, затем собирать твои скрипты + этот в один и пихать обратно. Это не сильно сложно.
setlocal EnableDelayedExpansion

if exist pid.txt (
    set /P pid=<pid.txt
    echo !pid!
    taskkill /F /PID !pid!
)

set map=output\map.w3x

mkdir output
xcopy ..\test_stuff_map.w3x %map%* /Y

"tools\MPQEditor.exe" add "%map%" "war3map.lua" "war3map.lua"
"tools\MPQEditor.exe" add "%map%" "testdialog.fdf" "TestDialog.fdf"
"tools\MPQEditor.exe" add "%map%" "ui_list.toc" "ui_list.toc"

set game=E:\games\Warcraft III Public Test\x86_64\Warcraft III.exe

start "" "%game%" -loadfile "%~dp0%map%" -windowmode windowedfullscreen %arguments%

for /F "TOKENS=2,3,*" %%a in ('tasklist /FI "IMAGENAME eq Warcraft III.exe"') do set MyPID=%%b
echo %MyPID% > pid.txt
Мой скрипт. Большая часть кода здесь отвечает за автоматический перезапуск игры.
ответ
например как быть с ситуацией когда this или объект используется как число?
this часто используется как число, например для сохранения на хэндл таймера.

ИМХО, структуры вообще лучше переписать изначально на lua.
ответ
Если убрать из карты блоки кода, все триггеры с "custom code" и очистить "custom code" карты то сменить можно.

0
32
4 года назад
0
Луа топ, а патч для него плохой, вот и думайте, для какой аудитории вы делаете карту. Если же в ваши карта и так и так никто не играет, то однозначно луа, удобно и полезно
Принятый ответ
0
32
4 года назад
0
Ну для гуишника - что то, что то, едино для гуишника. На офф патчах полно багов и проблем, карту писать новичкам сложно будет.
0
7
4 года назад
0
делай на луа и пиши как джасс себе секономишь время и нервов

ибо в луа все коротко (но надо знание джасс) и ненужно обнулять
0
24
4 года назад
0
Начать стоит с выбора версии игры - 1.26 или рефорж. Это разная аудитория, разный функционал редактора, разные проблемы и баги с которыми предстоит воевать.
В рефорже - однозначно луа, даже если на чистом гуи работать.
0
7
4 года назад
0
если ты в основном делаешь на гуй то оставайся ибо чтобы писать в луа нужно знать джасс(это не луа вовсе а джасс точно такой же просто короче)
0
7
4 года назад
0
Ельнур, можно знать Lua и не знать JASS, не вижу связи.
Вообще Lua еще и в доте используется, да и однозначно полезнее мертвого [за пределами wc3] JASS.
0
17
4 года назад
Отредактирован GetLocalPlayer
0
Луа позволяет переопределять GUI функции сохраняя их базовое назначение. Уже есть библиотеки, устраняющие все существующие в GUI утечки. Есть библиотека, переопределяющая хэш-таблицы, снимая с нее лимиты. Можно упростить для гуишника вызов функций из custom script секции. Ну и многое другое. И все это, как ты понимаешь, без каких-то сторонних препроцессоров, которые отнимаю время в процессе сохранения карты.
Да и Lua сам по себе просто работает много быстрее. Говорят что в новых версиях игры Jass код конвертируется в Lua автоматом, но что-то хз. У меня, по крайней мере, с версии 1.30 карта на Jass с парой десятков молний начинала дико лагать, а при переходе на Луа таких проблем не было.
Так что да, даже для гуишника есть достаточно причин переключить карту на Луа.
1
15
4 года назад
1
Есть один нюанс, который может быть важен человеку желающему постепенно осваивать код, но всё ещё работающему на gui. Это этап обучения когда ты конвертируешь свои gui конструкции и пытаешься вникнуть в суть работы и вносить изменения. В режиме луа конвертировать в текст не получится, а в режиме jass можно. Для меня вот когда-то это был важный этап обучения прежде, чем я полностью начал писать код без каких бы то ни было gui конструкций.
Но Lua на много перспективнее Jass, а что ещё важнее удобнее. Я однажды попробовав такие вещи как анонимные функции и создание крутых таблиц безо всяких там хэшей и прочее прочее никогда в жизни больше не притронусь к jass xD
0
24
4 года назад
0
В режиме луа конвертировать в текст не получится, а в режиме jass можно.
Всегда можно достать полный код карты и посмотреть там. Это чуть менее удобно, чем конвертирование на месте, но для этапа обучения терпимо, особенно в режиме папки, когда этот файл даже извлекать не надо самому.
1
32
4 года назад
1
DarkLigthing,на луа тоже возможно, я до сих пор так делаю для новых событий которые ещё никогда не использовал:
  1. Работает в режиме папки
  2. Создаёт гуи триггер и сохраняем карту
  3. Открываем War3Map.lua - смотрим код сконверченного триггера
4..... Проффит
0
7
4 года назад
Отредактирован Ельнур
0
PornoMishka:
Ельнур, можно знать Lua и не знать JASS, не вижу связи.
Вообще Lua еще и в доте используется, да и однозначно полезнее мертвого [за пределами wc3] JASS.
нельзя в варкрафте зная луа и не знать джасс потому что апи варкрафта, если ты знаешь луа ты знаешь джасс, а если ты знаешь джасс то знаешь луа другого нет, и вообще то луа варкрафта тоже мертво с таким рейтингом... это так начало чтобы поучиться, недаром все популярные игры вышли с варкрафта..
0
24
4 года назад
0
Ельнур, общего у жасс и луа только API варкрафта. Но язык это немного больше, чем API с которым он работает.
0
15
4 года назад
Отредактирован DarkLigthing
0
Bergi_Bear, prog,
Вы правы, посмотреть конечно можно. Но так не внести изменений в код, часто тому кто на GUI очень нужно освоить принцип локальных переменных. В GUI ведь ты их не создашь, а вскрытием War3Map.lua не получится их добавить или просто изменить код, наблюдение это ведь не полноценный процесс обучения, нужны эксперименты. А так после сохранения карты все изменения вернутся на круги своя.
0
7
4 года назад
0
движок старый винить близзардов нечего ибо даже с такими моделями все работает на старом
0
24
4 года назад
0
DarkLigthing, вставки кастомного кода отдельными строками никто не отменял, а конвертация гуи триггеров в код никак не помогает освоить локальные переменные - пользователю всеравно нужно где-то найти пример как это делается.
0
7
4 года назад
0
prog:
DarkLigthing, вставки кастомного кода отдельными строками никто не отменял, а конвертация гуи триггеров в код никак не помогает освоить локальные переменные - пользователю всеравно нужно где-то найти пример как это делается.
да, я например понял про локальные переменные когда при касте способности писал int = int +1 и при каждом касте он мне выдавал 1) значит что каждый раз он создает новую переменную ахахха
1
11
4 года назад
1
LUA - удобнее в плане синтаксиса, он более современнее. Но в плане обучения - удобней джасс. Джасс код ты можешь без проблем скомпилировать в карте и тебе если что то не так - выдаст ошибку. В LUA же, нужно быть намного внимательнее. Как по мне, LUA без знания не Jass, а каких то минимальных навыков работы с native функциями будет очень сложно.
0
26
4 года назад
0
wetalq:
он более современнее
1993г.
1
29
4 года назад
Отредактирован Doc
1
1993г.
Ага, тогда и современных операционных систем не бывает, ведь их первые версии тоже были выпущены в 80х.
Текущая версия луа, напомню, 5.3
0
26
4 года назад
0
Так с чем он его сравнивает? с другими ЯП? так они все появились 20+ лет назад.
И с тех пор все обновлялись, каждый по своему и со своей скоростью.
С чем он его сравнивает? с Jass?
Который сделан из Lua, и соответственно появился позже.
Он сравнивает Jass с Lua? который обновлялся раз в ~4 года.
lua
Lua 3.0 - 1997
Lua 4.0 - 2000
Lua 5.1 - 2014
Lua 5.3 - 2018
Jass ближе к оригиналу, но он не может быть ближе оригинала.
1
29
4 года назад
Отредактирован Doc
1
И с тех пор все обновлялись
Нет, не все
Который сделан из Lua, и соответственно появился позже
Что ты несешь?
Чтобы оставить комментарий, пожалуйста, войдите на сайт.