Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Team Blood (CS:GO)

, Кровь при стрельбе по тиммейтам
Статус пользователя SISA
сообщение 13.4.2017, 1:20
Сообщение #1
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Играя давече в КСГО, заметил интересную особенность. При стрельбе по тиммейтам, из игрока вылетает полный набор крови и мясца, при этом урон не наносится.

В 1.6, как водится, при стрельбе по тиммейтам с FF-0, не происходит ровным счетом ничего и выглядит это не реалистично.

Написал относительно простой плагин, дабы исправить это недоразумение:

Прикрепленный файл  team_blood.sma ( 9,29 килобайт ) Кол-во скачиваний: 108


Прикрепленный файл  config.zip ( 333 байт ) Кол-во скачиваний: 75


Данный плагин, может быть хорошей основой для других плагинов, связанных с атакой тиммейтов. Но я делал основной акцент на эффекты.

Плагин учитывает все 4 эффекта, которые происходят при уроне:

1. Стопорение
2. Отброс
3. Перекос экрана
4. Отрисовка дирекшенов на экране

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

При наличии армора с каской, от хитбокса головы будут идти искры (короч, как в оригинале).

Для работы плагина, нужен mp_friendlyfire 1

Отредактировал: SISA, - 13.4.2017, 20:00
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 11 раз
   Цитировать сообщение
Статус пользователя Templar
сообщение 13.4.2017, 6:40
Сообщение #2
Иконка группы

Стаж: 18 лет

Сообщений: 2680
Благодарностей: 978
Полезность: 860

Меценат Меценат

Интересно, спасибо
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 13.4.2017, 13:44
Сообщение #3


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Спасибо!
Как раз хотел к тебе обратится по этому поводу.

Т.к. есть плагин
Cкрытый текст
Код:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>

public plugin_init()
{
register_plugin("FF", "1.0", "ill")

RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
}

public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) {
if(!is_user_connected(victim) || !is_user_connected(attacker) || victim == attacker)
return HAM_IGNORED

if(cs_get_user_team(victim) == cs_get_user_team(attacker))
return HAM_SUPERCEDE

return HAM_IGNORED
}

Суть в том что тиммейта дёргает когда ему в голову попадает свой.
Многие таким образом мешают играть тиммейтам.

И вот я не понимаю, зачем
1. Стопорение
2. Отброс
3. Перекос экрана
Ведь этим же будут только мешать своим.

Что такое "Отрисовка дирекшенов на экране" - кровь, мясо, искры ?

Почему не под reAPI плагин ?

А так то огромное спасибо за плагин! Буду тестить .


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ssx
сообщение 13.4.2017, 14:09
Сообщение #4


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Под 1.8.3 АМХХ не компилит
Код
// D:\user0\Server_CS_27014\cstrike\addons\amxmodx\scripting\team_blood.sma(143)
: warning 213: tag mismatch

Чёт на эту строку ругается
Код:
	g_PlayerData[victim][DATA_PAINFREE] = get_pdata_float(victim, m_flPainShock, CBASEMONSTER_LINUX_XTRA_OFF);


Отредактировал: ssx, - 13.4.2017, 14:11


[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 13.4.2017, 15:22
Сообщение #5
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Цитата(ssx @ 13.4.2017, 16:09) *
Под 1.8.3 АМХХ не компилит
Код
// D:\user0\Server_CS_27014\cstrike\addons\amxmodx\scripting\team_blood.sma(143)
: warning 213: tag mismatch

Чёт на эту строку ругается
Код:
	g_PlayerData[victim][DATA_PAINFREE] = get_pdata_float(victim, m_flPainShock, CBASEMONSTER_LINUX_XTRA_OFF);


У меня 1.8.3 и ничего не ругается.

Попробуй так:

g_PlayerData[victim][DATA_PAINFREE] = _:get_pdata_float(victim, m_flPainShock, CBASEMONSTER_LINUX_XTRA_OFF);

Цитата
Почему не под reAPI плагин ?


Там всего-то, заменить пдату и pev на аналогичные функции из реапи. Всю логику работы я же сделал и она не меняется. Только m_flPainShock там называется как m_flVelocityModifier

Цитата
Что такое "Отрисовка дирекшенов на экране" - кровь, мясо, искры ?


Красные треугольники на экране жертвы. Показывают, с какого направления пришел урон.

Отредактировал: SISA, - 13.4.2017, 15:26
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя ssx
сообщение 13.4.2017, 16:44
Сообщение #6


Стаж: 12 лет

Сообщений: 2237
Благодарностей: 1343
Полезность: 836

Затестировал плагин (на 6253бета АМХХ 1.8.3 винда7 64бит) и немного в недоумении .

Залили конфиг в \cstrike\addons\amxmodx\configs\team_blood.cfg
выставил
Код
// Эффект стопорения
teamblood_painshock "0"
// Эффект отброса
teamblood_knockback "0"
// Эффект перекоса экрана
teamblood_punchangle "0"
// Эффект направления выстрела на экране Жертвы
teamblood_direction "0"


Тиммейта жестко колбасит, относит, стопорит если бедолага пытается убежать.
(тестил на ботах и на живых игроках)

Изменение кваров не дают никакого еффекта.



[Half-Life DM FFA] 78.152.169.100:27016
[CS 1.6 GunGame] 78.152.169.100:27018
[CS 1.6 DM AIM] 78.152.169.100:27017
[CS 1.6 DM FFA] 78.152.169.100:27015
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 13.4.2017, 17:24
Сообщение #7
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

ssx,

Надо читать описание.

"По умолчанию, они находятся в запрещенном положении и при стрельбе по тиммейту сам игрок ничего не ощутит"

Зачем ставить нули и говорить, что все эффекты работают ? Они перестают работать только при единицах. В код хотя бы посмотри.

Цитата
Изменение кваров не дают никакого еффекта.


Сильно в этом сомневаюсь smile.gif

Отредактировал: SISA, - 13.4.2017, 17:29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 13.4.2017, 20:01
Сообщение #8
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Подправил баг с уроном от гранат. Обновил первый пост.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GRISHA
сообщение 16.4.2017, 11:51
Сообщение #9
Стаж: 11 лет

Сообщений: 17
Благодарностей: 2
Полезность: 0

Что не так с этой строкой ?
Код
if(damage_bits & DMG_GRENADE && pev_valid(inflictor) == 2)

Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 16.4.2017, 17:06
Сообщение #10
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Цитата(GRISHA @ 16.4.2017, 13:51) *
Что не так с этой строкой ?
Код
if(damage_bits & DMG_GRENADE && pev_valid(inflictor) == 2)


У вас допотопная версия амх. В hlsdk_const.inc добавьте:

#define DMG_GRENADE (1<<24) // Counter-Strike only - Hit by HE grenade

после:

#define DMG_MORTAR (1<<23) // Hit by air raid (done to distinguish grenade from mortar)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: