What I meant by client ( Autonomous Proxy), we don’t need simulated proxy, so its FPVM.
Hearing should be and most of the new mmorpg’s do that audio event can be networked for action. It is much more immersive element than the wedge, however player can see at local machine anyway.
“No living trees were harmed in the making of this game”
For multiple hit regions (dynamic) I’d do a repnotify struct array containing impact normal (Vector), a hit state progression (enum) and a region bounds collision component.
Hit state progression would indicate how many hits in that region. Capping at the fifth state being the final for cutting. First come first serve.
For each region I’d have the actor add a collision component (region bounds) to detect future hits to the region. This would help in determining if a new region is needed also. If hit is within n radius of existing region. You could use a sphere/box trace to determine this easily. All server-side of course.
The onrep function would iterate the array to apply fx on autonomous and sim and ultimately trigger the fall… 2 mesh setup.
The function would have to handle sequential adds and full blown packed array scenarios.
e.g. A player eventually gets inside the NCD radius of a multi region hit tree, but not chopped. Or a fully chopped tree.
You’d definitely need an additional controller state to check. Something like bIsChopped.
OnRep Tree State:
IF (bIsChopped) {
Fell the tree, replace stump with HISM (Instanced Foliage Actor), destroy self (client side).
}else{
update regions: Add new if needed +FX, update state of existing +FX
}
Additionally you could pass a gametime float for when the tree was chopped. Check against that value to whether or not you bother with the falling aspects.
These are good, we made nice theory crafting around it. Think can sometime progress on it maybe make a simple plugin around it that can be plugged to some interaction system and pcg.