1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-02-21 18:09:39 +00:00
openmw-tes3mp/apps/openmw/mwmechanics
elsid 675c0ab72f
Apply uniform random deviation to AI reaction timer
This allows to distribute AI reaction calls over time.

Before this change actors appearing at the same frame will react in the same
frame over and over because AI reaction period is constant. It creates a
non-uniform CPU usage over frames. If a single frame has too many AI reactions
it may cause stuttering when there are too many actors on a scene for current
system.

Another concern is a synchronization of actions between creatures and NPC.
They start to go or hit at the same frame that is unnatural.
2021-03-20 14:47:54 +01:00
..
activespells.cpp Support for multiple summons with same ID in the single spell 2020-08-28 21:14:54 +04:00
activespells.hpp Support for multiple summons with same ID in the single spell 2020-08-28 21:14:54 +04:00
actor.cpp Make greeting-related actor data temporary (bug #5397) 2020-05-30 00:51:58 +03:00
actor.hpp Make greeting-related actor data temporary (bug #5397) 2020-05-30 00:51:58 +03:00
actors.cpp Modified actors.cpp and Authors.md 2021-02-05 17:59:36 +00:00
actors.hpp Make followers keep a distance dependant on the fattest party member 2020-12-25 23:57:01 +01:00
actorutil.cpp Use 2D distance for fight rating of vertically moving actors (bug #4961) 2019-06-05 21:41:02 +03:00
actorutil.hpp Merge branch 'radioactive' into 'master' 2020-10-20 16:56:22 +00:00
aiactivate.cpp Replace AiPackage virtual methods by options 2020-06-06 12:00:17 +02:00
aiactivate.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aiavoiddoor.cpp Fix AppVeyor warnings 2020-08-07 09:59:16 +03:00
aiavoiddoor.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aibreathe.cpp Smooth turning; smooth stopping; combat headtracking 2020-09-22 22:50:44 +02:00
aibreathe.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aicast.cpp Make AI cast self-targeted spells at the ground (bug #5695) 2020-12-04 00:41:21 +03:00
aicast.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aicombat.cpp Apply uniform random deviation to AI reaction timer 2021-03-20 14:47:54 +01:00
aicombat.hpp Apply uniform random deviation to AI reaction timer 2021-03-20 14:47:54 +01:00
aicombataction.cpp Separate functions that don't belong to CastSpell class 2020-04-26 22:17:38 +03:00
aicombataction.hpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
aiescort.cpp Replace AiPackage virtual methods by options 2020-06-06 12:00:17 +02:00
aiescort.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aiface.cpp Replace AiPackage virtual methods by options 2020-06-06 12:00:17 +02:00
aiface.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aifollow.cpp Tweak follow distance to be more like the original 2021-01-10 16:29:32 +01:00
aifollow.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aipackage.cpp Apply uniform random deviation to AI reaction timer 2021-03-20 14:47:54 +01:00
aipackage.hpp Apply uniform random deviation to AI reaction timer 2021-03-20 14:47:54 +01:00
aipackagetypeid.hpp Store package type id as enum except ESM 2020-06-11 21:02:27 +02:00
aipursue.cpp AIPursue: Pursue the player until LOS is established (#5869) 2021-03-03 22:06:58 +03:00
aipursue.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aisequence.cpp Fix AI sequence looping code (bug #5706) 2020-12-22 05:56:59 +03:00
aisequence.hpp Store package type id as enum except ESM 2020-06-11 21:02:27 +02:00
aistate.hpp Keep an AiWanderStorage when cloning an actor (bug #5267) 2020-03-10 12:22:21 +04:00
aitimer.hpp Apply uniform random deviation to AI reaction timer 2021-03-20 14:47:54 +01:00
aitravel.cpp Replace AiPackage virtual methods by options 2020-06-06 12:00:17 +02:00
aitravel.hpp components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
aiwander.cpp Apply uniform random deviation to AI reaction timer 2021-03-20 14:47:54 +01:00
aiwander.hpp Apply uniform random deviation to AI reaction timer 2021-03-20 14:47:54 +01:00
alchemy.cpp Replace zeroes and nulls by nullptrs 2020-11-29 11:14:07 +04:00
alchemy.hpp Add a filter in the alchemy window. 2020-03-20 06:35:57 +01:00
autocalcspell.cpp Use more C++11 loops in game mechanics code 2020-07-25 15:54:49 +04:00
autocalcspell.hpp Include cleanup 2019-02-19 18:40:33 +03:00
character.cpp Fix 5846 2021-03-13 21:54:49 +01:00
character.hpp Remove never used parameter from CharacterController:update() 2021-01-09 21:28:27 +01:00
combat.cpp Merge branch 'elemental_shields' into 'master' 2021-03-02 06:45:38 +00:00
combat.hpp Reuse distance functions 2019-10-19 12:51:37 +02:00
creaturestats.cpp Use struct instead of tuple 2020-08-29 11:24:08 +04:00
creaturestats.hpp Use struct instead of tuple 2020-08-29 11:24:08 +04:00
difficultyscaling.cpp Remove deprecated GMST get* functions 2018-08-29 18:38:12 +03:00
difficultyscaling.hpp Implement difficulty scaling (Fixes #1505) 2014-07-20 16:38:20 +02:00
disease.hpp Mutate base records when adding/removing spells 2020-07-28 08:33:28 +02:00
drawstate.hpp Savegame: store most of CreatureStats 2014-05-12 21:37:36 +02:00
enchanting.cpp Set a minimum 1gp cost for services (regression #5600) 2020-09-08 17:04:31 +04:00
enchanting.hpp Allow to enchant multiple projectiles at once (feature #3517) 2019-12-31 21:31:49 +04:00
levelledlist.hpp Rework container resolution (#3006) 2020-10-13 17:46:32 +02:00
linkedeffects.cpp Support for multiple summons with same ID in the single spell 2020-08-28 21:14:54 +04:00
linkedeffects.hpp Address akortunov's concerns regarding spell refactoring 2020-04-27 12:05:17 +03:00
magiceffects.cpp Remove redundant includes 2019-02-23 08:02:12 +04:00
magiceffects.hpp Support for multiple summons with same ID in the single spell 2020-08-28 21:14:54 +04:00
mechanicsmanagerimp.cpp Make followers keep a distance dependant on the fattest party member 2020-12-25 23:57:01 +01:00
mechanicsmanagerimp.hpp Make followers keep a distance dependant on the fattest party member 2020-12-25 23:57:01 +01:00
movement.hpp Merge branch 'movement_refactoring' into 'master' 2020-08-27 11:54:30 +00:00
npcstats.cpp Show level multipliers in levelup tooltip 2021-01-25 10:01:39 +00:00
npcstats.hpp Show level multipliers in levelup tooltip 2021-01-25 10:01:39 +00:00
objects.cpp Use more C++11 loops in game mechanics code 2020-07-25 15:54:49 +04:00
objects.hpp Report frame number, number of actors and objects to stats 2020-05-22 17:39:18 +02:00
obstacle.cpp Merge branch 'movement_refactoring' into 'master' 2020-08-27 11:54:30 +00:00
obstacle.hpp Use distance to position since last normal state in obstacle checker 2020-02-10 22:29:54 +01:00
pathfinding.cpp Don't ignore Z in path finding if actor can move by Z. 2021-01-29 22:30:20 +01:00
pathfinding.hpp Don't ignore Z in path finding if actor can move by Z. 2021-01-29 22:30:20 +01:00
pathgrid.cpp Remove unused PathgridGraph::mIsExterior 2020-06-11 21:43:51 +02:00
pathgrid.hpp Remove unused PathgridGraph::mIsExterior 2020-06-11 21:43:51 +02:00
pickpocket.cpp Store attributes and skills values as floats (bug #4021) 2020-06-03 17:34:15 +04:00
pickpocket.hpp Implement pickpocket detection. Play a voiced dialogue entry when detected. 2014-01-07 03:01:33 +01:00
recharge.cpp Recharge items outside of player's inventory (bug #4077) 2019-10-07 22:59:43 +04:00
recharge.hpp Recharge items outside of player's inventory (bug #4077) 2019-10-07 22:59:43 +04:00
repair.cpp Handle 0-use items like vanilla (bug #5611) 2020-09-25 00:20:25 +03:00
repair.hpp
security.cpp Fix pick/probe uses decrement 2020-10-09 19:20:50 +03:00
security.hpp
spellabsorption.cpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
spellabsorption.hpp Support enchantment absorption 2020-09-22 00:33:27 +03:00
spellcasting.cpp Use convexSweepTest for projectile movement to solve any 2021-01-21 20:36:33 +01:00
spellcasting.hpp Clean up CastSpell 2020-04-26 22:17:38 +03:00
spelllist.cpp these were supposed to be included 2020-07-28 18:24:09 +02:00
spelllist.hpp Comments to explain the arcane workings of Morrowind 2020-07-30 21:39:04 +02:00
spellpriority.cpp Use AppliedOnce flag in more effect duration calculations (#5425) 2020-05-24 18:37:21 +03:00
spellpriority.hpp Include cleanup 2019-02-19 18:40:33 +03:00
spellresistance.cpp Store attributes and skills values as floats (bug #4021) 2020-06-03 17:34:15 +04:00
spellresistance.hpp Separate spell resistance 2020-04-26 21:13:59 +03:00
spells.cpp Register copied Spells with SpellList 2021-03-14 19:32:03 +01:00
spells.hpp Register copied Spells with SpellList 2021-03-14 19:32:03 +01:00
spellutil.cpp Don't check magicka when casting free spells 2021-02-07 00:15:01 +01:00
spellutil.hpp Separate functions that don't belong to CastSpell class 2020-04-26 22:17:38 +03:00
stat.cpp Allow negative values for ai stats 2021-02-04 21:25:38 +01:00
stat.hpp Allow negative values for ai stats 2021-02-04 21:25:38 +01:00
steering.cpp Smooth turning; smooth stopping; combat headtracking 2020-09-22 22:50:44 +02:00
steering.hpp Make angular velocity depending on actor speed 2019-08-03 16:06:04 +02:00
summoning.cpp Use struct instead of tuple 2020-08-29 11:24:08 +04:00
summoning.hpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
tickableeffects.cpp Do not remove active effects in loop (bug #3789) 2020-11-02 17:51:36 +04:00
tickableeffects.hpp Do not remove active effects in loop (bug #3789) 2020-11-02 17:51:36 +04:00
trading.cpp Remove deprecated GMST get* functions 2018-08-29 18:38:12 +03:00
trading.hpp Include cleanup 2019-02-19 18:40:33 +03:00
typedaipackage.hpp Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
weaponpriority.cpp Separate functions that don't belong to CastSpell class 2020-04-26 22:17:38 +03:00
weaponpriority.hpp Refactor weapon types behaviour 2019-08-09 19:40:27 +04:00
weapontype.cpp Remove dead code 2021-01-09 14:17:59 +04:00
weapontype.hpp Ability to attach arrows to shooter's hands (feature #5642) 2020-10-14 10:07:42 +04:00