ShadowNinja
089fc010ab
Store the maximum player file tries in a constant
2014-06-23 15:55:47 -04:00
ShadowNinja
e491f8cd48
Only try to load from possible player files
2014-06-23 15:45:59 -04:00
ShadowNinja
7e6db1b803
Only keep players loaded while they're connected
2014-06-23 15:45:59 -04:00
sapier
f6fc39e69a
Fix race condition on accessing m_time_of_day_speed causing day night race on some architectures
2014-06-23 00:26:57 +02:00
sapier
35ec3855f6
Speedup attachement handling by replacing vector search by direct array access and secondary child lookup vector
2014-06-23 00:13:41 +02:00
proller
0279f32db7
Remove liquid_finite and weather
2014-04-18 21:56:48 +04:00
Sfan5
118e2ae865
Fix all warnings reported by clang
2014-04-15 21:34:53 +02:00
Ciaran Gultnieks
564e11fc2f
Fix merge mistake when rebasing for PR #1169
2014-03-24 19:56:36 +01:00
Selat
2bc2ce3bd1
Remove goto from Environment::removePlayer
2014-03-12 17:02:52 -04:00
Ciaran Gultnieks
0643cef09a
Update ABM object counts when triggers add objects
...
Also fixes long-standing accuracy issue due to unknown wider
object count not being incremented.
2014-03-09 11:13:44 +01:00
Ciaran Gultnieks
db98ef6b45
Stop wasting time in abm - performance improvement
...
Unless I'm mistaken, the chunk of code I'm moving there is potentially
executed hundreds of times inside the loop to get the exact same result
every time
2014-03-06 19:18:36 +01:00
Ciaran Gultnieks
baee91bf78
Fix for unloaded but active block problem
2014-03-02 20:39:28 +01:00
kwolekr
89f7dc1efd
ServerEnvironment: Remove direct dependency on EmergeManager
2014-02-09 16:36:30 -05:00
Perttu Ahola
6a3fa9df12
Add player:override_day_night_ratio() for arbitrarily controlling sunlight brightness
2014-02-01 18:38:21 +01:00
Ilya Zhuravlev
a4c5f10ecf
Fix some errors reported by clang static analyzer.
2014-01-13 03:29:12 +04:00
Novatux
84b94eb198
Add forceloading
2014-01-11 17:54:00 +01:00
stujones11
d9ef072305
Make line_of_sight return blocking node position
2013-12-12 16:11:00 -05:00
Novatux
d879a539cd
Add minetest.swap_node
2013-11-30 18:37:56 +01:00
Perttu Ahola
21789ccc5f
Revert patch 58f036ad1 that causes object duplication (which tried to fix objects getting hidden from client) and fix the original problem correctly. This fixes the second distinct object duplication bug.
2013-11-17 14:46:01 -05:00
kwolekr
e396fb2984
Actually fix weather
...
The real problem was that MapBlocks were not activated before getting sent to the client
2013-11-17 01:59:04 -05:00
Perttu Ahola
b3591019ad
Fix object duplication bug (at least in the most reproducible UFO case)
2013-10-17 00:10:16 +03:00
kwolekr
9bccd75e34
Weather: Clean up getHeat/getHumidity somewhat
2013-09-16 23:33:53 -04:00
Kahrl
4e1f50035e
Omnicleanup: header cleanup, add ModApiUtil shared between game and mainmenu
2013-08-14 21:03:33 +02:00
PilzAdam
d718b0b34e
Dont write directly to files but rather write and copy a tmp file
2013-08-13 22:05:45 +02:00
kwolekr
c06caa14c3
Decoration: Fix schematic probability mess with new MTS file version
2013-08-11 15:34:49 -04:00
BlockMen
7b13d119ed
Add support for different drowning damage and allow drowning in other nodetypes
2013-08-06 17:49:39 +02:00
Novatux
fe1fe1b1e4
Change large amount of objects to be configurable via a setting in minetest.conf (max_objects_per_block).
2013-08-04 15:28:01 +03:00
Perttu Ahola
742614180c
Fix anticheat
2013-08-03 23:16:37 +03:00
RealBadAngel
d19c8b815d
Add set_breath and get_breath to lua API.
2013-07-20 20:34:11 +02:00
sapier
88d43af276
Fix many formspec menu bugs
2013-07-07 19:49:52 -04:00
PilzAdam
280946ba83
Dont write player files all the time
2013-06-28 14:15:48 +00:00
PilzAdam
130464c268
Print playername when failing to read playerfile and ignore files starting with .
2013-06-22 21:39:47 +00:00
PilzAdam
53066024f6
Add drowning
2013-06-19 15:47:00 +00:00
Kahrl
261f559339
Show number of objects in client environment in profiler (F6)
2013-06-18 01:49:06 +02:00
PilzAdam
2cdf0ff4ab
Play player_damage.ogg when recieving damage and additionally play player_falling_damage.ogg when recieving falling damage
2013-06-12 20:27:06 +00:00
Kahrl
e988df0fbd
Add and implement setting max_clearobjects_extra_loaded_blocks.
...
Now Environment::clearAllObjects() unloads unused blocks in an interval
defined by max_clearobjects_extra_loaded_blocks (default 4096).
2013-06-03 20:09:32 +02:00
sapier
ab43377577
Move scriptapi to separate folder (by sapier)
...
On the lua side, notably minetest.env:<function>(<args>) should now
be replaced by minetest.<function>(<args>).
The old way is and will stay supported for a long time.
Also:
Update and clean up lua_api.txt (by celeron55)
Move EnvRef to lua and remove add_rat and add_firefly (by kahrl)
Add separate src/util/CMakeLists.txt, other minor fixes (by kahrl)
2013-05-25 00:51:02 +02:00
kwolekr
981c6c9bf2
Fix lava damage on player's upper body
2013-05-19 21:29:49 -04:00
kwolekr
d00e8bd31a
Fix nearly all warnings
2013-05-19 21:26:56 -04:00
sapier
58f036ad1d
fix static data not beeing stored correctly on deactivation
2013-05-06 19:05:44 +02:00
sapier
e9a4e98cb9
Improve getFree*ActiveObjectId to reduce common case cpu usage drasticaly
2013-04-24 21:59:09 -04:00
sapier
69367aa799
Add Dijkstra A* and A* without prefetching pathfind algorithms
2013-04-06 11:24:03 -04:00
MirceaKitsune
c5a8448c41
Allow modifying movement speed, jump height and gravity per-player via the Lua API.
2013-04-05 02:00:59 +02:00
sapier
8800896824
Closed add object <-> object collision handling
2013-03-28 00:09:24 +01:00
Ilya Zhuravlev
6a1670dbc3
Migrate to STL containers/algorithms.
2013-03-11 19:08:39 -04:00
Sfan5
6d0ea26c2d
Update Copyright Years
2013-02-24 20:15:24 +01:00
PilzAdam
497ff1ecd6
Change Minetest-c55 to Minetest
2013-02-24 18:49:03 +01:00
MirceaKitsune
df3c925b3c
Improved Player Physics
2013-02-14 06:21:30 +10:00
kwolekr
11afcbff69
The new mapgen, noise functions, et al.
2013-01-21 21:41:33 +02:00
Jürgen Doser
076f13cc01
fixes node timer bug ( fixes #407 ).
...
Previously, when a block was activated, on_timer callbacks where
called with the relative position of the node inside the block,
instead of the absolute position of the node.
2013-01-11 18:59:27 +01:00
Perttu Ahola
2c472a66d1
Add ServerEnvironment::setNode()/removeNode() to allow setting nodes from the C++ side with proper script-defined initialization/destruction
2013-01-02 23:18:14 +02:00
Perttu Ahola
804a7875a2
Smooth day-night transitions
2012-12-02 18:02:45 +02:00
Perttu Ahola
6b927229f5
Default server step to 0.1s and sync object/player update intervals to it
2012-11-26 22:34:59 +02:00
Perttu Ahola
eca1c96412
Move util/serialize.h out from staticobject.h for smaller header dependencies
2012-11-26 11:18:34 +02:00
Perttu Ahola
4fa4340b95
Proper versioning of new network-serialized stuff
2012-11-26 09:49:31 +02:00
MirceaKitsune
52fcb0b4b9
Send animations, bone overrides and attachments in entity initialization. Clients no longer have to be near an object when an animation or attachment is set to see the changes, and newly connected clients (or a client that simply renders the object for the first time) will get all of those settings. Therefore, the lua script no longer needs to run every X seconds either, just once per entity.
...
Finish fixing the material color code. But it won't work until MineTest has dynamic lighting... another day another feature.
Extra checks for the bone positioning / rotation code
Many checks and consistency improvements to the client attachment code
Make a separate function for checking if a client object is attached. A more in-depth change will be needed here to fix reading of invalid pointers
Use a different method of fetching the parent. Fixes the mass segmentation faults when rendering an attachment (some still happen though)
Major change to how attachments are handled. Fix the last segmentaton fault, which was due to the parent becoming invalid while being refreshed / removed which would bause the child to remain attached to nothing. Parents remove their children when being deleted themselves and add them back when re-added. Attachments are stored inside a 2D a vector which easily allows both a child to find their parent and a parent to find its children.
Remove attachment list entry when an object is being permanently removed. Also avoid duplicate entries in this list when re-attaching the same object
The "big code comments" can now go away. Client attachments almost work properly, and I know what else needs to be done
2012-11-25 19:14:23 +02:00
Perttu Ahola
9cadaf824b
Add dtime_s to entity activation
2012-09-09 17:12:29 +03:00
Perttu Ahola
1cc1b93e65
Fix ServerActiveObject stuff
2012-09-09 16:11:05 +03:00
Perttu Ahola
c4f400acd0
Fix wielditem entity drawtype brightness control
2012-09-09 13:26:52 +03:00
Perttu Ahola
c129b3852b
Fix the bouncy node related stuff a bit
2012-09-01 13:21:52 +03:00
Perttu Ahola
3b43c69df4
Add bouncy node group
2012-09-01 12:58:37 +03:00
Perttu Ahola
b17d3e7ad7
Add disable_jump and fall_damage_add_percent node groups
2012-09-01 12:07:27 +03:00
darkrose
d05e3adbc7
fix node timers so on_timer gets the correct position
2012-08-12 15:28:31 +03:00
Perttu Ahola
1d44a98f2f
ABM and liquid overload skip
2012-07-27 13:45:49 +03:00
Perttu Ahola
98ff4eb4ee
Fix server build (a missing header)
2012-07-27 13:43:25 +03:00
Perttu Ahola
0190f9b077
Experimental-ish rollback functionality
2012-07-27 02:27:18 +03:00
darkrose
cd6becd442
Implement node timers
2012-07-23 08:18:37 +03:00
Perttu Ahola
037b259197
Switch the license to be LGPLv2/later, with small parts still remaining as GPLv2/later, by agreement of major contributors
2012-06-05 18:54:07 +03:00
Kahrl
704782c95b
WIP node metadata, node timers
2012-06-03 22:31:00 +03:00
Perttu Ahola
a35e4bdbda
Add a hack to get rid of the rare "ERROR: StaticObjectList::insert(): id already exists" failure
2012-04-15 14:37:35 +03:00
Perttu Ahola
8ed74a3429
Fix ABM handling on block activation
2012-04-09 23:06:24 +03:00
Perttu Ahola
52122c342d
Add 'fly' and 'fast' privileges and the underlying privileges-to-client system
2012-03-31 16:25:02 +03:00
Perttu Ahola
280e1a2512
Allow group:groupname in ABM definition and implement minetest.hash_node_position()
2012-03-31 12:30:11 +03:00
Perttu Ahola
9d456ca87a
Raise the player fall damage threshold to a much more fun level
2012-03-29 23:32:56 +03:00
Kahrl
f8c3743991
added PlayerSAO and RemotePlayer, removed ServerRemotePlayer
2012-03-29 14:05:45 +03:00
Perttu Ahola
2e90ed07ac
Dynamic sky, fog and cloud colors; sun and moon
2012-03-18 13:42:18 +02:00
Perttu Ahola
58bed83d03
Move ClientMap to clientmap.{h,cpp}
2012-03-16 00:25:18 +02:00
Kahrl
807a0d313b
MapBlockMesh, mesh animation system, urgent mesh updates, athmospheric light, removed footprints
2012-03-15 21:45:44 +02:00
Perttu Ahola
f1d9880006
Clean up log messages everywhere
2012-03-11 04:15:45 +02:00
Perttu Ahola
f9da2c9507
Immediate smoke puff when a normal entity is punched to death
2012-03-10 11:28:14 +02:00
Kahrl
88cdd3a363
Players stay in environment even when dead, damage flash and fall damage fixes
...
Don't set m_removed on dead players (dead players are indicated by hp == 0). Local
damage flash is shown whatever the cause was (even from Lua set_hp). PlayerCAO
damage flash matches duration of local damage flash. Fall damage is dealt much more consistently (this is done by disallowing jumping when speed.Y is very negative, up to now jumping could sometimes negate fall damage)
2012-02-05 12:06:55 +02:00
Kahrl
157a4cf18c
Node placement / mineral / serialization / iron freq / node_dig callback
...
- Node placement code moved to Lua
- Mineral system removed (added default:stone_with_coal and default:stone_with_iron).
- MapBlock and MapNode serialization updated.
- Mapgen: Frequency of iron increased.
- node_dig callback and related changes.
2012-01-22 17:24:50 +02:00
Perttu Ahola
f9d7e399b2
Limit range of ABM timer initial value randomization
2012-01-03 13:49:47 +02:00
Perttu Ahola
6286c555d4
Initialize ABM timer to random value to spread processing
2012-01-02 21:06:38 +02:00
Perttu Ahola
4630281318
Fix ABM trigger chance being often way too high
2012-01-02 20:26:33 +02:00
Perttu Ahola
1c15f53318
Add EnvRef:get_objects_inside_radius(pos, radius)
2011-12-28 18:18:08 +02:00
Perttu Ahola
7d37913ea4
Add ABM required neighbor check
2011-12-03 18:18:59 +02:00
Perttu Ahola
2dc9a0c724
Fix player double damage
2011-12-02 11:16:51 +02:00
Perttu Ahola
5344dec760
Move ServerRemotePlayer to a separate file
2011-12-02 10:44:20 +02:00
Perttu Ahola
e4daa4c065
Make players be again visible from a long distance
2011-12-02 01:08:14 +02:00
Perttu Ahola
af32240545
Players are more like objects + related stuff
2011-12-01 23:33:48 +02:00
Perttu Ahola
ee0d3bacbc
Player-is-SAO WIP
2011-12-01 18:23:58 +02:00
Perttu Ahola
e6e3eef0ef
Add ServerActiveObject::removingFromEnvironment()
2011-12-01 13:22:33 +02:00
Perttu Ahola
49e4f55b09
Fix player getting reset to 0,0 at connect if being far from 0,0
2011-11-30 00:39:36 +02:00
Perttu Ahola
1c19f959db
Fix active_object_count and active_object_count_wider not getting updated between ABM calls causing huge amounts of DMs and rats and stuff
2011-11-29 19:13:58 +02:00
Perttu Ahola
fe64f2b673
Silly MSVC doesn't know how to handle type conversions for parameters of pow(). Help it.
2011-11-29 19:13:57 +02:00
Perttu Ahola
7bb4b7911b
Comment out debug output in ServerEnvironment::activateBlock
2011-11-29 19:13:57 +02:00
Perttu Ahola
fadf248892
Handle ActiveBlockModifier intervals properly, down to 1s
2011-11-29 19:13:57 +02:00
Perttu Ahola
842eb5da28
Replace old active block random node modifying things with actual ActiveBlockModifiers
2011-11-29 19:13:56 +02:00
Perttu Ahola
5c1cb01936
Make blocks to be loaded from disk when the active block area reaches them
2011-11-29 19:13:55 +02:00
Perttu Ahola
41c473cf5e
Fix player getting thrown underground after connecting
2011-11-29 19:13:54 +02:00
Perttu Ahola
65b2a2cb02
Make lighting update occur immediately after ClientActiveObject addition to make objects show up much more responsively
2011-11-29 19:13:53 +02:00
Perttu Ahola
1ce749c86a
Optimize active block modifier stuff (was left horribly unoptimized after making content ids dynamic)
2011-11-29 19:13:53 +02:00
Kahrl
c1479a2732
Add node definitions in Lua and do not use content_mapnode_init anymore (except in test.cpp)
2011-11-29 19:13:52 +02:00
Perttu Ahola
1b765b9740
Add reason parameter to setModified and print it out to verbosestream when saving block
2011-11-29 19:13:49 +02:00
Perttu Ahola
df8346ef4d
Do not expose CONTENT_* stuff in content_mapnode.h and use a name converter wrapper in old code
2011-11-29 19:13:47 +02:00
Perttu Ahola
c6fd2986d4
GameDef compiles
2011-11-29 19:13:42 +02:00
Perttu Ahola
abceeee92f
Create framework for getting rid of global definitions of node/tool/item/whatever types
2011-11-29 19:13:41 +02:00
Perttu Ahola
3b77a63d5d
Allocate MapBlock::m_node_metadata on heap to allow less header bloat
2011-11-29 19:13:41 +02:00
Perttu Ahola
64996422c0
Move ContentFeatures to mapnode_contentfeatures.{h,cpp} and clean stuff
2011-11-29 19:13:40 +02:00
Perttu Ahola
73bb3bc595
Scripting WIP: Add global environment step function on_step
2011-11-29 19:13:40 +02:00
Perttu Ahola
75a0ca6bd6
Scripting WIP
2011-11-29 19:13:40 +02:00
Perttu Ahola
38944467d3
Scripting WIP
2011-11-29 19:13:39 +02:00
Perttu Ahola
f145d498a6
Scripting WIP
2011-11-29 19:13:39 +02:00
Perttu Ahola
bfc68d3151
Scripting WIP
2011-11-29 19:13:38 +02:00
Perttu Ahola
22b07bdb30
Fix object duplication bug
2011-10-18 02:58:15 +03:00
Perttu Ahola
78f4142f4f
Add /clearobjects
2011-10-18 00:01:50 +03:00
Perttu Ahola
ea1fda5ebc
Made a scheme to get rid of the objects in the worst object flooded blocks
2011-10-17 20:57:58 +03:00
Perttu Ahola
6661d9be1a
Attempt to fix objects getting multiplicated by objects getting deactivated in a different block than where they were loaded and then the original block, from where the static object was removed, not getting saved at unload
2011-10-17 20:19:37 +03:00
Perttu Ahola
9a62a909bc
Add a log message to SEnv and make it load objects if there are < 51 of them, to load blocks that were limited to 50
2011-10-17 19:44:28 +03:00
Perttu Ahola
e9888c8e25
Workaround for blocks having a huge amount of active objects; add log messages related to active objects for investigation
2011-10-17 11:52:38 +03:00
celeron55
d39f98aeb0
Improve active object handling log output
2011-10-17 10:47:06 +03:00
Perttu Ahola
2419d0029a
Some more profiler stuff to get the hang on what really uses CPU
2011-10-16 22:39:35 +03:00
Perttu Ahola
b8f2dcea4d
Improve debug profiler usage for investigating CPU usage of server
2011-10-16 21:16:44 +03:00
Perttu Ahola
6470743e51
Make dungeon masters not shoot the walls with no reason
2011-10-16 19:39:20 +03:00
Perttu Ahola
369177aa80
Better player damage prevention when falling on unloaded blocks, not involving getting stuck in there.
2011-10-16 18:45:17 +03:00
Perttu Ahola
b65a5aceb0
Use the logger; also, default to not showing much crap in console. Use --info-on-stderr to enable crap.
2011-10-16 14:57:53 +03:00
Perttu Ahola
414c614893
Add peaceful / not peaceful distinction in mobs and the only_peaceful_mobs setting
2011-10-16 11:52:33 +03:00
Perttu Ahola
3f58028d31
Make dungeon masters though and make oerkkis disappear when they get to you (because hitting them doesn't work for some unknown reason)
2011-10-15 16:04:25 +03:00
Perttu Ahola
5341bf59c2
Improve mobv2
2011-10-15 12:17:21 +03:00
Perttu Ahola
43a28f04fa
mobv2
2011-10-15 02:28:57 +03:00
Perttu Ahola
9e46cbf7ea
Header file tweaking; mainly for speed
2011-10-12 13:53:38 +03:00
Perttu Ahola
a7833cca22
Merge remote-tracking branch 'marktraceur/master'
2011-09-26 22:41:06 +03:00
Perttu Ahola
061d4b4202
Merge branch 'view_bobbing_and_vielded_tool'
2011-09-26 15:10:02 +03:00
Joshua Beck
ae561d705f
Fixed null pointer dereference errors found by cppcheck
2011-09-24 02:11:43 -05:00
Mark Holmquist
319f43e6d2
Fixed saplings growing into trees (thanks so much, Kahrl!)
...
Put the random interval back to 1 in 50 chance. It's not as rare as rats, but rarer than grass.
2011-09-23 18:14:35 -07:00
Mark Holmquist
85f119e1e6
Adding (most) of the sapling functionality. It has yet to work, since MEET_OTHER was not implemented at the time of this commit. Hopefully it will work when merged with celeron's latest.
2011-09-23 18:13:53 -07:00
Kahrl
3e012122d1
Simplistic wielded tool lighting, added setMeshVerticesColor to utility.h and refactored some other code into calls of that
2011-09-21 18:37:29 +02:00
Kahrl
c0b35fa429
Removed unused camera_position and camera_direction fields from Client. Moved ClientEnvironment::drawPostFx to ClientMap::renderPostFx -- this will make the camera management classes easier to write, as ClientMap already knows the camera position but ClientEnvironment doesn't and has to be told about it. This also eliminates the need for Client::getEnv(). Made the post effect color a content feature defined in content_mapnode.h.
2011-09-07 19:21:28 +02:00
JacobF
bd72091150
Pause in unloaded territory instead of collide
2011-09-06 20:07:43 +03:00
Perttu Ahola
472585a7e8
tuned lava/universal damage code
2011-08-15 11:49:39 +03:00
Perttu Ahola
8f42a8be0c
lava!
2011-08-15 02:04:56 +03:00
Giuseppe Bilotta
dfdc817db3
Typo fix
2011-08-11 19:45:44 +02:00
Giuseppe Bilotta
98fa00db12
Introduce Player::getLightPosition
...
This is currently only used in the lighting update for remote
players in client.
2011-08-11 15:22:35 +02:00
Mark Holmquist
267744a568
Fixing ladders again
2011-08-01 09:22:44 +02:00
Perttu Ahola
4556c212db
Made rats cookable and made them spawn near trees
2011-07-30 17:51:21 +03:00
Perttu Ahola
26582e0e66
Fixed #21 Earth under torches oscillates between mud and grass
2011-07-23 20:22:22 +03:00
Perttu Ahola
2587bb361c
merged the content type extension and delta
2011-07-23 19:04:37 +03:00
Perttu Ahola
90d793f8f3
extended content-type range
2011-07-23 16:55:26 +03:00
Nils Dagsson Moskopp
8129d16dd3
+ fireflies
2011-07-20 22:05:57 +02:00