Re: [程式] Online Game的設計

看板GameDesign作者 (無想流流星拳)時間14年前 (2011/11/08 23:02), 編輯推噓7(7020)
留言27則, 5人參與, 最新討論串3/3 (看更多)
※ 引述《LaPass (LaPass)》之銘言: : 但是,我希望建立一個泛用的網路連線機制 : 並保留未來向各方面拓展的可能性以及便利性 : 例如說..... 希望把原本的連線部分,小小修改一下就能用到 MMORPG 上 : 或是在未來,當遊戲從網頁拓展到 iPhone & Android 時 : 能經鬆讓iPhone & Android & Web 三方互相連線 : 而不必大改連線機制以及連線的資料格式 : 頂多重寫Client端 : 請問在建立網路連線系統時,有什麼要注意的地方? 我曾經開發過 3G 電話軟體, 我可以給你一些提議, 你首先要定義的是, 你的系統到底是: 1. 完全同步系統 (RTS) 2. 半同步系統 (FPS) 這兩個有很大的分別, 主要就是你是否要用 UDP 作傳輸, 但這裡 又涉及一個重要的問題, 那就是你要做的東西, 想要擴展至 iPhone 及 Android, 而這兩種東西的連線環境可謂十分不穩定和惡劣. 就 像之前我回的那篇文一樣, 很多人嘗試在這種環境做連線, 出來的 連線品質, 固然可連, 但並非「可玩」, 玩的人會遭受很大的挫敗 感, 那不是服務器的問題, 而是手提是一種很差勁的連線環境. 如果你想要做這方面的引擎, 而無法保持連線品質的話, 那麼應該 最終這專案是不能繼續. 因為實作成遊戲時, 沒有辦法擴充至可玩 的品質. 如果你的資本不多, 只有一個人的話, 我是不建議你做這樣的開發 , 因為你還需要同時使用多個不同的電訊商和多部電話 (特別是因 為你打算開發 Android) , 你的測試成本會十分高昂, 不論是人力 成本上 (例如你需要經常坐捷運測試) , 還是資金成本上, 這種研 發比起遊戲研發更傾向是科技研發, 我認為一個人的資金是燒不起 , 即使燒完了, 也很難去到能應用的品質, 因為一個人的時間有限 , 但是市場和技術都不斷變化. 我檢視你的想法的話, 我會覺得成本太高, 這裡涉及有很多不僅是 寫碼的問題, 而是人力的問題. 網頁遊戲的話, 如果你向著未來看的話, 不妨考慮一下 html5. : 總而言之,我不希望在未來一再重寫連線、帳號登入等部分 : 還有,網頁遊戲的話,目前看到的網頁遊戲大多是使用Flish,讓我很猶豫 : 到底是用JAVA寫網頁遊戲比較好 : 還是再花點時間去學 ActionScript 來寫 Flish比較好? 其實要開發引擎的話, 就算不加入公司, 也最好自己成立公司. 有了公司, 你才容易處理流動的資金, 著作權等問題, 也方便在被告的 時候你有辦法脫身, 畢竟遊戲這種東西, 不小心的話可以突然涉及很多 你想也沒想過的著作權問題. 特別是你開發的引擎, 之後你會用引擎來 開發很多東西的話, 那些東西要包括的美術/音樂/內容你都不可能自己 一個做完, 如果你聘人的話, 他不小心或者故意用了一些著作權物也是 很可能的事. 至於你做引擎, 本身也可能不小心涉及某些專利或者技術, 也一樣可以 惹上官非的, 有限公司就是用來應付官非的武器, 「人」和「法人」兩 種東西的 HP 值可完全不一樣. 如果你沒有準備, 很容易惹麻煩, 如你所知的, 有些人是不事生產, 專 靠法律來吃飯的. -- 基於思源的概念, 而宣傳的的香港 BBS: telnet://hkday.net 民國無雙更新 v1.21 抗戰篇 - 蘆溝曉月: http://sites.google.com/site/kowloonia/home --

11/08 23:05, , 1F
詳細給推
11/08 23:05, 1F

11/08 23:05, , 2F
推 「人」 vs.「法人」 :D
11/08 23:05, 2F

11/09 00:26, , 3F
謝謝提醒。不過,我並沒有打算把計畫搞這麼大....
11/09 00:26, 3F

11/09 00:28, , 4F
你說的是「引擎」呀...
11/09 00:28, 4F

11/09 00:32, , 5F
大概類似東方的核心那樣吧,東方每一代的架構都差不多,就
11/09 00:32, 5F

11/09 00:32, , 6F
只是多了一些特效、效果、人物等等。
11/09 00:32, 6F

11/09 00:33, , 7F
主要問題是東方不涉及連線, 而你這個涉及連線.
11/09 00:33, 7F

11/09 00:33, , 8F
背後應該是有一套固定的框架在運作。
11/09 00:33, 8F

11/09 00:33, , 9F
東方的情況較像民國無雙, 連線把很多事情都變麻煩了.
11/09 00:33, 9F

11/09 00:33, , 10F
我現在想做的就是:連線的框架
11/09 00:33, 10F

11/09 00:34, , 11F
因為當初在寫聊天軟體時,我發現可能有辦法把連線部分跟遊
11/09 00:34, 11F
其實這更多是系統架構的問題. 最基本的是做多層的分離. 1. 主服務器 (遊戲邏輯) 2. 中層服務器 (負責不同平臺的收發) 3. 客戶端核心 4. 客戶端 GUI 所有輸入輸出訊息用文字的方式傳達, 那麼剩下來的就是技術 上連線的層面. 但這裡系統設計需要很小心, 加上元件多, 人 力成本會比你初期設想的巨大. ※ 編輯: chenglap 來自: 222.167.25.38 (11/09 00:37)

11/09 00:35, , 12F
戲部分切的蠻乾淨的.... 也就是說,只要我把連線框架弄好後
11/09 00:35, 12F

11/09 00:36, , 13F
,就可以很輕易的寫出多人互動的東西.... 像小遊戲那類的
11/09 00:36, 13F

11/09 00:37, , 14F
太複雜的遊戲就算了,簡單一點的應該都能處理。
11/09 00:37, 14F

11/09 00:38, , 15F
坦克大戰是動作遊戲, 不好, 卡牌 boardgame 等較好.
11/09 00:38, 15F

11/09 00:38, , 16F
我幾年前有寫過一個, 可惜 code 找不到了.
11/09 00:38, 16F

11/09 00:39, , 17F
卡牌那個我現在寫的東西就能輕易辦到.... 只不過目前那個就
11/09 00:39, 17F

11/09 00:41, , 18F
你要兼及重用性, 系統設計就是重點.
11/09 00:41, 18F

11/09 00:41, , 19F
沒辦法做到即時(原因很難解釋,總而言之,寫法的問題),而
11/09 00:41, 19F

11/09 00:41, , 20F
且那個不是用UDP
11/09 00:41, 20F

11/09 00:42, , 21F
連線本身很麻煩, 特別是涉及手機.
11/09 00:42, 21F

11/09 00:42, , 22F
如果不想太麻煩, 我認為最好一開始就放棄手機那邊.
11/09 00:42, 22F

11/09 00:43, , 23F
做手機的東西, 是一定要依手機度身訂造.
11/09 00:43, 23F

11/09 00:43, , 24F
為 PC 造的東西, 九成在手機都是運作不了的.
11/09 00:43, 24F

11/09 00:47, , 25F
就.... 只能[盡量把能共用的部分切開來吧....
11/09 00:47, 25F

11/09 00:48, , 26F
連線框架再怎麼樣也只是遊戲中的一個零件而以啊
11/09 00:48, 26F

11/09 01:07, , 27F
看起來就手機+單機 或PC+連線選一個嚕
11/09 01:07, 27F
文章代碼(AID): #1EkKHjec (GameDesign)
文章代碼(AID): #1EkKHjec (GameDesign)