こはね 发表于 2026-9-15 22:59:28

xs地图自定义函数定义

打算整个活{:4_88:},塞到圣典的MOD考试,请找出以下可用的代码以及不可运行代码。实测某AI正确率只有15%

代码先丢上来,免得又忘了(自定函数,返回数值格式参考,多个错误,也存在能正常运行代码)
      int randomtest1(int value1 , int value2 ) {
                if(rmRandInt(1,2) == 1){return(value1);}
      }

      int randomTest2(int value1 = 1, int value2 = 2) {
                if(rmRandInt(1,2) == 1){return(value1);}
      }


      int randomTest3(int value1 , int value2) {
                if(rmRandInt(1,2) == 1){return(value1);}
                return(value2);
      }

      int randomTest4(int value1 = -1, int value2 = -1) {
                if(rmRandInt(1,2) == 1){return(value1);}
                return(value2);
      }


      int randomTest5(int value1 = -1, int value2 = -1) {
                if(rmRandInt(1,2) == 1){return(value1);}
                if(value2 == 1){return(value2)};
      }
      
      string randomTest6(int value1, int value2 = -1) {
      if(rmRandInt(1,2) == 1){return(""+value1);}      
      return(value2);                                                                        
      }               

      string randomTest7(string value1, string value2) {
      if(rmRandInt(1,2) == 1){return(""+value1);}      
      return(value2);                                                                        
      }               

      string randomTest8(int value1 = -1, int value2 = -1) {
      if(rmRandInt(1,2) == 1){return(""+value1);}      
      return(""+value2);                                                                        
      }

      string randomTest9(string value1, string value2) {
      if(rmRandInt(1,2) == 1){return(""+value1);}      
      return(""+value2);                                                                        
      }               

      string randomTest10(string value1=-1, string value2=-1) {
      if(rmRandInt(1,2) == 1){return(""+value1);}      
      return(value2);                                                                        
      }               

      string randomTest11(string value1=-1, string value2="") {
      if(rmRandInt(1,2) == 1){return(""+value1);}      
      return(value2);                                                                        
      }               


      string randomTest12(string value1="-1", string value2="") {
      if(rmRandInt(1,2) == 1){return(value1);}      
      return(value2);                                                                        
      }               


      string randomTest13(string value1=-1, string value2=-1) {
      if(rmRandInt(1,2) == 1){return(""+value1);}      
      return(""+value2);                                                                        
      }               

      string randomTest14(string value1=-1, string value2="") {
      if(rmRandInt(1,2) == 1){return(value1);}      
      return(""+value2);                                                                        
      }               


      string randomTest15(string value1="-1", string value2="") {
      if(rmRandInt(1,2) == 1){return(""+value1);}      
      return(""+value2);                                                                        
      }               




int fairCoin() {
      if(rmRandInt(1,2) == 1){return(1);}
      return(0);
}

int fairRand(int min = -1, int max = -1) {
      if(min > max){
                int temp = min;
                min = max;
                max = temp;
      }
      
      int range = max - min + 1;
      if(range <= 1){return(min);}
      
      int bits = 0;
      int maxVal = 1;
      while(maxVal < range){
                maxVal = maxVal * 2;
                bits = bits + 1;
      }
      
      while(true){
                int r = 0;
                int power = 1;
               
                int i = 0;
                while(i < bits){
                        if(fairCoin() == 1){
                              r = r + power;
                        }
                        power = power * 2;
                        i = i + 1;
                }
               
                if(r < range){
                        return(min + r);
                }
      }
}

myonion 发表于 2026-9-16 12:42:43

Implemented rmTriggerAddScriptLine syscall for appending a script line to the generated trigtemp.xs.
Implemented rmTriggerAddScriptInclude syscall for including a trigger XS script file, which will be read either from the game data Trigger folder or from local user data Trigger folder.
https://www.ageofempires.com/news/age-of-empires-iii-definitive-edition-update-19-18309/
说到rms,决定版新DLC更新好像加入了一些妙妙小工具{:4_88:}

雪千代 发表于 2026-9-18 02:29:10

老叟戏顽童{:7_331:}
页: [1]
查看完整版本: xs地图自定义函数定义