Contextual Ping System
Добавить в игру через Steam
Нажмите «Подписаться»
На странице Steam войдите в аккаунт, если потребуется.
Подписаться
О материале
«Contextual Ping System» — материал мастерской Left 4 Dead 2. Кампании, оружие, модели и аддоны для кооперативной игры. Данные Steam, описание автора и ссылка для установки через подписку. Совместимость редакцией не проверена.
Описание автора
Communication in Left 4 Dead has never been this easy!
This addon features 3 ways of pinging:
- Automatic voice: when survivors spot items and enemies, and verbally call them out (bots use this!)
- Manual voice: when chat wheel commands are used
- Manual button: when players press their chosen key (bound to "+alt2") to ping anywhere anytime. Hold this button to open the ping wheel (* bind T +alt2 *)
Both the server host and the players need to install for everyone to see and hear the pings.
It does not work on official Valve servers.
It works with sv_consistency 1 and sv_pure 1.
Settings
To change settings in-game, the server host can type !ping_system in the chat. Then use !ping_system savecfg to save the changes, or !ping_system loadcfg to load settings from a previously saved configuration.
Available commands:
autoping : PingSystem.DisableAutoPing( option[0, 3] )
maxcount : PingSystem.SetMaxPingCount( count[1, 64] )
duration : PingSystem.SetPingDuration( pingtype, duration )
colour : PingSystem.SetPingColour( pingtype, r, g, b )
scale : PingSystem.SetScaleMultiplier( value[0.25, 2.0] )
sound : PingSystem.DisableSound( 0|1 )
button : PingSystem.DisableButton( 0|1 )
wheel : PingSystem.DisableWheel( 0|1 )
offscreen : PingSystem.DisableOffscreenIndicators( 0|1 )
offscreenstyle : PingSystem.SetOffscreenIndicatorStyle( 0|1 )
offscreenscale : PingSystem.SetOffscreenIndicatorScale( value[0.25, 2.0] )
offscreenradius : PingSystem.SetOffscreenIndicatorRadius( value[0.0, 1.0] ) // default:0.273
offscreenvert : PingSystem.SetOffscreenIndicatorVerticalMargin( value[0.0, 1.0] ) // default:1
savecfg
loadcfg
---
PingSystem.SetPingSound( pingtype, soundDefault, soundAlert )
PingSystem.SetWheelItem( index[1,4], pingtype )
DisableAutoPing options: 0: enable all auto pings 1: disable all auto pings 2: only disable special infected warning pings 3: only disable item pings
Example:
No auto-pings for special infected
!ping_system autoping 2
Only 2 pings per player
!ping_system maxcount 2
Disable manual ping button
!ping_system button 0
Disable sound
!ping_system sound 0
Set every ping duration to 3.5 seconds
!ping_system duration all 3.5
Set ammo ping duration to 15 seconds
!ping_system duration ammo 15
These commands are partially matched. For instance, all commands below are identical
!ping_system d ammo 15
!ping_system dur ammo 15
!ping_system durat ammo 15
!ping_system duration ammo 15
Inside the settings file:
PingSystem.DisableAutoPing(2)
PingSystem.DisableButton(1)
PingSystem.DisableSound(1)
PingSystem.SetMaxPingCount(2)
PingSystem.SetPingDuration(PingType.ALL, 3.5)
PingSystem.SetPingDuration(PingType.WEAPON_AMMO, 15)
PingSystem.SetPingSound(PingType.ALL, "HudChat.Message", null)
PingSystem.SetPingSound(PingType.MEDKIT, "Menu.Timer", "Christmas.GiftPickup")
PingSystem.SetOffscreenIndicatorRadius(1.0)
PingSystem.SetOffscreenIndicatorVerticalMargin(0.75)
List of all available ping types: https://gist.github.com/samisalreadytaken/01d77d0299456dcfc155f0125a082f1f
Developer
Custom ping icons can be made by replacing the "ping_system/icon_item.vtf" file(s) (required VTF flags: Clamp S, Clamp T, No mipmap). All edge pixels on these images need to be fully transparent.
Do not copy, modify or redistribute the VMT and script files! You only need to supply VTF files to overwrite the default icons. You may also provide "ems/ping_system_settings.txt" for default settings and overwrite the ping sounds.
Pings can be listened for with the script event "player_ping{ CBasePlayer player, Vector origin, CBaseEntity target }".
Exposed script functions:
// Remove all pings of the player
PingSystem.RemovePings( int entindex )
// Ping the entity by the player
PingSystem.PingEntity( CBasePlayer player, CBaseEntity entity, Vector pingPosition )
// Force a trace ping by the player
PingSystem.PingTrace( CBasePlayer player )
github.com/samisalreadytaken
Как установить и запустить
Откройте оригинальную страницу в Steam Workshop, проверьте версию игры, зависимости и порядок загрузки в описании автора. Нажмите «Подписаться» и дождитесь загрузки Steam. Включите материал в меню модификаций или контента игры, если это требуется. Совместимость и запуск редакцией не проверены.