• We are aware of sporadic errors when browsing our site. This is an issue with our hosting provider and not something we can fix on our end. We are hopeful it will be resolved soon. ~VintagePC

Playing with Fire: The Dreaded Invisible Flames

Yes, those invisible flames. This notorious bug has been finally been fixed in Update 2.2! The reason this bug had taken so long to fix was due to a roadblock: nobody knew how to reproduce it. Without a way to test, we could only make assumptions when attempting to fix it, only to find out days later that it didn't work.

It turns out there were not just one, but two invisible flame bugs, and both have to do with networking. In simple terms, the client would disagree with the server on whether the Flamethrower was actually firing. The server would still properly shoot flames, but the client wouldn't show the particle.

The first, more uncommon cause was the weapon state. In Source Engine games, there are a series of states that determine what animation your weapon plays. A weapon in the 'IDLE' state will do nothing, and a weapon in the 'FIRING' state will play a firing animation. To prevent desync, the server will send the client a message if this changes, and vice versa. In certain rare scenarios, such as the particle system restarting, the client would think that your Flamethrower is in the 'IDLE' state. The server stays in the 'FIRING' state, and, since it doesn't change, would not notify the client. The solution is to have the 'FIRING' state actually cycle between two states: 'FIRING' and 'FIRING_VERIFY', which means it is constantly being conveyed to the client.

The second, much more common occurrence, was due to the client believing the enemy's Flamethrower did not have any ammo. For reasons that we do not fully understand, this value would somehow not get networked to the client. The game will check if the Flamethrower has enough ammo to fire before starting the fire effects, so they would not be rendered. This check, however, appears to be redundant. You cannot hold a Flamethrower if it has no ammo, so we simply removed the check.

Stay tuned for our final post on the subject tomorrow!
 

Funding Progress To Date

VaultF4 on Steam


48660 Members
(5956 Online 325 In-Game)
Join the group
Back
Top Bottom