Commit Graph

16171 Commits (6d43c8d63df27162e76aed2b16e8da82baf24d0a)

Author SHA1 Message Date
David Cernat ae8b5a0709 [Server] Remove hardcoded sync for Place, Spawn & other Object packets 7 years ago
David Cernat e3e1cfc549 [Client] Add forgotten comparison in crimeTime and deathTime check 7 years ago
David Cernat 4eb72eecb1 [Client] Fix crash for invalid CellRefs in MechanicsHelper::getTarget() 7 years ago
David Cernat 4b30a44816 [Client] Compare crimeTime and deathTime when NPCs forgive player crimes
Previously, all crime witnesses stopped being hostile to a respawning player for as long as the player's diedSinceArrestAttempt was true. That meant that, in an area with no guards to arrest the player, crime witnesses did not enage in combat with the player at all ever again until diedSinceArrestAttempt became false.

This commit makes it so the time of the last crime is recorded for each witness, and that is then compared with the time of the LocalPlayer's last death for a one-time crime forgiveness during that player's current life.

This is essentially a gameplay adjustment for "singleplayer with respawns," and will have to be reworked to make sense for every player in multiplayer, though that requires reworking the crime system as a whole and is thus on hold.
7 years ago
David Cernat c23fc3446f [Client] Avoid sending map tiles for Wilderness cells 7 years ago
David Cernat 17c234d9ca [Client] Use initial values for LocalPlayer and LocalActor killers 7 years ago
David Cernat 97cd3effa7 [Client] Make actor debug consistent with object debug 7 years ago
David Cernat b0bd12f9dd Merge branch '0.6.3' of https://github.com/TES3MP/openmw-tes3mp into 0.6.3 7 years ago
David Cernat c075496748 [General] Replace deathReason in death packets with a killer variable
Add serverside script functions for determining the killers of both players and actors.

Use unsigned ints for script functions returning an object or actor's refNumIndex or mpNum.

Remove updateDeadState() from LocalPlayer and make its code part of updateStatsDynamic() for simplicity.
7 years ago
David Cernat 934e592bdb [Server] Make spacing in CharClass consistent with other categories 7 years ago
David Cernat e8ce009521 [Server] Use regular int as return value for GetObjectSummonerPid()
Additionally, clarify descriptions of script functions for getting information about summoners.
7 years ago
David Cernat f02492a593 [General] Temporarily include target names in mwmp::Target
These will be removed once the server can get the names matching refIds by reading content files.
7 years ago
David Cernat 691b332d03 [Client] Use MechanicsHelper::getTarget() for summoners in ObjectList 7 years ago
David Cernat 130a32ebb0 [Client] Add new methods for handling mwmp::Target in MechanicsHelper 7 years ago
Koncord 470ea50b54 [General] Use LuaJit instead default Lua 7 years ago
David Cernat 7010575075 [Server] Return -1 in GetObjectSummonerPid() when the player is invalid 7 years ago
David Cernat 76731f5def [Client] Don't remove SummonKeys with actorIds of -1
This prevents summon duplication caused by a SummonKey sometimes being deleted immediately after being created, before the server can send back an ObjectSpawn packet spawning a creature that can be attached to the SummonKey.
7 years ago
David Cernat c2411982d2 [Client] Log object refNumIndexes and mpNums in a consistent way 7 years ago
David Cernat 7775780ad7 [Cllient] Update multiplayer code for handling quick keys 7 years ago
David Cernat 3438061b55 [Server] Add script function for getting a summoner's pid
Additionally, fix typos in the comments for other script functions relating to summoners.
7 years ago
David Cernat 8a23a96da4 [Client] Update initialization of AiFollow packages in multiplayer code 7 years ago
David Cernat a236ffc4be Merge pull request #456 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	README.md
#	apps/openmw/mwgui/quickkeysmenu.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwmechanics/combat.cpp
7 years ago
Koncord 1f4e6e9114 [General] Add integrity checks to Handshake packet 7 years ago
Koncord fa2bf0663e [General] Simplify vectorContains 7 years ago
Marc Zinnschlag 908af3720f Merged pull request #1791 7 years ago
Marc Zinnschlag e50c3657b3 Merged merge request !16 7 years ago
Doc West e9cc697b60 Sort EnumDelegate values by name 7 years ago
David Cernat 3aa125ceda [Server] Add script functions for getting a summoner's refId and indexes 7 years ago
Koncord 53346e2663 [Client] Return 0 if effect not found 7 years ago
Koncord c5c1a160b2 [Client] Comment out an unused variable 7 years ago
Koncord 895634cd16 [General] Change type of MpNum to "unsigned int" 7 years ago
Koncord d999cc0d55 [General] Add packetValid flag to packets 7 years ago
David Cernat f9ebe400f7 [Server] Add script function for checking if object's summoner is player 7 years ago
Koncord d162f6fd3a [General] Explicitly use limitations of the master server 7 years ago
Koncord 62877f38b7 [General] Remove Terra support
Use LuaJIT instead.
7 years ago
Koncord 685a80887b Remove Pawn support 7 years ago
Andrei Kortunov f4330cf057 Editor: limit FPS in 3D preview windows (feature #3641) 7 years ago
Thunderforge 7cbc4eeb49 Adding missing override keywords
Prevents compiler warnings such as this:

```
/Users/Will/CLionProjects/OpenMW/apps/openmw/mwgui/windowbase.hpp:65:22: warning: 'onOpen' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
        virtual void onOpen();
                     ^
/Users/Will/CLionProjects/OpenMW/apps/openmw/mwgui/windowbase.hpp:38:22: note: overridden virtual function is here
        virtual void onOpen() {}
                     ^
```
7 years ago
David Cernat bef53749ed [General] Replace BaseObject's hasMaster variable with isSummon
Additionally, add a GetObjectSummonState() script function to the server.
7 years ago
David Cernat 8ce225b1cc [Client] Use the casters of damage-dealing spells as death reasons 7 years ago
Finbar Crago 5d9035c6b2 [Fixes #4482] Missing HandToHand on key quick key 0 (introduced in MR !11 for issue #4480)
because apparently i can't count to ten...
7 years ago
David Cernat 958b220835 [General] Send summon duration to server in ObjectSpawn packets 7 years ago
Marc Zinnschlag 2ea85d0bb6 Merge remote-tracking branch 'gl_finbar-crago/fix_quickkey_segfalt' 7 years ago
Finbar Crago 09c9bd34c3 cleanup more unnecessary struct keywords... 7 years ago
Capostrophic 6e9c08083d
Add missing empty attacker checks 7 years ago
Capostrophic bccba24c40 Make unarmed creature attacks not affect armor condition (fixes #2455) 7 years ago
Finbar Crago 69cd7031e7 Merge branch 'master' into fix_quickkey_segfalt 7 years ago
Finbar Crago 596be205c1 cleanup unnecessary struct keywords... 7 years ago
Finbar Crago 2722ca50fb fix QuickKeysMenu crash on reopening window after item drop + pickup [see: !11#note_85086570] 7 years ago
Finbar Crago 7ae388086b Merge branch 'master' into fix_quickkey_segfalt 7 years ago
Thunderforge 72f6b1a693 Separating "Game" Advanced Settings into "Game Mechanics" and "User Interface" 7 years ago
Finbar Crago ed71656ea6 fix updateActivatedQuickKey() crash
keyboard numbers don't start at zero...
7 years ago
Finbar Crago 24d5fb09da fix crash on simultaneous key presses 7 years ago
Bret Curtis f07d50e5bf
Merge pull request #1785 from akortunov/warnfix
Fix some GCC warnings
7 years ago
Finbar Crago d790a27060 Merge branch 'master' into fix_quickkey_segfalt 7 years ago
Andrei Kortunov d9a1de0ec7 Do not use deprecated function 7 years ago
Andrei Kortunov 5455490ad2 Avoid fall-through in spell selection 7 years ago
Finbar Crago 80a3f0a0d4 switch mSelectedIndex/mActivatedIndex int to mSelected/mActivated keyData pointers 7 years ago
Finbar Crago 335e2c5897 add keyData struct + general cleanup 7 years ago
David Cernat 9102df7fde [General] Make WorldCollisionOverride also work with specific refIds
For now, this only makes it possible to enforce collision for specific refIds for placed objects.
7 years ago
David Cernat 84af9d9999 [Server] Reorder world map script functions 7 years ago
David Cernat b81ca18316 [Client] Don't clear container Ptrs when disposing of corpses
The reason for this is that only the server should be determine whether a corpse can be disposed of or not.
7 years ago
Nikolay Kasyanov 5fcb091127 Replace FIXME with a detailed explanation of the issue 7 years ago
Nikolay Kasyanov 9c78364c45 Revert "Merge pull request #1771 from Xenkhan/master"
This reverts commit 9667dd051c, reversing
changes made to f52e06fc19.
7 years ago
David Cernat 7ffdb18bf9 [General] Implement ActorDeath packet, part 1
ActorDeath packets are sent for dead actors before their StatsDynamic packets. They contain the actor's deathReason in a manner similar to that of PlayerDeath packets.

A future commit will replace the deathReason with a variable named killer which will be an mwmp::Target.
7 years ago
Andrei Kortunov 3c7ab976c3 Ignore movement from scripted animations (bug #4475) 7 years ago
Finbar Crago cac6d59140 Merge branch 'master' into fix_quickkey_segfalt 7 years ago
David Cernat 15bfa30070 [Server] Make it possible to resend received worldstates 7 years ago
David Cernat 7060ff59c5 [Client] Enforce the default global map cell size in multiplayer 7 years ago
David Cernat fec500c4b0 [Client] Reduce container debug spam by requiring VERBOSE logging for it 7 years ago
David Cernat 914b79fcc9 [General] Make it possible to check which placed objects have containers 7 years ago
Finbar Crago 43c9fd4cec check MWWorld::Ptr != NULL for MWGui ItemPtr tooltips 7 years ago
Finbar Crago 186ec8c50f rm ContainerStore/refItem 7 years ago
Marc Zinnschlag 705b2dca0e Merged pull request #1777 7 years ago
Marc Zinnschlag baeaff2309 Merged pull request #1778 7 years ago
Andrei Kortunov 97d8cc0efe Check if the local was not found, just for sure 7 years ago
Andrei Kortunov 7dff8d8fe2 Check cell for null 7 years ago
Finbar Crago 46c6abcf54 add string vectors for name/id in QuickKeysMenu for item lookups 7 years ago
Andrei Kortunov 441463327c Validate map size 7 years ago
Andrei Kortunov 359e748c28 Initialize some missing fields in constructors 7 years ago
David Cernat deda6ec071 [Client] Don't send WorldMap packets for already explored map tiles 7 years ago
Capostrophic ecafcefae9
Fall back to regular head when getVampireHead fails 7 years ago
Capostrophic 35b0546737 Consider <p> tag when discarding post-EOL tag text (regression #4473) 7 years ago
Finbar Crago da4c55d5ad prevent segfalt in QuickKeysMenu when item has been removed from player inventory
added a MWWorld::ContainerStore to hold item copies which are then used to find
real items with findReplacement().

(storing the RefId could be a better solution but would probably leave tooltips broken...)
7 years ago
David Cernat 5bb2ba1e9e [General] Limit maximum imageData size in WorldMap packets 7 years ago
Bret Curtis a55583a395
Merge branch 'master' into master 7 years ago
David Cernat 7e90d1f2a4 [Client] Fix interior-to-exterior and v.v. cell transitions for actors
Make sure only players who are cell authorities can get actors to teleport across cells for them, and display a message box for players who are not cell authorities.
7 years ago
Xenkhan 405a0caf29
Remove unneeded whitespace 7 years ago
Xenkhan 5a4817c147
Get rid of reinterpret_cast<> 7 years ago
Marc Zinnschlag 22eb037c18 Merged pull request #1773 7 years ago
Bret Curtis 6655b7e512
Merge pull request #1740 from nikolaykasyanov/software-cursor-decompression
Decompress cursors using SDL software renderer on Mac or if OSG >= 3.5.8 or if OPENMW_DECOMPRESS_TEXTURES is set
7 years ago
Marc Zinnschlag 6315848620 Merged merge request !2 7 years ago
Bret Curtis b619c0de2d
Merge pull request #1772 from akortunov/deathanim
Fast-forward death animation to end if death animation was finished earlier
7 years ago
Andrei Kortunov c195144b17 Take transformation from first node with given name in file (bug #4469) 7 years ago
Atahualpa c0fc615cd6 Adds the option to ignore "Base" records when running the verifier. (fixes #4466)
Improves previous commit:
1. Initialise mIgnoreBase boolean member with FALSE.
2. Remove isBaseOnly() function and replace with direct use of Record member.
7 years ago
Bret Curtis 664edc5a39
Merge pull request #1757 from akortunov/musicfix
Handle exception when try to load non-music file
7 years ago
Andrei Kortunov c9756cee4c Fast-forward death animation to end if death animation was finished earlier (regression #4468) 7 years ago
David Cernat fd05beef94 [Client] Don't delete disposed of corpses on client
Clients should instead await a server reply approving the deletion.
7 years ago
David Cernat c3c7f2c8f9 [Server] Don't automatically synchronize ObjectDelete packets 7 years ago
Atahualpa 9d61d76e92 Adds the option to ignore "Base" records when running the verifier. (fixes #4466)
Adds a boolean setting to the user preferences. This setting is locally saved to all OpenMW-CS check stages. When a verification is done, the setting is updated on setup for each check stage. If set to true, the boolean value is then used to skip the verification process for every base record - minus some special cases where, e.g., counters are to be set first.

Related issue:
- Fixes #4466: Editor: Add option to ignore base records when running verifier (https://gitlab.com/OpenMW/openmw/issues/4466)

Tests:
The changes were successfully tested in OpenMW-CS by creating faulty "Base" and "Modified" records for every record type (if possible) and, then, running the verifier with and without the option respectively.
7 years ago