Koncord
82f202c891
Implement GetAvgPing(pid) function
2016-11-04 20:15:14 +08:00
Koncord
37e9cafbf7
Add new API function: SetConsoleAllow
...
example:
tes3mp.SetConsoleAllow(pid, 0) -- disallow console to the player
The console is allowed by default
2016-11-04 03:01:26 +08:00
Koncord
3759127627
Woops
2016-11-04 00:57:51 +08:00
Koncord
6f6993255a
Fix string in breakpad()
2016-11-04 00:24:16 +08:00
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
2016-11-04 00:24:16 +08:00
David Cernat
107dacac6d
Add OnPlayerChangeInventory server script callback
2016-11-03 16:39:31 +02:00
David Cernat
6ff47bbde9
Merge pull request #93 from OpenMW/master
...
Add OpenMW commits from 1 Nov
2016-11-02 12:31:20 +02:00
Nikolay Kasyanov
5d4734c02e
Use local path from configuration manager to load openmw.cfg in launcher
2016-11-01 21:27:35 +01:00
MiroslavR
5cd04af3fa
Fix horrible performance when resizing/moving the settings window
...
Resize widgets instead of reconstructing them.
2016-11-01 16:37:00 +01:00
David Cernat
66e697953c
Add missing break statement in Networking to prevent default nighttime
2016-10-31 22:53:32 +02:00
David Cernat
31d02e8bf1
Move Networking code for ID_GAME_INVENTORY next to ID_GAME_EQUIPMENT
2016-10-31 17:16:41 +02:00
David Cernat
06152fde77
Stop player-controlled NPCs from reporting crimes committed by players
2016-10-31 11:00:56 +02:00
David Cernat
4621363b65
Make capitalization reflect name of filename, and remove unused check
2016-10-31 01:23:31 +02:00
David Cernat
373011f883
Only send information to POSTLOADED player about other POSTLOADED ones
2016-10-31 01:14:17 +02:00
David Cernat
cd798d5f23
Merge pull request #89 from OpenMW/master
...
Add OpenMW commits up to 30 Oct
2016-10-30 21:49:07 +02:00
scrawl
e0f613661e
Fix char -> int, fix shadowing warning
2016-10-30 20:10:33 +01:00
David Cernat
05cfc918f5
Temporarily use a whitelist for scripts instead of a blacklist
2016-10-30 21:00:54 +02:00
scrawl
cac8de0b29
Merge pull request #1116 from Allofich/paused
...
Don't update ripple simulation when paused
2016-10-30 19:26:56 +01:00
scrawl
e5cb7306c3
Merge pull request #1115 from Allofich/conversion
...
Fix narrowing conversion warning
2016-10-30 19:26:51 +01:00
Allofich
19db070fca
Don't update ripple simulation when paused
2016-10-31 01:19:38 +09:00
David Cernat
621faf368e
Fix server crash caused by invalid player GUIDs, 2nd attempt
2016-10-30 18:07:23 +02:00
Allofich
68ed264f40
Fix narrowing conversion warning
2016-10-31 00:53:17 +09:00
David Cernat
ffb7683a5f
Use suicide as death reason when an attacker leaves the server
2016-10-30 17:39:45 +02:00
Allofich
125e94ef0e
Fix shadowing warnings
2016-10-31 00:39:31 +09:00
David Cernat
3c4b74cd14
Fix frame listener errors for player markers
2016-10-30 16:39:59 +02:00
David Cernat
eebe1f156a
Change logic for death reasons so it makes sense
2016-10-30 13:19:48 +02:00
David Cernat
9c12aa2141
Fix formatting
2016-10-30 12:58:58 +02:00
David Cernat
6929cd6c4c
Delete debug about player map that is no longer needed
2016-10-30 02:30:17 +03:00
David Cernat
cee7843576
Send ID_OBJECT_DELETE when taking world items through inventory screen
2016-10-30 02:26:32 +03:00
David Cernat
41504bd02a
Use more accurate position for ID_OBJECT_PLACE
2016-10-30 00:51:23 +03:00
David Cernat
a4647de048
Break away from OpenMW by giving RefNum indexes to new created objects
2016-10-30 00:21:55 +03:00
David Cernat
3c88f6f0cd
Fix server crash caused by invalid player GUIDs
2016-10-29 16:41:29 +03:00
David Cernat
937bf97883
Send gold values correctly with ID_OBJECT_PLACE
2016-10-29 00:34:46 +03:00
David Cernat
180aa3f2f3
Send item count ID_WORLD_OBJECT_PLACE
2016-10-28 22:35:01 +03:00
David Cernat
1f982e4dc7
Find objects from world packets using both ID and reference number
2016-10-28 21:31:41 +03:00
David Cernat
d93e66207e
Update player markers only when getting a position packet
2016-10-27 19:09:05 +03:00
David Cernat
7f98cddfdf
Don't send animation packets from blacklisted scripts
2016-10-27 17:41:48 +03:00
David Cernat
e414261121
Send ID_OBJECT_ANIM_PLAY from ingame scripts
2016-10-27 16:46:47 +03:00
David Cernat
46397a7dac
Add and implement ID_OBJECT_ANIM_PLAY
2016-10-27 16:09:02 +03:00
David Cernat
344f2b535a
Fix setting of index for ID_SCRIPT_MEMBER_SHORT in InterpreterContext
2016-10-27 15:02:40 +03:00
David Cernat
fff6833950
Send ID_SCRIPT_MEMBER_SHORT from MWScript::InterpreterContext
2016-10-27 02:18:27 +03:00
David Cernat
d5fca115f7
Fix variable name for ID_SCRIPT_GLOBAL_SHORT in InterpreterContext
2016-10-27 02:17:06 +03:00
David Cernat
c205e793cb
Add and implement ID_SCRIPT_MEMBER_SHORT
2016-10-27 00:41:14 +03:00
David Cernat
c91e240664
Simplify the type of map that player objects are stored in
2016-10-26 21:36:58 +03:00
David Cernat
65363b0dd1
Avoid sending packets for 9 more ingame scripts
2016-10-26 21:33:13 +03:00
David Cernat
2032bf9cad
Fix typo in debug
2016-10-26 17:22:53 +03:00
David Cernat
a9f6ea4d8d
Use the name "guid" for RakNet IDs so as to not confuse with int IDs
2016-10-26 15:55:34 +03:00
David Cernat
47854d631b
Avoid sending packets for 2 more ingame scripts
2016-10-26 15:24:53 +03:00
David Cernat
c99c3b1486
Avoid sending packets for 3 additional spammy ingame scripts
2016-10-26 12:43:26 +03:00
David Cernat
749c6db49e
Send WorldPackets with script values from MWScript::InterpreterContext
2016-10-26 12:29:32 +03:00
David Cernat
97468980af
Add and implement 3 new WorldPackets for ingame script variable values
2016-10-26 12:25:50 +03:00
Assumeru
25d64989b3
Check if the actor still exists /first/
2016-10-26 11:04:54 +02:00
David Cernat
e7ebeb8eec
Stop sending ID_OBJECT_MOVE and ID_OBJECT_ROTATE from scripts, because it clashes with syncing script variable values across players and makes movements and rotations happen twice
2016-10-26 10:01:55 +03:00
David Cernat
75f6d82f08
Add a way of filtering out ingame scripts for upcoming script packets
2016-10-25 22:44:15 +03:00
Assumeru
a72cd896ca
Move actors out of the water if there's room for them. Fixes #1138
2016-10-25 19:26:17 +02:00
David Cernat
aaf4cc0d7e
Prevent being in a menu from disabling script execution or actor damage
2016-10-25 17:48:00 +03:00
David Cernat
cc40b85034
Don't send packets for floating objects
2016-10-25 16:30:31 +03:00
David Cernat
b1051255e0
Send ID_OBJECT_ROTATE from ingame scripts
2016-10-25 14:42:54 +03:00
David Cernat
385b5f39e3
Add and implement ID_OBJECT_ROTATE
2016-10-25 14:28:39 +03:00
David Cernat
54ed9a7ab4
Implement ID_OBJECT_MOVE and send it from ingame scripts
2016-10-25 14:07:00 +03:00
David Cernat
0fb9b6eefb
On second thought, rename ID_OBJECT_MOVE_WORLD into ID_OBJECT_MOVE
2016-10-25 12:53:18 +03:00
David Cernat
947a677801
Replace ID_ACTIVATOR_ACTIVATE with ID_OBJECT_MOVE_WORLD
2016-10-25 12:42:29 +03:00
David Cernat
c25ebc34b3
Shorten WorldPacket IDs by removing WORLD from them
2016-10-25 12:15:27 +03:00
David Cernat
bdb53e1cb4
Implement ID_WORLD_DOOR_ACTIVATE and send it from MWBase::World
2016-10-25 10:40:55 +03:00
David Cernat
7264f13b8e
Implement ID_WORLD_OBJECT_SCALE and send it from ingame scripts
2016-10-25 00:52:42 +03:00
David Cernat
52d156e136
Make server able to receive the 5 new WorldPackets
2016-10-25 00:50:32 +03:00
David Cernat
ef6f20e3f7
In server console, print number of players remaining when one leaves
2016-10-24 22:47:52 +03:00
David Cernat
24bfe40bf7
Add debug about current server crash
2016-10-24 21:17:53 +03:00
David Cernat
b2688777c1
Create marker once a player has been initialized properly and fix debug
2016-10-24 21:08:47 +03:00
David Cernat
be73265848
Send ID_WORLD_VIDEO_PLAY from ingame scripts
2016-10-24 17:55:10 +03:00
David Cernat
b6111d16cc
Add and implement ID_WORLD_VIDEO_PLAY
2016-10-24 17:52:19 +03:00
David Cernat
c54af2b02b
Make DedicatedPlayer's setMarkerState method actually enable markers
2016-10-24 16:26:51 +03:00
David Cernat
1e4d625c99
Make player markers show up in exterior cells
2016-10-24 15:29:10 +03:00
David Cernat
04eb051df6
Make markers get removed when their players quit, rename marker methods
2016-10-24 15:10:32 +03:00
David Cernat
aed884949c
Send ID_WORLD_OBJECT_LOCK from ingame scripts
2016-10-24 13:22:46 +03:00
David Cernat
3fd93896f2
Add and implement ID_WORLD_OBJECT_LOCK
2016-10-24 13:20:04 +03:00
David Cernat
3a5a5e73a1
Send ID_WORLD_OBJECT_UNLOCK from ingame scripts and regular unlocking
2016-10-24 11:43:27 +03:00
David Cernat
08ea5163c4
Add and implement ID_WORLD_OBJECT_UNLOCK
2016-10-24 11:26:31 +03:00
David Cernat
94c5d6d2f9
Don't use autoEquip on player-controlled NPCs
2016-10-24 11:15:09 +03:00
David Cernat
47ebd24b4a
Merge pull request #79 from OpenMW/master while resolving conflicts
...
# Conflicts:
# .travis.yml
# apps/openmw/mwinput/inputmanagerimp.cpp
2016-10-24 09:18:21 +03:00
David Cernat
a6fa0073a0
Find items by mRefNum.mIndex instead of mRefNum for WorldPackets
2016-10-23 23:13:42 +03:00
David Cernat
6bfaf3be50
Send an ID_WORLD_OBJECT_PLACE whenever ingame scripts place objects
2016-10-23 20:48:24 +03:00
David Cernat
3380c482c0
Fix errors remaining from merge with tes3mp-packetexpansion, part 2
2016-10-23 19:32:39 +03:00
David Cernat
b06a2f3119
Fix part about Breakpad in server's CMakeLists
2016-10-23 19:28:35 +03:00
David Cernat
e7567020bb
Fix debug for ID_WORLD_OBJECT_DELETE in client's Networking
2016-10-23 19:10:21 +03:00
David Cernat
d85a1ee1a9
Fix errors remaining from merge with tes3mp-packetexpansion
2016-10-23 18:32:03 +03:00
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
2016-10-23 17:57:38 +03:00
David Cernat
025a847fd1
Send an ID_WORLD_OBJECT_DELETE whenever ingame scripts delete objects
2016-10-23 17:03:47 +03:00
David Cernat
0a44bea91d
Send cell coordinates in tes3mp using mData instead of mCellId.mIndex
2016-10-23 16:55:30 +03:00
David Cernat
cbc132612a
Use mRefNum.mIndex instead of just mRefNum and add extra debug
2016-10-23 16:33:53 +03:00
David Cernat
17f66e4e90
Implement ID_WORLD_OBJECT_PLACE
2016-10-23 13:30:32 +03:00
Koncord
a6467c9c47
Add breakpad to server
2016-10-23 17:07:46 +08:00
Koncord
df3886168f
Word wrapping in chat
2016-10-23 14:33:43 +08:00
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
```
2016-10-23 02:57:49 +08:00
David Cernat
6e43baf73e
Send Cell instead of CellId because of problems with the latter
2016-10-22 20:09:13 +03:00
David Cernat
103b1e3f72
Send CellId in ID_WORLD_OBJECT_DELETE
2016-10-22 18:44:13 +03:00
David Cernat
2e57e25675
Only delete object from ID_WORLD_OBJECT_DELETE if it actually exists
2016-10-22 18:19:57 +03:00
David Cernat
3c49157ed7
Rename WorldPackets to ID_WORLD_OBJECT_DELETE and ID_WORLD_OBJECT_PLACE
2016-10-22 18:05:32 +03:00
David Cernat
40f1db2d86
Create SearchByRefNumCustomVisitor in CellStore that returns entire Ptr
2016-10-22 17:47:21 +03:00
David Cernat
b3d6dad0c5
Send ID_WORLD_OBJECT_REMOVAL from actiontake.cpp and not worldimp.cpp
2016-10-22 17:10:57 +03:00
David Cernat
cc98a25dcf
Add searchByRefNum method to OpenMW's CellStore
2016-10-22 16:47:11 +03:00
David Cernat
92463c4a03
Fix Windows server crash caused by printing event->CellRef()->mRefID
2016-10-22 14:13:16 +03:00
David Cernat
8080cceac6
Add some placeholder code so Stanislav can test it
2016-10-22 12:45:19 +03:00
Stanislav Zhukov
81dfd21d9a
Merge pull request #76 from TES3MP/tes3mp-minimap
...
Show dedicated players on minimap
2016-10-22 17:21:02 +08:00
Koncord
b704519078
Show dedicated players on minimap
2016-10-22 17:06:26 +08:00
David Cernat
565e7e4b9f
Create and implement placeholder for ID_WORLD_OBJECT_CREATION
2016-10-21 21:57:05 +03:00
David Cernat
32dc8cf63f
Read contents of ID_WORLD_OBJECT_REMOVAL on client
2016-10-21 20:44:15 +03:00
David Cernat
36f218876a
Add ProcessPlayerPacket and ProcessWorldPacket to client's Networking
2016-10-21 19:23:56 +03:00
David Cernat
ac666edebd
Add a CellRef to WorldEvent
2016-10-20 22:15:47 +03:00
MiroslavR
cd9de94c0c
Import teleporting and levitation disabled state from vanilla savegames ( Fixes #3420 )
2016-10-20 14:38:18 +02:00
David Cernat
b2845cd17c
Create and start using WorldEvent class
2016-10-20 14:28:19 +03:00
David Cernat
a42d5f2429
Make client send placeholder ID_WORLD_OBJECT_REMOVAL to server
2016-10-20 12:53:48 +03:00
MiroslavR
f3ce0840be
Import controls state from vanilla savegames
2016-10-20 02:14:36 +02:00
MiroslavR
301dd77efb
Save controls state ( Fixes #3598 )
2016-10-20 02:12:01 +02:00
MiroslavR
407abc605f
Fix auto-equipping of blunt weapons
2016-10-19 22:37:45 +02:00
David Cernat
f218613231
Rename client Networking's GetPacket method into GetPlayerPacket
2016-10-19 22:49:35 +03:00
David Cernat
e27d1857ef
Fix formatting in previous changes made by tes3mp to OpenMW's core
2016-10-19 22:06:11 +03:00
scrawl
9c549a85ce
Merge pull request #1108 from MiroslavR/autoequip-weap
...
Auto-equip weapons
2016-10-19 20:45:47 +02:00
David Cernat
d0328f2553
Add placeholder ProcessWorldPacket method to server's Networking
2016-10-19 21:44:17 +03:00
David Cernat
2602c1f71a
Add ProcessPlayerPacket method to server's Networking
2016-10-19 21:26:42 +03:00
David Cernat
f1ec01cc6b
Add WorldPacketController to server's Networking
2016-10-19 20:51:51 +03:00
David Cernat
790d41e278
Move PlayerPackets into their own subfolder
2016-10-19 19:37:10 +03:00
David Cernat
bda1f867fd
Rename server's GetController() method into GetPlayerController()
2016-10-19 16:54:39 +03:00
David Cernat
d2212ef80b
Rename PacketsController into PlayerPacketController
2016-10-19 16:31:07 +03:00
David Cernat
5e0c0dd5f1
Use logger in server's Networking MainLoop
2016-10-19 13:00:33 +03:00
MiroslavR
76ddd9bebb
Add a setting for merchant auto-equipping prevention
2016-10-19 02:22:49 +02:00
scrawl
a7d4928593
Properly handle moved references in respawning code ( Fixes #3600 )
2016-10-18 23:51:45 +02:00
MiroslavR
1d3008594d
Autoequip weapons ( Fixes #3562 )
2016-10-18 13:57:35 +02:00
David Cernat
b8f4cb94fb
Rename BasePacket into PlayerPacket
2016-10-17 15:54:36 +03:00
MiroslavR
14240cf7a2
Fix autoEquip to better match vanilla ( Fixes #3590 )
2016-10-16 17:27:17 +02:00
scrawl
1d58733880
Merge pull request #1104 from MiroslavR/missing-weather-states
...
Import base weather states before loading region modifiers
2016-10-15 22:17:20 +02:00
Allofich
ccacad51be
Fix shadowing warnings
2016-10-16 01:34:54 +09:00
MiroslavR
7b59eda13a
Import base weather states before loading region modifiers ( Fixes #3594 )
2016-10-15 17:34:03 +02:00
scrawl
9e63c3ce63
Merge pull request #1103 from Allofich/warnings
...
Fix shadowing warnings
2016-10-14 21:18:12 +02:00
scrawl
5ccbabc27d
Fix build against bullet with profiler disabled ( Fixes #3592 )
2016-10-14 21:00:35 +02:00
David Cernat
3136a12051
Resolve conflicts in pull request #75
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/CMakeLists.txt
2016-10-14 18:34:17 +03:00
Allofich
1c54f54ab8
Fix shadowing warnings
2016-10-15 00:12:46 +09:00
scrawl
2ed0277839
Merge pull request #1102 from Allofich/spells
...
Change several spell effects from instant to non-instant
2016-10-13 21:36:14 +02:00
scrawl
9d2e0124dc
Revert "Fix the cell changed flag no longer being reset after the player dies"
...
This reverts commit d7acec74fd
.
2016-10-13 17:44:03 +02:00
Allofich
610f36f47b
Set magic effects that don't support variable durations to use duration of 1
2016-10-14 00:13:08 +09:00
Allofich
1c2e04747d
Remove stray line
2016-10-13 23:38:21 +09:00
Allofich
675bd09462
Change several instant effects to be non-instant ( Fixes #2054 )
2016-10-13 23:38:21 +09:00
scrawl
db09858f59
Don't allow the player to activate objects when dead
2016-10-13 14:42:10 +02:00
scrawl
454d1ffaef
Make the cell change check during actor update more robust
2016-10-13 14:39:58 +02:00
scrawl
d7acec74fd
Fix the cell changed flag no longer being reset after the player dies
2016-10-13 14:38:35 +02:00
scrawl
612c3e995f
Add drop shadow to ItemWidget ( Fixes #3545 )
2016-10-13 01:42:50 +02:00
scrawl
15046c961b
Merge pull request #1101 from MiroslavR/ignored-light-sources-fix
...
Ignored light sources fix
2016-10-12 01:11:37 +02:00
MiroslavR
611d02ad43
Remove unused code
2016-10-11 22:16:17 +02:00
MiroslavR
1906d96064
Non-player actors emitting light from a non-portable light item should be illuminated ( Fixes #3588 )
2016-10-11 22:15:51 +02:00
MiroslavR
53b006eccb
OpenMW-CS: Recognize special faction ID "FFFF" (no faction) during topic info verification ( Fixes #3564 )
2016-10-11 19:36:44 +02:00