【開源遊戲】Legends-Of-Heroes 基於ET 7.2的雙端C#(.net7 + Unity3d)多人線上英雄聯盟風格的球球大作戰遊戲。

2023-05-09 21:01:16

Legends-Of-Heroes

一個LOL風格的球球大作戰遊戲,基於ET7.2,使用狀態同步 loh22023532242551

Main

基於C#雙端框架[ET7.2],同步到ET主幹詳情請看紀錄檔。(https://github.com/egametang/ET) 注意:已經升級.Net7,請安裝.Net7 SDK.

此遊戲為ET7.2的一個實踐專案demo,玩法主要是球球大作戰型別的吃食物吃敵人/被敵人吃的生存玩法。此專案採用狀態同步,所有碰撞檢測、技能、AI等邏輯都放在伺服器端執行。當前仍在開發中,具體功能模組及進度看下面的Todo即可

執行步驟:

    1. Unity開啟編輯器選單:ET/BuildTool,CodeMode選擇Client,然後點選BuildModelAndHotfix.
    1. 開啟ET.sln,編譯整個專案,執行DotNet.App.(伺服器、使用者端拆分模式才需要單獨執行,預設是Client-Server模式)
    1. Unity執行遊戲即可看到登入頁面,輸入賬號密碼登入即可

TODO && Features

  •  接入Unity執行時視覺化Log偵錯元件Debugger
  •  接入基於UGUI適配ET的UI框架EUI
  •  接入YooAsset資源管理打包熱更框架
  •  搖桿控制角色移動,相機跟隨,通過伺服器端廣播位置同步
  •  設定表支援多Key(也可自行接入強大的多平臺設定方案 Luban,當前Demo用不到那麼複雜excel就不進行接入了)。
  •  房間大廳,匹配房友,每個房間最多20個玩家。
  •  一個Demo關卡流程:有限的2d地圖,隨機生成食物,吃食物會變大,碰到敵人會產生傷害(大吞小,小死亡)。
  •  一個比較基本的戰鬥技能框架設計,主動/被動技能釋放(demo已經包含主動技能演示)。
  •  時間線技能事件系統
  •  子彈碰撞系統(碰撞檢測使用Box2dSharp
  •  額外(有空的話):2d moba玩法。

補充說明

  1. 多key設定說明,表格設定多key如下,欄位列頭頂增加「key」標識即可,最多支援4個key,組合key最後會合併成一個long欄位儲存,4個key最大數值分別為:32位元,16位元,8位元,8位元。 image

    範例,讀取技能等級表中技能id=1001,level=2的資料:

    SkillLevelConfig skillLevel = SkillLevelConfigCategory.Instance.GetByKeys(1001, 2);