Итак, позвольте представить вам мою последнюю разработку - спирит 1.9.
Если честно - я не планировал его делать, но меня как-то thambs попросил
для своего мода сделать дверь в трактрейне, потом еще что-то и в итоге
всех наработок набралось прямо-таки на новую версию.
Да еще какую! Это, пожалуй, самая стабильная и безглючная версия спирита
из всех, что вы когда-либо видели. Была проведена гигантская работа по
совместимости со старыми версиями и вычищению заведомо глючного кода,
который там появился с версии 1.4 от тупых арранджмодовцев и их
империалистических прихлебателей.
Поскольку на документацию и fgd у меня времени не осталось, я подробно
распишу прямо тут в теме, что нового в этом спирите, что было исправлено
и что наоборот убрано.
1. Файлы: pak0.pak содержит файлы необходимые для правильной работы
самого спирита и не может быть отчужден без соответствующей правки кода.
pak1.pak содержит карты-демки и примеры. Исходники карт находятся по
адресу spirit\devkit\map sources. Большой размер релиза обусловлен как
раз таки большим кол-вом демокарт.
2. Спирит 1.9 совместим со всеми демокартами, начиная от спирита 1.0.
Все эти демокарты находятся в архиве релиза и вы лично можете их
протестировать и убедиться что всё в порядке. Примечание:
gruntbattledemo работает правильно только при fps_max 50 и ниже.
Это не является багом голдсорса, ксаша или самого спирита. Скорее всего
это мапперская ошибка во времени вызова той или иной секвенции.
3. Исправлено гигантское кол-во ошибок, которые никто не удосужился
исправить еще со времен спирита 1.0. В частноти - исчезающие после
сейв-рестора лучи лазера на gatlinggundemo, вылет на карте migrainedemo,
вылеты после сейв-рестора на locusdemo и еще масса тому подобных ляпов.
В том числе и мерзкое зависание движка при попытке активировать кнопку
storm на spiritdemo (за это баг отдельное спасибо сисопу, конфузеду и
прочим дурачкам).
4. Возвращен renderfx reflection для обратной совместимости со старыми
версиями спирита. Теперь shinyfloordemo работает правильно. На
работоспособности зеркал данное исправление никак не отразилось.
5. Была возвращена на место система скриптовых секвенций из спирита. Правда это сделало невозможным прохождения спирита под хл, но зато все скриптовые демки самого спирита заработали как надо.
6. Были внесены мелкие улучшения исправления моего собственного кода, в
частности некоторые доработки Xash Weapon System и переписан
weapon_cycler, который теперь представляет собой полноценный генерик.
Достаточно указать ему в поле путь к w_, p_ или v_-модели. как он
загрузит все три штуки самостоятельно и притворится вполне настоящим
оружием, которое хоть и не может стрелять, но зато может проигрывать
секвенции, указанные в полях deploy, holster, primary и secondary
соответственно. Чтобы отобрать цыклер у игрока в энтите
player_weaponstrip появилось новое поле "generic", которое может
принимать значения 0 и 1. 0 - отобрать. 1 - оставить.
7. Новая энтить для управления поездом: train_setspeed. Позволяет плавно
наращивать или замедлять скорость трактрейна, а также делает
реверсивный ход.
8. То, о чём долго мечтали многие мапперы под hl1 - func_traindoor.
Специальная энтить, которая представляет собой дверку для трактрейна и в
отличие от объектов, приаттаченных обычным мовевитчем гарантированно не
отстанет от поезда, перейдет вместе с ним на следующий уровень и будет
открываться со сдвигом вперед и вправо (или назад и влево). Пример
использования func_traindoor и train_setspeed вы можете поглядеть на
новой демокарте tramtutor.
9. Новый mp3 плеер! В отличие от старого умеет играть mp3, wma, xm, it,
ogg и еще чота. Также позволяет грузить музыку прямо из паков и
поддерживает закольцованные треки (спавнфлаг 2) для уже привычного
ambient_fmodstream.
10. Данный спирит был тщательно протестирован не только под GoldSrc но и под Xash3D на предмет правильной работы.