Русское сообщество по скриптингу

hl_weapon_physics (физика)

Утвержденные плагины для AMX Mod X администратором/модератором форума.

Модератор: Leonidddd

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только работоспособных плагинов для AMX Mod X. Новые плагины нужно выкладывать в разделе "Новые плагины".

hl_weapon_physics (физика)

Сообщение TurangaLeela » 17 окт 2011, 11:18

HL Weapon Physics

Вы должны зарегистрироваться, чтобы видеть ссылки.

Автор: Turanga_Leela

Версия: v0.6 [23.07.2012]

Описание
Добавляет физику в игру, что прибавит реалистичности на ваш сервер. Поддерживаемые моды: Half-Life, CStrike1.6, CZero (протестированы на работоспособность) win & linux

Внимание!
1) Архиватор - 7z
2) - Перед компиляцией -> не забываем размещать все файлы по директориям! Все настройки плагина находятся в инклудах!

Настройки
Квары

hl_ArmouryEntityCount - 1 // Не для HL Кол-во энтитей в "armoury_entity"
hl_PhysicsDefaultGravity - 2.0 // Гравитация для зарегистрированных классов (может быть разной у каждого предмета, если менять перед созданием нового)
hl_ThrowSpeedMultiple - 13 // Мультипликатор скорости брошенного предмета при зажатой -> "e"


Макросы (исключение/включение фрагментов кода)
При подключении плагина автоматически создается файл блокировки классов (addons/amxmodx/configs/hl_weapon_physics.ini). В нем прописаны классы которые следует игнорировать ... В одной строке не должно содержаться больше 1го класса!
#define Half_Life // hl || cs/csz

#define BREAKABLE_REFLECT // "func_breakable" активирует рефлект класса на монстров и игроков
#define PUSH_MONSTERS // Толкает игроков(монстров) при прикосновении к ним физических придметов + наносит урон

#define ADMIN_FLAGS ADMIN_IMMUNITY // Флаги для доступа к меню "armoury_entity" - (ADMIN_IMMUNITY | ADMIN_BAN) ...

#define SOUNDS_ON // Включить звуки
#define WEAPON_THROWING_ON // Включить броски вооружения (RECOMMENDED! :D)
#define SPRITE "sprites/arrow1.spr" // спрайт - WEAPON_THROWING_ON
#define TRAILS_ON // Добавлять следы за брошенными предметами (при использовании "e") - WEAPON_THROWING_ON

Настройки ниже -> только для CS / CSZ

#define zBot_on_server // Включите если у вас на сервере есть zBot (works on "cs/csz" ONLY!) Нужен плагин - "hamsandwich_zBot_FIX"
#define CLCMD_COMMAND "hl_WeaponPhysics_Menu" // Консольная команда - вызов меню

#define ARMOURY_ENTITY_RANDOMIZER // Включить рандомизатор для "armoury_entity"
#define PHYSICS_RENDERING // Включить рендеринг
#define SHOOT_GRENADES_ON // Включить стрельбу по гранатам, работает только в -> Cs/Csz
#define MESSAGE_ON // Включить сообщения о сбитых гранатах Cs - Csz Only! (shoot grenades)

Константы
#define VECTOR_SUB 2.5 // Вычитаемый вектор при проверке "угла" земли - [2]
#define SEARCHING_RADIUS 5.0 // Поиск энтитей(физических) в этом радиусе
#define MAX_REFLECT_A_VELOCITY 192.0 // [0] && [2]
#define MAX_VELOCITY_MULTIPLE 2.5 // [0] && [1] - Мультипликатор скорости по осям [0] && [1] в момент получения урона, если предмет находится на наклонной поверхности
#define MAX_DAMAGE_RECEIVED 255.0
#define AVAILABLE_MOVETYPE (1 << MOVETYPE_TOSS) // Может быть - (1 << MOVETYPE_TOSS | 1 << MOVETYPE_FLY) ...
#define MAX_REFLECT_VELOCITY 192.0 // Максимальное ускорение при отскоке по оси - [2]
#define DAMAGE_DIVIDER 0.032 // Мультипликатор повреждений, при получении урона от выстрела
#define SOUND_HIT 0.5 // Громкость
#define SOUND_TOUCH 0.25 // Громкость
#define GROUND_TRACE_RESULT 0.65 // Угол повергности определяймый как - "Высокий уклон" Ось -> [2]
#define BLOCK_SOUND_BY_SPEED 128.0 // Минимальная скорость предмета, для эмитации звука

#define COUNTS_TO_RESET 6 // Кол-во соударений предмета для активации кода -> hl_extensions (physics reflect)

#define PEV_DATA_SLOT pev_iuser2 // hl_extensions -> data, contain touch counts
#define PEV_GROUND_TYPE pev_iuser3 // ground type info -> '4' values, look -> // Ground type
#define PEV_JUMP_REDUCE pev_iuser4 // add velocity or not, depend from: 1)ground type 2)attacker
#define PEV_GROUND_DATA pev_vuser3 // entity ground data - contain ground trace result -> TR_vecPlaneNormal


История версий
v0.1 - v0.1c [02.08.2011] - первый релиз + фиксы
v0.2 - [04.08.2011] 1)добавлено: реалистичное положение относительно наклонной поверхности
v0.3 - [26.08.2011] 1)добавлена реакция на повреждения 2)добавлены звуки 3)убран квар "spin", 4)профиксен квар "jump"
v0.4 - [17.10.2011] 1)убран квар звука 2)добавлена реакция на выстрел
v0.4a - [23.10.2011] 1)добавлено вращение предметов по осям
v0.4b - [08.11.2011] 1)добавлены новые звуки 3)добавлены искры
v0.4b1- [09.11.2011] 1)добавлен макрос - SOUNDS 2)профиксен макрос - SPARKS 3)добавлен макрос - DEBUG
v0.4b2- [17.11.2011] 1)профиксены гранаты! в cstrike :D 2)добавлена функциональность
v0.4b3- [21.11.2011] 1)зафиксен баг "застреваний" 2)профиксена регистрация классов в - hl 3)добавлена возможность стрельбы по гранатам в cs/csz
v0.5 - [9.12.2011] 1)добавлен макрос блокировки сообщений о сбитых гранатах (в cs/csz) 2)не большой фикс в стрельбе по гранатам 3)профиксены цикличные звуки 4)профиксен баг с кваром - "sys_ticrate" 5)изменены квары (damage, shoot) 6)теперь - стрельба по предметам и гранатам может быть исключена по отдельности 7)новая система отлова "застрявших" предметов (реальный эффект отскока)
v0.6 - [27.07.2012] 1)Переписан код 2)Добавлен фикс для "armoury_entity" - в новом раунде появляются на своем изначальном месте 3)Добавлен рефлект физических предметов (на данный момент примитивный, в будующем улучшу) 4)Добавлен рефлект: монстров / игроков / бьющихся предметов -> на физические 5)Добавлено меню регулировки "armoury_entity", все изменения автоматически записываются в конфиг(и), подгружаются при загрузке мапы, иначе изменения вступают в силу в новом раунде 6)Баг фиксы

PS
Выражается благодарность: unnamed, за некоторые разъяснения. А также noo00oob & Vlamis за багтест
Идея и код взяты из "Weapon Physics" и "Lie Flat" автор "Nomexous" (теперь 2 in 1 для hl & cstrike)
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось TurangaLeela 01 сен 2012, 16:34, всего редактировалось 37 раз(а).
Аватара пользователя
TurangaLeela
 
Сообщения: 930
Зарегистрирован: 24 авг 2010, 11:19
Откуда: Некрополь у Кремлёвской стены
Благодарил (а): 10 раз.
Поблагодарили: 266 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Half-Life
Valve Hammer Editor 3.5
C | C++ | Java

Re: hl_weapon_physics (физика)

Сообщение TurangaLeela » 12 авг 2012, 09:47

filip,
Плагин супер!

Да не ... , он лажа, если по существу рассматривать, но с ним поинтереснее - да :-)

"Бросок" - имеется ввиду обычный бросок только с усилением, усиление включается при зажатие "e", в принципе можеш поменять если не устраивает
[pawn]
  1.  

  2. if((fMultiple = float(get_pcvar_num(cvar_WeaponThrowSpeedMultiple))) > 0.0 && get_user_oldbutton(Owner) & IN_USE && equali(classname, "weaponbox", 9))

  3.  
[/pawn]
[pawn]
  1.  

  2. get_user_oldbutton(Owner) & IN_USE // вот это

  3. // к примеру замени на - (get_user_oldbutton(Owner) & (IN_USE | IN_JUMP)) - бросок активируется при прыжке или зажатие "е" или в обоих ситуациях сразу

  4. // прям со скобками (даже желательно)

  5.  
[/pawn]

PS
Дроп гранат включу в след версии
Аватара пользователя
TurangaLeela
 
Сообщения: 930
Зарегистрирован: 24 авг 2010, 11:19
Откуда: Некрополь у Кремлёвской стены
Благодарил (а): 10 раз.
Поблагодарили: 266 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Half-Life
Valve Hammer Editor 3.5
C | C++ | Java

Re: hl_weapon_physics (физика)

Сообщение filip » 12 авг 2012, 20:45

Спасибо, попробую (долго курить буду, но дойду сам), никого не слушай, плаг супер!!!!
Аватара пользователя
filip
 
Сообщения: 37
Зарегистрирован: 12 июн 2012, 12:58
Благодарил (а): 32 раз.
Поблагодарили: 3 раз.
Языки программирования: полный чайник

Re: hl_weapon_physics (физика)

Сообщение realteam » 13 авг 2012, 21:20

При компилировании, вот такая ошибка:

/compiled//php1ZlxB9.sma(19) : fatal error 100: cannot read from file: "hl_weapon_physics_stock"

Compilation aborted.
1 Error.
Аватара пользователя
realteam
 
Сообщения: 26
Зарегистрирован: 02 авг 2012, 01:09
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: hl_weapon_physics (физика)

Сообщение realteam » 13 авг 2012, 21:20

При компилировании, вот такая ошибка:

/compiled//php1ZlxB9.sma(19) : fatal error 100: cannot read from file: "hl_weapon_physics_stock"

Compilation aborted.
1 Error.
Аватара пользователя
realteam
 
Сообщения: 26
Зарегистрирован: 02 авг 2012, 01:09
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: hl_weapon_physics (физика)

Сообщение Stimul » 13 авг 2012, 21:21

При компилировании, вот такая ошибка:

/compiled//php1ZlxB9.sma(19) : fatal error 100: cannot read from file: "hl_weapon_physics_stock"

Compilation aborted.
1 Error.


Инклюд в папку include закинь.
Аватара пользователя
Stimul
 
Сообщения: 3582
Зарегистрирован: 04 янв 2012, 19:51
Благодарил (а): 192 раз.
Поблагодарили: 1163 раз.
Опыт программирования: Больше трех лет

Re: hl_weapon_physics (физика)

Сообщение realteam » 13 авг 2012, 21:26

ну дак он там где нужно лежит...

hl_weapon_physics\addons\amxmodx\scripting\hl_weapon_physics.sma
hl_weapon_physics\addons\amxmodx\scripting\include:
[*]hl_weapon_physics_compile.inc
[*]hl_weapon_physics_const.inc
[*]hl_weapon_physics_data.inc
[*]hl_weapon_physics_stock.inc

вот так, пробовал кидать в ту же где и .sma, но ни чего не меняется, та же ошибка.
Аватара пользователя
realteam
 
Сообщения: 26
Зарегистрирован: 02 авг 2012, 01:09
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: hl_weapon_physics (физика)

Сообщение TurangaLeela » 14 авг 2012, 08:19

realteam,
В архихе 1н файл ".sma" его кидаеш в "../addons/amxmodx/scripting"
+ 4 инклудника с расширением ".inc" - их кидаеш сюда "../addons/amxmodx/scripting/include"
+ звуки

Но если быть немного повнимательнее - можно было заметить что в архиве все уже раскидано, нужно лишь перетащить вложенную в архив папку "addons" на свою "addons", при запросе - ответить "совместить"
Аватара пользователя
TurangaLeela
 
Сообщения: 930
Зарегистрирован: 24 авг 2010, 11:19
Откуда: Некрополь у Кремлёвской стены
Благодарил (а): 10 раз.
Поблагодарили: 266 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Half-Life
Valve Hammer Editor 3.5
C | C++ | Java

Re: hl_weapon_physics (физика)

Сообщение Mon[str] » 14 авг 2012, 08:22

Delete.
Последний раз редактировалось Mon[str] 14 авг 2012, 08:26, всего редактировалось 1 раз.
Аватара пользователя
Mon[str]
 
Сообщения: 1166
Зарегистрирован: 26 июл 2011, 12:12
Откуда: Россия -> Иркутская область
Благодарил (а): 99 раз.
Поблагодарили: 273 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6
C++

Re: hl_weapon_physics (физика)

Сообщение TurangaLeela » 14 авг 2012, 08:25

нужно смотреть описание :dntknw:
Аватара пользователя
TurangaLeela
 
Сообщения: 930
Зарегистрирован: 24 авг 2010, 11:19
Откуда: Некрополь у Кремлёвской стены
Благодарил (а): 10 раз.
Поблагодарили: 266 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Half-Life
Valve Hammer Editor 3.5
C | C++ | Java

Re: hl_weapon_physics (физика)

Сообщение filip » 14 авг 2012, 12:49

TurangaLeela, в общем ситуация такая. У меня серв на 24 слота, при количестве игроков до 12 плагин работает как часы, если серв забит процентов на 80%, начинаются лаги с гренами (их странное поведение при ударе об стены, они не отскакивают как обычно). Уже второй день игроки жалуются (заметил, что жаболы прут, когда народу дохрена, когда народа мало, все норм). Поведение гранат сам тестил только при малом количестве игроков, все работало отлично. csnadedrops я вообще удалил.
Может подскажешь, в чем проблема может быть? Очень не хочу удалять твой плагин с сервера.
Аватара пользователя
filip
 
Сообщения: 37
Зарегистрирован: 12 июн 2012, 12:58
Благодарил (а): 32 раз.
Поблагодарили: 3 раз.
Языки программирования: полный чайник

Пред.След.

Вернуться в Утвержденные плагины

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13