David Cernat
f8c557fbc0
[General] Read and use weapon quantity in RecordDynamic packets
5 years ago
David Cernat
509f03ca52
[General] Use flags instead of autoCalc for enchantment dynamic records
...
This brings the handling of dynamic records in multiplayer up-to-date with ad333e88fe
5 years ago
David Cernat
0acf6f0242
Merge branch '0.7.1-sound-records' into 0.7.1
5 years ago
uramer
f46f028754
[General] Sound custom records
5 years ago
uramer
e0aaa7ee40
[Server] Remove duplicate includes
5 years ago
uramer
758ec17a6e
[Server] Include handleInput.cpp correctly
5 years ago
uramer
09ea1ab585
[Server] SetObjectSound
5 years ago
uramer
2b71cbb8fc
[Server] Handle backspace input if the current line is empty
5 years ago
uramer
59693abc74
[Server] Handle backspace in the server window
5 years ago
uramer
4e6bcf02d2
[Server] Pass stdin to a Lua event, fix Ctrl+C on Windows
5 years ago
David Cernat
06a3604f9e
Merge remote-tracking branch 'uramer/0.7.1-game-settings' into 0.7.1
5 years ago
David Cernat
27d35d73a2
[General] Implement OnObjectSound packet
...
Many interactions between players and objects now have their sounds sent to other players.
5 years ago
uramer
bb8182663f
[General] Set any settings from the Game category with the GAME_SETTINGS packet
5 years ago
David Cernat
1a7060c5c5
[Server] Add server functions for handling the droppedByPlayer boolean
5 years ago
David Cernat
e78503d5f3
[General] Include potion quantity in RecordDynamic packets
...
Don't spam the server with one RecordDynamic packet per potion created when brewing multiple potions at once. Instead, send a single RecordDynamic packet with the potion quantity included in it.
Add serverside script functions for getting the potion quantity.
5 years ago
David Cernat
678a308269
Merge remote-tracking branch 'Veenkar/0.7.1-credentials-hashing-fix' into 0.7.1
5 years ago
David Cernat
8db396d10a
[General] Distinguish between shorts & longs in ClientScriptGlobal
...
Adjust ClientScriptLocal so it refers to its previously handled integers as shorts.
5 years ago
Michal Marchewka
bf7041b067
[Server] Fix credentials generation. Used static variable as a workaround.
5 years ago
David Cernat
ffead444db
[Server] Use consistent order for WorldstateFunctions
5 years ago
David Cernat
76f3805e16
[Server] Fix Windows build by not using sigaction on Windows
5 years ago
David Cernat
a13cef9913
Merge branch '0.7.0reset' of https://github.com/uramer/openmw into 0.7.1
...
# Conflicts:
# apps/openmw-mp/Script/Functions/Worldstate.cpp
# apps/openmw-mp/Script/Functions/Worldstate.hpp
# apps/openmw/mwbase/world.hpp
# apps/openmw/mwmp/CellController.cpp
# apps/openmw/mwworld/cellstore.cpp
# apps/openmw/mwworld/worldimp.cpp
# apps/openmw/mwworld/worldimp.hpp
5 years ago
David Cernat
fb3514c8c3
Merge remote-tracking branch 'nalal/patch-1' into 0.7.1
5 years ago
David Cernat
abd18745df
[General] Include ScriptLocalFloat as part of ClientScriptLocal
5 years ago
David Cernat
4841c1ad4c
[General] Rename ScriptLocalShort into ClientScriptLocal
5 years ago
David Cernat
975797c09b
[General] Implement ObjectRestock packet
...
Restocking object containers via trading now requires the server to send back an ObjectRestock packet before it can happen.
The unused packet ID ID_SCRIPT_GLOBAL_FLOAT has been replaced with ID_OBJECT_RESTOCK.
5 years ago
David Cernat
e6c626f127
[General] Move handling of client globals to ClientScriptGlobal packet
...
ClientScriptGlobal is a new Worldstate packet that handles short, long and float values for global variables in clientside scripts.
Previously, short values were handled by the ScriptGlobalShort packet, while a partially implemented ScriptGlobalFloat packet also existed, but both of those packets were Object packets because they were added near the end of 2016 when only Player and Object packets existed (with the latter actually being called WorldEvent packets at the time). Both ScriptGlobalShort and ScriptGlobalFloat have now been removed.
The serverside script functions previously used to interact with ScriptGlobalShort have, however, been kept so they can be adjusted to work with local variables in clientside scripts instead in a future commit.
5 years ago
David Cernat
c9b3ec1ca4
[Server] Use consistent ordering for kills & map worldstate functions
5 years ago
David Cernat
32c7406eda
[General] Implement OnObjectHit packet, part 3
...
Include damage, block states and knockdown states in ObjectHit packets about successful hits. Add serverside script functions for reading that information.
5 years ago
David Cernat
bc093c8596
[General] Implement OnObjectHit packet, part 2
...
ObjectHit is now also sent when local actors succeed or fail in hitting other actors with melee attacks, with the packet including the success state of their attack.
It is also sent when creatures hit a non-actor object.
5 years ago
David Cernat
2973cc4f4d
[General] Implement OnObjectHit packet, part 1
...
ObjectHit is now sent when an NPC hits a non-actor object.
5 years ago
David Cernat
0e0ac7a60f
[Server] Add OnConsoleCommand event and associated script function
5 years ago
David Cernat
980edac942
[General] Rename PlayerTeam into PlayerAlly
...
Considering that you can be allies with someone without being allied to their allies, changing the name makes the system more intuitive.
5 years ago
David Cernat
a383b7b612
[General] Include death animations in ActorDeath packets
5 years ago
David Cernat
ecf00af548
[General] Implement WorldDestinationOverride packet, part 1
...
Destinations for doors with cell transitions are now overridden.
5 years ago
David Cernat
21c8821d05
[General] Ignore carriage returns in resources/version file
5 years ago
David Cernat
753e310dd4
[General] Implement PlayerTeam packet
5 years ago
David Cernat
9a772d737f
[Server] Add script functions relating to summons' effect & spell IDs
5 years ago
David Cernat
610e0558c8
[Server] Use correct argument for SetObjectSummonDuration()
5 years ago
David Cernat
47b666c1f9
[Server] Add ObjectFunctions for setting summoner identity for spawns
5 years ago
David Cernat
c6542ffec4
[Server] Move ObjectFunctions for setting summoning to their own spot
5 years ago
David Cernat
397cdf400b
[Server] Reorder record types in RecordsDynamic script functions
...
They are now consistent with the ordering from 42b002e8db
5 years ago
David Cernat
23d410f473
[General] Implement body part records for RecordDynamic packet
5 years ago
David Cernat
b3747839c0
[General] Add hasRace to record overrides in RecordsDynamic packet
5 years ago
David Cernat
ddb25a482d
[Server] Remove unneeded assignments for playerController in processors
5 years ago
David Cernat
8da6a7fd9b
[Server] Fix mixed-up bindings for Chat functions
5 years ago
David Cernat
8f7a267129
[General] Add scale and bloodType to creature records in RecordDynamic
5 years ago
David Cernat
afb9bd7eb5
[General] Implement script records for RecordDynamic packets
5 years ago
David Cernat
383d6ecea6
[Server] Update log message related to server password
5 years ago
David Cernat
20d1e7654c
[General] Create SystemPacket category and move Handshake packet to it
5 years ago
David Cernat
b97322b4b1
[General] Modernize packet style for PlayerInventory
5 years ago
David Cernat
cbe58b1c24
[General] Modernize packet style for PlayerFaction
5 years ago
David Cernat
904f804ea2
[General] Modernize packet style for PlayerSpellbook
5 years ago
David Cernat
4f9e6b0e3e
[General] Modernize packet style for PlayerCellState
5 years ago
David Cernat
96a71c1ced
[General] Modernize packet style for PlayerBook
5 years ago
David Cernat
d66bca8605
[General] Modernize packet style for PlayerTopic
5 years ago
David Cernat
0206d1813c
[General] Modernize packet style for PlayerQuickKeys
5 years ago
David Cernat
4f98d67ed4
[General] Modernize packet style for PlayerJournal
5 years ago
David Cernat
d163f1b6da
[General] Turn WorldKillCount into a Worldstate packet
...
Rename the old WorldKillCount that was a Player packet into PlayerPlaceholder. Rename the unused CellCreate that was a Worldstate packet into WorldKillCount. On the server, move kill count-related script functions from QuestFunctions to WorldstateFunctions.
5 years ago
David Cernat
031acffcbe
[General] Implement cell records for RecordDynamic packets, part 1
...
New interior cells can be now be created that are either blank or based on existing interior cells.
5 years ago
David Cernat
3903ac6526
[Server] Add script functions for getting SHA256 hashes & random strings
5 years ago
okdshin
c15b3377da
[General] Add PicoSHA2 hash generator to extern
5 years ago
David Cernat
ca21bc35c2
[Server] Add script functions that read & send ScriptGlobalShort packets
5 years ago
David Cernat
afa704ce95
[Server] Add OnScriptGlobalShort event
5 years ago
David Cernat
e424bd9bc3
[General] Implement ClientScriptSettings packet, part 2
...
The packet can now set which client globals get packets sent about them when their values change on clients.
5 years ago
David Cernat
3acfbad55d
[General] Implement ClientScriptSettings packet, part 1
...
For starters, the new packet can set which client scripts have all of their variables synchronized between players. The previous hardcoded list of IDs for synchronized scripts has been removed.
5 years ago
David Cernat
e15428e139
[General] Remove "created by" stamps added by IntelliJ
5 years ago
David Cernat
9350e1d484
[General] Split up Attack packets into Attack and Cast ones
...
Create an entirely new PlayerCast packet for that purpose, but rename the already existing but unused ActorInteraction into ActorCast.
5 years ago
David Cernat
0339958e21
[General] Rename Log class into TimedLog
5 years ago
David Cernat
ae5200cbb2
[General] Implement light records for RecordDynamic packets
5 years ago
David Cernat
14af0be657
[General] Include AI alarm & flee for creatures/NPCs in RecordDynamic
5 years ago
David Cernat
ef432d1419
[General] Include AI services for creatures/NPCs in RecordDynamic
5 years ago
David Cernat
18e2a14645
[General] Implement tool-related records for RecordDynamic packets
5 years ago
David Cernat
4100d93dea
[General] Implement ingredient records for RecordDynamic packets
5 years ago
David Cernat
300cef0073
[Server] Allow setting of container record flags in SetRecordFlags()
6 years ago
David Cernat
0189d19d14
[Server] Clear new types of records in ClearRecords()
6 years ago
David Cernat
247d2fad30
[General] Implement activator & static records for RecordDynamic packets
6 years ago
David Cernat
e9336e53fc
[General] Implement container and door records for RecordDynamic packets
6 years ago
nalal
7316c8aafd
Added functionality for TES3MP server to catch system signals
...
This should permit the TES3MP server to catch when a "SIGTERM"(Standard program stop) or "SIGINT"(Ctrl+C) is sent to the process and allow that to initiate the standard shutdown procedure by halting the networking loop peacefully.
6 years ago
Andrei Kortunov
792fbfe2e1
Fix type in the preprocessor directive
6 years ago
David Cernat
4d40df3ea8
[Server] Don't automatically send kill count packets to other players
...
This should be handled in server scripts instead so that servers with respawning NPCs can be have kills shared across parties and witnesses instead of shared across all players on the server.
6 years ago
David Cernat
023ead937f
[Server] Fix stack overflows by preventing infinite growth in Lua stack
6 years ago
David Cernat
6322ae081d
[Server] Add extern to folders used to search for include files
6 years ago
David Cernat
3805edaf78
[Server] Don't crash when adding a requiredDataFile w/ no checksum twice
6 years ago
David Cernat
7523a73346
[Server] Fix return values for server functions providing system info
6 years ago
David Cernat
d8919dcec6
[Server] Refer to data files instead of plugins in var & function names
6 years ago
uramer
c89efd251c
[General] Implement CellReset packet, stage 2
6 years ago
uramer
6cb4d5ec35
[General] Implement CellReset packet, stage 1
6 years ago
David Cernat
3effd5f1ff
[General] Update positions for dead players on other clients
...
Dead players will now show up at the correct cell and position for living players, making server scripts that allow players to revive each other much more functional.
6 years ago
David Cernat
91f82d845c
[Server] Add GetMillisecondsSinceServerStart() server function
6 years ago
David Cernat
bd677726bf
[Server] Add StatsFunctions that get/set damage to attributes/skills
6 years ago
David Cernat
ece39748de
[Server] Fix typo causing recursion in deprecated actor list function
6 years ago
David Cernat
5c4d3df551
[Server] Deprecate DoesFileExist(), add DoesFilePathExist()
6 years ago
David Cernat
2cdabddc0e
[Server] Move most MiscellaneousFunctions to ServerFunctions
6 years ago
David Cernat
b46767de6e
[Server] Clean up recent additions to ServerFunctions
6 years ago
David Cernat
331fa86844
[Server] Call OnServerPostInit after OnRequestDataFileList
...
This allows different actions to be taken in OnServerPostInit based on what the data files being used are.
6 years ago
David Cernat
a0ec9dfd2e
[Server] Rename OnRequestPluginList into OnRequestDataFileList
6 years ago
David Cernat
986528c67d
[Server] Add error message as argument to OnServerScriptCrash
6 years ago
David Cernat
552a94a0ca
[Server] Add OnServerScriptCrash script event
6 years ago
David Cernat
a508a0faf8
[Server] Turn GetArguments() from ScriptFunctions into Utils function
6 years ago
David Cernat
f3b8a5b909
[General] Check integrity of credits only on Windows clients
...
This avoids the problems that were encountered in Linux and macOS builds regarding this check while also still addressing the scenario where official Windows builds had their credits modified by people unrelated to the project.
6 years ago