- Статьи
- 2019-02-16

Работать мы будем в zombieplague40.sma
1) В начале исхода создаём переменные:
new g_frost_exp, g_frost_gibs
new g_inf_exp, g_inf_gibs
new sprite_g_fire_exp[64], sprite_g_fire_gibs[64]
new sprite_g_frost_exp[64], sprite_g_frost_gibs[64]
new sprite_g_inf_exp[64], sprite_g_inf_gibs[64]
2) Ищем plugin_precache и добавляем туда это:
g_fire_gibs = engfunc(EngFunc_PrecacheModel, sprite_g_fire_gibs)
g_frost_exp = engfunc(EngFunc_PrecacheModel, sprite_g_frost_exp)
g_frost_gibs = engfunc(EngFunc_PrecacheModel, sprite_g_frost_gibs)
g_inf_exp = engfunc(EngFunc_PrecacheModel, sprite_g_inf_exp)
g_inf_gibs = engfunc(EngFunc_PrecacheModel, sprite_g_inf_gibs)
engfunc(EngFunc_PrecacheModel, sprite_g_inf_gibs)
engfunc(EngFunc_PrecacheModel, sprite_g_inf_exp)
engfunc(EngFunc_PrecacheModel, sprite_g_frost_gibs)
engfunc(EngFunc_PrecacheModel, sprite_g_frost_exp)
engfunc(EngFunc_PrecacheModel, sprite_g_fire_gibs)
engfunc(EngFunc_PrecacheModel, sprite_g_fire_exp)
3) Ищем // Fire Grenade Explosion и добавляем после // Fire nade explode sound это:
write_byte(TE_EXPLOSION) // Temporary entity ID
engfunc(EngFunc_WriteCoord, originF[0]) // engfunc because float
engfunc(EngFunc_WriteCoord, originF[1])
engfunc(EngFunc_WriteCoord, originF[2] + 40)
write_short(g_fire_exp) // Sprite index
write_byte(13) // Scale
write_byte(18) // Framerate
write_byte(TE_EXPLFLAG_NOSOUND) // Flags
message_end()
message_begin (MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_SPRITETRAIL) // Throws a shower of sprites or models
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // start pos
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 200.0)
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // velocity
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 30.0)
write_short(g_fire_gibs) // spr
write_byte(30) // (count)
write_byte(5) // (life in 0.1's)
write_byte(2) // byte (scale in 0.1's)
write_byte(50) // (velocity along vector in 10's)
write_byte(10) // (randomness of velocity in 10's)
message_end()
4) Ищем // Infection Bomb Explosion и добавляем после // Infection nade explode sound это:
write_byte(TE_EXPLOSION) // Temporary entity ID
engfunc(EngFunc_WriteCoord, originF[0]) // engfunc because float
engfunc(EngFunc_WriteCoord, originF[1])
engfunc(EngFunc_WriteCoord, originF[2] + 40)
write_short(g_inf_exp) // Sprite index
write_byte(13) // Scale
write_byte(18) // Framerate
write_byte(TE_EXPLFLAG_NOSOUND) // Flags
message_end()
message_begin (MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_SPRITETRAIL) // Throws a shower of sprites or models
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // start pos
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 200.0)
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // velocity
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 30.0)
write_short(g_inf_gibs) // spr
write_byte(30) // (count)
write_byte(5) // (life in 0.1's)
write_byte(2) // byte (scale in 0.1's)
write_byte(50) // (velocity along vector in 10's)
write_byte(10) // (randomness of velocity in 10's)
message_end()
5) Ищем // Frost Grenade Explosion и добавляем после // Frost nade explode sound sound это:
write_byte(TE_EXPLOSION) // Temporary entity ID
engfunc(EngFunc_WriteCoord, originF[0]) // engfunc because float
engfunc(EngFunc_WriteCoord, originF[1])
engfunc(EngFunc_WriteCoord, originF[2] + 40)
write_short(g_frost_exp) // Sprite index
write_byte(13) // Scale
write_byte(18) // Framerate
write_byte(TE_EXPLFLAG_NOSOUND) // Flags
message_end()
message_begin (MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_SPRITETRAIL) // Throws a shower of sprites or models
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // start pos
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 200.0)
engfunc(EngFunc_WriteCoord, originF[ 0 ]) // velocity
engfunc(EngFunc_WriteCoord, originF[ 1 ])
engfunc(EngFunc_WriteCoord, originF[ 2 ] + 30.0)
write_short(g_frost_gibs) // spr
write_byte(30) // (count)
write_byte(5) // (life in 0.1's)
write_byte(2) // byte (scale in 0.1's)
write_byte(50) // (velocity along vector in 10's)
write_byte(10) // (randomness of velocity in 10's)
message_end()
Фух, спрайты к гранам добавлены, осталось лишь вывести их в
zombieplague.ini
Ищем:
Добавляем туда это:
copy(sprite_g_fire_exp, charsmax(sprite_g_fire_exp), value)
else if (equal(key, "EXPLODEFROST"))
copy(sprite_g_frost_exp, charsmax(sprite_g_frost_exp), value)
else if (equal(key, "EXPLODEINFECT"))
copy(sprite_g_inf_exp, charsmax(sprite_g_inf_exp), value)
else if (equal(key, "GIBSFIRE"))
copy(sprite_g_fire_gibs, charsmax(sprite_g_fire_gibs), value)
else if (equal(key, "GIBSFROST"))
copy(sprite_g_frost_gibs, charsmax(sprite_g_frost_gibs), value)
else if (equal(key, "GIBSINFECT"))
copy(sprite_g_inf_gibs, charsmax(sprite_g_inf_gibs), value)
Добавляем в zombieplague.ini
EXPLODEFROST = sprites/BuB9neC/grenade/exp_frost.spr
EXPLODEINFECT = sprites/BuB9neC/grenade/exp_infect.spr
GIBSFIRE = sprites/BuB9neC/grenade/gibs_fire.spr
GIBSFROST = sprites/BuB9neC/grenade/gibs_frost.spr
GIBSINFECT = sprites/BuB9neC/grenade/gibs_infect.spr
Вот таким не хитрым образом мы добавили спрайты к гранам и вывели их .ini файл... Таким же методом реализовано здесь:
30%
Скидка на покупку всех
сборок до 30.12.2025
Специально для тебя - Гость

Выбрать сборку

Готовый сервер Zombie Plague 4.3 By Mazik102
че зашляпа я не могу скачать

CS1.6 VIPClient TOP
Кому надо хорошая кс 1.6 можно скачать https://vipclientcs.com/download/cs1.6_vipcient.exe

GameCMS 3.619 (Nulled by OverGame)
Пишет неверный токен это что?

GameCMS АБСОЛЮТНО СО ВСЕМИ МОДУЛЯМИ
Спасибо вам огромное за такой материал. Низкий вам поклон. Всё работает как часики

CYBERSPORT CS 1.6
А как скачать ссылки нет
Данные для Связи.https://vk.com/id344641190 https://t.me/SysTemmmmmm Discord: Wizard#2169Услуга Помощь в установке/настройке серверов/модов/плагинов/сайтов.
GameCMS (Game Content Management System) Данные для Связи. https://vk.com/id344641190 https://t.me/SysTemmmmmm Discord: Wizard#2169
Исправили Почту всех приходит, Очистили базу от кометов, Мусорных файлов, Дальше будем работать по файлам.
ReHLDS (Reverse-engineered) - это новый шаг вперед, который дает второе дыхание нашим серверам. ReHLDS работает в 2 раза быстрей, чем HLDS.
AMXModX - это Metamod дополнение, которое позволяет создавать новые модификации для Half-Life на языке Pawn
Reunion является продолжением Dproto для ReHLDS. Это metamod плагин, который позволяет заходить 47/48 Non-Steam на сервер.
Revoice - это Metamod plugin, который дает возможность общения голосовым чатом между non-steam и steam клиентами.
Новый Metamod-r содержит огромное количество оптимизаций производительности и намного более чистый код. Ядро было написано с использованием JIT-компилятора.
Ultimate Unprecacher являет плагином для MetaMod, работает он по принципу отключение не нужных ресурсов на вашем сервере, тем самым вы сможете освободить места для ресурсов под ваши плагины, с помощью данного модуля можно избавиться от ошибки 512!
ReAuthCheck - это Metamod плагин, который занимается проверкой ваших игроков на валидность, с помощью данного модуля для REHLDS вы сможете защитить свой сервер от ботов, которые постоянно спамят рекламу или просто забивают слот на сервере!
NetBufExtender или NBEX - это метамод-плагин, который расширяет "интернет-буфер": буферы сервера и клиента(гарантия не 100%). Расширяет до 64 кб. Это значит, что у игроков уменьшается вероятность быть кикнутыми с ошибкой "Reliable channel overflowed".
UINO — metamod-плагин, который позволяет удалять ненужные поля из userinfo(setinfo) когда движок передаёт его другим игрокам на сервере. Данная мера уменьшает объём передаваемых данных и немного сокращает шанс быть кикнутым с "Reliable channel overflowed".