Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- suno hydra dm balance ideas
- XS script by xThomas
- Created: Dec 16, 2021
- Modified: Dec 17, 2021
- Version: 1.0
- You can include XS scripts in a random map script
- just add this line to it at the top somewhere
- #includeXS suno_hydro_1.0.xs
- If you're making your own xs script and want them to transfer in lobbys, place them in your profile folder:
- C:\Users\%USERNAME%\Games\Age of Empires 2 DE\<your numbers>\resources\_common\xs
- */
- void squires(int player = 1) {
- int infantryClass = 6;
- int spear = 93;
- int militia = 74;
- int condotierro = 882;
- xsEffectAmount(cMulAttribute, spear, cMovementSpeed, 1.1, player);
- xsEffectAmount(cMulAttribute, militia, cMovementSpeed, 1.1, player);
- xsEffectAmount(cMulAttribute, condotierro, cMovementSpeed, 1.1, player);
- }
- void plateMailArmor(int player = 1) {
- int spear = 93;
- int militia = 74;
- int huskarl_c = 41;
- int huskarl_b = 759;
- int condotierro = 882;
- int spear_melee_armor = 1024 + 3;
- int militia_melee_armor = 1024 + 4;
- int huskarl_melee_armor = 1024 + 3;
- int condotierro_melee_armor = 1024 + 4;
- xsEffectAmount(cSetAttribute, spear, cArmor, spear_melee_armor, player);
- xsEffectAmount(cSetAttribute, militia, cArmor, militia_melee_armor, player);
- xsEffectAmount(cSetAttribute, huskarl_c, cArmor, huskarl_melee_armor, player);
- xsEffectAmount(cSetAttribute, huskarl_b, cArmor, huskarl_melee_armor, player);
- xsEffectAmount(cSetAttribute, condotierro, cArmor, condotierro_melee_armor, player);
- int spear_piercearmor = 768 + 4;
- int militia_piercearmor = 768 + 5;
- int huskarl_piercearmor = 768 + 12;
- int condotierro_piercearmor = 768 + 4;
- xsEffectAmount(cSetAttribute, spear, cArmor, spear_piercearmor, player);
- xsEffectAmount(cSetAttribute, militia, cArmor, militia_piercearmor, player);
- xsEffectAmount(cSetAttribute, huskarl_c, cArmor, huskarl_piercearmor, player);
- xsEffectAmount(cSetAttribute, huskarl_b, cArmor, huskarl_piercearmor, player);
- xsEffectAmount(cSetAttribute, condotierro, cArmor, condotierro_piercearmor, player);
- }
- void upgradeSiegeRam(int player = 1) {
- // xsChatData("TEST: Enable Siege Ram for player %d", player);
- // fakebram = 35;
- int realbram = 1258;
- int siegeram = 548;
- xsEffectAmount(cUpgradeUnit, realbram, siegeram, 0, player);
- return;
- }
- void upgradeHalberdier(int player = 1) {
- // xsChatData("TEST: Enable HALB for player %d", player);
- int spear = 93;
- int halb = 359;
- xsEffectAmount(cUpgradeUnit, spear, halb, 0, player);
- return;
- }
- void researchTreadmillCrane(int player = 1) {
- // xsChatData("Enable TreadmillCrane for player %d", player);
- xsEffectAmount(cMulAttribute, 118, 13, 1.2, player);
- xsEffectAmount(cMulAttribute, 212, 13, 1.2, player);
- return;
- }
- void researchBombardCannon(int player = 1) {
- // xsChatData("Enable Bombard Cannon for player %d", player);
- xsEffectAmount(cEnableObject, 36, cAttributeEnable, 0, player);
- return;
- }
- void byzantineBloodlines(int player = 1) {
- int knt = 38;
- int cataphract = 40;
- int scout = 448;
- int camel = 329;
- int horsearch = 39;
- xsEffectAmount(cSetAttribute, knt, cHitpoints, 180, player);
- xsEffectAmount(cSetAttribute, cataphract, cHitpoints, 170, player);
- xsEffectAmount(cSetAttribute, scout, cHitpoints, 95, player);
- xsEffectAmount(cSetAttribute, camel, cHitpoints, 140, player);
- xsEffectAmount(cSetAttribute, horsearch, cHitpoints, 80, player);
- }
- void thumbRing(int player = 1) {
- int archerClass = 0;
- int cavArcherClass = 36;
- int archer = 4;
- int cavarcher = 39;
- int heavycavalryarcher = 474;
- // WARNING: cav archer not tested
- xsEffectAmount(cSetAttribute, archerClass, cAccuracyPercent, 100, player);
- xsEffectAmount(cSetAttribute, cavArcherClass, cAccuracyPercent, 100, player);
- xsEffectAmount(cMulAttribute, archer, cAttackReloadTime, 0.85, player);
- xsEffectAmount(cMulAttribute, cavarcher, cAttackReloadTime, 0.9, player);
- }
- void main() {
- int p = 0;
- int max = xsGetNumPlayers();
- while(p < max) {
- p++;
- int c = xsGetPlayerCivilization(p);
- switch(c) {
- case cBritons : {
- xsChatData("Britons got Treadmill");
- researchTreadmillCrane(p);
- }
- case cGoths : {
- xsChatData("Goths got last armor, siege ram");
- plateMailArmor(p);
- upgradeSiegeRam(p);
- }
- case cByzantines : {
- xsChatData("Byzantines got Treadmill,Bloodlines");
- researchTreadmillCrane(p);
- byzantineBloodlines(p);
- }
- case cVikings : {
- xsChatData("Vikings got Thumb Ring");
- thumbRing(p);
- }
- case cItalians : {
- xsChatData("Italians got Halb");
- upgradeHalberdier(p);
- }
- case cPortuguese : {
- xsChatData("Portuguese got Siege Ram,Squires");
- upgradeSiegeRam(p);
- squires(p);
- }
- case cEthiopians : {
- xsChatData("Ethiopians got Treadmill");
- researchTreadmillCrane(p);
- }
- case cKhmer : {
- xsChatData("Khmer got Bombard cannon");
- researchBombardCannon(p);
- }
- case cMalay : {
- xsChatData("Malay got Treadmill,Siege Ram");
- researchTreadmillCrane(p);
- upgradeSiegeRam(p);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement