Template talk:O

From Valve Developer Community
Revision as of 09:56, 24 April 2025 by Nescius (talk | contribs)
Jump to navigation Jump to search

Empirically determining !activator and !caller

It's easy enough to guess oftentimes, but I was wondering if there was a more error-proof way of determining them (be it reading source code or setting up an I/O chain).
SirYodaJedi (talk) 09:23, 24 April 2025 (PDT)

Reading the source code is mostly error proof by just checking what parameters is .FireOutput or .Set called with for example. Checking out activator and caller in IO can be done like this
Example with checking activator and caller of OnTakeDamage output of prop_physics. I aimed at it and used !picker to target it and addoutput to it first in this case. Then paused the IO. Shot the prop_physics and checked with dumpeventqueue command.
] ent_fire !picker addoutput "OnTakeDamage whatever"
] ent_pause 
Pausing entity I/O events
] dumpeventqueue 
Dumping event queue. Current time is: 941.23
   (940.83) Target: 'whatever', Input: 'Use', Parameter ''. Activator: 'Nescius', Caller 'prop_physics'.  
Or also in games with vscript can use something like ent_fire !picker AddOutput "OnSomething !caller,RunScriptCode,printl(self)" which will print the caller
--Nescius (talk) 09:55, 24 April 2025 (PDT)