I'm making an HL2MP mod where I'd like to have the ability to "infest" the dead 
bodies of other players.

>From what I understand, HL2MP ragdolls are updated on Event_Killed, and the 
>client uses the updated position/velocity/etc to create a ragdoll that can be 
>interacted with on the client.  That means that, if the ragdoll gets shot, 
>bounces around/etc, other player won't accurately know about its 
>position/orientation.  So here's my proposed solution:

- CHL2MP_PLayer::Event_Killed spawns an expensive/modified prop_ragdoll.  These 
ragdolls would be limited on the server so that no more than 3 or 4 could exist 
at any given time.

- After a timeout period, or after the ragdoll stops moving, the ragdoll would 
be frozen, or a new entity would be created to simulate this effect ( same 
model, skeleton pre-position to the ragdoll's position, skeleton locked in 
place).  The new entity would not be mobile, but would be "infestable."


So my questions are:
1) Does this sound like a decent solution to my problem?
2) Would locking bones actually reduce computation/network resource use?
3) Is this how the Spy-cicle works in TF2?
4) How can I access a model's skeletal position info, and set and lock it in 
place?  I think it's the bone arrays used by GetRagdollInitBoneArrays() and 
InitAsClientRagdoll(), am I correct? What about locking them so that the server 
doesn't have to transmit so much data?


On a positive note, this may be the last significant piece of code that I need 
to write before my mod can be released =)


Best regards,
Eric

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders

Reply via email to