Cronusmax TW

 找回密碼
 立即註冊
搜索
熱搜: 活動 交友 discuz
查看: 76473|回復: 55

【克麥】基本巨集指令說明 : 連發, 組合技, 重覆n次技

[複製鏈接]

8

主題

21

帖子

141

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
141
發表於 2016-11-30 12:33:30 | 顯示全部樓層 |閱讀模式
很多朋友問到,某些巨集的使用語法,其實所有語法都在這裡有詳列:  http://cronusmax.com/manual/basic_syntax.htm
另外這是 6種不同手把按鍵的定義名詞: http://cronusmax.com/manual/iden ... ct=MjQ5&mw=MzIw
當然天書就留給大神們去看了,這邊解說一下幾個最常用的簡單語法,足夠大家可以馬上套用的!  

1. #組合技! (只執行一次)
main {
      if(get_val(PS4_R3)) {                 //按下R3啟動指令一次
         combo_run(onetime);  //要執行的巨集, 隨便取名叫onetime
     }
}
combo onetime {       //以下巨集的動作, 以3oss為範例
     set_val(PS4_L1, 100);   // 按下L1
     wait(1000);            // 等一秒鐘! 這些秒數都可以自行再做調整
  set_val(PS4_L1, 100);      //這個表示同時按下L1+方塊
  set_val(PS4_SQUARE, 100);
  wait(650);
  set_val(PS4_L1, 100);
  set_val(PS4_TRIANGLE, 100);
  wait(1350);
  set_val(PS4_L1, 100);
  set_val(PS4_SQUARE, 100);
  wait(650);
}  //打完一次就結束收工

==============================
2. #單鍵無限重覆! 我們的連發和連發搖桿不同,連發搖桿要一直按著某個鍵能連發。我們的連發是只要按一下,就能一直連發,直到再按一下同一個鍵就會停止:
int onoff;
main {
      if(event_press(PS4_R3)) onoff=!onoff;   //按下R3後重覆執行
      if(onoff){
       combo_run(repeat);
       }
}
combo repeat {         //以下是要執行的動作,隨便取名為 repeat
      set_val(PS4_SQUARE,100);  //按下方塊鍵
      wait(40);                                  //等0.04秒
      set_val(PS4_SQUARE,100);
       wait(40); }                     //會再重頭執行指令無限次

因此若是您想無限執行某組合技,只要把組合技語法放到重覆執行的指令中(就是repeat 底下的位置) 就可以了
=======================
3. 如果您只想執行某指令5次6次呢? 那我們就需要以 #單次複式 的語法來處理。
main {
      if(get_val(PS4_R3)) {       //按下R3起動指令
          combo_run(nTimes);   //隨便取名叫 n Times
              }
} combo nTimes {           //nTimes 動作如下  
call (oss1);    //執行另外設的 oss1動作
  wait(600);  //等0.6秒
  call (oss1);
  wait(600);
  call (oss1);    //想執行幾次就 call 幾次出來
  }

combo oss1 {                 //這裡當然就是把您的oss1寫在這裡
  set_val(PS4_L1, 100);
     wait(500);
  set_val(PS4_L1, 100);
  set_val(PS4_SQUARE, 100);
  wait(500);
  set_val(PS4_L1, 100);
  set_val(PS4_TRIANGLE, 100);
}

combo oss2{      //如果想多做幾個不同的指令就繼續編輯再call出來就行
set_val(PS4_L1, 100);
  set_val(PS4_TRIANGLE, 100);
}

同理可證,大家可以試著看看這兩天工程師和專業玩家切磋出來的
<<#一鍵叫出循環免掛PC自動回城_連九5OSS_7SP>> 到底是怎麼做的喔 : https://goo.gl/LybZ21

歡迎大家有其他想法提出來腦力激蕩.....
回復

使用道具 舉報

3

主題

21

帖子

233

積分

中級會員

Rank: 3Rank: 3

積分
233
發表於 2019-6-5 17:04:55 | 顯示全部樓層
pheashe 發表於 2019-6-4 13:43
想請問
set_val
get_val

就我所知:

get_val 這是按鍵一次執行一次,按住就不斷執行。
event_press 這是按一次就會持續不斷執行,再按一次關閉。
以上這兩個指令是用在命令階段,
寫在main裡面告訴克麥發現某個按鈕後要如何執行哪一個combo,
因此main裡面是不會出現set_val的。

set_val 是用在combo裡面的語句,就是指定按某個鈕。

以上個人推斷,如有錯誤再請板主或其他網友指正了,感謝!
回復 支持 1 反對 0

使用道具 舉報

3

主題

21

帖子

233

積分

中級會員

Rank: 3Rank: 3

積分
233
發表於 2016-12-31 10:30:18 | 顯示全部樓層
請問一下,
我想做個簡單的連發巨集,
有幾個基本的問題:

1.可以在一個克賣的設定檔裡面存在多個子巨集嗎?
2.而觸發巨集的按鍵可以設定為組合鍵嗎?

例如:
R1+R2+O  =開關 連發O
R1+R2+口 =開關 連發口
R1+R2+O+x = 開關 O X 連打
這些可以不知可否存在同一個設定檔裡面燒進克麥裡執行

再麻煩各位先進及站長們協助解惑~
感激不盡!
回復 支持 反對

使用道具 舉報

217

主題

1281

帖子

8558

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
8558
發表於 2017-1-1 11:27:09 | 顯示全部樓層
您好, 這是可以的, 可以利用設計多個if函式來做:

例如R1+R2+O  =開關 連發O 及 R1+R2+口 =開關 連發口
int onoff
int onoff2

main{
if (get_val(PS4_R1) && get_val(PS4_R2) && get_val(PS4_CIRCLE)) onoff = !onoff;
if (onoff) {combo_run(rapid_circle);}

if (get_val(PS4_R1) && get_val(PS4_R2) && get_val(PS4_SQUARE)) onoff2 = !onoff2;
if (onoff2) {combo_run(rapid_square);}
.
.
.
.
}

combo rapid_circle {

set_val(PS4_CIRCLE, 100);
wait(80);
set_val(PS4_CIRCLE,0);
wait(80);
}
.
.
.
.
回復 支持 反對

使用道具 舉報

4

主題

22

帖子

712

積分

高級會員

Rank: 4

積分
712
發表於 2017-4-14 18:46:44 | 顯示全部樓層
本帖最後由 希梅斯特 於 2017-4-15 05:20 編輯

最近才開始玩刀劍-虛空幻界 因為更新到2.01以後以前掛熟練度的方式沒辦法用 後來發現決鬥模式練習場的石像可以掛 所以想研究怎麼在那邊掛武器熟練

希望達成
{進入訓練場 -> 普攻Loop -> N輪後跳出補BUFF ->繼續普攻Loop ->退出訓練場後反複}
這樣的效果
因為wait跟call都沒辦法用在IF裡面 想把combo_run當成迴圈用i++的方式來控制似乎行不通
大至概念:

int i = 0;
combo mainFlow{
   if ( i == 0) {         //初始狀態
        {enterDualArea}          //從開始位置進入決鬥練習場
        {useBuff}                    //初始BUFF
   }
   {attack loop}                  //普攻迴圈
   i++
   if (i == 10) {                   //N輪普攻後需要補Buff
        wait (sometime)         //等待普攻動作結束
        {useBuff}                   //補充Buff
   }
   if (i == 500){                  //決鬥場時間結束 點擊對話結束返回開始位置
       i = 0;                          //重設計數器重新開始
   }
}
但目前看來沒辦法這樣用 想求助官方和各路高手該如何作到這種效果
鬥技訓練場有時間所以不能一直掛在裡面,如果用5連oss的那種寫法字數會爆掉...
回復 支持 反對

使用道具 舉報

217

主題

1281

帖子

8558

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
8558
發表於 2017-4-15 14:30:11 | 顯示全部樓層
希梅斯特 發表於 2017-4-14 18:46
最近才開始玩刀劍-虛空幻界 因為更新到2.01以後以前掛熟練度的方式沒辦法用 後來發現決鬥模式練習場的石像 ...

好的, 謝謝您的資訊, 我請工程研究一下
回復 支持 反對

使用道具 舉報

75

主題

843

帖子

2407

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
2407
發表於 2017-4-20 11:34:59 | 顯示全部樓層
希梅斯特 發表於 2017-4-14 18:46
最近才開始玩刀劍-虛空幻界 因為更新到2.01以後以前掛熟練度的方式沒辦法用 後來發現決鬥模式練習場的石像 ...

大大所以是先開技能buff在普通攻擊是嘛?那假如一進去只有普通攻擊然後打了8分鐘,在出來,在重進關卡這樣可以嗎?
回復 支持 反對

使用道具 舉報

4

主題

22

帖子

712

積分

高級會員

Rank: 4

積分
712
發表於 2017-4-21 00:40:33 | 顯示全部樓層
aalex1113 發表於 2017-4-20 11:34
大大所以是先開技能buff在普通攻擊是嘛?那假如一進去只有普通攻擊然後打了8分鐘,在出來,在重進關卡這樣可 ...

少了攻速buff效率會降低不少...所以可能的話還是想能補buff
回復 支持 反對

使用道具 舉報

217

主題

1281

帖子

8558

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
8558
發表於 2017-4-24 08:58:01 | 顯示全部樓層
希梅斯特 發表於 2017-4-21 00:40
少了攻速buff效率會降低不少...所以可能的話還是想能補buff

好的, 我會轉告工程您的意見, 謝謝
回復 支持 反對

使用道具 舉報

75

主題

843

帖子

2407

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
2407
發表於 2017-4-24 10:17:05 | 顯示全部樓層
希梅斯特 發表於 2017-4-21 00:40
少了攻速buff效率會降低不少...所以可能的話還是想能補buff

那可以進去打石象三分鐘,然後再出關卡重製循環
回復 支持 反對

使用道具 舉報

75

主題

843

帖子

2407

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
2407
發表於 2017-5-4 11:49:05 | 顯示全部樓層
希梅斯特 發表於 2017-4-14 18:46
最近才開始玩刀劍-虛空幻界 因為更新到2.01以後以前掛熟練度的方式沒辦法用 後來發現決鬥模式練習場的石像 ...

http://www.cronusmax.com.tw/foru ... &extra=page%3D1
大大我們工程已將沒有BUFF版的腳本做出來了,麻煩大大測試看看,再跟我們回報
回復 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

Cronusmax TW

GMT+8, 2024-3-29 00:01 , Processed in 0.116899 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表