| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Trying to resolve a path with RemoveRelativePathComponents that can't
be resolved without leaving leading parent components (e.g. "../worlds/foo"
or "bar/../../worlds/foo") will fail. To work around this, we leave
the relative components and simply remove the trailing components one
at a time, and bail out when we find a parent component. This will
still fail for paths like "worlds/foo/noexist/../auth.txt" (the path
before the last parent component must not exist), but this is fine
since you won't be able to open a file with a path like that anyways
(the O.S. will determine that the path doesn't exist.
Try `cat /a/../etc/passwd`).
|
|
|
|
|
| |
This used to return "/foo" for "../foo" when it should return the enpty
string (i.e., error removing all relative components).
|
| |
|
| |
|
| |
|
|
|
|
| |
This commit makes the game load blocks only if they are not in the
memory.
|
|
|
|
| |
The actual menu default comes from defaultsettings.cpp.
|
|
|
|
|
|
|
| |
As mgv7 is now the default mapgen i re-checked its tunnel width on request,
discovered they needed to be wider, and have made this change.
This commit widens the identical 3D noise tunnels in the other mapgens in
exactly the same way.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
The network protocol does not support larger than 255 mapblocks.
|
| |
|
|
|
|
|
|
|
|
| |
Fixes #4878
Also remove an artificial viewing range reduction that
(presumably) was added to compensate for miscomputed
viewing ranges, and that doesn't seem to be needed any
more (thanks to lhofhansl).
|
|
|
|
| |
Allow any int value, and properly range check it before casting.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Schematics can already be placed with a param2 value, but not
simple 1-node plant decorations of the simple type.
This adds a `param2` field to the simple deco type that is
checked to be between 0 and 255, and put to the placed node
at mapgen.
This can be used to put a degrotate value in, or e.g. a fill
value for leveltype nodes, or a place_param2 value at mapgen
placement, or vary the shape of meshoptions plantlike drawtype.
|
|
|
|
|
|
| |
Optimise the fetching of global settings 'camera_smoothing',
'cinematic' and 'cinematic_camera_smoothing'.
Cache 'cam_smoothing'.
|
|
|
|
|
| |
When loading a block add liquid-nodes that might flow away or spread to
neighbours to the transforming_liquid queue.
|
|
|
|
|
|
|
| |
Prevent waterfalls from falling down or streams from flowing away when the
source node is in an unloaded block - Nodes near a CONTENT_IGNORE node will
be interpreted as if the ignored node is a liquid node that just supports
the current state of the nodes in question.
|
| |
|
| |
|
|
|
|
|
|
|
| |
To avoid smaller biomes when extra biomes are added to MTGame.
The addition of bushes in MTGame grasslands makes wood resources easier
to find and less distant, so slightly larger biomes are now acceptable,
but also desirable to encourage travel and create more sense of adventure.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Floatland base terrain underside was too thin, causing excessive water
leakage through tunnels under lakes, now make it thicker.
Floatland mountain terrain had a rim 1 node thick which made it bare
stone, now make it 2 nodes thick to merge with the floatland base
terrain rim and to have a layer of biome material.
Make mountain terrain more exponentially shaped by altering the
exponent.
Remove unnecessary and potentially ugly MYMAX() applied to
n_base_height.
|
|
|
|
|
|
|
| |
settings. (#4811)
Optimize/adjust blocks and active blocks sent at the server based on client settings.
|
|
|
|
|
|
|
| |
This combats the problem of sending the hundreds of
"creative" / "armor" or whatever detached invs that
exist on popular servers to each and every player
on join or on change of said invs.
|
|
|
| |
Since light_source>15 causes crash, it must be limited.
|
|
|
|
| |
(was broken by e4ee6548afd01040046ee3780d0fbb121d141251)
|
| |
|
|
|
|
|
|
| |
Previously, paths like ./worlds would be resolved to /worlds since the
leading dot was considered just as irrelevant as a dot in the middle of
the path.
|
|
|
|
|
| |
It used to drop all of the return values from the
insecure version of the function.
|
| |
|
|
|
| |
This will only happen if the formname matches or if formname is "".
|
|
|
| |
This merge doesn't make any functional changes. It's a trivial style fix so that @gregorycu can be dual credited along with shadowninja for PR #4800
|
|
|
| |
This improves rendering performance by ~40%
|
|
|
|
|
|
| |
Position, velocity and acceleration vectors of particles are rotated
by the yaw of the parent object so that they are truly relative to it.
Clarify new attached particle spawner behavior in lua_api.txt.
|
| |
|
|
|
|
| |
This reverts commit 93e3555eae2deaeca69ee252cfa9cc9c3e0e49ef.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Active objects that are attached to other objects are not safe
from deletion. As a result, the parent object may have a reference
to an id of a child's that no longer exists.
If at some point an attempt is made to manipulate the child,
enviromment->getActiveObject(child-id) returns NULL. Using the
NULL pointer causes the crash...
|
| |
|
|
|
|
|
| |
This is a slightly modified and cleaned up version of #3774 by RealBadAngel.
By sofar: Remove color change (just make it lighter) and some minor cleanups.
|
|
|
|
|
|
|
|
|
|
| |
* Fixed tooltips not resizing with \n
* Fixed it for 1.8.4 too.
* Fixed not working with Freetype disabled.
* Modified it to use Zeno-'s solution.
|
|
|
|
|
|
|
|
| |
The client would not compute the distance from the camera to
to a mapblock correctly. The result was that blocks that were in
view (i.e. not beyond the fog limit) would not be rendered.
With the improved distance computation, a range adjustment that
existed in clientiface.cpp is no longer required.
|
|
|
|
|
|
|
|
|
| |
The problem was seen while using the mobf mod package.
The problem happens when the server serializes entity attachments.
Sometimes, such attachments no longer exist. The serialization code
skips those. However, the total number of attachments was serialized
earlier. Therefore the client expects more than it gets, and logs a
serialization error.
|
|
|
|
|
| |
Remove unnecessary code.
Use '/ 2.0f' because endoff is a float.
|
|
|
|
|
|
| |
To be identical to the lower half of the skybox sides.
Now needed as the skybox base is often seen due to increasingly vertical
mapgens.
|
|
|
|
|
| |
Use unused range argument in 'isBlockInSight()' to limit mapblock sends
to a sphere of radius 'max block send distance'.
|