創作內容

3 GP

SDK界接心得-steam api

作者:KK│2020-03-13 12:39:28│巴幣:6│人氣:1156
最近碰到一個問題,卡了一天才解決,覺得不記錄下來下次一定還會再挫屎一次。

steam是很多遊戲開發者會選擇上架的平台,
他本身提供的steam帳戶資料(玩家可以透過平台購買key,下載遊玩。)
豐富有趣的成就(滿足一些白金挑戰追求者)
以及如果有連網服務的社群系統(直接邀請好友組隊,開房。)
諸如此類的平台相關服務,已經在玩家/開發者間形成一個默契了。

為了快速使用steam提供的服務,平台提供了方便的接口,也就是我們常聽到的SDK。
各種第三方的軟體都有SDK給不同服務來串接:FB、AWS、Stadia......等。
取決於你使用的開發引擎而定,有不同的方式可以去串。
而Unity + Steam api,應該算是較為大宗的使用群。

偏偏!偏偏!偏偏就讓我遇到了不如直觀這麼好打發的問題!

由於接SDK的方式很多,現在也有不少人整理成更好用的套件,
Riley Labrecque 所提供的 steamworks.NET plugin套件。
很多網頁甚至分享文都會提到,先下載然後import,然後更改steam_appId,
然後就能處理上述提到的,你所需要的那些需求。

不過!我光一個簡單的匯入就壞掉了( compile error),簡直不可思議。
它這套軟體是有一些自己產生的檔案,包含範例介紹的 建置steamworks.NET 這個DLL。
但為何我的專案就完全沒這麼順利產生,討論區/問題回報區也不見相關 bug 討論,
就這麼剛好只有我碰上這種神奇的現象@@?

只是單就解決 compile error 有幾個方法( 請看看就好,不要使用。)
首先報錯的原因是無法參考 steamworks,所以所有用到它 api 的接口通通都會出錯。
那麼只要提供它需要的 DLL給它就好;不過又因為 compile error而無法 自動產生,
就卡住了。這個問題可以使用範例的專案,產生後的 DLL 複製到專案中可以解決!!

可是如果範例的 steamworks.NET DLL 是可以共用的,為何下載這個套件/unitypackage,
不一起整合進來?一定是因為每個人的專案/使用的引擎版本/環境設定有所不同吧?
不然就直接放一個 managed DLL,而不是匯入完自己產生的就好,所以請不要使用這個方法解決。

真正的原因是,當你的專案使用的 plugin 太多時,有些 plugin 會在 import 時設定 Assembly 一些參數,你可以使用 visual studio 或其他編譯器看看專案右邊的 DLL,正常來說會分成幾個,Assembly-CSharp、Assembly-CSharp-Editor、Assembly-CSharp-firstpass和其它。
而此時如我你使用了其它的 plugin,他也許會自己佔一個屬性分類如Editor。

在你匯入steamworks.NET 的時候,其實是有一些蛛絲馬跡的,他有提示
warning file exists in project with different guid. will override exisiting asset...
」,也就是說要匯入的這個套件,他的資料夾都有原本安排的位置,但是已經被其它套件搶走了,這時候匯入完後,是無法被引到用的。請把它移到它該待的部分就能解決這個問題。

----------------------------------------------文末----------------------------------------------

其實不用太在意這篇文章的一些經驗分享,我網路上查很了很多
1. steamworks dll missing
2. link dll to assembly
3. steamworks reference missin
4. EditorConfig
諸如此類關鍵字,也有用 平台提供的正統 SDK串接法不是用別人的插件,
通通沒有斬獲XDDDDDDD

這會發生在像我這樣不太熟很多底層部分技術的人,
看到好用的套件就載來用的狀況,然後專案規模變大到用了哪個套件,甚至於哪個套件已經不需要使用還是沒整理,以及沒在關心自己的專案建置相關優化的人;
可謂之少之又少,希望大家不要遇到這種神奇現象,並且每串一個 SDK 都養成好習慣。

引用網址:https://home.gamer.com.tw/TrackBack.php?sn=4715312
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:steamapi|遊戲開發||陷阱

留言共 0 篇留言

我要留言提醒:您尚未登入,請先登入再留言

3喜歡★nigel0813 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:Mr. Shifty分析... 後一篇:Voice Game J...

追蹤私訊切換新版閱覽

作品資料夾

happy545午安阿~~
歡迎大家來看看纏繞畫,如果喜歡歡迎私底下跟ˇ我說喔~。看更多我要大聲說昨天15:55


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】