I see. I am trying to replicate chunks of what you did in my project to understand what you've done and wrap my head around it but I am failing quite a bit. So one thing I am doing is the below:
The Get expression of the JSON object can only return string or numeric values. The expression you written actually returns an object and C3 can't deal with that so it defaults to 0. You can however use GetAsBeautifiedString or GetAsCompactString to get objects in JSON format.
Would you say in that case, XML would work better?
It's pretty much the same I would say. Altough XPath is probably easier, it has the same caveats in terms of iterating. If you use "for each node" for a particular XPath, you can't use "stop loop" and that's a bummer.
Personally, I'm partial to JSON, simply for that fact that I find it more concise.
Would you say it would be less of a headache if I try to write this one thing (searching for the correct component) in JS and attach it as a script instead?
Indeed, if you feel confortable with scripting, you could replicate what I did in a much less convulated manner.
The JSON plugins expose an API that makes it easier to do interactions between event sheets and scripts, if you go that way.
construct.net/make-games/manuals/construct-3/scripting/scripting-reference/plugin-interfaces/json