Commit Graph

15098 Commits

Author SHA1 Message Date
mimo 092206b12e Finding new targets can be really slow when lot of units are involved. In Combat demo huge for example, it could represent more than 30% of the simulation time. Part of it is because we loop several times on all identity classes of all enemy units, and most of the time for nothing. This patch avoids the useless loops, and adds some cleanup.
In addition, when testing if we can't attack a units, Capture and
Slaughter were used even if not applicable.

This was SVN commit r17250.
2015-11-13 17:47:31 +00:00
wraitii e7fb75a680 Initialize new variables correctly.
This was SVN commit r17247.
2015-11-12 23:07:54 +00:00
wraitii e9271025dc Forgot to serialize a new unitMotion variable, resulting in OOS on rejoin.
This was SVN commit r17245.
2015-11-12 20:57:50 +00:00
wraitii bc0048d592 Update rallypoint coordinates for rallypoints targeting entities ("attack", "repair"...). Fixes #3597
This was SVN commit r17243.
2015-11-12 17:39:46 +00:00
wraitii 9357cce112 Math is hard
This was SVN commit r17242.
2015-11-12 17:32:33 +00:00
wraitii 3febc387d5 Styling fixes.
This was SVN commit r17241.
2015-11-12 17:23:50 +00:00
wraitii 52443dfe80 Fix an erroneous ENSURE in PatchRData and move it where it will be very slightly clearer. Fixes #3598
This was SVN commit r17240.
2015-11-12 17:22:44 +00:00
fabio da7bd0c92c Improved action-capture icon, designed by stan and wraitii.
Fixes #3595.

This was SVN commit r17239.
2015-11-12 09:46:31 +00:00
wraitii 913545aa41 Mark several CFixedVector2D as const and passed by reference in Geometry and a few other places. Mark some functions (that probably already were) inline.
Also make sure we don't include Geometry.h where it's not necessary.

This was SVN commit r17238.
2015-11-11 20:50:02 +00:00
wraitii f3b22e51a3 Optimize Geometry::PointIsInSquare, which is used quite often in performance hotspots.
Original patch by mimo. Refs #3588

This was SVN commit r17236.
2015-11-11 20:02:47 +00:00
wraitii c2928c44d4 Make farm props sway in the wind (they sway very lightly).
This was SVN commit r17235.
2015-11-11 19:12:06 +00:00
wraitii a138bed96b Fix an issue where units did not notice other moving units with my latest commits.
This was SVN commit r17234.
2015-11-11 19:06:07 +00:00
wraitii cc199c4cca Fix a critical typo in the last commit and a debug message left in accidentally. Thanks fabio.
This was SVN commit r17232.
2015-11-11 13:55:36 +00:00
fabio 56baae08c3 Fix action-capture icon transparency and optimize with optipng -o 5 and advdef -z -4
Refs: #2823

This was SVN commit r17230.
2015-11-11 13:34:15 +00:00
wraitii 06cb37ff74 Add PlanNextStep back to the unitMotion, in a completely different version. This basically anticipates where we'll probably move next, and checks if static units might block us. Makes paths look slightly better.
This was SVN commit r17229.
2015-11-11 13:29:06 +00:00
wraitii 607955489d Check if units are in the world in UnitRenderer::PickAllEntitiesAtPoint. Probably fixes #3587, though I'm not sure as it proved unreproducible.
This was SVN commit r17228.
2015-11-11 13:27:13 +00:00
wraitii 1b00bfc98d Change the capture icon to something that looks like two flags instead of a weird red blob. Icon by Stan.
This was SVN commit r17227.
2015-11-11 13:24:41 +00:00
wraitii 3b13fb7608 Improve unitMotion behavior. When a unit's path is obstructed, it will now try shortpathing around an increasingly large search range, to optimize behavior in trivial cases where it just needs to go around a unit.
Also stop trying too hard when we are close to the destination and our
only order is to move there.
This should result in a slight optimization of the behavior, as well as
slightly more sanity overall.

This was SVN commit r17226.
2015-11-11 12:49:24 +00:00
wraitii 3ddd72c1a4 Fix a rare case where units might get stuck around other idle entities, and clarify a related comment.
Refs #3471

This was SVN commit r17225.
2015-11-11 12:28:38 +00:00
wraitii c42160ec10 Fix an issue where units could not go around large obstructions when short-pathing as it ran in the search-space "walls", reported by gamebot. Fixes #3593.
This is also a very slight optimization.

This was SVN commit r17224.
2015-11-11 12:23:11 +00:00
Itms 2f6f0bd477 Serialize everything that is needed by UpdateVisibilityData instead of assuming everything as dirty.
Fixes #3271.

This was SVN commit r17223.
2015-11-11 12:15:57 +00:00
fabio 8b0bca0556 Fix action-capture icon transparency.
Refs: #2823

This was SVN commit r17222.
2015-11-11 11:45:39 +00:00
leper 9e0ef737b2 Fix Athenian town phase description.
This was SVN commit r17219.
2015-11-11 03:27:38 +00:00
leper 5f7ce1089a Fix translation comments.
This was SVN commit r17218.
2015-11-11 03:27:34 +00:00
leper 32da740f14 Allow kicking/banning players from gamesetup and session. Patch by elexis. Fixes #3241.
This was SVN commit r17217.
2015-11-11 02:05:23 +00:00
wraitii d3ff090ce7 Fix an OOS issue where, on ownership change, units affected by speed-modifying technologies did not update their speed.
This was SVN commit r17215.
2015-11-10 23:31:06 +00:00
leper f0deeab899 Rename commands to g_Commands.
This was SVN commit r17213.
2015-11-09 23:25:34 +00:00
mimo 51ec6f4728 improve function RasterizeRectWithClearance, about 40% faster, ref #3588
This was SVN commit r17212.
2015-11-09 21:16:46 +00:00
leper 35b0478f70 Improve Mauryan corral specific name. Patch by stanislas69. Fixes #3555.
This was SVN commit r17211.
2015-11-09 16:49:53 +00:00
wraitii 0ba9fa1cc1 Optimize RasterizeRectWithClearance slightly further. Thanks mimo for noticing.
This was SVN commit r17209.
2015-11-08 18:08:49 +00:00
wraitii 313d324fac Fix some cases of unit "dancing". Thanks to Elexis for nagging me.
This was SVN commit r17208.
2015-11-08 17:55:23 +00:00
wraitii fe040c695f Change the shape rasterization to not use DistanceToSquare, which often called sqrt. This apparently reduces total turn time by as much as 5% (!)
Refs #3368

This was SVN commit r17207.
2015-11-08 17:24:59 +00:00
scythetwirler cb025bb725 Removes extraneous check from XpartaMuPP. Fixes #3568.
This was SVN commit r17206.
2015-11-08 17:09:59 +00:00
wraitii dd6d09521c Not sure how but I messed up the previous commit.
This was SVN commit r17205.
2015-11-08 16:44:08 +00:00
wraitii 42d0e6d46e Optimize the hierarchical pathfinder's "makeGoalReachable" slightly. Does not affect simulation results.
This was SVN commit r17204.
2015-11-08 16:39:43 +00:00
mimo cd025b2069 fix typo
This was SVN commit r17203.
2015-11-08 13:09:49 +00:00
mimo 7c2f178634 petra: do not try to train females if not available in templates, only a temporary fix waiting for #3586
This was SVN commit r17202.
2015-11-08 13:05:56 +00:00
wraitii 8f00293a58 Assign proper alternatives to some terrian materials. Fixes #3585
This was SVN commit r17200.
2015-11-07 19:43:41 +00:00
mimo d569fe63b4 petra: don't loose time approaching a target entity if it was captured in the meantime
This was SVN commit r17199.
2015-11-07 18:12:55 +00:00
wraitii c319ff062d Partial fix to a formation "gliding" issue, unsure so far what is causing this.
This was SVN commit r17198.
2015-11-07 17:36:31 +00:00
wraitii 3163c9d4a2 Fix a rare issue with the short-range pathfinder where units took odd paths when the target was beyond the search zone.
This was SVN commit r17197.
2015-11-07 14:33:55 +00:00
mimo ad4edba3dc move a bit an unreachable tree, fixes #3584
This was SVN commit r17196.
2015-11-07 14:22:10 +00:00
wraitii eed9739031 Make terrain conform to the materialmgr.quality setting. Make quality 0.0 remove triplanar texturing and tree swaying effect.
In consequence, pick a sensible default at 2.0 so that new players have
a somewhat good looking game.

This was SVN commit r17195.
2015-11-06 20:55:07 +00:00
wraitii 2d7074e8d6 Fix unused variables left behind.
This was SVN commit r17194.
2015-11-06 20:42:12 +00:00
wraitii 596025df71 Fix a bug in [17163] that could get units with a large passability class stuck.
This was SVN commit r17192.
2015-11-06 20:33:13 +00:00
wraitii e26b59c917 Changes to unitMotion.
Make sure we do not treat as circles entities that we really should
treat as squares (such as trees). This fixes an issue reported by Stan.
Make sure we never forget about our destination if we are blocked by
unit obstructions. This makes sure that units in a group but not in
formation will not be blocked by the other units, and probably makes the
general behavior more sane. Helps following [17166]

Refs #3505, #3471, #3376

This was SVN commit r17191.
2015-11-06 20:09:18 +00:00
wraitii 9efd79e240 Fix an issue where square diagonals were incorrectly handled when checking the distance to the target. Fixes #3577 properly. Patch by mimo.
Decrease fishing ship gathering range in consequence (revert [17178]).

This was SVN commit r17190.
2015-11-06 19:56:52 +00:00
wraitii 1ed3761859 Fix style issues and redundant code in [17161] and [17163].
This was SVN commit r17189.
2015-11-06 19:48:08 +00:00
scythetwirler 2126b53b9d Fixes interpolation of flying objects.
This was SVN commit r17187.
2015-11-06 16:56:39 +00:00
mimo 33398baa90 petra: only units which have effectively started an attack should be stopped when the attack is aborted, fixes #3582
This was SVN commit r17185.
2015-11-05 20:52:41 +00:00