Still trying to grok how the new SimConnect “Input Events” system is supposed to be used…
So, I’m assuming that for some reason the event names aren’t unique enough to be used on their own, which is why one has to get the “hash” ID of an event before using it. However that still doesn’t really make sense…
If there are two events with the same name returned from EnumerateInputEvents()
, how would we even tell which one is which?
Now if Input Events are unique only per model, or sim object, or component, or whatever, seems like it would make sense to query the input events available per that container (eg. like SIMCONNECT_SIMOBJECT_TYPE
for Set/RequestDataOnSimObject[Type]()
). Ideally after being able to retrieve a list of those containers. Like the drill-down in Dev Mode inspector, basically.
The whole setup seems rather backwards to how most of the rest of SimConnect is set up, where we map our own IDs to vars/events, not the other way around.
Playing around with it so far, seems like I always get the same Hash for any Input Event with the same name, even if it’s from different models. I assume (again) it’s because they share a common template or something like that, but once again it begs the question of why can’t we “just” use the name.
Seems fairly obvious this system is still a work in progress, so maybe this is already in the pipeline, but it would be really nice to get an big-picture overview of how the system is supposed to work overall. The current SDK docs explain the SimConnect functions adequately enough, but not really the overall concept.
Thanks,
-Max