Gravity / centrifugal force calculation didn't take into account that
the heights on a planet that preserves the aspect ratio of nodes is
actually different from just the y-coordinate, since the shader applies
the exponential function. The centrifugal force now also takes the width
of blocks into account (real speed = blocks per second * block width),
so that the force near the planet center and further up is now more
realistic.
Falling through the planet basically behaves like falling through a
torus with a hole. There are no special visuals to it, it's basically
just teleporting to the other side of the planet and reversing the
vertical velocity.
with
minetest_planet = true
and set the planet radius with
planet_radius = 20
with 20 here being the planet's radius in map blocks (16 nodes)
This commit was originally authored by Jeija on May 17, 2016
upstream: 50f8a37297
* Server: delegate mod management & config to ServerModConfiguration (rename it to ServerModManager)
* Use c++11 range based loops
* Add unittests + experimental/default mod as a test case to permit testing mod loading in future tests
* isFreeServerActiveObjectId is now part of ServerEnvironment
* getFreeServerActiveObjectId is now part of ServerEnvironment
* StaticObject constructor now take ServerActiveObject instead of type + string. This permits to remove a big string copy in some code parts
* ObjectRef::set_local_animation: fix wrong lua return (should push a boolean, currently returns nil)
* ObjectRef::set_eye_offset: fix wrong lua return (should push a boolean, currently returns nil)
* Fix various Server functions which depends on RemotePlayer objet and return true/false when player object is nil whereas it's a caller implementation error. Change those bool functions to void and add sanitize_check call instead. Current callers are always checking player object validity
* Optimize Server::setClouds : use CloudParams object ref instead of attribute deserialization from structure & perform RemotePlayer::setCloudParams directly in server class like many other calls
* Optimize Server::SendCloudParams: use CloudParams object ref instead of deserialized attributes
Use the --color command line parameter instead of a setting for coloured logs
This fixes the missing warningstream bug, g_settings->get mustn't be used there.
Also, the decision about en- or disabling log colours fits better to the command line parameters than minetest settings.
Change to --worldlist instead of --world list.
Gets rid of --worldpath parameter added as part of this pull request,
instead moving the listing function to a command --worldlist that
accepts either name, path, or both and prints out the corresponding
information.
Returns the decoration ID for the provided decoration name string.
For use with gennotify, to know the decoration IDs for use in
'minetest.set_gen_notify'.