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