Commit Graph

10041 Commits (coverity_scan)

Author SHA1 Message Date
scrawl 3f3d00ffc9 Add CellPreloader::clear to avoid potential dangling CellStore pointer and to more aggressively clear preload state from a previous game 8 years ago
scrawl 0be86f69bc Write the player object first to increase the chance of preloading the player cells in time 8 years ago
scrawl 1d8a9ff622 Preload player cell as soon as the player is read from the savegame
Giving the worker thread something to do while the rest of the savegame is parsed.
8 years ago
scrawl d141b98f0c Add base animations to preloadCommonAssets 8 years ago
scrawl 066aa2e60e Always run preloadCommonAssets even when the menu is skipped
Move to before the content files are loaded so we can do preloading in parallel with content file loading
8 years ago
scrawl c68f662c9a Predict player movement when preloading cells to better handle moving at high speed 8 years ago
scrawl a46593fa74 Add PreloadItem::abort() to avoid no longer required cells from blocking the work thread 8 years ago
scrawl d62c4259bd CellPreloader: load the terrain first to match the order in the main thread 8 years ago
scrawl d1e86d22ca Check which local map textures actually need to be updated
On a typical exterior cell transition, we'll save 3 of 9 map renders. When moving back and forth between 2 cells, we can even reuse 6 of 9.
8 years ago
scrawl 43d9f3d5c7 Update bullet debug drawer even when the game is paused so the collision mesh will show instantly even when the console is up 8 years ago
scrawl 249fe9077b Handle 'tcb' command as an alias for 'tcg' 8 years ago
scrawl 206e2bf975 Fix camera rotation not being set after save game load (regressed with 1eb3384043) 8 years ago
scrawl 35bb467c7a Fix inverted setting of variable 8 years ago
David Cernat 5038353792 [General] Rename BaseEvent's state into doorState & adjust related funcs 8 years ago
David Cernat e52823394c [Client] Use correct count for ID_CONTAINER when dropping items 8 years ago
David Cernat d8a9a5f6c9 [General] Send item owner in ID_CONTAINER 8 years ago
David Cernat ad3eac624f [Client] Disable quicksaving and quickloading 8 years ago
David Cernat 3614b21e10 [General] Send charge and goldValue in ID_CONTAINER 8 years ago
Allofich 5d2090684a Store mHitAttemptActorId in save files 8 years ago
Allofich 25c64dbb0f Make combat engagement logic more like vanilla
(Fixes #2678, Fixes #3705)
8 years ago
David Cernat e703dd42aa [Client] Rename LocalEvent into WorldEvent 8 years ago
scrawl 5a939418fc Add missing avcodec_close (Fixes #3741) 8 years ago
David Cernat 182b238b5f [General] Rename WorldEvent into BaseEvent 8 years ago
David Cernat 27242cdab9 Merge pull request #142 from OpenMW/master
Add OpenMW commits up to 6 Feb 2017
8 years ago
scrawl 91939c4687 Switch actors to capsule shapes now that the jumping bug is gone (Fixes #2116, Fixes #2909)
The culprit was - surprise, surprise - d39d4f2619
8 years ago
scrawl 03aa270551 Construct PhysicActor as on ground by default to avoid a jumping animation from playing in the first frame after a savegame load 8 years ago
scrawl bc29a99a53 Fix broken timer 8 years ago
scrawl d39d4f2619 Revert a problematic and performance costly workaround that should never have been applied and is no longer required as of the last commit. 8 years ago
scrawl 541fbb4792 Movement solver: add usage of 'on slope' flag to improve handling of steep slopes
Previously we were handling 'on slope' synonymously with 'in air' which caused some odd effects.

Practical changes:
 - Sliding down a slope no longer applies fall damage.
 - Fixed a climbing exploit that would allow climbing steep slopes with repeated use of the Jump function.
8 years ago
scrawl cce42b6e9d Don't create a CharacterController for objects with no animations 8 years ago
scrawl fe0cf5be05 StatsWindow: don't rebuild all skill widgets when one skill changes 8 years ago
scrawl e7b6ea4e3f Add cycle weapon/spell actions to the list of controller actions (Fixes #3613) 8 years ago
David Cernat 1f03c12d96 [Client] See when other players use the Take All button with a container 8 years ago
David Cernat d2c5a3387a [Client] See when other players add items to containers 8 years ago
David Cernat 75392297b5 [General] Use vector::at in most places 8 years ago
David Cernat 60d6a6d463 [Client] See when other players remove items from containers 8 years ago
David Cernat 25d79dbcfe [Client] Revert c0d67f67fb after discovering its negative consequences 8 years ago
David Cernat cdd796aba1 [Client] Send ID_PLAYER_INVENTORY from two more locations 8 years ago
David Cernat c0d67f67fb [Client] Move code for sending a packet for picking up world items
Previously, an ID_OBJECT_DELETE was sent from inventorywindow.cpp, but this is now sent from hud.cpp because 2 other packets are also sent from there.
8 years ago
David Cernat b2cdec8efa [Client] Send ID_PLAYER_INVENTORY upon dropping an item, 2nd attempt 8 years ago
David Cernat f314b13edf [General] Rename item health into charge, for consistency with OpenMW 8 years ago
David Cernat f03724be7b [Client] Send ID_PLAYER_INVENTORY upon dropping an item 8 years ago
David Cernat ecc456fea9 [General] Include charge int in WorldObject & send it w/ ID_OBJECT_PLACE 8 years ago
David Cernat 04d45b9dbb [General] Rename packets to show they are for players only, not NPCs 8 years ago
David Cernat 3a29b2d41d Merge pull request #141 from OpenMW/master
Add OpenMW commits up to 5 Feb 2017
8 years ago
scrawl 3065600a86 Skip expensive visitEffectSources call if no summoned creatures or summon effects are active 8 years ago
scrawl ee4073541c Animation: cache getVelocity() 8 years ago
scrawl a2cede8f34 Add timer for updateEquippedLight 8 years ago
scrawl 1eb3384043 Avoid rotating by zero in CharacterController 8 years ago
scrawl 7201cf5fe2 ItemWidget: skip setImageTexture if the icon has not changed 8 years ago
David Cernat 9c76b805b2 [Client] Send ID_CONTAINER when starting to drag a container item 8 years ago
David Cernat a07e616878 [General] Add ContainerItem and ContainerChanges structs to WorldEvent 8 years ago
scrawl 1447bfa215 Improve scene loading performance by creating collision objects with the correct rotation right away instead of adjusting it later 8 years ago
David Cernat 6328ffb9aa [General] In ID_GAME_ATTRIBUTE & ID_GAME_SKILL, rename GAME into PLAYER 8 years ago
David Cernat 57f54aa370 [Client] Don't store multiple cellStates for the same cell 8 years ago
David Cernat a2e3fe18fe [Client] Send ID_PLAYER_CELL_STATE to server at end of CharGen
Also, allow requests for ID_PLAYER_CELL_STATE from the server.
8 years ago
David Cernat 44e27148d5 Merge pull request #140 from OpenMW/master
Add OpenMW commits up to 4 Feb 2017
8 years ago
scrawl 884d306bf3 Throw exception when told to use 0 threads 8 years ago
scrawl 2db7292bcb Add new setting for the number of preloading worker threads
If you have CPU cores to spare, consider setting 2 or 3. Up to about 3 threads, preloading performance seems to increase in a linear fashion, but with 4 or more threads I/O bottlenecks and synchronization overhead starts to show.
8 years ago
scrawl eaeba4138b Move the deletion of PreloadItem to the worker thread 8 years ago
scrawl 33e654f94d Add explicit handling of most commonly used nodes to NodeVisitors to avoid excessive virtual function calls 8 years ago
scrawl 83a9435167 Fix unnecessary use of CopyFramebufferToTextureCallback when loading is too fast for a loading screen to be displayed 8 years ago
scrawl 767eba941f Speed up finding of attachment node by using the cached nodeMap 8 years ago
scrawl a76d693627 Speed up ControllerVisitor by skipping sub graphs that have no ChildrenRequiringUpdateTraversal() 8 years ago
scrawl c58fc6d276 Improve performance of loading screen by not recomputing the bounding sphere of the entire scene after each loading step 8 years ago
David Cernat c1427b2558 [General] Simultaneously send loads & unloads in ID_PLAYER_CELL_STATE 8 years ago
David Cernat 63974af131 Merge pull request #139 from OpenMW/master
Add OpenMW commits up to 3 Feb 2017
8 years ago
scrawl 0be811c519 Update the resource cache every second instead of every frame
A dry run takes about ~1.5ms. Even though it's all done in the worker thread, the locks used can stall loading operations that are about to happen in other threads, and just in general this CPU load is unnecessary.
8 years ago
scrawl 6d8c414071 Set osgViewer ReleaseContextAtEndOfFrameHint to false for better performance when in SingleThreaded mode
The flag is normally set to off by default when using Viewer::run() - however since we're using our own frame loop, we have to unset the flag ourselves
8 years ago
scrawl c5f8ff6e0e Add names to several nodes for debugging purposes 8 years ago
David Cernat 958ff06ca8 [General] Rename ID_DOOR_ACTIVATE into ID_DOOR_STATE 8 years ago
Koncord f78c749981 [Client] Use "NULL" instead "nullptr"
nullptr keyword introduced in C++11
8 years ago
David Cernat 9f8f62b765 Merge pull request #137 from OpenMW/master
Add OpenMW commits up to 1 Feb
8 years ago
scrawl 1808b8567e Add 'small feature culling pixel size' setting specifically for water RTTs, by default set higher than the one in [Camera] 8 years ago
scrawl fcb4129aee Add 'small feature culling pixel size' setting 8 years ago
scrawl 960d4a96c3 Reduce the number of osg::Material state by setting the default state on the graph root 8 years ago
scrawl 34deb6e7b1 Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes 8 years ago
David Cernat 703f253712 [Client] Delete new LocalEvents after sending them 8 years ago
Koncord 42b6a456f0 [Client] Fix code style 8 years ago
Koncord c5035cd174 [Client] Fix crash and memory leak when erasing spellbook 8 years ago
David Cernat da2f66d6ba Merge pull request #135 from OpenMW/master
Add OpenMW commits up to 29 Jan
8 years ago
David Cernat d503a65849 [Client] Replace tab characters with spaces 8 years ago
MiroslavR d97e9cfe7e Fix InterpreterContext::updatePtr updating mLocals to the implicit ref's locals when interpreting a targeted global script (Fixes #3738)
The interpreter context of a targeted global script would point to the target's locals instead of the global script instance's locals when the target changed cell during script execution. Credit to scrawl for the solution.
8 years ago
David Cernat dddc253d70 [Client] Fix console message for LocalPlayer's cell change 8 years ago
David Cernat 9f1e491a75 [General] Make WorldEvents store information about multiple objects 8 years ago
David Cernat 624b85347a [Client] Create LocalEvent class and use it instead of WorldEvent 8 years ago
David Cernat ee86c9161d [Client] Set InterpreterContext's sendPackets to false in constructor 8 years ago
David Cernat 7efb374f75 [Client] Avoid fetching guiMessageBox.type again for every condition 8 years ago
Koncord ab3c2544b5 [Client] Use constant instead magic value 8 years ago
Koncord 34a46e6811 [Client] Simplify hasFinishedCharGen method 8 years ago
David Cernat 244da19a51 [General] Turn ID_PLAYER_CELL_LOAD into ID_PLAYER_CELL_STATE for clarity 8 years ago
David Cernat 055376c8ee [Client] Only send ID_PLAYER_CELL_LOAD when CharGen is over 8 years ago
David Cernat b5b5551fcd [Client] Add LocalPlayer::hasFinishedCharGen() method 8 years ago
David Cernat 97aabf4a7d [General] Sketch out sending of cell loading/unloading info in packets 8 years ago
David Cernat 158d606477 [General] Leave one blank line at the end of every tes3mp code file 8 years ago
David Cernat 2158e94a96 [Client] Fix setting of attack parameters after recent changes 8 years ago
David Cernat 63c8a98083 [General] Stop using virtual functions in BasePlayer 8 years ago
David Cernat 1d9c6ddd81 [General] Add placeholders for the new packet ID_PLAYER_CELL_LOAD 8 years ago
David Cernat 35e453dec3 [General] Sketch out most of functionality for journal saving/loading 8 years ago
David Cernat 0cd7c3ea3d Merge pull request #131 from OpenMW/master
Add OpenMW commits up to 21 Jan
8 years ago
MiroslavR c64351b3e8 ESS-import: player is no longer disabled (Bug #3246) 8 years ago
David Cernat d308897f95 Rename PacketItems, PacketSpells into InventoryChanges, SpellbookChanges 8 years ago
David Cernat e2c595fc5d Add preliminary structure for journal changes 8 years ago
David Cernat e9b22814b9 Create placeholder for ID_GAME_JOURNAL 8 years ago
David Cernat a69f294ef0 Rename ID_GAME_CELL into ID_PLAYER_CELL_CHANGE 8 years ago
David Cernat 83277a1512 Send spellbook in LocalPlayer CharGen & change UPDATE action name to SET 8 years ago
David Cernat 0f7748d9d2 When clearing LocalPlayer's spells, keep race and birthsign abilities 8 years ago
David Cernat 33e85c54de Rename BasePlayer Inventory & Spellbook into PacketItems & PacketSpells
This avoids confusion when either of those is used to store and send a single item, and no longer requires coming up with confusing variable names like realSpellbook or realInventory for actual full spellbooks and inventories.
8 years ago
David Cernat be851f5e1a Send packet with spells gained at character generation 8 years ago
David Cernat 78c6ab2a99 Clean up client Networking by putting item & spell logic in LocalPlayer 8 years ago
David Cernat b8a6020af1 Check for update to inventory when closing a container 8 years ago
David Cernat c77120df6d Merge pull request #129 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwworld/actiontake.cpp
8 years ago
scrawl cc19b4bd8a Fix door rotation order in collision case (Bug #3707) 8 years ago
scrawl 45fb4f04b1 Update reference of the interpreter context when an Activate results in a take action (Fixes #3727) 8 years ago
scrawl 70c5f64caa Fix mLocals not being updated in InterpreterContext::updatePtr 8 years ago
David Cernat fa8650f99a Merge pull request #128 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/combat.cpp
8 years ago
scrawl c6822b9eb6 Merge pull request #1192 from damiel/water_refactor
Added refactoring of shader handling from visvalda's fog shader
8 years ago
Martin-Kevin Neumann 5a8efa1649 added refactoring of shader handling from visvalda's fog shader 8 years ago
NeveHanter e82d542d89 Merge remote-tracking branch 'upstream/master' into bugfix-3617 8 years ago
NeveHanter 811e9ad9f3 Fixed bug https://bugs.openmw.org/issues/3617 by allowing touch and target enchantments from ranged weapons and their projectiles to explode even when colliding with non-activable objects, terrain, water slab or when shoot underwater.
Also allowed projectiles to fly through the dead bodies as in vanilla.
8 years ago
David Cernat f376b8416e Merge pull request #127 from OpenMW/master
Add OpenMW commits up to 15 Jan
8 years ago
Allofich f2240dde9c Allow command spells to work when cast by AI on AI
(Fixes #3723)
8 years ago
Allofich e825010107 Apply command spell effects on impact
Command spells should apply their effects, including taking an actor out
of combat, every time a spell successfully hits, even if a previous
command effect is still active.
8 years ago
Allofich a46c4de918 Stop combat when adding an AI package to an actor
(Fixes #3722)
8 years ago
scrawl b87abb0456 Reset activation flags when an object is copied (Fixes #3671, Fixes #3719) 8 years ago
David Cernat 70b43ecef6 Merge pull request #126 from OpenMW/master
Add OpenMW commits up to 14 Jan
8 years ago
scrawl 69ce9f32bc Activate/OnActivate fix (Bug #3712) 8 years ago
David Cernat 253ded1ee3 Use new getFilenameStamp() method to generate timestamps for filenames 8 years ago
David Cernat 3932654d5d Use log filenames w/ timestamps instead of adding numbers to their ends 8 years ago
David Cernat 610ba1d867 Merge pull request #125 from OpenMW/master
Add OpenMW commits up to 12 Jan
8 years ago
scrawl 73aa07b81b Merge pull request #1189 from Allofich/attack
Match best attack selection to vanilla behavior
8 years ago
Allofich 2322ab3125 Don't make Command spells cancel AI packages
(Fixes #3649)
8 years ago
Allofich c10585fb07 Match best attack selection to original MW
(Fixes #3721)
8 years ago
David Cernat dfb87e9e0d Merge pull request #124 from OpenMW/master
Add OpenMW commits up to 11 Jan
8 years ago
MiroslavR f1f9209814 Creatures now auto-equip shields (Fixes #3704) 8 years ago
Allofich 5e992a0342 Fix attempting to access NPC stats on creatures 8 years ago
Assumeru 1a073ca642 Fix teleportation being unreachable 8 years ago
Allofich eee49b7ea7 Make dispel an instant effect again (Fixes #3695) 8 years ago
scrawl 80c008906b Fix texture coordinates 8 years ago
scrawl 48a23d61b2 Mask out water in global map overlay 8 years ago
scrawl 7b5f3e3cdc Fix crash in ProjectileManager when a sound id fails to play or is not found 8 years ago
scrawl 708009eac4 Merge pull request #1158 from logzero/move3
[RFC] Movement solver experiments
8 years ago
scrawl 212e85e810 Merge pull request #1174 from Allofich/combat
Adjustments to AI combat engaging and disengaging
8 years ago
scrawl da3815f5a6 Merge pull request #1179 from Armada651/fix-audio-cutoff
OpenAL_Output: When a source is finished, rewind it instead of stopping it.
8 years ago
logzero dbf0fa6766 Skip stepping if movement tracer hits actor. 8 years ago
David Cernat 59c3dbe6af Merge pull request #120 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
8 years ago
Koncord b9c3849cc7 Change keycode to scancode 8 years ago
Koncord 7595b33461 Implement spellbook 8 years ago
Marc Zinnschlag dedd95f52a Merge remote-tracking branch 'miroslavr/save-cleanup' 8 years ago
Jules Blok e9d8ff532f OpenAL_Output: When a source is finished, rewind it instead of stopping it.
This works around a bug in the MacOS OpenAL implementation.
8 years ago