getRootElement is in clientside too. You only make them server and client side in the meta, before you start the resource. By default, there serverside.
onMarketHit, if you use getRoot it will trigger everytime someone hits a marker. However if you use the name of a marker, then it will only trigger when an element hits that specific marker. Thats what getRoot is for. Sort of all, or everything ( getRoot ) or specific ( a name ).
onMarketHit, getRootElement(), onMarkerHit - will trigger for all markers
marker = createMarker (0, 5, 1, "cylinder", 3, 255, 0, 0, 175)
onMarkerHit, marker, onMarkerHit2 - will trigger only when something comes in contact with your marker.