[請益] 遊戲的編碼問題?

看板ask-why (知識奧秘)作者 (生活)時間16年前 (2010/01/20 23:31), 編輯推噓11(11034)
留言45則, 5人參與, 最新討論串1/1
最近玩一個網路小遊戲 看到有人在ptt上分享修改遊戲的方法 裡面提到要搜尋遊戲中的數值 必須把 遊戲中的數值x8 + 6 丟到遊戲修改程式中去搜尋才能找到 想請教一下各位,為什麼遊戲編碼要這樣安排 數值x8 + 6 是某種特殊進位計算方式的結果嗎? 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.192.121

01/20 23:50, , 1F
可能的理由一大堆,大海撈針嘛;我也看過把人名編碼的..
01/20 23:50, 1F

01/20 23:50, , 2F
比如 a=65 ,但連續打四個a, 'aaaa' 是 65 66 67 68
01/20 23:50, 2F

01/20 23:51, , 3F
這也是編碼,那為什麼要根據出現的順序影響編碼呢?要猜嗎?
01/20 23:51, 3F

01/21 10:35, , 4F
很可能是因為這個屬性是有最低值(6),然後每升一級是+8
01/21 10:35, 4F

01/21 10:37, , 5F
比如lv0=6, lv1=14, lv2=22, lv3=30,你看到的是1,2,3,4
01/21 10:37, 5F

01/21 10:37, , 6F
但游戲邏輯計算時,實際上用的是6,14,22,30...
01/21 10:37, 6F

01/22 03:21, , 7F
我在寫遊戲的時候也會把紀錄檔的格式在不會讓執行速度
01/22 03:21, 7F

01/22 03:22, , 8F
顯著下降的極限下做奇怪的編碼。就是不要你改嘛。
01/22 03:22, 8F

01/22 03:22, , 9F
但開放原始碼的問題是...
01/22 03:22, 9F

01/22 08:29, , 10F
話說..."就是不要你改嘛"的目的是? Paradox社的遊戲簡直什麼
01/22 08:29, 10F

01/22 08:29, , 11F
都可以改呢...
01/22 08:29, 11F

01/22 15:30, , 12F
這和作者有關。但一般來說作者會希望你依照他努力設計
01/22 15:30, 12F

01/22 15:31, , 13F
的遊戲平衡性和流程玩上去。若是網路遊戲就更可怕了,
01/22 15:31, 13F

01/22 15:33, , 14F
有些小規模的遊戲把資料存在client端,如果修改流行的
01/22 15:33, 14F

01/22 15:34, , 15F
話可能會損失不少正規玩家。想想Diablo一代。
01/22 15:34, 15F

01/22 19:09, , 16F
網路遊戲有動機把編碼弄得很複雜,也可以把解碼放在伺服器端
01/22 19:09, 16F

01/22 19:11, , 17F
,但單機遊戲所有把戲都在客戶手上跑,要弄得沒人解得開很困
01/22 19:11, 17F

01/22 19:12, , 18F
難吧?而當玩家想要修改遊戲時,改不成會使玩家乖乖玩上去?
01/22 19:12, 18F

01/22 19:13, , 19F
抑或是乾脆不玩了?
01/22 19:13, 19F

01/22 19:14, , 20F
我玩過不少用簡單的方法改不了的遊戲,但上網一搜,大多也有
01/22 19:14, 20F

01/22 19:15, , 21F
別人寫好的修改器能用...
01/22 19:15, 21F

01/22 19:17, , 22F
找不到修改器往往不是因為遊戲很難改,而是遊戲不夠紅阿...
01/22 19:17, 22F

01/22 20:31, , 23F
以我來說,我不介意玩家因為玩不過或沒時間等原因放在
01/22 20:31, 23F

01/22 20:32, , 24F
一旁不玩;如果遊戲一定要修改過才玩得下去,我想這是
01/22 20:32, 24F

01/22 20:34, , 25F
對遊戲的否定,也是作者該反省的事。
01/22 20:34, 25F

01/22 20:34, , 26F
當然無論如何都會有想跳關或者一開始就無敵的玩家,所
01/22 20:34, 26F

01/22 20:36, , 27F
以大遊戲只要能改的一定都會有人去修改。這裡說的是正
01/22 20:36, 27F

01/22 20:36, , 28F
常玩家的情況。
01/22 20:36, 28F

01/22 21:03, , 29F
我的問題在於,如果玩家只要想改就一定改得成,而且上網下載
01/22 21:03, 29F

01/22 21:04, , 30F
修改器使得毫無技術的玩家也可以輕鬆修改編碼複雜的遊戲,那
01/22 21:04, 30F

01/22 21:06, , 31F
把編碼弄複雜對於避免遊戲被修改似乎沒什麼意義?
01/22 21:06, 31F

01/22 21:08, , 32F
除非把修改的困難度搞到連技術高超的玩家都很難破解的程度...
01/22 21:08, 32F

01/22 21:29, , 33F
但不知道這麼做對效能的影響如何呢?
01/22 21:29, 33F

01/23 00:11, , 34F
那新的遊戲就是破解本身啊~ 破解本身就充滿樂趣 XD
01/23 00:11, 34F

01/23 01:37, , 35F
把編碼和破解看成virus和anti-virus去想...
01/23 01:37, 35F

01/26 23:12, , 36F
這個問題也是因作者而有不同的。有的遊戲作者確實覺得
01/26 23:12, 36F

01/26 23:12, , 37F
改不改無所謂、或者要為這種問題傷腦筋太麻煩;我的話
01/26 23:12, 37F

01/26 23:15, , 38F
則是至少用一些設定來表示反對,但實際上就是防君子不
01/26 23:15, 38F

01/26 23:16, , 39F
防小人而已。我想像鼎王禁止客人帶食物進來吃一樣盡全
01/26 23:16, 39F

01/26 23:17, , 40F
力阻止的作者我想也是有的。
01/26 23:17, 40F

01/26 23:18, , 41F
此外對效能的影響,如果是單機遊戲那幾乎只有存檔時間
01/26 23:18, 41F

01/26 23:20, , 42F
有影響吧,所以即時存檔的遊戲影響就比較大;另一方面
01/26 23:20, 42F

01/26 23:24, , 43F
網路遊戲就是大問題了,如果傳輸的資訊要加密的話。
01/26 23:24, 43F

01/27 02:59, , 44F
也許沒那麼誇張, x<<3 + 110b 而已; packing 資料結構..
01/27 02:59, 44F

01/27 02:59, , 45F
用了三個位元來存某屬性,自然左挪三位元 XD
01/27 02:59, 45F
文章代碼(AID): #1BLo70Jk (ask-why)
文章代碼(AID): #1BLo70Jk (ask-why)