Вступление:
Целью написания плагина было заменить существующий плагин AMXX Spawnangle Bug Fixer (от Jonny Got His Gun), т.к. мой плагин работает полностью автоматически и не требует изменения конфигурационных файлов. Описание:
Это плагин позволяет автоматически исправить криво выставленные углы обзора точек,
в которых "рождаются" игроки, т.е. когда они при появлении в игре
упираются лицом в стену или другое препятствие.
Плагин обладает дополнительными возможностями (только для CS/CZ мода):
* делает дамп (выгрузку в файл) спаун-точек в формате CSDM 2.x
* делает перебалансировку спаун-точек (только для команды контр-террористов)
на картах, которые исходно не предназначены для мода CS/CZ; например, можно
играть в десматч (deathmatch) карты полными командами
Требования:
* AMX/X 1.7x или выше
* Engine модуль
* некоторые переменные поддерживаются только в CS/CZ моде (см. Историю
изменений)
Новые комманы:
* psp_fixer_delta <угол> (по-умолчанию=45.0)
величина угла (в градусах), которая используется в качестве инкремента
при вычислении лучшего угла, в направлении которого будет достигнута
наибольшая дальность видимой дистанции;
разрешенные значения: 360, 180, 90, 45 и 22.5
* psp_fixer_dump [<флаги>|?] (по-умолчанию=cth)
выгрузить информацию по спаун-точкам определенного класса в файл
в формате CSDM 2.x;
возможные в использовании флаги:
c, m - выгрузить спаун-точки контр-террористов (info_player_start класс)
t, d - выгрузить спаун-точки террористов (info_player_deathmatch класс)
h, v - выгрузить спаун-точки заложников (info_vip_start класс)
Чтобы отобразить справку по каманде, наберите в консоли
"psp_fixer_dump ?" (без кавычек)
Новые переменные (cvar):
* amx_psp_fixer <0|1> (по-умолчанию=1)
включить/выключить плагин; требуется перезапуск карты
* psp_fixer_threshold <число> (по-умолчанию=150.0)
минимальная видимая дистанция в направлении по-умолчанию, при которой
не будет активироваться алгоритм исправления угла видимости для
заданной спаун-точки
* psp_fixer_rebalance_mode <-1|0|1> (по-умолчанию=-1)
режим балансировки CT/T спаун-точек:
-1 - автовыбор: балансировка активируется если включен CSDM мод
0 - всегда отключена
1 - всегда включена (не рекомендую включать для CS/CZ карт)
* psp_fixer_rebalance_threshold <число> (по-умолчанию=1)
максимальная разница в количестве CT/T спаун-точек, при которой
пропускать алгоритм балансировки; например, обычная карта CS содержит
16 точек для CS и 16 точек для T, т.о. T - CT = 0, следовательно
не делаем балансировку; DM карта имеет, к примеру, 19 точек для T
и 1 точку для CT, т.о. 19 -1 = 18, что больше порога по-умолчанию 1,
значит выполняем алгоримт балансировки спаун-точек
* psp_fixer_rebalance_flags <флаги> (по-умолчанию=a)
настройки алгоримта балансировки:
a - отключать оригинальные спаун-точки для CT при активации баланировки
Известные ошибки и недочеты:
* psp_fixer_delta сбрасывается при каждом перезапуске карты, потому что
это на самом деле команда; т.о. чтобы значение запоминалось, поместите
ваш вариант вызова команды в файл amxx.cfg
История изменений:
0.3.2 [2006-01-27]
* испралвен дамп точек в CSDM формате; были перепутаны углы взгляда и модели
* исправлено неправильное использование результата функции trace_line()
* использование pcvar (оптимизация)
0.3.1 [2006-12-21]
* плагин портирован с AMX Mod 0.9.9 на AMX Mod X
0.3.0 [2006-11-28]
+ добавлена возможность балансировки спаун-точке для Не CS карт
+ новая cvar 'psp_fixer_rebalance_mode' (только для CS)
+ новая cvar 'psp_fixer_rebalance_threshold' (только для CS)
+ новая cvar 'psp_fixer_rebalance_flags' (только для CS)
0.2.1 [2006-11-19]
! use get_basedir() instead of hardcoded path to AMX Mod
0.2.0 [2006-11-17]
+ support of dumping spawn points into CSDM data file with
new 'psp_fixer_dump' console command (both CSDM versions - 1.70 and 2.x -
are suported; it's autodetected)
* changed command 'psp_fixer_delta' to be run from any console
0.1.1 [2006-11-16]
! fixed use of uninitialized values in arrays
0.1.0 [2006-11-07]
* first public beta release
0.0.1 [2006-11-06]
* alpha version
Скачать плагин
Есть также версия 0.2.0 этого плагина для AMX Mod 0.9.9 и старше. См. здесь:
http://djeyl.net/forum/index.php?showtopic=52755