# DY問題總匯
:::warning
非必要請避開專案敏感部分 (e.g., 專案編號、Request 位址, etc..)
若必須提及敏感部分,請使用代稱 (e.g., https://xxxxxx.略 )
:::
---
### Q1. 有 toLua, uLua... 為什麼使用 sLua?
:::success
Lua 起源,穩定,文檔多。
:::
### Q2. Assets/ 底下的 lua/bytes 用途是?
:::success
編譯過後的 lua code,會以加載 AssetBundle 的方式去實現熱更新。
:::
### Q3. 在 VSCode 裡為什麼使用 luaide 這個 Plugin,優勢是?
:::success
單純統一開發環境。
:::
### Q4. 呈上,寫 lua 時如何有效的找到 References?
:::success
限於動態語言的限制,目前沒有好的 IDE 解法,先用 vs-code 配合 lua plugin 開發看看。
備註:之後可能先購買一次 luaide 測試是否能有效加速開發,再決定是否統一購買該 plugin。
:::
### Q5. keystore 在哪裡(不在 zip 裏頭)?
:::success
既有的 keystore 不太重要,可自行生成。
:::
### Q6. 如何妥善有效的調試 C# & Lua 的關係?
:::success
無法使用中斷點去調試,用 Log 去 Trace 狀態與問題。
:::
### Q7. 建置 apk 的流程有 doc 或是要留意的地方? (ipa 同理)
:::success
之後會提供文檔手冊。
:::
### Q8. 專案內用了太多語意不明的縮寫, 能否提供縮寫對照表?
:::success
請自行看 Code 去判斷是什麼的縮寫。
:::
### Q9. 目前lua呼叫unity多載的函式,unity的adapter內大量使用if else來判斷每個參數的型別, 假設碰到unity版本需要升級, unity api變更的場合...可能會需要改很多功能,想詢問還有其他更好的解決方案嗎?
:::success
基本上不升級,因為帶來的成本過高,要 survey 的東西過多,除非有無法避免的 Unity Bug
:::
### Q10. 若要調整場景的UI位置、大小等等 有辦法直接在unity上場景視窗處理嗎?還是必須全透過lua UI資料夾裡的lua去透過程式的數值編輯?
:::success
一樣依賴 Unity 的建置方式, Lua 大多數僅做邏輯處理
:::
### Q11. Unity 和 Lua 是怎麼開始連結溝通的?
:::success
開啟 APP -> Preload module -> Check patch -> Patch exist ? -> Load patch(optional) -> Runtime 實裝 lua。
:::
### Q12. 程式開始 > Loading > 登入的流程,是否有一些特別的 Flag 要注意?
:::success
Preload module(熱更新使用) -> 下載 AssetBundle(Lua-bytes) -> Reload Lua
備註:要熱更新 preload module 的話要第二次打開才有效
(因為此時 preload 已經運行完畢,需要重開 app 才能加載新 preload module)
:::
### Q13. Unity 上方有個 sLua 選單,請問具體用途是?
:::success
之後會有文檔提供
:::
### Q14. 監聽者模塊是什麼?
:::success
即是 WebSocket Command 收送,與 Server 溝通
:::
### Q15. dump.lua 裡面有包含很大一串與server溝通用的command定義, 能否大概解釋各個參數的用途?
ex:
```
[50342098]={[1]={['n']="bets",['t']="string",},['name']="sendBets",['id']=50342098,['static']=false,['class']="Bonus",['server']="client",},
```
### Q16. 承上題, 是否有使用額外的工具來管理這些資料? 或是經年累月手動輸入的結果?
---
## 首要目標
### 1.熟悉 Lua 特性
### 2.熟悉 sLua 框架
### 3.熟悉登入流程
###### tags: `公告`