鬥陣特攻/工作坊
另請編輯者注意:請不要在人物歷程等相關內容中懸掛此模板。具體使用方法詳見模板說明文檔。
工作坊是指《鬥陣特攻》在2019年04月25日推出的自定比賽功能。
簡介
在工作坊中,你可以創建「腳本」,在《鬥陣特攻》中現有的比賽模式中挑選你最喜歡的類型,添加新的「規則」和「條件」,產生獨一無二的新玩法。「規則」可以實現許多事情,例如:更改英雄的移動和技能效果,修改玩家受到的傷害或治療,甚至可以在特定情況下顯示文本。
「點擊開始 > 自定比賽 > 創建比賽 > 比賽設置> 分享」可以為自定義地圖生成一個5位的字母+數字的代碼。玩家只要輸入這個代碼就可以在自己機器上獲取到這個自定義設置,也可以把自己的設置生成一個代碼分享給其他玩家。
作品收集
名稱 | 代碼 |
---|---|
Flappy Bird | N7BEV |
雙英雄模式 | 1Q4AH |
OW空戰 | 38QBH |
綠洲城躲避車 | C9DJ6 |
洪水生存 | 4S23G |
辛梅塔塔防 | FRK7D |
隨機技能戰鬥 | N11W0 |
大錘碰碰車 | Q85S6 |
死亡你好 | DZDQ7 |
腳本
只要足夠的空間,就能添加任意數量的規則、條件和行動。
添加規則
規則是組成腳本的部分,可進行高度的自定義。每個腳本都必須包含一個或多個規則。
每個規則都可以選擇添加一個說明,並且包含:
- 事件:確定添加的規則在什麼時候執行。更多信息請參考選擇事件。
- 條件:可選事項的列表,只有條件為「真」時才能讓規則生效。更多信息請參考添加條件。
- 行動:當事件和條件滿足時會觸發的事項列表。更多信息請參考添加行動。
選擇事件
事件會確定添加的規則在什麼時候執行。當比賽中發生事件時,就會創建一個規則副本。每個副本都會評估條件並獨立地執行行動。
在編輯器中創建了規則以後,會自動添加事件。你必須指定想要的事件類型。
事件類型
事件類型 | 說明 |
---|---|
持續 - 全局 | 當比賽開始時,創建此規則的單一副本。此副本在整場比賽中保持激活狀態。
|
持續 - 每名玩家 | 當玩家加入比賽時,為每位玩家創建此規則的副本。此副本會保持激活,直至玩家離開比賽或比賽結束。每個副本都會獨立追蹤並執行條件和行動。
|
玩家參與消滅 | 當玩家參與消滅時執行規則。每名玩家一次只能激活一個規則副本。
|
玩家造成最後一擊 | 當玩家造成最後一擊時執行規則。每名玩家一次只能激活一個規則副本。
|
玩家造成傷害 | 當玩家造成傷害時執行規則。每名玩家一次只能激活一個規則副本。
|
玩家受到傷害 | 當玩家受到傷害時執行規則。每名玩家一次只能激活一個規則副本。
|
玩家陣亡 | 當玩家陣亡時執行規則。每名玩家一次只能激活一個規則副本。
|
隊伍選項
隊伍選項 | 說明 |
---|---|
所有 | 事件對所有隊伍有效,包括自由混戰模式中的玩家 |
隊伍1(或當前隊伍名稱) | 事件只對此隊伍中的成員有效。 |
隊伍2(或當前隊伍名稱) | 事件只對此隊伍中的成員有效。 |
玩家選項
玩家選項 | 說明 |
---|---|
所有 | 事件對所有玩家有效 |
位置0到位置5 | 事件只對指定位置的玩家有效。在團隊比賽中,兩位玩家可以占據同一個位置(每隊一個)。 |
位置6到位置11 | 事件只對指定位置的玩家有效。只對自由混戰模式有效。 |
指定英雄 | 事件僅對在重生時選擇該英雄的玩家生效。 |
添加條件
當添加規則和時間之後,你可以選擇添加一個或多個條件。條件列表必須為「真」,之後規則才能執行行動列表。如果條件屬於規則並且事件類型為「持續 - 全局」或「持續 - 每名玩家」中的類型,則會持續檢查其是否為「真」。如果條件屬於規則並且事件類型為其它,則在指定事件發生時進行檢查。如果規則沒有條件,則行動列表會在事件發生時立即嘗試執行。每個條件均由兩個值組成,值會使用操作符來對比和檢查條件是否為「真」。更多信息請查看值。
添加條件:
1. 點擊條件旁邊的「添加」 2. 在「值」區域中填寫值。
- 注意: 當值本身有輸入項時(例如「英雄」值,它需要知道選擇該英雄的玩家),那該值的輸入項就會自動顯示在它下面的縮進處。
3. 選擇操作符。操作符為:
- ==等於
- !=不等於
- > 大於
- >=大於或等於
- <小於
- <=小於或等於
添加行動
行動可以對比賽實現修改。它們的執行順序為自上而下。要開始執行行動列表:
- 必須發生與規則相關的事件
- 規則的所有條件必須為「真」(或者沒有條件)
- 如果事件類型為「持續 - 全局」或「持續 - 每名玩家」中的類型,則當條件首次得到滿足時便會立即執行行動列表。當未滿足條件列表,但之後又滿足時,則會嘗試再次執行行動。
除了等待行動(查看等待行動詳情),所有行動均會立即執行並完成。每個行動均可由零或更多輸入值組成,用於描述對比賽的修改。每個輸入項都會有一個值,值為一部分信息或者如何獲得信息的指令。更多信息請查看值。
- 要添加行動
- 點擊行動旁邊的「添加」
- 選擇一個行動,用於描述對比賽的修改。
- 在新出現的輸入項的下拉菜單中為其選擇相應的值。
- 注意: 部分行動會創建對象或進行中的行動。此類行動可能有一個名為「重新賦值」的輸入值。此輸入值決定此行動的其它輸入值是否會被修改(保持對象或進行中的行動不變)或為動態(根據修改輸入的值來更改對象或進行中的行動)。
循環行動
循環行動會使行動列表會從頭開始執行。有四種循環行動:
- 循環:總是重新開始行動列表
- 根據條件循環:如果行動條件輸入的值不為0或「假」,則重新開始行動列表。
- 如條件為「真」則循環:如果滿足所有規則的條件,則重新開始行動列表
- 如條件為「假」則循環如果不滿足任意規則的條件,則重新開始行動列表
開始行動列表之前必須要有等待行動,才會允許開始循環行動。
等待行動
等待行動是在執行一系列行動之前等待一段時間的行動。最小等待時間為0.25秒。
等待行動有三種行動選項:
- 忽略條件:選擇之後,行動的執行不會被條件或其它事件打斷。
- 如果事件類型為「持續 - 全局」或「持續 - 每名玩家」中的類型,是否滿足條件的變化不會造成任何影響。
- 如果事件屬於其它類型並且該類型的事件發生在同一位事件玩家身上,則該事件會被完全忽略。
- 如為「假」則中止:選擇之後,如果不滿足條件則中止行動列表的執行。
- 如為「真」則重新開始:選擇之後,如果發生以下任意一種情況則會從第一個行動重新開始執行行動。
- 事件類型為「持續 - 全局」或「持續 - 每名玩家」中的類型,並且條件從不滿足變為滿足。
- 事件屬於其它類型並且同一位事件玩家身上也發生了事件,則視為滿足所有條件。
字符串
字符串為一系列顯示在遊戲中的字母、數字和符號。
字符串值會生成字符串。它擁有以下輸入值:
- 字符串:要顯示的文本。如果文本的花括號中包含數字,那數字將被相應輸入項中的值替代。
- {0}:此值將被轉換為文本,然後再替換字串符中的{0}。可為任何類型的值。
- {1}:此值將被轉換為文本,然後再替換字串符中的{1}。可為任何類型的值。
- {2}:此值將被轉換為文本,然後再替換字串符中的{2}。可為任何類型的值。
值
值是一部分信息,或如何獲得信息的指令,可以作為條件、行動或其它的值的輸入值。值可以進行互相組合。
值的類型非常繁多,再次我們無法一一定義。不過在工作坊編輯器中有幾種類型的值。以下為你可能遇到的值:
值 | 說明 |
---|---|
數字 | 提供輸入值指定範圍內的具體數字 |
矢量 | 提供輸入值指定範圍內的三維數值。用於表示位置和方向。 |
隊伍 | 表示指定的隊伍,例如隊伍1、隊伍2或所有隊伍 |
英雄 | 表示指定的英雄 |
無 | 表示缺少玩家或實體 |
真 | 提供「真」的值 |
假 | 提供「假」的值 |
比較 | 根據描述的比較是否為「真」,提供「真」或「假」 |
事件玩家 | 提供正在執行規則副本的玩家,如果沒有玩家則為「空」 |
攻擊方 | 提供規則副本的攻擊者,如果沒有攻擊者則為「空」 |
被攻擊方 | 提供規則副本的被攻擊者,如果沒有被攻擊者則為「空」 |
當前數組元素 | 任意為「真」、全部為「真」、已過濾的數組或排序的數組值中會使用的當前值 |
值可以存入數組,數組為多個值的組合。
- 多個行動和值可以創造或修改數組。
- 例如,「所有玩家」值會給你當前遊戲中每位玩家的數組。
- 你還可以使用「修改全局變量」或「修改玩家變量」行動中的「添加至數列」操作來創建自己的數組。
- 如果輸入值需要數組卻收到了其它類型的值,則該值會被複製到單個元素的數組中,方便進行輸入。類似地,如果輸入需要其它類型的值卻收到了數組,則會使用數組的第一個值(如果數組為空則為0)。
變量
變量是存入和之後獲得值的位置。除了字串符,所有值都能存入變量。所有變量的開頭均為數字值0。
腳本中有兩種類型的變量:
- 全局變量:共有26種全局變量,分別以A到Z命名,每種變量都擁有獨立的數值或數值數組。
- 玩家變量:每位玩家有26種全局變量,分別以A到Z命名,每種變量都擁有獨立的數值或數值數組。
變量中可以實現三種操作:
- 設置:「設置全局變量」和「設置玩家變量」可以為變量設置新的值,代替之前的值。
- 修改:「修改全局變量」和「修改玩家變量」可以通過特殊的運算操作(例如加法、乘法等等)或數組操作(添加、移除)來修改變量中的值。
- 追蹤:"持續追蹤全局變量」、「持續追蹤玩家變量」、「追蹤全局變量頻率」和「追蹤玩家變量頻率」會在一段時間內或按照指定的頻率逐漸更改變量。
- 追蹤的最終值可以是數字或者矢量(或結果是數字或矢量的值)。
- 如果最終值為數字,則追蹤開始前的變量值必須為數字,這樣追蹤才能正確運行。
- 如果最終值為矢量,則追蹤開始前的變量值必須為矢量,這樣追蹤才能正確運行。
- 如果最終值開啟了重新賦值,則追蹤也會做出相應的更改,從而繼續追蹤更改的最終值,即便之前已經達到最終值。更多關於重新賦值的信息,請參考添加行動。
- 你可以使用「停止追蹤全局變量」和「停止追蹤玩家變量」行動來取消追蹤。
- 當追蹤取消之後,變量會保持當前的值,它可能為開始追蹤到最終值之間的某個值。
|