Инфо:
С помощью API данного модуля Вы можете создавать свои плагины, добавляющие новые разновидности оружия и боеприпасов в игру. Для создания новых пушек Вам потребуются лишь базовые навыки и знания по написанию скриптов для АМХХ.
Данный модуль сам по себе не добавляет оружие на сервер, а лишь позволяет создавать и использовать плагины на АМХХ непосредственно реализующие оружие. Как добавить оружие читайте в следующем посте.
Поддерживаемые моды:
Максимум добавляемых оружий:
- По умолчанию: 17
- С блокировкой стандартных: 31
TODO:
Скриптерам:
Благодарности:
- AMXX Dev team - за отличную систему администрирования.
- Arkshine - за поддержку и помощь.
- 6a6kin - за исходники модуля AntiJos.
- GordonFreeman - за помощь в тестинге.
- Koshak - за поддержку и помощь в тестинге.
- Lev - за постоянную поддержку.
- noo00oob - за идею с добавлением нового оружия.
- Valve - за замечательную игру и СДК к ней.
А также:
История версий:
0.8
+ Рефакторинг и оптимизация кода.
+ Добавлена поддержка последних стим апдейтов для хл.
+ Новый хук: Fwd_Wpn_ItemPostFrame.
+ Добавлены нативы:
wpnmod_trace_texture
wpnmod_get_offset_cbase
wpnmod_set_offset_cbase
+ Возможность сброса think/touch функций для энтить с помощью wpnmod_set_[think/touch] нативов.
+ Кастомные ручные гранаты при высокой скорости наносят жертве урон, как и оригинальные.
+ Инклюд beams.inc обновлен до версии 1.2.
* Исправлена ошибка парсинга vtable оффсетов из конфигов.
* Натив wpnmod_get_weapon_info теперь работает корректно.
0.7 (251 downloads)
+ Добавлена поддержка следующих модов:
Adrenaline Gamer,
Adrenaline Gamer Mini,
Opposing Force.
+ Новая система настройки модуля.
+ Полная поддержка режима от первого лица в спектаторе.
+ Автоматическое переназначение занятых слотов для пушек.
+ Возможность блокировки стандартных оружий и аммобоксов.
+ Лимит оружий повышен до 17 (с полной блокировкой стандартных итемов лимит увеличивается до 31).
+ Добавлен эквипмент менеджер, позволяющий выдавать начальные итемы и аммо игрокам на спавне.
+ Новый хук: Fwd_Wpn_AddToPlayer2.
+ Добавлены нативы:
wpnmod_decal_trace
wpnmod_get_damage_decal
wpnmod_set_anim_ext
wpnmod_get_anim_ext
wpnmod_get_weapon_info
wpnmod_get_ammobox_info
wpnmod_get_weapon_count
wpnmod_get_ammobox_count
wpnmod_explode_entity
wpnmod_fire_timed_grenade
wpnmod_fire_contact_grenade
wpnmod_radius_damage2
* Исправлена ошибка регистрации 31-го по индексу оружия.
* Команда "give" теперь работает корректно при sv_cheats 0.
0.6
+ Добавлена поддержка linux серверов.
+ Добавлены новые нативы:
wpnmod_set_touch,
wpnmod_clear_multi_damage,
wpnmod_apply_multi_damage.
+ Поддержка читерской команды "give".
+ Вместе с модулем теперь идет инклюд beams.inc.
* Испрален баг, менявший игрокам тимы в режиме тимплея (linux).
* Исправлена некорректная обработка квара mp_weaponstay.
0.5
+ Дополнительные оффсеты, в которых можно хранить свои данные (также применимо к кастомным энтитям, созданным через "info_target" способ).
+ Нативы wpnmod_get_player_ammo и wpnmod_set_player_ammo.
+ Новое событие для хука: Fwd_Wpn_AddToPlayer.
* Натив wpnmod_set_think теперь можно применять к кастомным энтитям, созданным через "info_target" способ.
0.4
+ Возможность спаунить итемы из INI файлов (плагин Items Spawner больше не требуется).
+ Несколько новых оффсетов для нативов.
* Исправлена установка размеров для аммобоксов при их спауне.
0.3 Beta
+ Поддержка Bugfixed and improved HLSDK: http://aghl.ru/forum/viewtopic.php?f=32&t=689
+ Спаун итемов из bsp файла мапы.
+ Квар для идентификации модуля.
+ Поддержка читерской команды "impulse 101" (работает только при "sv_cheats 1").
* Исправлены неточности в hl_wpnmod.inc.
0.2 Alpha
* Автозагрузка модуля теперь работает корректно.
* Модуль больше не требует mvscr100.dll.
0.1 Alpha
Первый публичный релиз.
Установка Тут все очень просто - извлеките архив с модулем в соответствующую папку на Вашем сервере (с заменой файлов в случае необходимости). Все, на этом установка модуля окончена. Примечание: Не следует прописывать модуль на принудительную загрузку в конфигурационный файл amxmodx\configs\modules.ini, иначе сервер не будет корректно функционировать. После этого следует установить плагины, добавляющие оружие и распределить новое оружие и патроны для него по карте.
Настройка Конфигурационные файлы модуля находятся в директории amxmodx\configs\weaponmod. Основным конфигаруционным файлом здесь является weaponmod.ini. В нем Вы можете настроить блокировку стандартных оружий и аммобоксов, а также установить выдачу начального оружия и боеприпасов игрокам при спавне. Также присутствует возможность настройки конфигов под определенные мапы. Например, для карты crossfire дополнительный конфиг должен иметь следующее имя: weaponmod-crossfire.ini Подробная настройка weaponmod.ini:
Конфиг разбит на три секции с настройками: equipment, ammo и block. Также учтем, что строки, начинающиеся с символа ; являются комментариями конфига. Итак, давайте подробно рассмотрим каждую из секций настроек:
- [equipment] В данной секции Вы можете настроить выдачу оружия и боеприпасов игроку на спавне. Имеет следующий синтаксис:
Код:
Класснейм итема : количество
Готовый пример:
Код:
[equipment]
weapon_sporelauncher : 1
ammo_spore : 5
weapon_9mmAR : 1
item_longjump : 1
В данном случае, при спавне, игрок получит Spore Launcher, пять "спор" для него, а также автомат MP5 и Long Jump модуль.
- [ammo] Здесь вы можете установить заданное количество указанного аммо для игроков при спавне. Имеет следующий синтаксис:
Код:
Название аммо : количество
Пример:
Код:
9mm : 250
uranium : 100
556 : 200
762 : 15
В итоге, при спавне у игрока окажется 250 патронов для пистолета и автомата, 100 для гаусса и эгона, а также 200 патронов для M249 и 15 для M40A1. Ниже перечислены стандартные боеприпасы, а также оружия по умолчанию, в которых они используются:
- 357 - револьвер.
- 9mm - пистолет, автомат MP5.
- ARgrenades - подствольный гранатомет автомата MP5.
- bolts - арбалет.
- buckshot - дробовик.
- Hand Grenade - ручные гранаты.
- Hornets - хорнетган.
- uranium - гаусс, эгон.
- rockets - РПГ.
- Satchel Charge - сатчелы.
- Snarks - снарки.
- Trip Mine - трипмины.
А как узнать названия боеприпасов для новых пушек? А очень просто, открываем исходник нужной пушки и ищем там следующие строки:
Код:
#define WEAPON_PRIMARY_AMMO "rockets_rpg7"
#define WEAPON_SECONDARY_AMMO "" // NULL
В данном случае мы видим, что оружие использует только один тип боеприпасов: rockets_rpg7, именно его мы и должны использовать.
- [block] В данной секции мы можем заблокировать стандартные оружия и аммобоксы в ХЛ. Это значит, что перечисленные здесь оружия (и аммобоксы) будут удалены из игры и ими невозможно будет воспользоваться. Каждое удаленное сандартное оружие также повышает лимит на добавление нового оружия. Т.е. например мы можем убрать из игры Эгон и поставить на его место RPG-7. Пример удаления из игры эгона через конфиг:
Код:
[block]
weapon_egon
В секции [block] конфига weaponmod.ini представлены все стандартные оружия и аммобоксы. Поэтому для удаления ненужных итемов из игры Вам достаточно лишь их раскомментировать.
В папке amxmodx\configs\weaponmod\spawnpoints хранятся конфиги для спавна новых оружий и аммобоксов на карте. Для их настройки рекомендую использовать только плагин WeaponMod Spawn Config Editor by GordonFreeman и не лезть в эти конфиги руками.
Внимание! В папке amxmodx\configs\weaponmod\mods хранятся "технические" настройки модуля, поэтому крайне нежелательно редактировать их самому!
Список готового оружия Opposing Force:
Team Fortress:
Gunman Chronicles:
Unreal Tournament:
Counter-Strike Online:
Other:
FAQ
Q: Где сорцы?
A: Здесь: https://svn.aghl.ru:8443/svn/HLModules/weaponmod/trunk
Q: А как эти сорцы скачать?
A: С помощь любого SVN клиента, например Tortoise SVN.
Q: А как установить новое оружие?
A: Это очень просто. Находим нужную пушку в списке, который был приведен выше, и затем устанавливаем её на сервер как обычный амхх плагин.
Q: Установил новые пушки на сервер, как их заспаунить на карте, чтобы игроки могли ими пользоваться?
A: Юзаем плагин WeaponMod Spawn Config Editor.
Q: Почему у игроков с rofi's client dll не работает hud моих кастомных пушек?
A: Обновите rofi's client dll до последней версии.
Q: Сервер падает с ошибкой Host_Error: no precache: models/w_bgrap.mdl.
A: Обновите плагин Weaponbox Models до последней версии.
Q: Почему боты не используют новые пушки?
A: Необходимо чтобы в инвентаре бота присутствовал лом (weapon_crowbar).
Q: Ой, а у меня при запуске сервер падает с ошибкой ED_Alloc: No edicts yet, к чему бы это?
A: К тому, что модуль не следует прописывать в amxmodx\configs\modules.ini, ибо он загружается автоматически.