Myconsole

image2025-8-13_11-10-14

地圖簡介

Myconsole(Re-Editable)是Free Fire CraftLand編輯器預置的官方玩法模板之一,為開發者提供可重複創建的基礎玩法功能藍本,主要包含地圖場景、規則設定、UI界面與圖元腳本四大部分

在本模板中,您可以體驗並學習核心玩法——透過開啟已設計好的HUD介面並與之互動、來調整局內玩家各身體部位的比例或創建/銷毀隨機地形——的編輯方法

同時,您也可以快速掌握並深入學習遊戲中其他常見的互動機制,包括與針對特定玩家執行事件、傳送玩家到指定位置、顯示自訂文字等常用腳本邏輯,並在此基礎上進行拓展與二次編輯,進一步創造屬於自己的作品

地圖場景

首先介紹場景設計,整體場地使用預設的50*50冠軍島,所有玩家處於同一支隊伍,在進入遊戲後將出生在地圖的一側(下圖1紅框內),並可以在商店(下圖2紅框內)自由購買道具,然後進行核心玩法的體驗

image2025-8-13_11-44-37

圖1

image2025-8-13_11-44-52

圖2

除了直接在場景內對物件進行快速調整,您還可以透過點擊更多-物件管理器對場景內物件整體管理

image2025-8-13_14-17-5

功能相關

規則

關於玩法規則的構建,需要點擊設定-玩法設定-玩法規則編輯

*注意:此處隊伍數已設定為1,即玩家都處於同一支隊伍,局內將不會發生PVP,而是以體驗玩法與機制為主

image2025-8-13_17-4-49

您可以在此編輯針對該張範本的詳細規則,包括:模式、屬性設定、經濟與相機

目前範本的規則設定時主要在以下位置和預設設定有區別:模式與經濟,以下將列出有區別的具體規則條目

模式

  • 回合設定:用於設定回合相關的參數
  • 隊伍設定:用於決定單局遊玩玩家數量、可分配到的隊伍數量以及能使遊戲開始的最小玩家數量
image2025-8-13_11-39-39

經濟

  • 編輯商店:用於決定玩家可在特定位置透過消費代幣取得的道具及其價格
image2025-8-13_11-40-1 image2025-8-13_11-40-22

使用者互動介面

關於使用者互動介面的構建,需要點擊更多-自定HUD

image2025-8-13_17-10-38

您可以在此編輯玩家在局內可互動的自訂HUD介面,並可跳轉進行對應的腳本設計

目前範本的自訂HUD介面控制項主要包括「Myconsole」能進行特定操作的按鈕以及觸發操作後顯示相關資訊的面板

關於特定控件的編輯,需要點擊編輯佈局-在左側列表中選擇想要編輯的控件

image2025-8-13_17-11-27 image2025-9-3_10-58-57

您可以在此處對特定控制項的各項屬性進行調整,例如:尺寸、位置、旋轉角度、可見度、透明度、顏色、顯示內容等

關於每個特定控制項的功能與實作方式將在圖元-HUD腳本詳細介紹

跳轉對應圖元腳本設計:

點選編輯腳本-跳到HUD腳本編輯介面

image2025-8-13_15-37-31

局內HUD介面總覽:

image2025-8-13_18-0-31 image2025-8-13_18-0-59

其中主要控制項包括:

MyConsole:(常駐)用於開啟/關閉該自訂HUD介面

1:切換到調整局內玩家身材比例的介面

u200b prev player:選擇上一位玩家,使後續big-/mini-/reset操作作用於該玩家

u200b next player:選擇下一位玩家,使後續big-/mini-/reset操作作用於該玩家

u200b big head:使選擇的玩家頭部尺寸增大

u200b mini head:使選擇的玩家頭部尺寸縮小

u200b big foot:使選擇的玩家足部尺寸增大

u200b mini foot:使選擇的玩家足部尺寸縮小

u200b big hand:使選擇的玩家手部尺寸增大

u200b mini hand:使選擇的玩家手部尺寸縮小

u200b reset:使選擇的玩家身體各部位尺寸重設為預設

2:切換到創建/銷毀隨機地形的介面

u200b create terrain1:建立隨機地形

u200b teleport:傳送玩家到設定位置

u200b clear terrain:銷毀已建立的地形

資訊顯示面板:顯示玩家按下上述按鈕後的相關回饋和提示文字

圖元

更多的玩法規則需要用到圖元編輯器,開啟方式是:

點選更多-圖元腳本,然後在介面右上角選擇具體想要編輯的腳本

image2025-8-13_11-49-22 image2025-8-13_16-52-9

本版塊主要介紹「Myconsole」這個核心玩法以及其他具體規則基於腳本的實作方式

您可以在此編輯具體腳本並調整相關數值

對於需要針對了解的腳本功能,您可以點擊特定的腳本來進行查看

HUD腳本

總覽:

image2025-8-13_14-32-19 image2025-8-13_14-42-35 image2025-8-13_14-42-41 image2025-8-13_14-44-46

核心玩法

  • 首先是用於切換介面的按鈕MyConsole、1&2,由於核心玩法包括了多項功能,因此需要分類在兩個頁面中進行交互,這樣也可以使用戶感到更加清晰、有秩序感;下面是具體的腳本實現方式:

區域1-2

MyConsole:切換整個自訂HUD介面(除了該按鈕)的顯示/隱藏

1:切換到調整局內玩家各身體部位比例的自訂HUD介面,隱藏按鈕2開啟的介面,使按鈕「1」顏色高亮、按鈕「2」顏色恢復正常,呼叫「loginfo」函數顯示「player body modification menu」文本

2:切換到創建/銷毀隨機地形、傳送玩家的自定義HUD界面,隱藏按鈕1打開的界面,使按鈕“2”顏色高亮、按鈕“1”顏色恢復正常,調用“loginfo”函數顯示“terrain creation menu”文本

image2025-8-13_14-54-2164-7

image2025-8-13_15-40-33image2025-8-13_18-59-38

  • 下面來到介面1,其中按鈕next player/prev player用於選擇局內的玩家,big-/mini-/reset用於調整其各身體部位的比例;下面是具體的腳本實現方式:

區域1-3、1-4

本區域的腳本展示了在玩家點擊按鈕next player/prev player後使後續事件作用於隊伍內下一名玩家/前一名玩家,並使自訂HUD介面顯示相關資訊的實現方式

  1. 設定索引向後/向前1名玩家,若索引數量超過玩家總數,則循環選擇到第一名/最後一名玩家
  2. 設定臨時變數(記錄為msg)等於左值「selected=」和右值「索引數量的值」的字串連接
  3. 設定該臨時變數的字串右側依序連接:“player=”;“目前索引的玩家的名稱”;“UID=”;“目前索引的玩家的UID”
  4. 呼叫“loginfo”函數顯示該臨時變數所包含的文本

image2025-8-13_14-54-49 image2025-8-13_15-41-42

image2025-8-13_14-55-27 image2025-8-13_15-41-30

區域1-5、1-6

本區域的腳本展示了在玩家點擊big head/mini head後觸發當前選定玩家角色的頭尺寸變大/小,並使自訂HUD介面顯示相關資訊的實現方式

  1. 設定臨時變數(記錄為selected_player)等於目前索引的玩家
  2. 設定臨時變數(記錄為head)等於目前索引的玩家角色的頭部
  3. 設定臨時變數(記錄為ori_scale)等於基於臨時變數“head”的骨骼縮放
  4. 設定臨時變數「head」新的值等於基於臨時變數「ori_scale」的骨骼在XYZ軸各方向上縮放增加/減少0.1倍
  5. 設定臨時變數(記錄為msg)等於左值「player=」和右值「目前索引的玩家的名稱」的字串連接
  6. 設定該臨時變數的字串右側依序連接:“UID=”;“目前索引的玩家的UID”;“head scale=”;“臨時變數‘head’的骨骼縮放的值”
  7. 呼叫「loginfo」函數顯示該臨時變數所包含的文本

image2025-8-13_14-56-19 image2025-8-13_15-42-6

image2025-8-13_14-56-4 image2025-8-13_15-42-19

區域1-7、1-8

本區域的腳本展示了在玩家點擊mini foot/big foot後觸發當前選定玩家角色的足部尺寸變小/大,並使自訂HUD介面顯示相關資訊的實作方式

—相關腳本內容詳見區域1-5、1-6,改變內容為:將臨時變數“head”更改為“left_foot”和“right_foot”;將臨時變數“msg”中的“head scale”更改為“foot scale”

image2025-8-13_14-56-13 image2025-8-13_15-42-38

image2025-8-13_14-56-38 image2025-8-13_15-42-50

區域1-9、1-10

本區域的腳本展示了在玩家點擊big hand/mini hand後觸發當前選定玩家角色的手部尺寸變大/小,並使自訂HUD介面顯示相關資訊的實作方式

—相關腳本內容詳見區域1-5、1-6,變更內容為:將臨時變數“head”改為“left_hand和“right_hand”;將臨時變數“msg”中的“head scale”改為“hand scale”

image2025-8-13_14-56-42 image2025-8-13_15-43-9

image2025-8-13_14-56-54 image2025-8-13_15-43-20

區域1-11

本區域的腳本展示了在玩家點擊reset後觸發當前選定玩家角色的所有身體部位尺寸重置為默認,並使自定義HUD界面顯示相關信息的實現方式

  1. 設定臨時變數(記錄為selected_player)等於目前索引的玩家
  2. 依序設定臨時變數(記錄為lf、rf、lh、rh、head)等於目前索引的玩家角色的骨骼的左腳、右腳、左手、右手、頭部,並設定以上骨骼的縮放在XYZ軸各方向上均等於1
  3. 設定臨時變數(記錄為msg)等於左值「reset scale player=」和右值「目前索引的玩家的名稱」的字串連接
  4. 呼叫“loginfo”函數顯示該臨時變數所包含的文本

image2025-8-13_14-57-9 image2025-8-13_15-43-30

  • 下面來到介面2,其中按鈕teleport用於傳送玩家到指定的位置,create terrain1/clear terrain用於創建/銷毀隨機地形;下面是具體的腳本實現方式:

區域1-12

本區域的腳本展示了在玩家點擊teleport後觸發將當前玩家角色傳送到設定位置的實現方式

  1. 傳送玩家到座標位置XYZ=(0,30,0)、旋轉歐拉角XYZ=(0,0,0)
  2. 呼叫“loginfo”函數顯示“teleport player”文本

image2025-8-13_14-57-21 image2025-8-13_15-48-44

區域1-13

本區域的腳本展示了在玩家點擊clear terrain後觸發將現存透過「我的控制台」創建的地形清除,並使自訂HUD介面顯示相關資訊的實現方式

  1. 若「is_spawning」為假,則呼叫「loginfo」函式顯示「Running task, please stand by…」文本,設定「is_spawning」為真,索引資料容器為「terrain_blocks」的元素並銷毀該元素、等待1毫秒,然後將「terrain_blocks」資料清空資料,呼叫「rain」 completed”文本,設定“is_spawning”為假
  2. 否則呼叫「loginfo」函式顯示「System is busy now, please wait for current task」文本,等待2秒,然後若「is_spawning」為真,則呼叫「loginfo」函式顯示「Running task, please stand by…」文本

image2025-8-13_14-57-47 image2025-8-13_15-48-58

區域1-14

本區域的腳本展示了在玩家點擊create terrain1後觸發創建隨機地形,並使自訂HUD介面顯示相關資訊的實現方式

  1. 若「is_spawning」為假,則呼叫「loginfo」函數顯示「Running task, please stand by…」文本,設定「is_spawning」為真,索引資料容器為「terrain_blocks」的所有元素並銷毀該元素、等待1毫秒,然後清除「資料terrain_blocks」清空資料
  2. 設定臨時變數(記錄為offset)等於三維向量XYZ=(0~999999,30,0~999999)
  3. 設定臨時變數(記錄為pos0)等於三維向量XYZ=(x,0,z)
  4. 設定臨時變數(記錄為h)等於浮點數、值透過呼叫「terrain1」函數來確定
  5. 設定向量“pos0”的Y向量分量值“h”
  6. 呼叫“creat_block”函數建立地形
  7. 呼叫「loginfo」函數顯示「Terrain creating task is completed」文本,設定「is_spawning」為假
  8. 否則呼叫「loginfo」函式顯示「System is busy now, please wait for current task」文本,等待2秒,然後若「is_spawning」為真,則呼叫「loginfo」函式顯示「Running task, please stand by…」文本

image2025-8-13_14-57-30 image2025-8-13_15-48-16

補充規則

  • 此處內容主要包括以下部分:
  • 多個封裝的函數:「loginfo」函數用於將文字顯示在HUD控制項上;「create_block」函數用於建立地形實體;「terrain1」函數及其他函數則用於協同模擬演算法實現產生地形的隨機性
  • 3個事件:定義變數用於判斷事件的執行情況,將玩家追加到/刪除從「全體玩家」清單中用於供按鈕next player/prev player依序選擇玩家

區域2-1

“loginfo”函數

使實體“Myconsole”的UI標籤控制項的內容等於“msg”

“terrain1”函數

透過設定臨時變數“vec2”和“r”並使用模擬柏林噪音演算法計算出創建地形的隨機狀態

image2025-8-13_14-58-41

區域2-2

本區域的「perlin_noise」函數用於模擬柏林噪音演算法

image2025-8-13_14-59-7

區域2-3

“create_block”函數

  1. 根據先前計算的向量「pos」的位置建立物件可破壞的木箱
  2. 設定臨時變數(記錄為scale)
  3. 設定“obj”關卡物件的本機縮放小屬性的值等於臨時變數“scale”
  4. 將「obj」追加到清單「terrain_blocks」中

“hash”函數

用於模擬雜湊函數

image2025-8-13_14-58-49

區域2-4

本區域的函數用於輔助區域2-2、區域2-3完成模擬對應演算法/函數

image2025-8-13_14-58-9

區域1-1

  1. 使4項自訂變數「is_spawning」「select_index」「terrain_blocks」「all_players」被設定為對應的值
  2. 當玩家加入/退出遊戲時,將該名玩家追加到/刪除從“全體玩家”
image2025-8-13_14-54-6

附:此腳本下需要使用到的自訂變數與函數,您可以點選變數函數進行檢視與管理:

image2025-9-3_15-13-34 (1) image2025-9-3_15-13-14

玩家腳本

  • 為了玩家可以流暢體驗核心玩法,需要做出以下設定:使玩家介面顯示編輯好的自訂HUD、允許玩家更加自由地跳躍移動、玩家被擊殺後直接死亡且可快速復活以及復活在設定位置;下面是具體的腳本實現方式:
  1. 為玩家建立索引為「MyConsole」的自訂HUD
  2. 使玩家「跳躍高度縮放比」屬性的值為:5
  3. 使玩家「擊倒設定」屬性的值為:跳過擊倒
  4. 當玩家被擊殺時,等待1秒,將玩家傳送到設定的位置,並在下一幀復活
image2025-8-13_14-24-14

復活點腳本

  • 在玩家進入局內開始體驗核心玩法後,復活點就成為了無功能組件,同時可能會影響到玩家的活動體驗,因此需要銷毀

回合開始時,銷毀此實體

image2025-8-13_14-24-40

以上就是這個範本功能的全部介紹,您可以點擊試玩進行遊玩和測試。也可以嘗試擴展更多的玩法到這個基礎模板裡,做出屬於您自己的有趣的地圖!

二次編輯建議

  • 透過調整特定腳本內的數值,設定更誇張的玩家角色身材比例變化、創建隨機地形時的可能形狀,以增加遊戲的戲劇性
  • 搭配玩家角色身材比例變化機制,加入PVP戰鬥玩法
  • 豐富或深化控制台的功能,探索並實現玩家角色模型/地形的進一步調整