Модификация tes3mp #0 От начинающего - для не_совсем_начинающих.

Модификация tes3mp #0 От начинающего - для не_совсем_начинающих.

Доброго турдаса Вечерней Звезды всем мутсэрам и седурам!

В этой (пока что предполагаемой) серии публикаций я рассмотрю то, что сам знаю о внесении разнообразных изменений в тес3мп-сервер для Морровинда на примере своего собственного проекта. Я постараюсь рассмотреть как модификацию .lua файлов, так и редактирование .esp плагинов через инструментарий TES Construction Set.
Важно упомянуть, что я НЕ являюсь программистом, поэтому мои решения уровня новичка и наполнены костылями. Все предложения по доработке приветствуются)

Требования:

Я предполагаю, что у вас уже имеются работающий хотя бы по локальной сети чистый сервер (инструкций по запуску в сети довольно много, но в случае, когда что-то не получается - можете обратиться ко мне за помощью, см. Полезные ссылки в конце), любая среда разработки, поддерживающая Lua, а так же хотя бы один друг.

Итак, приступим!

Одна из важнейших и одновременно простейших вещей, вносящая разнообразие в сервер - это кастомные скрипты. Они используются как для модификации сетевой части игры (новый функционал для чата, уникальные взаимодействия между игроками, etc.), так и для изменения геймплея.

Рассмотрим именно второй пример: допустим, нам приглянулся скрипт для контроля появления ассасина Тёмного Братства. Скачиваем файл, и перемещаем в %корень_игры%\tes3mp\server\scripts\custom.

В данном примере настройки скрипта находятся прямо внутри основного файла (наиболее частый случай), поэтому не стесняемся открывать его и тыкать переменные в шапке файла.

Скрипты от Learwolf максимально юзер-френдли, он даже конфиги подписывает ^_^<br />
Скрипты от Learwolf максимально юзер-френдли, он даже конфиги подписывает ^_^

После того, как понравившиеся вам изменения внесены, вернёмся в папку scripts, и отредактируем файл customScripts.lua, чтобы подключить этот скрипт к серверу. Допишем строку:

dbFix = require ("custom.dbFix")

Скрипт подключен, и после перезапуска сервера начнёт работать.

Вы великолепны! Или...

На деле, то, что я сейчас рассказал - скорее тестовая часть, написанная языком "для бабушек". Вся информация отсюда укладывается в пару строчек адекватной инструкции, да и мне такой формат повествования не совсем нравится. В идеале представленная выше информация должна читаться с фейспалмом и "ты ещё как файл сохранять расскажи" - это значит, что дальнейшая информация дойдёт до вас наиболее эффективно. Если же нет - советую ознакомиться с синтаксисом Lua, или любого хотя бы отдалённо похожего ЯП, после чего приступать к делу.

Прекрасные скрипты пишет Learwolf - через них проще всего ознакомиться с тем, как примерно должен выглядеть неплохой (на мой взгляд) код для тес3мп.

А что дальше?

В следующей публикации я планирую рассмотреть модификацию стандартного скрипта guiHelper.lua для перевода, а так же добавления нового функционала по гибкому отображению локации, и создание .esp плагина на стандартный переведённых на русский язык мастерфайлах от 1С для добавления некоторых правок и забавностей в перевод.

Полезные ссылки:

Имхо, лучшая вики по игре

Дискорд-сервер моего проекта,
где меня проще всего найти

44
5 комментариев

Комментарий недоступен

3

Ну хз-хз, кто-то да играет)
Плюс проект ролевой, комьюнити мало, ещё больше было иначе
А вообще это как минимум весело - потыкать игровые
артефакты прошлого

2

Хотя ладно, сейчас онлайн ещё меньше, но сейчас и не прайм-тайм, плюс ивент только готовится)

1