[ News | About | Media | Downloads | Tutorials | Contact ]

Tutorials

Back to Tutorials

hlss_combine_interface

Combine Interfaces are used to control a lot of the Combine tech in the maps. They work as a way to enable and disable turrets, and to hack them.

Example:
When a Combine Interface that has a Combine Force Shield and Combine Turrets linked into it, and is powered by a Generator, the following happens. If the Generator is enabled, the output function OnHackedGeneratorEnable is fired, which then makes the generator turn on its red func_brush effect, and disable its blue effect brush. It will also enable a trigger_multiple that will allow non-traitor players to disable the generator with grenades.

The OnHackedOn output function is fired. It on calls SetHackedOn input function of a hlss_combine_wall belonging to a Combine Force Shield. The hlss_combine_wall then turns the color of the shield into a red (by disabling a func_brush with the blue shield effect, and enabling a func_brush with the red shield effect). The hlss_combine_wall will then no longer let non-traitor players through, while it now let's Hostiles through.

Similarly SetHackedOn is called on the npc_ground_turrets and npc_ceiling_turrets making them attack Combine Forces. If the Generator was not enabled when the Interface was hacked, OnHackedOn still gets fired, but the Turrets and Shields do not enable. The OnHackedGeneratorDisable output will get fired, which can then be used to Activate a hlss_recharge_point for Alyx to try to recharge the generator.

Likewise when the Interface is fixed by a Stalker, OnHackedOff fires, and OnNormalGeneratorEnable or OnNormalGeneratorDisable gets fired depending if the Generator is enabled or not.

If you want to have two or more interfaces that are linked so that when one of them get hacked the others get hacked too, you can use the SetHackedOn input function. In all interfaces you need have the output OnHackedOn to call all the other interfaces "linked" to it. SetHackedOn will then fire the OnHackedOn output if the interface is already not hacked. This will cause the other interfaces to call the SetHackedOn input functions needlessly, but without creating an infinite loop. Similiarly remember to add OnHackedOff to call the SetHackedOff function.

Values

Spawn Flags:
  • NPCs shouldn't try to hack
  • Doors are called Gates
Hacked
If this Combine Interface should start if it had been hacked.

Model
There's currently six HL2 models to choose from. They are defined by the .fgd, and more models can be added to the list be editing it.

Max Distance
Maximum distance between the player the interface for the glow and icon to be visible. Negative values means it's always visible.

Generator Enabled
Does the Interface start Enabled (Usable). If the Interface is not linked to any Generator, this should be Yes.

Can Vote
Can this Interface be used to mark players as Hostile. Voting will automatically disable itself if the Director is not using Traitor mode.

Can Toggle Shields
Should the "Enable / Disable Combine Force Shields" option appear when using this Interface.

Shields Enabled
Should the Shields start enabled.

Can Toggle Turrets
Should the "Enable / Disable Combine Turrets" option appear when using this Interface.

Turrets Enabled
Should the Turrets start Enabled.

Can Toggle Manhacks
Should the "Enable / Disable Manhack Dispensers" option appear when using this Interface.

Manhacks Enabled
Should the Manhack Dispensers start Enabled.

Can Lock Doors
Should the "Unlock / Lock doors" option appear when using this Interface.

Doors Locked
Should the doors start locked.

Input functions

SetNPCsShouldHackOn
Enable NPCs (Alyx & Dog) to try to hack this Interface.

SetNPCsShouldHackOff
Stop NPCs (Alyx & Dog) from trying to hack this Interface.

SetHackedOff
Unhack the Interface as if it was fixed by a Stalker.

SetHackedOn
Hack the Interface as if it was hacked by the Traitor.

GeneratorEnabled
Called by the logic_relay of the generator when the generator is enabled.

GeneratorDisabled
Called by the logic_relay of the generator when the generator is disabled.

UnlockDoors
Can be used to force unlock doors / open gates linked to this interface.

input LockDoors
Can be used to force lock doors / close gates linked to this interface.

Output functions

OnShieldsEnabled
Fired when the Shields are being enabled. This could mean by either someone turning them on by using the Interface, or the Generator being enabled.

OnShieldsDisabled
Fired when the Shields are being disabled. This could mean by either someone turning them off by using the Interface, or the Generator being disabled.

OnTurretsEnabled
Fired when the Turrets are enabled.

OnTurretsDisabled
Fired when the Turrets are disabled.

OnManhacksEnabled
Fired when the Manhack Dispensers are enabled.

OnManhacksDisabled
Fired when the Manhack Dispensers are disabled.

OnDoorsLocked
Fired when the doors are locked. This can only happen when someone uses the Interface. The doors do not unlock or lock automatically when the generator is disabled.

OnDoorsUnlocked
Fired when the doors are locked. This can only happend when someone uses the Interface. The doors do not unlock or lock automatically when the generator is disabled.

OnHackedOn
Fired when the Traitor hacks the Interface or the SetHackedOn input function is being used.

OnHackedOff
Fired when a Stalker fixes the Interface or the SetHackedOff input function is being used.

OnHackedGeneratorEnable
Fired when this Interface is hacked and its generator is being enabled.

OnNormalGeneratorEnable
Fired when this Interface is not hacked and its generator is being enabled.

OnHackedGeneratorDisable
Fired when the Interface is hacked and its generator is being disabled.

OnNormalGeneratorDisable
Fired when the Interface is not hacked and its generator is being disabled.

See also: Main Frames, Advisor Pods

Back to Tutorials

[ News | About | Media | Downloads | Tutorials | Contact ]



Valve, the Valve logo, Half-Life, the Half-Life logo, the Lambda logo, Steam, the Steam logo, Source, and the Source logo are trademarks and/or registered trademarks of Valve Software. All information is copyright their respective authors. Website designed by my brother.