All Activity
- Past hour
-
What it gave me to understand is that the morale system goes hand in hand with the fatigue system. I don't know if we want to implement that part?
-
I asked Ai, and he literally gave me some tips on how to do it. But he sorted out the programming ideas (he programmed) on how to implement the Total War system in the game. I don't think that's the point of the discussion here. JavaScript simulation // This would be part of your simulation files (.js) in the mod Engine.RegisterInterface("Formation"); Engine.RegisterInterface("UnitMotion"); // Unit definition with extended properties function Unit(owner, position, template) { this.owner = owner; this.position = position; this.template = template; // Total War-style battle properties this.morale = 100; this.fatigue = 0; this.formation = "line"; this.facing = { "x": 0, "y": 1, "z": 0 }; this.combatState = "ready"; this.armorType = template.armorType || "medium"; this.weaponType = template.weaponType || "melee"; // Combat stats this.attack = template.attack || 10; this.defense = template.defense || 5; this.chargeBonus = template.chargeBonus || 2; this.discipline = template.discipline || 75; } // Formation system function FormationSystem() { this.formations = { "line": this.formLine, "phalanx": this.formPhalanx, "wedge": this.formWedge, "square": Tactical combat system // Damage calculation system with tactical advantages function CombatSystem() { this.advantageMatrix = { "spear": {"cavalry": 2.0, "infantry": 0.8, "archer": 1.0}, "sword": {"infantry": 1.5, "spear": 0.8, "archer": 1.2}, "cavalry": {"archer": 2.0, "infantry": 1.2, "spear": 0.5}, "archer": {"infantry": 1.3, "spear": 1.1, "cavalry": 0.7} }; this.terrainModifiers = { "forest": {"movement": 0.6, "defense": 0.2, "archery": 0.5}, "hill": {"movement": 0.8, "defense": 0.4, "archery": 1.3}, "road": {"movement": 1.2, "defense": -0.1, "archery": 1.0} }; } CombatSystem.prototype.calculateDamage = function(attacker, defender, context) { // Unit type advantage factor const typeAdvantage = this.advantageMatrix[attacker.weaponType][defender.armorType] || 1.0; // Charge bonus factor const chargeBonus = context.isCharging ? attacker.chargeBonus : 1.0; // Flanking bonus factor const flankBonus = context.isFlanking ? 1.5 : 1.0; // Terrain factor const terrainBonus = this.terrainModifiers[context.terrainType].defense || 1.0; // Morale factor const moraleFactor = attacker.morale / 100; // Final damage calculation const baseDamage = attacker.attack * typeAdvantage; const finalDamage = baseDamage * chargeBonus * flankBonus * terrainBonus * moraleFactor; return Math.max(1, Math.round(finalDamage - defender.defense)); }; // Fatigue system from movement and combat function FatigueSystem() { this.fatigueRates = { "walking": 0.1, "running": 0.3, "fighting": 0.2, "idle": -0.1 }; } FatigueSystem.prototype.updateUnitFatigue = function(unit, activity, duration) { unit.fatigue += this.fatigueRates[activity] * duration; unit.fatigue = Math.max(0, Math.min(100, unit.fatigue)); // Apply fatigue penalties if (unit.fatigue > 70) { unit.attack *= 0.7; unit.defense *= 0.7; unit.movementSpeed *= 0.8; } else if (unit.fatigue > 40) { unit.attack *= 0.9; unit.defense *= 0.9; unit.movementSpeed *= 0.9; } }; 3. Integration with 0 A.D. Files you would need to modify/create: 1. simulation/components/Formation.js - For the formation system 2. simulation/components/Combat.js - For the extended combat system 3. simulation/components/UnitMotion.js - For tactical movement 4. simulation/helpers/Morale.js - For the morale system 5. simulation/helpers/Fatigue.js - For the fatigue system <?xml version="1.0" encoding="utf-8"?> <Entity parent="template_unit_infantry_swordsman"> <Identity> <GenericName>Elite Swordsman</GenericName> <Icon>units/rome_swordsman.png</Icon> </Identity> <UnitMotion> <Speed>6.0</Speed> <Acceleration>2.0</Acceleration> <TurnRate>180</TurnRate> </UnitMotion> <Combat TotalWarStyle="true"> <Attack>16</Attack> <Defense>8</Defense> <ChargeBonus>3</ChargeBonus> <ArmorType>medium</ArmorType> <WeaponType>sword</WeaponType> <Discipline>80</Discipline> <FormationType>line, square</FormationType> </Combat> <Cost> <Resources> <food>60</food> <metal>20</metal> </Resources> <Population>1</Population> <TrainTime>45</TrainTime> </Cost> </Entity> 4. GUI for Tactical Control You would need to modify the GUI to include: · Formation selector · Morale and fatigue indicators · Behavior options (aggressive, defensive, stand ground, etc.) · Guard mode for precise positioning 5. Recommended Implementation Steps 1. Start with basics: First modify the formation system 2. Add simple morale: Implement a basic morale system that affects combat 3. Enhance combat: Add tactical advantages and flanking 4. Implement fatigue: Add the energy management system 5. Refine AI: Improve AI to use these tactical features 6. Key Features to Implement · Formation bonuses: Different formations should provide combat advantages · Flanking mechanics: Attacks from rear/sides should deal extra damage and reduce morale · Unit cohesion: Units should fight better when close to allies and commanders · Terrain advantages: High ground, forests, and other terrain should affect combat · Fatigue system: Units should tire from running and fighting · Morale system: Units should rout when morale drops too low
-
Yeah anims will go OOS if any parts of the model don't have them this is because they are made of many small pieces. Not sure why they didn't get the attack anim or why noone else noticed.
-
Do Archer's Add Extra Arrows to a Buildings Defense?
Classic-Burger replied to Thales's topic in Gameplay Discussion
They should have defense and attack bonuses. - Today
-
I didn't know what to do, it should be in the game tips.
-
Hopefully the campaign can revive this concept.
-
A formation system should have another layer of extra health and armor. For it to be realistic, formations must have incentives, create a morale system that works but not like in Total War, but rather more casual. That is especially favorable for the infantry(melee), in a way there should be group health. There are some games about how this system should work. There should be commands for formation. Such a little knights of honor, perhaps, more simple.
-
Age of Empires 2 Definitive Edition
Classic-Burger replied to Lion.Kanzen's topic in Introductions & Off-Topic Discussion
What a good concept that of the pastures. -
AlexHerbert started following Atrik
- Yesterday
-
When there is champion spear cav, the naked fanatics are an effective counter. But now the champion spear cav is banned, the power of the naked fanatics begin to show in TGs. Their problem is speed, damage and decent durability combined together. Although less unbeatable than champion cavs, they have no particular weaknesses and are cheap to make. There are no parallel units for any other civs in phase 2, which makes them OP. In the past, they were truly fragile and costed metal, so they weren't great as late game units / meatshields. But now, it's too easy to spam them and Gauls just got a hypercharged spearman unit that nobody has. This breaks the inter-civ balance. Suggestion: 1. Fanatics cost metal. 2. Fanatics get no shield, or at least are not affected by shield upgrades.
-
New balance update. - Ranged units have no minimal range, similar to later alphas. The damage of archers is reduced. Also, infantry archers no longer have damage bonus against one of their counters, spear cavalry. Tooltips adjusted. This will prevent ranged units from running away and dragging your melee infantry into danger. It should also reduce the lag from bad pathfinding. Files updated to reflect the changes. EDIT: - Backported the female citizen sounds from Alpha 11. No more huffing I would now like to present the goals of the mod. 1) Overhaul of the combat system with various civilization and rank upgrade bonuses. Civilizations will train better units of certain types, and rank upgrades of those types will be better. We had something similar in A16, with rank upgrades only being available to certain unit classes for some civilizations. Overpowered units will be nerfed, in time. Capturing will not be implemented. 2) Preserving the early vision of the project. I'm aware that developers and designers come and go, things change with addition of new civilizations and features, etc. But the core of the project still needs to exist, and one of the main goals of this mod is to provide players with an "what if things stayed stable for a few more years" option. 3) Reducing the base building phase of the game to a bare minimum that's needed to field armies and build a stout defense. The rest is on the player's skill to micro his/her units and use a proper army composition to counter his/her enemy. 4) Simplification of the economy. Females gather food from berries and fields faster. Cavalry hunts better than everyone else. Citizen Soldiers are slightly better at chopping wood, and much better at mining stone and metal. That's it. 5) Visual and graphical consistency. Unit portraits will have similar, retro-style textures. Units will be clearly distinguishable on the map. You will be able to tell a difference between unit ranks, for example. This is mostly complete in Alpha 9, I just tweaked some unit and building portraits. Also, the old Hellenic female portrait is back. I might have missed something out. In any case, this is still a work in progress and more is to come. If you have an old PC lying around somewhere, and if you're able, it would mean much if you tested this for any bugs. Thank you.
-
There isn't an official one but welcome to join mine! You can develop and test as many bots as you want as all members of my server would have admin rights! https://discord.gg/5sa8KAWVaU
- 1 reply
-
- 1
-
-
designerlehengacholi joined the community
-
xx1 joined the community
-
Hey everyone, I wanted to know if there was an official Discord channel. If not, I think it would be interesting to create one. I'm very active on Discord and I've been developing Discord bots for over two years. I can help if you'd like! Anyway, good luck with the game! I love it, I went from AoE1 to 0AD without any problems, we play it with my family!
-
You can check out the animations in Atlas as shown. Also the mane is funny moving and the horse goes bald for a while. aux-2025-08-19_16_02_31.mp4
-
Animation for Auxiliary Cavalry Spearman
real_tabasco_sauce replied to manowar's topic in Bug reports
Good catch! Thank you! -
That explains things, I was wondering why they seemed to be going idle in the middle of battles
-
geometrydashproapk joined the community
-
autoclickerop joined the community
-
PicsArt Mod APK changed their profile photo
-
PicsArt Mod APK joined the community
-
Khadappe joined the community
-
HindiCricketAddic joined the community
-
Thanks for the tip, I'll see how it works.
- Last week
-
I've just done a little demo, and you are correct. They don't have an animation for attacking. Sadly, the team is on a tight schedule and often these issues creep up. Sometimes, new units are introduced and some of them are missing animations. The most famous historical case being the Mauryan War Elephant.
-
Age of Empires 2 Definitive Edition
Genava55 replied to Lion.Kanzen's topic in Introductions & Off-Topic Discussion
-
For correctness's sake, Temple of Apademak is the Kushites normal Temple. You can check the specific and generic names of the Temple in Alpha 23. Never mind, It's the same name in the latest alpha. I'm just trying to be smartass here and failing.
-
Is it possible for someone to check the animation for Auxiliary Cavalry Spearman. While playing I got the feeling that my ally was doing nothing but eventually saw damage being done so I reckoned it was just the animation of this unit when attacking is just the same as when idle.
-
-
Latest Topics