1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-02-01 06:15:32 +00:00
Commit graph

11605 commits

Author SHA1 Message Date
David Cernat
416ee77639 [General] Add placeholder for WorldCollisionOverride packet 2018-05-25 07:09:32 +03:00
David Cernat
2edb511a0b [Client] Remove unnecessary condition from WorldTime processor 2018-05-25 07:08:51 +03:00
David Cernat
3b5fb9cd6b [General] Make it possible to set year via WorldTime 2018-05-25 03:33:12 +03:00
David Cernat
4acf93b7db [General] Make it possible to set days passed via WorldTime 2018-05-24 14:02:04 +03:00
David Cernat
74c2a0b311
Merge pull request #438 from OpenMW/master
Add OpenMW commits up to 24 May 2018
2018-05-24 12:16:11 +03:00
Andrei Kortunov
1abff5365b Capitalize enchanted items names again in spells window 2018-05-24 13:03:47 +04:00
Andrei Kortunov
afae398b5c Use utf8 lowercase function for journal index to avoid code duplication 2018-05-24 12:53:06 +04:00
Andrei Kortunov
b5374029e5 Implement case-insensitive search in spell window 2018-05-24 12:39:00 +04:00
Andrei Kortunov
9ac752ea70 Implement filtering in the spells window 2018-05-24 10:48:46 +04:00
David Cernat
46744ee90f [General] Make WorldTime script functions more consistent with others 2018-05-24 09:38:06 +03:00
Bret Curtis
da47fc79f5
Merge pull request #1701 from akortunov/standfix
Do not apply queue movement for standing actors
2018-05-23 22:35:08 +02:00
Marc Zinnschlag
7324bd368f Merged pull request #1573 2018-05-23 17:00:29 +02:00
Marc Zinnschlag
1564a3f6aa Merged pull request #1713 2018-05-23 13:51:32 +02:00
Marc Zinnschlag
2f958881b7 Merged pull request #4413 2018-05-23 13:45:35 +02:00
David Cernat
8d36d0d945 [General] Make it possible to change world's time scale via WorldTime 2018-05-23 08:31:25 +03:00
David Cernat
0be6de6607 [General] Turn RecordDynamic into a Worldstate packet 2018-05-23 07:48:28 +03:00
David Cernat
031a80ed5a [Client] Don't advance time when waiting, traveling, training or jailed 2018-05-23 05:49:51 +03:00
David Cernat
da66face25 [General] Rename GameTime packet into WorldTime 2018-05-23 00:41:29 +03:00
David Cernat
296c69d788
Merge pull request #436 from OpenMW/master
Add OpenMW commits up to 22 May 2018
2018-05-23 00:40:51 +03:00
declan-millar
b8df4b7c5a Tidy in-code comment 2018-05-21 22:14:23 +01:00
declan-millar
844aef85f3 Replace spelling: soulgem -> soul gem in code comment 2018-05-21 22:12:19 +01:00
declan-millar
9ed4f33048 Replace spelling: soulgem -> soul gem 2018-05-21 19:10:24 +01:00
declan-millar
028b528c0b Get soul magnitude before checking the rebalance setting 2018-05-21 18:16:04 +01:00
declan-millar
9346a552fa Use Rebalance soulgem values option to set soulgem value 2018-05-21 13:59:20 +01:00
declan-millar
78e79d5775 Add advanced option to Rebalance soulgem values to the launcher 2018-05-21 13:33:42 +01:00
David Cernat
5af1150ab2 [General] Turn GameTime into a Worldstate packet 2018-05-21 07:14:08 +03:00
David Cernat
e87e1dbb30 [General] Fix Worldstate packets by adding missing lines 2018-05-21 07:12:55 +03:00
declan-millar
4b1247597e Use soulgem value rebalance formula from morrowind code patch 2018-05-20 17:06:26 +01:00
Capostrophic
867a5938ca Don't reset sneaking camera offset while in GUI (fixes #4420) 2018-05-20 10:24:20 +03:00
David Cernat
43a944ddaf [General] Add and implement new Worldstate packet type 2018-05-18 06:40:28 +03:00
David Cernat
049d0d9ba7 [General] Fix remaining references to world packets/events 2018-05-17 00:08:37 +03:00
David Cernat
dc9a3bf73f
Merge pull request #429 from OpenMW/master
Add OpenMW commits up to 16 May 2018
2018-05-16 19:20:01 +03:00
Bret Curtis
67c381df4e
Merge pull request #1708 from akortunov/refidfix
fix GCC warnings
2018-05-16 15:59:31 +02:00
Andrei Kortunov
a68de93308 Initialize srate variable in openal_output 2018-05-16 16:34:58 +04:00
Andrei Kortunov
e5db5e2651 Fix 'maybe-uninitialized' warning in openal_output 2018-05-16 16:13:22 +04:00
Andrei Kortunov
df459199dd Avoid left shift of negative value 2018-05-16 12:59:05 +04:00
Bret Curtis
caf1760251
Merge pull request #1707 from akortunov/weaponreach
Display weapon reach on tooltips in feet
2018-05-16 10:27:53 +02:00
Andrei Kortunov
164e3d12fe Display weapon reach on tooltips in feet. 2018-05-16 11:18:22 +04:00
David Cernat
51698bed48 [Client] Rename WorldProcessor into ObjectProcessor 2018-05-15 22:56:47 +03:00
David Cernat
1e749938fb
Merge pull request #426 from OpenMW/master
Add OpenMW commits up to 15 May 2018
2018-05-15 21:01:33 +03:00
Bret Curtis
c75d774356
Merge pull request #1692 from akortunov/playsound
Prevent PlaySound overlapping
2018-05-15 19:03:01 +02:00
Andrei Kortunov
f8655d2425 Use actor's physics position as a ray origin in tracer 2018-05-14 20:38:53 +04:00
David Cernat
9b9dd4abaf
Merge pull request #425 from OpenMW/master
Add OpenMW commits up to 13 May 2018
2018-05-13 19:27:34 +03:00
Capostrophic
409d466e42 Make 0/0 encumbrance 0% encumbrance 2018-05-13 17:18:45 +03:00
Capostrophic
ba077e7291 Fix movement fatigue loss encumbrance calculation (fixes #4413) 2018-05-13 17:18:45 +03:00
Capostrophic
1c9fba9a8c Fix jumping encumbrance calculation 2018-05-13 17:18:45 +03:00
Marc Zinnschlag
0f22600a98 Merged pull request #1703 2018-05-13 09:08:40 +02:00
David Cernat
78234f9071 [General] Rename Event into ObjectList & WorldObject into BaseObject 2018-05-13 00:42:24 +03:00
David Cernat
6bf3a0be1e [General] Rename WorldPackets into ObjectPackets for clarity 2018-05-12 19:40:00 +03:00
David Cernat
5458e09c8a
Merge pull request #420 from OpenMW/master
Add OpenMW commits up to 11 May 2018
2018-05-12 06:32:01 +03:00
David Cernat
77389538e8 [General] Implement ActorAI packet, part 1
The server can now make actors become followers of players or other actors.
2018-05-12 06:29:11 +03:00
Marc Zinnschlag
b7cce1a665 Merged pull request #1702 2018-05-11 10:11:17 +02:00
David Cernat
57b791ea2a [Client] Show selected object's refNum & mpNum in console window title
This allows for much easier debugging of all objects and actors.
2018-05-11 00:46:24 +03:00
David Cernat
7f00005f04 [Client] Fix GCC build
Based on 71040659ac
2018-05-10 07:16:33 +03:00
David Cernat
32d71de2f5 Update MapWindow every frame, not just when it's open (bug #4279) 2018-05-09 07:33:45 +03:00
Alf Henrik Sauge
feeee50a88 Dropping a separate NPDTstruct12 object and instead use NPDTstruct52
NPDTstruct12 is now only used when loading and saving. Turning auto calc
on and off now no longer switches between to different set of values
2018-05-09 00:25:07 +02:00
Marc Zinnschlag
3197ebd8e7 Merged pull request #1694 2018-05-08 12:19:14 +02:00
David Cernat
715012f087 [General] Implement sending of image data for map tiles in PlayerMap 2018-05-08 05:57:04 +03:00
Andrei Kortunov
b15bed8e22 Avoid excessive loadSound calls 2018-05-07 20:40:53 +04:00
Marc Zinnschlag
53b6ef6f8c minor code cleanup 2018-05-07 09:54:42 +02:00
Andrei Kortunov
17222eb821 Get rid of unnecessary find 2018-05-06 16:42:05 +04:00
Andrei Kortunov
3636cf2015 Do not apply queue movement for standing actors 2018-05-05 22:41:26 +04:00
Andrei Kortunov
1dd36329a3 Load default markers definitions (bug #4410) 2018-05-05 17:14:33 +04:00
David Cernat
df0f9b0f5e [Client] Require a certain Skill progress amount before sending packet 2018-05-01 19:34:21 +03:00
David Cernat
1b1e5e86d1 [Client] Avoid sending CellStates to server after initialization
Although b4e8560698 made players instantly able to see each other on minimalist servers that did not change their cells from the default, it created problems with the default CoreScripts where players need to be logged in before receipt of a CellStates packet from them is taken into account, with the result being that a player was recorded as having loaded their initial cells on the server's C++ side but not on the Lua side.

It may simply be best to expect servers to set player cells.
2018-05-01 18:19:52 +03:00
Andrei Kortunov
4872edc5ed Prevent PlaySound overlapping 2018-05-01 16:24:32 +04:00
Andrei Kortunov
22fb1f3403 Play spellcasting effects from objects 2018-04-30 17:12:06 +04:00
David Cernat
099f85be0a [General] Implement PlayerMomentum packet & associated script functions 2018-04-29 23:47:17 +03:00
David Cernat
273179fd5a
Merge pull request #414 from OpenMW/master
Add OpenMW commits up to 29 Apr 2018
2018-04-29 22:35:05 +03:00
David Cernat
4b501a39f4 [General] Implement DoorDestination packet & associated script functions 2018-04-29 22:32:22 +03:00
scrawl
b995584ad2
Merge pull request #1688 2018-04-29 14:27:55 +00:00
David Cernat
3b07dc4b42 [Client] Send equipment packets whenever an item charge or count changes
Since the beginnings of TES3MP, equipment packets have only been sent whenever an item has been replaced by an item with a different refId, with changes in an item's charge or count not sending a packet (but being included in the next packet sent as a result of a refId change). The reason for this was ostensibly the fact that every single equipment packet always included the details for all 19 equipment items (as per Koncord's original design decision), which would have led to massive packet spam if such a packet was sent every time you shot an arrow or lost a little bit of your armor's condition.

With minimalist equipment packets, it is now viable to send equipment packets whenever any item changes in some way, by having the equipment packet contain only that one item.
2018-04-29 05:40:42 +03:00
David Cernat
399e049d87 [Client] Fix logic for minimal size packets in LocalPlayer
Previously, the index changes were not cleared at the start of their corresponding update functions, which in turn meant that an Attribute/Skill/StatsDynamic/Equipment packet received by a player from the server made that player send back the same packet, as the index changes from it were retained.

Additionally, exchangeFullInfo was not set to false, thus sometimes leading to constant full exchanges of information.
2018-04-27 03:45:17 +03:00
David Cernat
7db74509e0 Merge pull request #412 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwscript/transformationextensions.cpp
2018-04-25 21:55:32 +03:00
Capostrophic
6b47f72959
Set character preview scene ambient to 0, 0, 0 2018-04-25 15:31:49 +03:00
scrawl
bdf1070852
Merge pull request #1688 2018-04-25 11:54:26 +00:00
scrawl
f0507e6b46
Merge pull request #1686 2018-04-25 10:27:38 +00:00
Capostrophic
bfcdf660f2 Utilize inventory character preview lighting rotation fallback settings 2018-04-23 22:48:15 +03:00
Capostrophic
9073e4d4ba Initialize playlist file list in playPlaylist (fixes #4134) 2018-04-22 23:21:29 +03:00
Capostrophic
b69e812a52 Utilize inventory character preview lighting color fallback settings 2018-04-22 22:37:27 +03:00
scrawl
d8d26f1de8
Merge pull request #1685 2018-04-22 15:34:31 +00:00
scrawl
ec4e2f0064
Merge pull request #1684 2018-04-22 15:27:31 +00:00
David Cernat
608dcbafe6 [Client] Fix skill updates for LocalPlayer partially broken by 78441c769a 2018-04-22 11:22:36 +03:00
Evgeny Kurnevsky
c025b8f8f3
Remove useless comparison. 2018-04-21 17:10:49 +03:00
David Cernat
02eef933fd
Merge pull request #411 from OpenMW/master
Add OpenMW commits up to 19 Apr 2018
2018-04-21 17:00:55 +03:00
David Cernat
a541d7df3c [General] Rework PlayerStatsDynamic packets so they are of minimal size
(cherry picked from commit fc5e883160)
2018-04-21 00:43:49 +03:00
David Cernat
b9520c11da [General] Rework PlayerEquipment packets so they are of minimal size
Moreover, rename BaseNetCreature's equipedItems into equipmentItems.

(cherry picked from commit d1ad0c91f8)
2018-04-20 22:46:16 +03:00
Capostrophic
37dc3200d1 Inherit the calling object scale in PlaceAt (fixes #4308) 2018-04-20 00:15:26 +03:00
David Cernat
c5b08d6109 [General] Simplify storing of attribute and skill index changes
(cherry picked from commit bd9e8bd10f)
2018-04-19 23:28:03 +03:00
David Cernat
2c77d5f498 [General] Set enforcedLogLevel to -1 when initializing BasePlayer 2018-04-19 20:42:27 +03:00
David Cernat
b6099024df [General] Rework PlayerAttribute packets so they are of minimal size
Previously, whenever a single attribute value changed for a player, that player then sent a PlayerAttribute packet with all values for all 8 attributes.

This did not cause anywhere as much packet spam as PlayerSkill used to, but there was no good reason not to fix it as well.

(cherry picked from commit b0965f094a)
2018-04-19 17:26:20 +03:00
David Cernat
78441c769a [General] Rework PlayerSkill packets so they are of minimal size
Previously, whenever a single skill value changed for a player, that player then sent a PlayerSkill packet with all values for all 27 skills, plus the player's progress towards the next level and the bonuses to each attribute on the next level up as the result of sklll increases thus far.

This commit makes PlayerSkill contain only the values of specific skills, moves the player's progress towards the next level to PlayerLevel packets, and moves the bonuses to each attribute on the next level up to PlayerAttribute packets.

Players now also send a PlayerSkill packet whenever their progress towards a new point in a skill changes. This was previously avoided so as to not have massive packet spam.

(cherry picked from commit ef79a98544)
2018-04-19 15:18:38 +03:00
scrawl
5d1b40c5ea
Merge pull request #1678 2018-04-19 12:18:24 +00:00
David Cernat
af4fcb7261 [Client] Don't force skill update on cell change
Previously, an attempt by the server to simultaneously change a player's cell and skills (as you'd expect when a player file is loaded) led to:

1) The server sending the cell packet first and the skill packet afterwards

2) The player receiving the cell packet and sending their own skill packet as part of the client's forced skill update

3) The player receiving the skill packet from the server

4) The server receiving the skill packet from the player

The result was that, if the player then left the server without sending another skill packet, the server's memory retained the skills the player had sent instead of the skills it had sent to the player.

This is the first step in a solution to that situation and similar ones.

(cherry picked from commit cac4684986)

Note: In 0.6.x, this was only a problem if a player's cell was set by the server first and their skills were set next, i.e. this was not a problem in the default CoreScripts because the opposite order used there masked the problem. It was a more significant problem in 0.7 because all packets were queued for a player and sent in a specific hardcoded order.
2018-04-19 14:22:14 +03:00
David Cernat
57070b7f5c [Client] Disable automatic transition to other chargen menus from OpenMW
Previously, after finishing the TES3MP chargen once, mCreationStage was set to 4 in OpenMW, which in turn made it impossible to go through only specific chargen menus again as the result of the relevant TES3MP script function (tes3mp.SetCharGenStage(pid, startStage, endStage) in 0.6.3, player:setCharGenStages(startStage, endStage) in 0.7). In other words, trying to allow a player to just choose their class again made it so the player started at that menu and went through all the other subsequent menus as well, i.e. the player went through the class, birthsign and review menus.
2018-04-19 13:47:42 +03:00
David Cernat
28f1c1b0d3 [General] Rework CharGen slightly for clarity purposes
Previously, charGenStage.end was doing double duty as both the variable indicating the number of CharGen stages and – when set to 0 – the variable indicating that CharGen was over. The latter role is now filled by a new boolean.

(cherry picked from commit 926106cf8c)
2018-04-19 13:25:29 +03:00
David Cernat
9d46de88e0 [Client] Send cell states correctly after inputting name
Previously, initial cell states were sent in LocalPlayer::processCharGen() and were ignored by the server because the player was not yet regarded as loaded. The result was that existing players logging in could not see each other until they went through at least one cell change.

(cherry picked from commit b4e8560698)

# Conflicts:
#	apps/openmw/mwmp/LocalPlayer.cpp
2018-04-18 20:30:48 +03:00
Capostrophic
8617d0603b Display a message if a spell the player tries to use via a quick key is missing (fixes #4391) 2018-04-18 19:10:46 +03:00
David Cernat
9e5ddeac50
Merge pull request #408 from OpenMW/master
Add OpenMW commits up to 18 Apr 2018
2018-04-18 18:05:09 +03:00
tri4ng1e
d310d36ea3
[Fix] Some PVS-Studio and cppcheck fixes 2018-04-18 12:36:10 +00:00