Koncord
11be8ed005
Rename copyOldLog to renameOldLog
8 years ago
Koncord
f08ab0b161
Keep old server logs
8 years ago
U-VirtualBox-PC\Admin
6229269506
Some patches for lua on windows
8 years ago
David Cernat
35de28e239
Fix setting of longer environmental variables on Windows
8 years ago
Koncord
804259b2c9
Change some printf to LOG_MESSAGE_SIMPLE
...
printf is not streamed to files
8 years ago
Koncord
f74734cfba
Fix server crash if player is not fully connected
8 years ago
Koncord
61f7ad2f76
Add new paths for native & lua libs
...
If you want to add the native lib you should place it to {PATH_TO_MOD}/lib/
for external Lua libs: {PATH_TO_MOD}/lib/lua/
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
d4b5c826f8
Fix typo in spell script functions
8 years ago
David Cernat
c81b58e1be
Add spell script functions to tes3mp server
8 years ago
David Cernat
8aeb3a6cc6
Reorder script function classes in tes3mp server's CMakeLists.txt
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
David Cernat
7a3d490121
Rename dumps into crashdumps to make the folder's purpose clear to users
8 years ago
David Cernat
f865246955
Fix Breakpad using changes provided by Stanislav in a gist
8 years ago
David Cernat
456aee65d9
Add and implement ClearInventory() script function
8 years ago
David Cernat
7fae28ce91
Prevent RemoveItem() script function from clearing inventorySendBuffer
...
Up to this commit, the following commands in a Lua script led to the target player receiving all three items, as expected:
tes3mp.AddItem(self.pid, "common_shirt_01", 1, -1)
tes3mp.AddItem(self.pid, "common_pants_01", 1, -1)
tes3mp.AddItem(self.pid, "common_shoes_01", 1, -1)
tes3mp.SendInventory(self.pid)
This, on the other hand, only led to the removal of the last item specified (in this case, the shoes):
tes3mp.RemoveItem(self.pid, "common_shirt_01", 1)
tes3mp.RemoveItem(self.pid, "common_pants_01", 1)
tes3mp.RemoveItem(self.pid, "common_shoes_01", 1)
tes3mp.SendInventory(self.pid)
Inventory functions are bound to remain confusing, but they should at least be consistent in their behavior.
8 years ago
David Cernat
7f25abb9c8
Implement UnequipItem() script function
8 years ago
David Cernat
56928bdc4c
Clean up inventory script functions so they are usable for equipment too
8 years ago
David Cernat
356143faed
Rename GetEquipmentSlotCount() into GetEquipmentSize()
8 years ago
David Cernat
977e93288e
Add GetEquipmentSlotCount() to item script functions
8 years ago
Koncord
f5f1a29f31
Change printf to LOG_MESSAGE_SIMPLE
8 years ago
Koncord
18026d4a50
Fix include guard
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
46b41b605a
Revert "Use lowerCamelCase in tes3mp server script function names, part 1"
...
This reverts commit 0e2b589cdb
.
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
1a25434d33
Turn overlooked instance of GetCell() into getCell()
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
0e2b589cdb
Use lowerCamelCase in tes3mp server script function names, part 1
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
David Cernat
dc9b814ff6
Fix typo in server script translocations
8 years ago
David Cernat
841e93d5e0
Use new SendCell() method in server scripts to send cell packets
8 years ago
David Cernat
5b39916894
Use new SendPos() method in server scripts to send position packets
8 years ago
David Cernat
e0c88150c3
Reorder functions for server script translocations
8 years ago
Koncord
82f202c891
Implement GetAvgPing(pid) function
8 years ago
Koncord
37e9cafbf7
Add new API function: SetConsoleAllow
...
example:
tes3mp.SetConsoleAllow(pid, 0) -- disallow console to the player
The console is allowed by default
8 years ago
Koncord
6f6993255a
Fix string in breakpad()
8 years ago
Koncord
adb49b7c7d
Add New GUI dialog: ListBox
...
Example:
local GUI_LISTBOX = 42
function OnPlayerSendMessage(pid, message)
if message == "/lb" then
local items = "consectetur adipiscing elit\nsed do eiusmod tempor incididunt ut labore\net dolore magna aliqua." -- items can be separated through newline
local label = "Lorem ipsum dolor sit amet"
tes3mp.ListBox(pid, GUI_LISTBOX, label, items)
end
end
function OnGUIAction(pid, idGui, data)
if idGui == GUI_LISTBOX then
print("ID: " .. idGui .. " data: " .. tostring(data)) -- if value higher than last item id
end
end
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
6929cd6c4c
Delete debug about player map that is no longer needed
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
a9f6ea4d8d
Use the name "guid" for RakNet IDs so as to not confuse with int IDs
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
ef6f20e3f7
In server console, print number of players remaining when one leaves
8 years ago
David Cernat
24bfe40bf7
Add debug about current server crash
8 years ago
David Cernat
b2688777c1
Create marker once a player has been initialized properly and fix debug
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
3380c482c0
Fix errors remaining from merge with tes3mp-packetexpansion, part 2
8 years ago
David Cernat
b06a2f3119
Fix part about Breakpad in server's CMakeLists
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
a6467c9c47
Add breakpad to server
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
4b96080521
Make GetItemSlot work and add SendEquipment in server item functions
8 years ago
David Cernat
6650b74498
Add handling of skill increases
8 years ago
David Cernat
977b277cdd
Add missing entries for level progress functions
8 years ago
David Cernat
a0e9a672a5
Split updateClassStats in 3 and add handling of level progress
8 years ago
David Cernat
56a2c70911
Use double instead of int for skill progress functions
8 years ago
David Cernat
ae4950ce49
Add server stat functions for getting and setting skill progress
8 years ago
David Cernat
bc0aa86bcf
Make variable names more consistent and easier to understand
8 years ago
David Cernat
7a1531c01b
Fix script functions for setting dynamic stats, part 2
8 years ago
David Cernat
458bdf4dff
Fix script functions for setting dynamic stats
8 years ago
David Cernat
433190d82e
Rename OnPlayerUpdateEquiped into OnPlayerChangeEquipment
8 years ago
Koncord
94f6ab30f2
Fix GetProtocolVersion
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
9fd5ae981e
Add missing backslash
8 years ago
David Cernat
ce4b326b02
Rename ID_GAME_UPDATE_BASESTATS into ID_GAME_DYNAMICSTATS_CURRENT
8 years ago
David Cernat
295f486a97
Using less confusing names for server stat functions, part 2
8 years ago
David Cernat
69030579c1
Using less confusing names for server stat functions
8 years ago
David Cernat
7ae9ea7465
Add server stat functions for getting attribute and skill counts
8 years ago
David Cernat
57703482b2
Fetch attribute and skill counts in server stat functions
8 years ago
David Cernat
4d7130b12f
Improve logic for script-induced cell changes
8 years ago
David Cernat
01af4f3bbc
Update position before sending cell packet
8 years ago
David Cernat
1ee2458f6e
Add packet for player levels, part 2
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
61c5456373
Log callbacks
8 years ago
Koncord
e661a35ac2
Fix checking strings in SetName & SetBirthsign
8 years ago
Koncord
1e48555617
Make sensitivity to protocol version
8 years ago
Koncord
fe10821528
Add loaded/isLoaded to server player
8 years ago
Koncord
df13e9c37a
Fix verbose log level in server
8 years ago
Koncord
babc3230b7
Add new functions: GetServerVersion & GetProtocolVersion
8 years ago
Koncord
64b5638d40
DIE TABS, DIE!!!!!!!1
8 years ago
David Cernat
ff94b5f1ac
Fix unsuitable variable name
8 years ago
David Cernat
941d76fce0
Fix setting of default classes and initialize classes safely on server
8 years ago
David Cernat
970e9aff2f
Remove old class methods and don't include class in ID_GAME_BASE_INFO
8 years ago
David Cernat
a20e7890a2
Fix formatting
8 years ago
David Cernat
f562215d9a
Merge branch 'master' of https://github.com/TES3MP/openmw-tes3mp
8 years ago
David Cernat
1f8595bf3b
Save server information in a folder named data instead of files
8 years ago
Koncord
cf1a0113a1
Time API
8 years ago
David Cernat
5e6a374687
Add comment about MesssageBox to prevent future confusion
8 years ago
David Cernat
857defadbc
Revert one unnecessary renaming of MessageBox
8 years ago
David Cernat
32ce7e97a8
Fix build for Windows server
8 years ago
Koncord
1186d09ec0
ScriptFunctions.hpp size reduction
8 years ago
Koncord
11eae277a9
Characters Class API
...
Added some new functions
8 years ago
Koncord
a03c2f5019
Now server & client sensitive to version
8 years ago
David Cernat
00e7810428
Add script functions for saving and loading non-custom player classes
8 years ago
David Cernat
486de67d84
Make handshake log message less confusing
8 years ago
David Cernat
5385563972
Let players inform others about Lua script-induced cell & pos changes
8 years ago
Koncord
fc4d8b82fb
Stubs for minimap
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
78210ab8ce
rename openmw-mp to tes3mp-server
8 years ago
Koncord
d3c9864fb0
Fix maximum connections
8 years ago
David Cernat
e1955b440f
Fix player initialization on server
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
a36c20eaae
Reduce server console spam
8 years ago
David Cernat
a2dbeb6c95
Share skills and attributes correctly upon logging in, and fix grammar
8 years ago
Koncord
7f8c0ecbbd
Logging in file for server
8 years ago
David Cernat
c94f818478
Add script functions for getting attributes and skills by their names
8 years ago
David Cernat
41868cc9cc
Add script functions for getting attributes and skills by their IDs
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
8 years ago
David Cernat
1363c4c5b6
Make formatting consistent
8 years ago
David Cernat
e39b66af4f
Move logger to components
8 years ago
David Cernat
38c8d2344b
Uncomment sending of stats packets to and from new players
8 years ago
Koncord
ee8d9895dc
Porting Log.cpp to C++98
8 years ago
Koncord
a92ef8b6bd
Some fixes
8 years ago
Koncord
e9ee9c8b3b
Remove C++11 in Log.h
8 years ago
Koncord
b3320c7bb9
Add forgoten ctime header
8 years ago
Koncord
8d88381dac
added prefix LOG_ to loglevel
8 years ago
Koncord
170455e08a
Fix headers
8 years ago
Koncord
c695923825
Added master server stuff
8 years ago
Koncord
02a447c589
Added logger
8 years ago
Koncord
114a11ea78
Getting rid of packages spam
...
I think this is temporary solution. I have an idea how to cache the result of functions and send data after callback.
9 years ago
Koncord
7898b1181d
Reduced package size
9 years ago
Koncord
a815d013fe
Reducing CPU usage for server
9 years ago
David Cernat
b0bd10f219
Allow script-based teleportation from interior to exterior cell 0,0
9 years ago
Koncord
b4c7914a25
Added <memory> header for Windows
9 years ago
Koncord
74c103ddc1
Fixed types in all GetInterface functions
...
Move lib_t type to Scripts/Types.hpp
9 years ago
Koncord
e513c3676d
Added forgotten header to project
9 years ago
Koncord
9375b540d6
removed '#undef _SEP_'
9 years ago
Koncord
bdfaea2d46
Implement 'setenv' for windows
...
Paths converter
Move 'split' from main to Utils
9 years ago
David Cernat
72026955f5
Add missing preprocessor directive for Windows build of server
9 years ago
Koncord
31e2ab54d6
Revert "Update position after changing cell"
...
This reverts commit 5e072b9d3c
.
9 years ago
Koncord
5e072b9d3c
Update position after changing cell
9 years ago
Koncord
7107136808
New API
...
SetExterior(pid, x, y)
GetExteriorX(pid)
GetExteriorY(pid)
also "SetCell" will now move to the named external cells (e.g. SetCell(pid, "Balmora"))
9 years ago
Koncord
0549a7a01d
Fixed type cast
9 years ago
Koncord
23a37fc7fc
Ignore LuaBridge warnings
...
Remove TINYXML_LIBRARIES
9 years ago
Koncord
d3414148fc
Simplify LangLua::Call
9 years ago
Koncord
5a6c1750d9
Fixed some build warnings and IsTimerElapsed function
9 years ago
Stanislav Zhukov
075b600b3a
Fix for Windows
9 years ago
Stanislav Zhukov
4316d4d1bf
Merge pull request #21 from TES3MP/tes3mp-gui
...
Tes3mp gui
9 years ago
Koncord
86dccbed4b
Fix CMake
9 years ago
David Cernat
f4342f0bde
Stop requiring amx folder for non-Pawn builds. Use correct Windows identifiers for preprocessor directives in server code.
9 years ago
Koncord
1e3eff91ac
Merged branch tes3mp-gui into tes3mp-gui
9 years ago
Koncord
9ab77cb123
New API functions: MessageBox, CustomMessageBox, InputDialog
...
New Callback: OnGUIAction
9 years ago
davidcernat
ab309180c2
Add useful debug info for cell changes
9 years ago
Koncord
6f07d590d4
Fix SetPos and SetAngle functions
...
Fix types for SetPos and SetAngle
9 years ago
Stanislav Zhukov
645a21af21
Added new script functions for lua compatibility
...
GetPosX, GetPosY, GetPosZ
GetAngleX, GetAngleY, GetAngleZ
9 years ago
Stanislav Zhukov
ce92f30022
Fix maximum incoming connections
9 years ago
Koncord
299c4c904e
Resurrect function
9 years ago