1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-19 23:53:52 +00:00
Commit graph

53 commits

Author SHA1 Message Date
David Cernat
d4dbfdfdb6 Merge pull request #423 from TES3MP/0.6.3 while resolving conflicts
Conflicts:
	apps/openmw-mp/Networking.cpp
	apps/openmw-mp/Script/Functions/World.cpp
	apps/openmw-mp/Script/Functions/World.hpp
	apps/openmw-mp/processors/WorldProcessor.cpp
	apps/openmw-mp/processors/WorldProcessor.hpp
	apps/openmw-mp/processors/world/ProcessorContainer.hpp
	apps/openmw-mp/processors/world/ProcessorDoorState.hpp
	apps/openmw-mp/processors/world/ProcessorObjectDelete.hpp
	apps/openmw-mp/processors/world/ProcessorObjectLock.hpp
	apps/openmw-mp/processors/world/ProcessorObjectPlace.hpp
	apps/openmw-mp/processors/world/ProcessorObjectScale.hpp
	apps/openmw-mp/processors/world/ProcessorObjectSpawn.hpp
	apps/openmw-mp/processors/world/ProcessorObjectState.hpp
	apps/openmw-mp/processors/world/ProcessorObjectTrap.hpp
	apps/openmw/mwgui/container.cpp
	apps/openmw/mwmp/Networking.cpp
	apps/openmw/mwmp/ObjectList.cpp
	apps/openmw/mwmp/ObjectList.hpp
	apps/openmw/mwmp/processors/world/ProcessorContainer.hpp
	components/CMakeLists.txt
	components/openmw-mp/Base/BaseObject.hpp
	components/openmw-mp/Packets/Object/ObjectPacket.cpp
	components/openmw-mp/Packets/Object/PacketConsoleCommand.cpp
	components/openmw-mp/Packets/Object/PacketContainer.cpp
	components/openmw-mp/Packets/Object/PacketDoorState.hpp
	components/openmw-mp/Packets/Object/PacketMusicPlay.hpp
	components/openmw-mp/Packets/Object/PacketObjectAnimPlay.hpp
	components/openmw-mp/Packets/Object/PacketObjectLock.hpp
	components/openmw-mp/Packets/Object/PacketObjectMove.hpp
	components/openmw-mp/Packets/Object/PacketObjectPlace.hpp
	components/openmw-mp/Packets/Object/PacketObjectRotate.hpp
	components/openmw-mp/Packets/Object/PacketObjectScale.hpp
	components/openmw-mp/Packets/Object/PacketObjectSpawn.hpp
	components/openmw-mp/Packets/Object/PacketObjectState.hpp
	components/openmw-mp/Packets/Object/PacketObjectTrap.hpp
	components/openmw-mp/Packets/Object/PacketScriptGlobalShort.hpp
	components/openmw-mp/Packets/Object/PacketScriptLocalFloat.hpp
	components/openmw-mp/Packets/Object/PacketScriptLocalShort.hpp
	components/openmw-mp/Packets/Object/PacketScriptMemberShort.hpp
	components/openmw-mp/Packets/Object/PacketVideoPlay.hpp
2018-05-13 03:20:01 +03:00
David Cernat
78234f9071 [General] Rename Event into ObjectList & WorldObject into BaseObject 2018-05-13 00:42:24 +03:00
David Cernat
672bb707a7 Merge pull request #422 from TES3MP/0.6.3 while resolving conflicts
# Conflicts:
#   apps/openmw-mp/Networking.cpp
#   apps/openmw-mp/Networking.hpp
#   apps/openmw-mp/Script/Functions/World.cpp
#   apps/openmw-mp/processors/WorldProcessor.cpp
#   apps/openmw-mp/processors/WorldProcessor.hpp
#   apps/openmw-mp/processors/world/ProcessorContainer.hpp
#   apps/openmw-mp/processors/world/ProcessorDoorState.hpp
#   apps/openmw-mp/processors/world/ProcessorObjectDelete.hpp
#   apps/openmw-mp/processors/world/ProcessorObjectLock.hpp
#   apps/openmw-mp/processors/world/ProcessorObjectPlace.hpp
#   apps/openmw-mp/processors/world/ProcessorObjectScale.hpp
#   apps/openmw-mp/processors/world/ProcessorObjectSpawn.hpp
#   apps/openmw-mp/processors/world/ProcessorObjectState.hpp
#   apps/openmw-mp/processors/world/ProcessorObjectTrap.hpp
#   apps/openmw/mwmp/Networking.cpp
#   components/CMakeLists.txt
#   components/openmw-mp/Controllers/ObjectPacketController.hpp
#   components/openmw-mp/Controllers/WorldPacketController.cpp
#   components/openmw-mp/Packets/Object/ObjectPacket.cpp
#   components/openmw-mp/Packets/Object/ObjectPacket.hpp
#   components/openmw-mp/Packets/Object/PacketConsoleCommand.hpp
#   components/openmw-mp/Packets/Object/PacketContainer.hpp
#   components/openmw-mp/Packets/Object/PacketDoorState.hpp
#   components/openmw-mp/Packets/Object/PacketMusicPlay.hpp
#   components/openmw-mp/Packets/Object/PacketObjectAnimPlay.hpp
#   components/openmw-mp/Packets/Object/PacketObjectDelete.hpp
#   components/openmw-mp/Packets/Object/PacketObjectLock.hpp
#   components/openmw-mp/Packets/Object/PacketObjectMove.hpp
#   components/openmw-mp/Packets/Object/PacketObjectPlace.hpp
#   components/openmw-mp/Packets/Object/PacketObjectRotate.hpp
#   components/openmw-mp/Packets/Object/PacketObjectScale.hpp
#   components/openmw-mp/Packets/Object/PacketObjectSpawn.hpp
#   components/openmw-mp/Packets/Object/PacketObjectState.hpp
#   components/openmw-mp/Packets/Object/PacketObjectTrap.hpp
#   components/openmw-mp/Packets/Object/PacketScriptGlobalShort.hpp
#   components/openmw-mp/Packets/Object/PacketScriptLocalFloat.hpp
#   components/openmw-mp/Packets/Object/PacketScriptLocalShort.hpp
#   components/openmw-mp/Packets/Object/PacketScriptMemberShort.hpp
#   components/openmw-mp/Packets/Object/PacketVideoPlay.hpp
2018-05-12 20:35:34 +03:00
David Cernat
6bf3a0be1e [General] Rename WorldPackets into ObjectPackets for clarity 2018-05-12 19:40:00 +03:00
Koncord
122a30c183 [General] Change type of refNumIndex & mpNum to unsigned 2017-12-10 09:20:13 +08:00
Koncord
f35d35741e [General] Remove redundant code
Remove BaseEvent::worldObjectCount
Remove BaseActor::count
Use foreach loops in packets and processors
Remove redundant "&" in CellController::get().getCell() calls
2017-12-09 14:59:41 +08:00
Koncord
585c24cee8 [Server] Optimize CellController 2017-12-09 11:44:56 +08:00
Koncord
aa183e6844 [General] Introduce chat channels 2017-12-08 07:43:29 +08:00
David Cernat
07d75abdf8 [Server] Use consistent order for includes 2017-11-23 08:11:37 +02:00
David Cernat
fe9a3088bd Merge pull request #312 from TES3MP/master
Add master commits up to 10 Oct 2017
2017-10-10 06:27:35 +03:00
David Cernat
f532ab241d [Server] Avoid duplicates of the same player in a cell's loaders 2017-10-10 05:48:56 +03:00
Koncord
2d0840cb3a [General] Modernize Script API
This commit changes the style of tes3mp serverside scripting mods. Short list of changes:
* Break compatibility with old server mods
* OOP style lua API
* Basic dependency checker, allowing the installation of multiple server mods without changing configs
* Remove support for C++ plugins
* Change outdated LuaBridge to [sol2](https://github.com/ThePhD/sol2);
* Support GCC, Clang and MSVC compilers
* New environment variables: "TES3MP_SERVER_DIR" and "TES3MP_SERVER_USERDIR";
* New entity "Command controller" for registering new chat commands;
* New Event system
* Simplified Timer API
* All Lua mods now run in their own environments
* Add global namespace - Data that can be used for communicating between mods
* Player and Actor inherit base class NetActor
2017-08-28 00:15:56 +08:00
David Cernat
3c30801eac [Server] Try to fix server crash from iterations through invalid players 2017-05-09 14:30:25 +03:00
David Cernat
06f3c07116 [Server] Only read Actor packets from players who are still authorities 2017-05-05 06:13:34 +03:00
David Cernat
377aa9b6c9 [Server] Refresh cellActorList's count after removing Actors from it 2017-05-02 03:39:00 +03:00
David Cernat
83ba4b62b1 [Server] Remove Actors from a Cell's ActorList when they change cells 2017-05-02 01:39:08 +03:00
David Cernat
fafed96bf4 [Server] Store data from ActorPosition in the ActorLists of Cells 2017-05-01 20:42:54 +03:00
David Cernat
62d93a09c1 [Server] Add new script callbacks for cells, remove a couple of others
OnPlayerCellState and OnActorStatsDynamic are now removed as callbacks.

The old OnCellUnload is now renamed into OnCellDeletion.

OnCellLoad and a new OnCellUnload relating to a specific player's load/unload are added.
2017-05-01 02:36:13 +03:00
David Cernat
a73cbac226 [Server] Store a BaseActorList in every Cell to keep track of Actor data 2017-05-01 00:42:34 +03:00
David Cernat
234510a87f [Server] Split off Cell and CellController into two different files 2017-04-29 23:05:12 +03:00
David Cernat
c52084a028 [General] Use BaseActorLists in ActorPackets 2017-04-09 16:32:44 +03:00
David Cernat
070c6a3bd4 [General] Add ActorPacketController & make controller var names clearer 2017-04-09 08:51:28 +03:00
David Cernat
c6c0e4acc9 [Server] Fix Cell::sendToLoaded() part 2, and fix Player::sendToLoaded() 2017-04-06 08:39:11 +03:00
David Cernat
8616323bae [Server] Fix logic in Cell::sendToLoaded() 2017-04-06 08:27:04 +03:00
Koncord
690211ad99 [General] Extract BaseEvent & BasePlayer from packets to functions
Move Send and Read functions to BasePacket
2017-03-06 18:40:07 +08:00
Koncord
cea1425db1 [Client] Remove redundant newlines & keep ~120 columns 2017-03-04 14:55:35 +08:00
Koncord
0442ebd607 [Server] Remove redundant newlines & keep ~120 columns 2017-02-27 17:13:07 +08:00
David Cernat
deb10919ab [Server] Delete cells that become empty when a player disconnects 2017-02-26 19:45:04 +02:00
David Cernat
048ddf6a34 [Server] Use LOG_APPEND for older debug messages in Cell 2017-02-26 18:06:26 +02:00
David Cernat
7f51ca5298 [Server] Add permanent debug to Cell and CellController 2017-02-26 14:06:34 +02:00
David Cernat
2fd279a5ef [Server] Remove debug message 2017-02-25 13:26:57 +02:00
David Cernat
4a5b8c927f [Server] Add an extra check to Cell::sendToLoaded to be on the safe side 2017-02-25 12:44:20 +02:00
Koncord
45d081ba42 [Server] Compare new cells with loaded cells correctly 2017-02-25 16:47:11 +08:00
Koncord
3adbf17545 [Server] Fix memory leak in CellController 2017-02-24 13:58:40 +08:00
Koncord
b33e604a61 [Server] Set sendToLoaded function as constant
Add assertions for CellController singleton
2017-02-24 12:33:59 +08:00
Koncord
443c0ed309 [Server] Fix Cell iterators 2017-02-22 12:03:03 +08:00
Koncord
a75da18f31 [Server] Fix argument in log message 2017-02-21 18:14:02 +08:00
Koncord
ec4d016100 [Server] Don't crash server every time a player disconnects. Again. 2017-02-20 20:44:01 +08:00
Koncord
ee494887e1 [Server] Fix log message 2017-02-20 19:45:43 +08:00
David Cernat
b829f0252a [Server] Don't crash server every time a player disconnects 2017-02-20 01:47:39 +02:00
David Cernat
24251cafd0 [Server] Send large ID_CONTAINER packets on a need-to-know basis 2017-02-19 20:20:44 +02:00
David Cernat
791089d342 [Server] Add Cell::sendToLoaded() for sending events to loaded players 2017-02-19 19:42:16 +02:00
David Cernat
eb0744aa77 [Server] Add CellController:getCell() for getting Cell through ESM::Cell 2017-02-19 19:39:53 +02:00
David Cernat
ee1ba1728e [Server] Rename getCellByID() into getCellByName() to avoid confusion 2017-02-19 18:37:20 +02:00
David Cernat
275dfaf05f [Server] Add Cell::getDescription() for debugging purposes 2017-02-19 17:27:38 +02:00
David Cernat
887b436ee7 [Server] Make style for new methods consistent with rest of project 2017-02-19 16:53:15 +02:00
Koncord
fd36ec7613 [Server] Iterate cells where player was loaded instead all 2017-02-19 22:43:57 +08:00
Koncord
67099e437a [Server] Remove player from Cells when disconnected 2017-02-19 22:27:00 +08:00
Koncord
465d0fe4b4 [Server] Fix log messages in CellController 2017-02-19 20:38:17 +08:00
Koncord
931ecd5acb [Server] Imrpove debug info in CellController 2017-02-19 19:29:14 +08:00