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