David Cernat
5bd2fdcf66
[Server] Add OnObjectScale callback, and set scale for WorldObject
8 years ago
David Cernat
8c019f2c61
[Server] Update OnObjectPlace and OnObjectDelete callbacks
8 years ago
David Cernat
5eff2ece21
[Server] Fix memory leaks related to WorldEvents as suggested by Koncord
8 years ago
David Cernat
b549da996e
[Server] On second thought, keep cell description as argument to them
8 years ago
David Cernat
5989bbd97e
[Server] Remove arguments from OnObjectPlace & OnObjectDelete callbacks
8 years ago
David Cernat
2cecce6c72
[Server] Use static WorldEvent variable in Networking
8 years ago
David Cernat
9f1e491a75
[General] Make WorldEvents store information about multiple objects
8 years ago
David Cernat
4f288ab558
[Server] Read contents of ID_PLAYER_CELL_STATE
8 years ago
David Cernat
96bd21a7ca
[Server] Rename OnPlayerCellLoad to OnPlayerCellState, add action param
8 years ago
David Cernat
244da19a51
[General] Turn ID_PLAYER_CELL_LOAD into ID_PLAYER_CELL_STATE for clarity
8 years ago
David Cernat
73d39c1a0a
[General] Stop using virtual functions in BasePlayer, part 2
8 years ago
David Cernat
63c8a98083
[General] Stop using virtual functions in BasePlayer
8 years ago
David Cernat
c62a575a9e
[Server] Change order of words in the names of script callbacks
8 years ago
David Cernat
1d9c6ddd81
[General] Add placeholders for the new packet ID_PLAYER_CELL_LOAD
8 years ago
David Cernat
25e535e8ad
[Server] Fix integer types for new script callbacks
8 years ago
David Cernat
f9feaf05f0
[Server] Add script callbacks for object placement and deletion
8 years ago
David Cernat
68727751ed
Fix arguments for OnPlayerChangeSpellbook in server Networking
8 years ago
David Cernat
869b32383e
Fix arguments for OnPlayerChangeJournal in server Networking
8 years ago
David Cernat
e2c595fc5d
Add preliminary structure for journal changes
8 years ago
David Cernat
e9b22814b9
Create placeholder for ID_GAME_JOURNAL
8 years ago
David Cernat
a69f294ef0
Rename ID_GAME_CELL into ID_PLAYER_CELL_CHANGE
8 years ago
David Cernat
e7675d94d4
Make server script functions for spells consistent with those from items
8 years ago
David Cernat
33e85c54de
Rename BasePlayer Inventory & Spellbook into PacketItems & PacketSpells
...
This avoids confusion when either of those is used to store and send a single item, and no longer requires coming up with confusing variable names like realSpellbook or realInventory for actual full spellbooks and inventories.
8 years ago
Koncord
f510a5583f
Move MasterClient to Networking class
...
Rename MOTD to hostname
8 years ago
Koncord
b5c586d5b7
Add and implement ID_MASTER_QUERY
8 years ago
Koncord
97dd8704a3
Ignore ping packets
8 years ago
Koncord
7595b33461
Implement spellbook
8 years ago
Koncord
af7b232789
Fix type mismatch
8 years ago
Koncord
0d9a4f2b6f
Fix "Unhandled PlayerPacket with identifier 135"
8 years ago
Koncord
f74734cfba
Fix server crash if player is not fully connected
8 years ago
David Cernat
4e23fc0a5b
Send action parameter to OnPlayerChangeSpellbook
8 years ago
David Cernat
9e290ad799
Fix spacing irregularities
8 years ago
David Cernat
95efb77e53
Implement sending of ID_GAME_SPELLBOOK from client
8 years ago
David Cernat
6ea5f08e9c
Create placeholder for ID_GAME_SPELLBOOK
8 years ago
David Cernat
ae39daf76a
Add and implement ID_MUSIC_PLAY
8 years ago
Koncord
902e968fd9
Use RakNetGUID instead uint64_t in TPlayers
8 years ago
Koncord
e2359b01ea
Use constant instead magic value
8 years ago
Koncord
e2522fa366
Simplify LOG macros
8 years ago
David Cernat
ad43cb5473
Revert "Use lowerCamelCase in tes3mp server script function names, part 2"
...
This reverts commit 80d16fe1fd
.
8 years ago
David Cernat
6cd959fac8
Rename BasePlayer's GetCell() into getCell()
8 years ago
David Cernat
80d16fe1fd
Use lowerCamelCase in tes3mp server script function names, part 2
8 years ago
David Cernat
25dc2b19e7
Use lowerCamelCase in tes3mp server networking function names
8 years ago
David Cernat
7be86388db
Fix build for server
8 years ago
Koncord
82f202c891
Implement GetAvgPing(pid) function
8 years ago
David Cernat
107dacac6d
Add OnPlayerChangeInventory server script callback
8 years ago
David Cernat
31d02e8bf1
Move Networking code for ID_GAME_INVENTORY next to ID_GAME_EQUIPMENT
8 years ago
David Cernat
373011f883
Only send information to POSTLOADED player about other POSTLOADED ones
8 years ago
David Cernat
05cfc918f5
Temporarily use a whitelist for scripts instead of a blacklist
8 years ago
David Cernat
621faf368e
Fix server crash caused by invalid player GUIDs, 2nd attempt
8 years ago
David Cernat
ffb7683a5f
Use suicide as death reason when an attacker leaves the server
8 years ago
David Cernat
eebe1f156a
Change logic for death reasons so it makes sense
8 years ago
David Cernat
3c88f6f0cd
Fix server crash caused by invalid player GUIDs
8 years ago
David Cernat
46397a7dac
Add and implement ID_OBJECT_ANIM_PLAY
8 years ago
David Cernat
c205e793cb
Add and implement ID_SCRIPT_MEMBER_SHORT
8 years ago
David Cernat
c91e240664
Simplify the type of map that player objects are stored in
8 years ago
David Cernat
2032bf9cad
Fix typo in debug
8 years ago
David Cernat
97468980af
Add and implement 3 new WorldPackets for ingame script variable values
8 years ago
David Cernat
385b5f39e3
Add and implement ID_OBJECT_ROTATE
8 years ago
David Cernat
0fb9b6eefb
On second thought, rename ID_OBJECT_MOVE_WORLD into ID_OBJECT_MOVE
8 years ago
David Cernat
947a677801
Replace ID_ACTIVATOR_ACTIVATE with ID_OBJECT_MOVE_WORLD
8 years ago
David Cernat
c25ebc34b3
Shorten WorldPacket IDs by removing WORLD from them
8 years ago
David Cernat
52d156e136
Make server able to receive the 5 new WorldPackets
8 years ago
David Cernat
24bfe40bf7
Add debug about current server crash
8 years ago
David Cernat
b6111d16cc
Add and implement ID_WORLD_VIDEO_PLAY
8 years ago
David Cernat
3fd93896f2
Add and implement ID_WORLD_OBJECT_LOCK
8 years ago
David Cernat
08ea5163c4
Add and implement ID_WORLD_OBJECT_UNLOCK
8 years ago
David Cernat
c639337842
Merge with tes3mp-packetexpansion by fixing conflicts
...
# Conflicts:
# apps/openmw-mp/Networking.cpp
# apps/openmw/mwmp/Networking.cpp
# components/CMakeLists.txt
# components/openmw-mp/NetworkMessages.hpp
# components/openmw-mp/PacketsController.cpp
8 years ago
David Cernat
0a44bea91d
Send cell coordinates in tes3mp using mData instead of mCellId.mIndex
8 years ago
David Cernat
cbc132612a
Use mRefNum.mIndex instead of just mRefNum and add extra debug
8 years ago
Koncord
c27351c19e
Implement inventory functions
...
AddItem, RemoveItem, GetItemName, GetItemCount, GetItemHealth, GetInventorySize SendInventory
Example:
```lua
tes3mp.AddItem(pid, "glass dagger", 1, 50)
tes3mp.AddItem(pid, "glass dagger", 1, -1)
tes3mp.SendInventory(pid)
tes3mp.RemoveItem(pid, "glass dagger", 1)
tes3mp.SendInventory(pid)
local invSize = tes3mp.GetInventorySize(pid) - 1
for i = 0, invSize do
print(("%s %d %d"):format(tes3mp.GetItemName(pid, i), tes3mp.GetItemCount(pid, i), tes3mp.GetItemHealth(pid, i)))
end
```
8 years ago
David Cernat
3c49157ed7
Rename WorldPackets to ID_WORLD_OBJECT_DELETE and ID_WORLD_OBJECT_PLACE
8 years ago
David Cernat
92463c4a03
Fix Windows server crash caused by printing event->CellRef()->mRefID
8 years ago
David Cernat
8080cceac6
Add some placeholder code so Stanislav can test it
8 years ago
David Cernat
565e7e4b9f
Create and implement placeholder for ID_WORLD_OBJECT_CREATION
8 years ago
David Cernat
ac666edebd
Add a CellRef to WorldEvent
8 years ago
David Cernat
d0328f2553
Add placeholder ProcessWorldPacket method to server's Networking
8 years ago
David Cernat
2602c1f71a
Add ProcessPlayerPacket method to server's Networking
8 years ago
David Cernat
f1ec01cc6b
Add WorldPacketController to server's Networking
8 years ago
David Cernat
bda1f867fd
Rename server's GetController() method into GetPlayerController()
8 years ago
David Cernat
d2212ef80b
Rename PacketsController into PlayerPacketController
8 years ago
David Cernat
5e0c0dd5f1
Use logger in server's Networking MainLoop
8 years ago
David Cernat
b8f4cb94fb
Rename BasePacket into PlayerPacket
8 years ago
Koncord
bd1b1fca64
Woops
8 years ago
Koncord
50d989d767
Fix server crash if player is not fully connected
8 years ago
Koncord
79532cf797
Detecting reason of death
8 years ago
Koncord
94d5efdfd3
Call LOG_QUIT after Networking's dtor call
8 years ago
David Cernat
433190d82e
Rename OnPlayerUpdateEquiped into OnPlayerChangeEquipment
8 years ago
David Cernat
b6086ab015
Rename ID_GAME_DYNAMICSTATS_CURRENT into ID_GAME_DYNAMICSTATS
8 years ago
David Cernat
57f07813b0
Rename ID_GAME_UPDATE_POS into ID_GAME_POS
8 years ago
David Cernat
26487598a6
Rename ID_GAME_UPDATE_EQUIPED into ID_GAME_EQUIPMENT
8 years ago
David Cernat
ce4b326b02
Rename ID_GAME_UPDATE_BASESTATS into ID_GAME_DYNAMICSTATS_CURRENT
8 years ago
David Cernat
046a1ea899
Add packet for player levels
8 years ago
David Cernat
9690e007df
Don't send unhandled skill and attribute requests to joining players
8 years ago
Koncord
24617589e4
Fix packet spam
8 years ago
Koncord
96e2d749c7
New auth protocol
8 years ago
Koncord
11eae277a9
Characters Class API
...
Added some new functions
8 years ago
David Cernat
486de67d84
Make handshake log message less confusing
8 years ago
David Cernat
7691bcc958
Add server script callbacks for attribute and skill changes
8 years ago
David Cernat
03d6e0cb62
Send attributes and skills to server whenever they change
8 years ago
David Cernat
c4f49e05e3
Remove manual newlines for logger
8 years ago
Koncord
d3c9864fb0
Fix maximum connections
8 years ago
David Cernat
cba01af683
Log player initialization on server
8 years ago
David Cernat
2337a0becb
Add LOG_APPEND method for writing to log without timestamp and level
8 years ago
David Cernat
f4744f8547
Add additional log info
8 years ago
David Cernat
97f944dde7
Use logger for most console messages
8 years ago
David Cernat
a2dbeb6c95
Share skills and attributes correctly upon logging in, and fix grammar
8 years ago
David Cernat
e5cb58e7c4
Add debug info about ID_GAME_BASE_INFO packets
8 years ago
David Cernat
8eda381016
Make formatting consistent, part 2
9 years ago
David Cernat
1363c4c5b6
Make formatting consistent
9 years ago
David Cernat
38c8d2344b
Uncomment sending of stats packets to and from new players
9 years ago
Koncord
c695923825
Added master server stuff
9 years ago
Koncord
7898b1181d
Reduced package size
9 years ago
Koncord
a815d013fe
Reducing CPU usage for server
9 years ago
Koncord
9ab77cb123
New API functions: MessageBox, CustomMessageBox, InputDialog
...
New Callback: OnGUIAction
9 years ago
Koncord
299c4c904e
Resurrect function
9 years ago
Koncord
1b259e2d33
Syncing inventory, animations, position, 8 key attributes
...
Created Package system
9 years ago