Commit Graph

768 Commits

Author SHA1 Message Date
de02ab2e53 Fix various bugs. Try to make the AI build its buildings closer together (WIP, and it's brute-force).
This was SVN commit r14632.
2014-01-22 03:11:19 +00:00
e466565c35 Let formations attack other formations (still without keeping their formation position though)
This was SVN commit r14628.
2014-01-21 16:50:58 +00:00
2ca25a6d3e differentiate between formations that can attack, and formations that can only move. Use the differentiation in the range calculation.
This was SVN commit r14627.
2014-01-21 09:10:17 +00:00
7763a22c08 revert having giving the attack state to formation controllers as it caused too much trouble
This was SVN commit r14624.
2014-01-19 18:03:43 +00:00
c2d43b009c Fix asking for non-existing templates of killed units
This was SVN commit r14614.
2014-01-18 20:56:21 +00:00
9330975d54 Fix Athens not researching civ phase. Make the AI adapt automatically to changing the max gatherers on fields.
Fix auto-researched technologies not being properly researched on init.
Fix the tests (amazing!).
GarrisonHolder sends which entities were added or removed (mostly for AI
purposes but could benefit other things).
Streamline AIInterface events.

This was SVN commit r14612.
2014-01-18 20:26:52 +00:00
c02dafec74 Move simulation Vector math to globalscripts/Math.js. Refs #2032.
This was SVN commit r14606.
2014-01-18 15:27:30 +00:00
c1e86161b5 AIs now properly receive aura and technology updates. Fixes #2377, Refs #1520 . Consequently reimplement repairing for AIs.
Fix a few style issues and a bug with the gatherer count.
Still need to fix the entity.js file to handle properly some things as
this uses raw templates values.
Cache the AIinterface in AIProxy.js, please report if this works
properly.

This was SVN commit r14588.
2014-01-16 20:32:44 +00:00
4a133264f5 Fix unit tests
This was SVN commit r14586.
2014-01-15 13:36:33 +00:00
786afd9fcc Implement the number of gaia gatherers (it probably won't happen but it's safer that way).
Change UnitAI to call "leave" handlers on a conversion, like on a
destruction, so a unit will safely go to idle state on
resignation/conversions. Might fix some very weird bugs that probably
haven't been reported yet.
Reported by AlThePhoenix.
Fixes #2383.

This was SVN commit r14585.
2014-01-15 00:04:25 +00:00
a6dbf6a268 instead of removing members from formations as in e98478b68c, let the members stay in formation, but disable formation rearrangement in those cases.
This fixes issues with queueing orders, and should also fix #2380

This was SVN commit r14584.
2014-01-14 21:32:51 +00:00
d23b7deb98 Various improvements to AI's early game. Simplify some code and improve on other. Add a few different strategies (Rush/normal/boom, quite basic for now, refs #2344).
Aegis should mostly respect tech limitations so I'll ref #1964.
I'm going to go with #2364 is fixed, the AI should be more efficient in
early-game, and late-game is a known problem.
Fixes #2274 and fixes #2379.
Refs #2372 as it should fix several of those warnings for AIs.
Fixes #2256 with a new bartering system, in parts taken from mimo's
patch.

This was SVN commit r14582.
2014-01-14 19:54:31 +00:00
e98478b68c Make sure units in INDIVIDUAL state don't belong to a formation. Should fix #2380
This was SVN commit r14581.
2014-01-14 08:58:11 +00:00
2ca0a20f81 Fix a bug in TestAllMemberFunction and initialize a variable in cmpBattleDetection. Refs #2372.
This was SVN commit r14579.
2014-01-12 23:13:24 +00:00
0521d936a1 reduce a GuiInterface call for displaying formation tooltip
This was SVN commit r14577.
2014-01-12 18:39:47 +00:00
4ef80d26aa Proper fix for the gatherer count. Fix an AI bug. Thanks to Gameboy and Gildas for reporting.
This was SVN commit r14571.
2014-01-11 18:14:13 +00:00
0e0b4e3057 make population bonus technology modifiable
This was SVN commit r14570.
2014-01-11 14:55:22 +00:00
96448bfa4e * add a (currently useless) attack state to formations
* add a formation attack component that will be used in the future to
coordinate formation attacks
* clean up some related methods, and move some to more appropriate
places

This was SVN commit r14569.
2014-01-11 12:19:43 +00:00
eee6ed65dc still another fix to the gatherer count
This was SVN commit r14567.
2014-01-10 22:50:13 +00:00
82fa27bad4 http://i.imgur.com/iAwfubL.gif
This was SVN commit r14566.
2014-01-10 20:33:47 +00:00
df9fb05689 Fix the gatherer count per player further and some style niceness.
This was SVN commit r14565.
2014-01-10 20:27:34 +00:00
7606230158 Vars and style fixes.
This was SVN commit r14564.
2014-01-10 20:04:37 +00:00
bd22432fe8 Rename common-api-v3 to common-api.
Fix warnings with the new AI.
Fix an error with the per-player gatherer counts.

This was SVN commit r14559.
2014-01-10 17:46:48 +00:00
f9a2c30a17 fix tests
This was SVN commit r14557.
2014-01-10 16:36:04 +00:00
3d23f81696 Show the number of attacks per second to show users some attack speed, without showing the actual timers, or calcualtion of the number of arrows. Fixes #2352
This was SVN commit r14555.
2014-01-10 09:17:40 +00:00
ede4f32bf2 Change the defense system used by Aegis to use more modular armies. This should be faster and easier to extend, though right now it might not be as efficient as before.
Fix a few bugs, including a few bad ones in the economy.
Change the way messages are handled, should be marginally faster in the
later game.
Makes gatherers count limit be per-player (refs #1387 and #643).

This was SVN commit r14552.
2014-01-10 01:46:27 +00:00
22a85b0eb4 add dummy setspeed method to UnitMotionFlying
This was SVN commit r14551.
2014-01-09 12:53:28 +00:00
ec36222b20 add more flexibility to eject units when garrisonHolder is destroyed, fixes #2242
This was SVN commit r14550.
2014-01-08 18:27:58 +00:00
641c65b1dd Give some explanation to my change in 0c336649e6
This was SVN commit r14548.
2014-01-08 17:57:12 +00:00
0c336649e6 fix repairing buildings
This was SVN commit r14547.
2014-01-08 15:39:32 +00:00
9229cea9cc allow repairing of moving objects
This was SVN commit r14545.
2014-01-08 13:39:33 +00:00
f9b950aa96 improve rearrange of idle formation when units are tasked away from the formation + fix formation-settable idle animations
This was SVN commit r14544.
2014-01-08 10:55:44 +00:00
e8c4031bea Don't disband idle formations anymore, but give the formations a decent idle state. Formationmembers still need to leave the formation to anything other than walking, but this is a small step towards attacking formations.
This was SVN commit r14543.
2014-01-08 09:47:27 +00:00
4585f7322c Make the tooltips and the required members part of the formation template + fix allowing the wedge formation only for cavalry
This was SVN commit r14542.
2014-01-08 08:02:15 +00:00
aadd297cce Implement the ability to switch animations based on the formation position
This was SVN commit r14537.
2014-01-07 20:21:55 +00:00
b1e0f1b62a Clean up the mess of different ways to note the formations (capitalised, with spaces, with underscores, concatenated ...) by always referring to the template name.
This was SVN commit r14534.
2014-01-07 13:33:08 +00:00
94907897a7 Fix tests + fix classes Ashoka. Fixes #2362
This was SVN commit r14533.
2014-01-07 09:23:59 +00:00
b4fa090435 fix losRangeQuery broken in e096df0070
This was SVN commit r14526.
2014-01-06 19:35:51 +00:00
f19a8d6b41 Take the box formation out of the special case formations
This was SVN commit r14524.
2014-01-06 13:32:48 +00:00
9989359c46 Small code cleanup + fixed default formation orientation
This was SVN commit r14522.
2014-01-06 10:16:28 +00:00
2f077fd9e1 Remove wedge formation from being a special case in the formation code
This was SVN commit r14521.
2014-01-06 09:10:46 +00:00
92ed27e3c5 Treat the flank formation as a regular formation, rather than a special implementation.
This was SVN commit r14518.
2014-01-05 18:50:31 +00:00
f814510b2e revise the chase and flee
This was SVN commit r14517.
2014-01-05 18:29:38 +00:00
b8ee766cd3 Remove some hardcoded formation shapes. Some special formations still have a special treatment though. Also implement speed modifiers for formations, so we can have faster and slower formations.
This was SVN commit r14516.
2014-01-05 17:13:22 +00:00
d56595c802 Put into alert units trained during an alert, fixes #2342, patch by Itms
This was SVN commit r14513.
2014-01-05 15:12:17 +00:00
d0497c83f1 Split the formation template in different templates. This can be used later to remove hard-coded formation statistics and forms to attributes in those templates
This was SVN commit r14510.
2014-01-05 10:09:42 +00:00
9fb6620edd Use an actual flee order to move animals away from the foundation. Fixes #2347
This was SVN commit r14502.
2014-01-04 15:36:20 +00:00
1e33dd1d5e fix targetPosition != null check
This was SVN commit r14501.
2014-01-04 13:15:44 +00:00
e096df0070 fix units attacking harmless gaia buildings
This was SVN commit r14494.
2014-01-03 20:24:02 +00:00
9a41c588fe prevent traders to cycle between two adjacent markets
This was SVN commit r14490.
2014-01-03 14:03:12 +00:00
f634a8db3e fix units fleeing too far
This was SVN commit r14488.
2014-01-03 12:49:04 +00:00
66de76e026 fixes #2340, patch by itms
This was SVN commit r14484.
2014-01-02 23:11:18 +00:00
8269f0cfd4 Group units in clusters of separate formations when they're too far apart.
This was SVN commit r14483.
2014-01-02 20:04:50 +00:00
7d26f93666 fix animals taken as target in move-attack after 66770feed6, use the same filter as in AttackEntitiesByPreference
This was SVN commit r14478.
2014-01-02 14:17:46 +00:00
5b2cb0e72f small code fix
This was SVN commit r14477.
2014-01-02 08:40:51 +00:00
d8e8f613cd small code cleanup
This was SVN commit r14475.
2014-01-01 19:56:27 +00:00
59525414ee fix automatically attacking buildings caused by 66770feed6
This was SVN commit r14474.
2014-01-01 19:54:15 +00:00
66770feed6 include gaia range query of UnitAI in general range query. Fixes #2156. Patch by dumbo
This was SVN commit r14473.
2014-01-01 18:59:16 +00:00
05baeae5bd fix units not dropping resources when they are already at the resource dropsite (e.g. fields right next to a farmstead). Fixes #2336
This was SVN commit r14472.
2014-01-01 18:17:47 +00:00
9cf55a5ed0 fix productionQueue failing to produce units while the upgrade tech is running
This was SVN commit r14471.
2014-01-01 16:35:49 +00:00
2197b80747 fix oos problem mentioned by Yves on IRC
This was SVN commit r14470.
2014-01-01 16:15:26 +00:00
a7cafe75aa "Reveal all player" id back to -1, add some "ensure" to catch invalid player ids and be safer.
This was SVN commit r14465.
2013-12-31 21:30:48 +00:00
fe2a97b0c9 Change some useless std::map into std::vector for LOS. Player "0" now reveals the LOS for all.
This was SVN commit r14463.
2013-12-31 16:38:11 +00:00
f8ca47913d fix division by zero for zero-time technologies. Fixes #2334
This was SVN commit r14459.
2013-12-31 09:02:58 +00:00
4776d85301 use UnitMotionFlying for the hawks
This was SVN commit r14451.
2013-12-30 18:03:01 +00:00
298115f4c5 Fix units chasing each other. Fixes #1537
This was SVN commit r14449.
2013-12-30 16:07:19 +00:00
2146fa27c8 forgot to rename reference
This was SVN commit r14429.
2013-12-29 12:40:34 +00:00
4158283fd4 Take unit obstruction size into account when checking if in range for garrisoning. Reduce CC loading range in consequence. Fixes #2190 .
This was SVN commit r14428.
2013-12-29 10:17:09 +00:00
10e8fb9105 remove debug message
This was SVN commit r14427.
2013-12-29 10:09:58 +00:00
cd125a94e2 fix tests + code style cleanup
This was SVN commit r14426.
2013-12-29 10:01:39 +00:00
433293c7b2 Spread is now linearly tied to distance to target. Fixes #2093 .
This was SVN commit r14425.
2013-12-29 08:09:44 +00:00
bf58f04511 add wonder victory condition. Refs #1649
This was SVN commit r14418.
2013-12-28 13:40:39 +00:00
749c4d5270 change the way to manage trade, closes #2311
This was SVN commit r14417.
2013-12-28 10:44:59 +00:00
659736301a define the limit changing elements together with the limits, so they can be queried by the GUI and the AI. Fixes #2187
This was SVN commit r14408.
2013-12-27 10:58:48 +00:00
f33d3193ca fix tests (fixes #2326)
+ small code cleanup
+ move guiInterface call to GetEntityState
refs #2154

This was SVN commit r14405.
2013-12-27 08:49:47 +00:00
0780becb8a fix attack-move not working for packed units
This was SVN commit r14395.
2013-12-26 16:09:32 +00:00
953e44d9f8 try using footprint instead of obstruction for separation space between formation members + Fix some footprint sizes of siege units
This was SVN commit r14393.
2013-12-26 12:24:52 +00:00
41b3dfc89c Implement town bell
* the icons are temporary, and can be replaced later
* The sounds are created by LAVS, but may also need some polishing, so
the current ones are placeholders too
* The patch code is created by Itms
fixes #2154

This was SVN commit r14392.
2013-12-26 10:43:51 +00:00
1de1e2d5ba Fix typo.
This was SVN commit r14390.
2013-12-26 01:05:35 +00:00
4658cfa775 Mythos_Ruler's Christmas update for SVN users!
Includes:

- Unit rank upgrades, based on a patch by Sanderd. Not all civs get all
rank upgrades. For instance, Spartans get the Infantry rank upgrades,
but not the cavalry rank upgrades. Conversely, the Persians get the
cavalry rank upgrades, but not the infantry rank upgrades. Carthaginians
get rank upgrades for their mercenaries, but not their native units.
etc.

- Updated and tweaked many of the skirmish maps. Too many tweaks to
mention. But I did add Iberian circuit walls to many of them! New
"Bactria" Skirmish Map. Will continue to tweak this one to make it more
unique. It's based on modern-day Afghanistan, which the ancients called
"Bactria." A 2nd Ptolemies sandbox demo map.

- Moved the Ptolemaic Lighthouse to Town Phase to have more impact for
the Ptolemy player on maps with water.

- New Thureos shield patterns by Enrique for a NEW unit: Mercenary
Thureos Spearman.

- TECHNOLOGIES: Some techs renamed and tweaked. Plus, a new "Iron Armor"
tech for Heroes. A new "Roman Logistics" tech for the Roman Army Camp
and Siege Walls. A new "Battlefield Medics" tech for the temple that
unlocks (slow) health regeneration for units. The portrait for this tech
is placeholder and needs replaced ASAP.

- Cavalry now have oval selection rings. Eventually I will implement a
selection ring system where the citizen-soldiers and support units have
round rings, while champions have arrows, and heroes have stars. This
helps visually differentiate the roles of these 3 classes of units. Not
yet implemented.

- Vision radius for infantry slightly reduced.

- Fixed sounds for Persian Wonder.

- Fixed footprint sizes for a few buildings and Ptolemaic walls.

- Ptolemies now have the "Military Settlement" system in place. But this
system might go to the Seleucids instead later for historical reasons.

- Cost of fields reduced. Gathering rates for grain reduced.

- Fixed some selection group names for some templates. (Double clicking
didn't select them all as it should have).

- Fixed/Changed/Added some unit and building names, specifically for the
Ptolemies, but for some others as well.

- Some new temp portraits for Ptolemaic units. Ongoing task.

Lastly, I hope these changes don't break anything. They are heavily
tested on my end, but I can't promise I caught all bugs.

This was SVN commit r14388.
2013-12-25 15:49:49 +00:00
79252043ae fix the fish gatherer from b91ec9b449
This was SVN commit r14362.
2013-12-15 17:32:20 +00:00
bcba922893 fix switching between column and other formations
This was SVN commit r14358.
2013-12-15 09:51:13 +00:00
c6cf074e7a Fix unitAI warning when member left the formation
This was SVN commit r14327.
2013-12-11 15:17:43 +00:00
683349333b tune the guard behaviour
This was SVN commit r14321.
2013-12-09 18:15:24 +00:00
208200db28 fix querying unitAI of non-existing members
This was SVN commit r14312.
2013-12-08 19:57:34 +00:00
ad157ad325 fix test broken by #14306
This was SVN commit r14309.
2013-12-08 13:01:59 +00:00
e173493621 separate gui entityState in two parts to improve gui timing, adresses #2179
This was SVN commit r14306.
2013-12-08 10:02:19 +00:00
783907264f cache the offset positions for formations, and only recalculate if the rotation towards a new target is big enough
This was SVN commit r14300.
2013-12-06 10:21:07 +00:00
8d56504778 fix switching between line and column formation
This was SVN commit r14298.
2013-12-05 20:26:51 +00:00
d3f7da1e27 Let formation attack from the moment the first unit is in range
This was SVN commit r14297.
2013-12-05 19:26:55 +00:00
7b82fba8d0 remove distance sorting for formation place assignment, as it made the center of the formation run + remove debug warning in AI code
This was SVN commit r14292.
2013-12-05 12:31:04 +00:00
03d9db0bb7 fix comment
This was SVN commit r14291.
2013-12-05 10:44:39 +00:00
cf88da5829 improve formations a bit more
* Take obstruction size into account, so bigger units have more space in
formations
* Minimize the maximum walk distance to get in formation by letting the
units far away from the centre pick their positions first

This was SVN commit r14289.
2013-12-05 10:23:49 +00:00
189ef85538 Fix AI errors on skirmish maps.
This was SVN commit r14285.
2013-12-04 16:52:44 +00:00
3afd8e9d9e better formation place assignments (units run around less)
This was SVN commit r14281.
2013-12-04 13:14:31 +00:00
a96a333b47 Small cleanup.
This was SVN commit r14274.
2013-12-03 01:01:12 +00:00
c134108154 remove duplicated code
This was SVN commit r14264.
2013-11-30 18:23:32 +00:00
e88d05e0e4 allow units to guard/escort buildings or units, fixes #2034
This was SVN commit r14263.
2013-11-30 17:30:08 +00:00
d672c6cf7d make loot tech aware + implement celt and gaul hero auras
This was SVN commit r14247.
2013-11-29 12:13:37 +00:00
ca9944b09c brit + cart hero auras + small code fixes
This was SVN commit r14246.
2013-11-29 10:57:44 +00:00