Перейти к содержанию
AziatkaVictor

LTX Support: Поддержка синтаксиса CoP

Рекомендуемые сообщения

 

Icon.png


GitHub Readme Releases Download


Расширение для Visual Studio Code, которое добавляет поддержку синтаксиса логики из S.T.A.L.K.E.R. Call of Pripyat.

Roadmap:

  • Предложение переменных локализации
  • Поддержка файлов с секциями квестов, сквадов, смартов, предметов, персонажей
  • Оптимизация алгоритма анализа функций логики
  • Кастомизация документации
  • Заготовки с кусочками кода
  • Анализ документа на ошибки
  • Полноценная документация для функций логики
  • Помощь с переменными у функций
  • Подсветка особых типов данных (переменные, аргументы)

Сборка расширения:

Чтобы собрать расширение самому, необходимо:

  1. Скачать исходники с помощью git clone, потому что я не рекомендую вам компилировать на файлах, которые лежат в папке со скаченным расширением. Лучше лишний раз перестраховаться.
  2. Открыть проект, запустить в консоли npm install или нажать ПКМ на package.json в спойлере NPM Scripts и нажать на пункт Run install.
  3. После установки всех необходимых библиотек, необходимо нажать Launch во вкладке Run and Debug или на горячую клавишу F5.
  4. Готово. Должно открыться новое окно VS Code, в котором будет 2 тестовых файла.

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


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

Как по мне - хорошая идея. Думаю, будет весьма полезным подспорьем как новичкам, так и опытным модмейкерам. Жду с нетерпением релиза! (Ну или хотя-бы ОБТ)

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


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

Нужно конечно. Хотя бы для программистов, для меня к примеру. Всё пользуется спросом.


"Победа - это еще не всё, всё - это постоянное желание побеждать" - Винс Ломбарди.
"Ваше время ограничено, не тратьте его, живя чужой жизнью" - Стив Джобс.
Global Modification. Clear Sky: Reload

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


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

Выпустил патч 0.1.3.

Многие мелкие ошибки были исправлены, ну и добавлены некоторые небольшие дополнения. Подробнее на GitHub. Качайте, пробуйте, пишите фидбек: Ссылка

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


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

Notepad++ уже не в моде. Чет сложное юзают

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


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

aka_sektor просто тут можно не только подсветку синтаксиса реализовать, но и различные функции - проверка на ошибки, автодополнение функций и переменных. Если это никому не надо, то да, Notepad++ тоже сойдет.

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


Ссылка на сообщение
Поделиться на другие сайты
 
7 минут назад, AziatkaVictor сказал:

проверка на ошибки

Ты ведь в курсе, что ltx файлы идентичны формату ini ? Думаю велосипед придумывать нету смысла.

9 минут назад, AziatkaVictor сказал:

автодополнение функций и переменных

Не совсем понимаю, о чем речь. Типа, как в редакторах, выпадающее меню?

10 минут назад, AziatkaVictor сказал:

никому не надо

Вопрос удобства, простоты и скорости лишь. 

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


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

aka_sektor вся информация написана тут: https://github.com/AziatkaVictor/ltx-support#readme

И нет, *.ltx не идентичен *.ini файлам. Все чем он может быть похож, это наличием секций и параметров, не более.

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


Ссылка на сообщение
Поделиться на другие сайты
 
14 минут назад, AziatkaVictor сказал:

*.ltx не идентичен *.ini файлам

Обоснуй

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


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

aka_sektor ну потому что есть такой файл:

image.png

А еще я описывал, какая структура у параметров, на примере одной из строк:

image.png

Так же стоит учитывать, что тот же condlist можно еще разложить, на предусловие, функции и ссылку на секцию. Сигналов может быть кстати несколько, для каждого condlist-а, а для некоторых параметров надо писать 2 или более значений в сигнале. Так же можно наследовать секции, чего в оригинальном ini я не увидел. Возможно я слепой, не могу отрицать.

Ну и так далее, можно много различий найти. Но да, ltx наследует некоторые фишки у ini, но они не идентичные.

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


Ссылка на сообщение
Поделиться на другие сайты
 
39 минут назад, AziatkaVictor сказал:

файл

Так и что не так? 

473390995__2022-09-12_162911063.png.31f6d941562897dfffdc10d2a82e9232.png

40 минут назад, AziatkaVictor сказал:

структура у параметров

Речь о task manager'е? Ну разве что только, для удобства было бы неплохо.

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


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

aka_sektor логика написана на ltx, и расширение я писал опираясь на это. Чтобы мододелам упростить жизнь тем, что некоторая инфа была доступна прямо в редакторе, ибо сам не раз искал как называется функция или нужная переменная. Вот например, что я хотел сделать и что отчасти сделал:

  • Предложение функций из xr_effects.script (То есть, все функции логики ищутся автоматически, что позволяет использовать кастомные)
  • Различные данные, которые будут храниться в памяти: список сквадов, переменных из локализации, предметов, инфопоршней, стори айди и так далее, зависит от того, как это будет реализовано. Вот как пример:
    Snipaste_2022-06-10_23-58-25.png
  • Анализ структуры кода и поиск на ошибки:
    Snipaste_2022-06-10_23-53-40.png
  • Вот еще например, расширение понимает, откуда я взял функцию логики и может проверять, действительно ли есть функция, которую я хочу вызвать.Snipaste_2022-06-10_23-52-44.png
  • Ну и документация, конечно же. Где можно описать многие вещи, которые новички не понимают.

Ну и так далее. Развивать можно сколько угодно, всё упирается только в реализацию и структуру геймдаты.

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу