TECH DGN: (was [Mud-Dev] Broken currencies)

Nathan F.Yospe yospe at
Fri Apr 6 20:18:59 New Zealand Standard Time 2001

Timothy Dang <tdang at U.Arizona.EDU> said:
 > On Wed, 4 Apr 2001, Brian 'Psychochild' Green wrote:

>> Yeah, and not everything is a frictionless vacuum as college level
>> physics would have us believe.  This is a basic definition.  It
>> works well enough to explain what's happening, at least on a basic
>> level, in our games.

> Or as my wife (a physicist) says, "Assume a spherical cow..."

I'm a physicist too, and as an algorithm designer, I must say: "You
must never underestimate the power of a spherical cow."  I first heard
this a good decade ago from one of my high school physics teachers.
It's been, in a rather varied and convoluted career, one of the best
pieces of sage advise of a technical nature I've ever received.

For example, most of the collision algorithms in Physmud assume a
sphere for the first approximation, then subspheres.  It cuts down on
many hard computations.  When you go to tip a cow (thank you for the
milk, and for the tip: don't trust any sheep) in the middle of a
midwestern grainfield (being from Hawai'i, I know *all* about cow
tipping) the first check for contact is going to assume a spherical
you and a spherical cow.  While I assume the action of tipping a cow
requires some degree of contact, when the spheres intersect even
slightly (easy to determine.  Using spherical coordinates reduces it
to a simple subtraction problem.) I switch to the next approximation.
We have a new center (objects and clusters can give CoordCenterOfMass
or CoordCenterOfSpace - choose one of the two things I want to work
with and use it's CCoS for 1st approx.  Now choose the list of
value-sorted subspheres where a two-point center sort/parallel to the
intersection direction radial line hits the plane of intersection
(again reduced to mere subtraction in two steps plus a selective to
cylindrical coordinates conversion, and test from the first set (you)
and the second set the (spherical cow's subspheres) for collisions.
At this point, the subcoordinates (below subspheres) may or may not be
spherical.  When the contained shape cannot be contained cleanly by a
single sphere, it shall be reduced to subshapes; each of the subshapes
is englobed in the sphere used to find initial collisions.  Always,
always, whenever possible, the secret is to turn everything into a
spherical cow.

I've used spherical cows to simulate everything from the failure of
ring and dyson constructs, to the mapping of electron shell
hybridization for an attempt at explicit prediction of protein folding
based on a guessed, loosely hypothisized model of amino coupling as an
explanation for quite odd (at least at odds with first order
least-energy prediction) shapes a biological process was producing.

I love spherical cows.  Frictionless cows are quite another matter.
The frictionless approximation causes far more complication than it

Just something for you to chew on a few hours after you read this.
With a little masticated spherical grass on the side.

Nathan F. Yospe  email: yospe at nyospe at nyospe at
Don't mind me, I'm just insane - there's someone else here, in my brain. 

MUD-Dev mailing list
MUD-Dev at

More information about the MUD-Dev mailing list