[討論] 如何抑止外掛
最近小弟我也跟風加入pokemon go的行列
但是發現道館各種等級破表神人
實在是很好奇官方有沒有想鎖外掛的決心?
市面上就我所知外掛就大概分兩種 飛人跟自動練功
飛人
老實說我覺得這超好抓的,程式都有gps資料了
直接判斷短時間內有沒有移動到不可能的距離就好啦
ex:
1小時移動距離超過200km
想要更精確點甚至在跨洲當飛人時,用gps紀錄有沒有停留在機場...etc
自動練功
這個可能比較麻煩,我是覺得Niantac沒有把程式做個認證機制
導致連破解都不用
封包直接明擺著給你看,做外掛直接看著封包內容傳command就好了...
搞個簡單的
把帳號的某個欄位資料(例如有幾個pokemon,CP總合多少...etc),當作key
再加上個時間參數,直接做個hash
每五分鐘來當作認證"應該"就可以杜絕很多外掛?
殘忍一點 如果上面認證/gps異常 錯個2.3次直接鎖帳號,別搞個什麼softban
小弟不是專業的game developer,也知道在這邊發這種廢文Niantac也看不到
但只是想跟大家討論討論,這種想法在實務上可行嗎~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.219.69.159
※ 文章網址: https://www.ptt.cc/bbs/PokeMon/M.1470883157.A.3F1.html
→
08/11 10:40, , 1F
08/11 10:40, 1F
這...如果server多算個hash code做verify就會掛
那就真的沒啥好討論的
推
08/11 10:40, , 2F
08/11 10:40, 2F
哈哈討論討論阿:)
推
08/11 10:42, , 3F
08/11 10:42, 3F
→
08/11 10:43, , 4F
08/11 10:43, 4F
可能是我表達不夠清楚
第一點我是指,當你進行"短時間"跨區行動時,才會去判斷
例如現在我在玩Pokemon時,現在在台北,1小時後在日本,這種高速移動應該只能
透過飛機才有可能實現,所以可以用機場位置來補助,來判斷你有沒有在搭飛機
第二點
認證當然是在程式背景run,怎麼可能會show message到遊戲上...
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 10:47:18
推
08/11 10:44, , 5F
08/11 10:44, 5F
沒錯,用機場補助的確有點脫褲子放屁
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 10:49:35
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 10:51:00
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 10:52:35
推
08/11 10:54, , 6F
08/11 10:54, 6F
→
08/11 10:55, , 7F
08/11 10:55, 7F
對
所以改成用驗證機制每幾分鐘認證一次應該是不會影響太大?
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 10:58:18
推
08/11 10:57, , 8F
08/11 10:57, 8F
推
08/11 11:01, , 9F
08/11 11:01, 9F
→
08/11 11:01, , 10F
08/11 11:01, 10F
→
08/11 11:01, , 11F
08/11 11:01, 11F
pokemon玩家太多,相對有空的神人也多阿...
根據討論串的確API有改過,各種自動查IV的網站也有在ban
的確不能否認Niantac沒做事,只是不了解像檢查飛人這麼基本的功能為何不做
推
08/11 11:01, , 12F
08/11 11:01, 12F
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 11:16:12
推
08/11 11:28, , 13F
08/11 11:28, 13F
推
08/11 11:32, , 14F
08/11 11:32, 14F
推
08/11 12:02, , 15F
08/11 12:02, 15F
一般而言(我猜啦)
如果抓到一個Pokemon,至少都會跟server做handshake一次
所以流程是
抓到pokemon -> 送packet給server -> server收到確認packet -> ack succeess
如果套用小弟拙見就會變成
抓到pokemon -> client算hash -> 送packet給server(含hash認證)
-> server收到確認(含hash比對) -> ack success
至於server side算hash的時機是看要在Login時或者定時算一次都行
畢竟小弟沒做過這類工作,如果這樣算大那就代表小弟太天真了XD
推
08/11 12:06, , 16F
08/11 12:06, 16F
→
08/11 12:06, , 17F
08/11 12:06, 17F
噓
08/11 12:06, , 18F
08/11 12:06, 18F
推
08/11 12:07, , 19F
08/11 12:07, 19F
→
08/11 12:12, , 20F
08/11 12:12, 20F
推
08/11 12:23, , 21F
08/11 12:23, 21F
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 12:33:34
噓
08/11 12:24, , 22F
08/11 12:24, 22F
推
08/11 12:30, , 23F
08/11 12:30, 23F
推
08/11 13:10, , 24F
08/11 13:10, 24F
→
08/11 13:10, , 25F
08/11 13:10, 25F
推
08/11 13:27, , 26F
08/11 13:27, 26F
摘自Pokemon官網
No cheating.
Don’t do it. Play fair. Pokémon GO is meant to be played on a mobile device
and get you outside to explore your world! Methods of cheating,
unfortunately, are limited only by cheaters’ imaginations, but include at a
minimum the following: using modified or unofficial software; playing with
multiple accounts (one account per player, please); sharing accounts; using
tools or techniques to alter or falsify your location; or selling/trading
accounts.
一個帳號應該不允許多人共玩
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 13:35:38
→
08/11 14:09, , 27F
08/11 14:09, 27F
→
08/11 14:10, , 28F
08/11 14:10, 28F
→
08/11 14:10, , 29F
08/11 14:10, 29F
噓
08/11 14:12, , 30F
08/11 14:12, 30F
→
08/11 14:12, , 31F
08/11 14:12, 31F
的確是沒有考慮到私人飛機,所以我才說機場只是補助
但是以飛人的觀點可能是幾分鐘就移動大量距離(數百km)
如果硬要拿超音速飛機這種極端例子,那我的確沒話說~
只是個討論阿~
※ 編輯: ahwater01 (61.219.69.159), 08/11/2016 14:17:19
推
08/11 14:17, , 32F
08/11 14:17, 32F
噓
08/11 14:18, , 33F
08/11 14:18, 33F
→
08/11 14:18, , 34F
08/11 14:18, 34F
→
08/11 14:19, , 35F
08/11 14:19, 35F
→
08/11 14:20, , 36F
08/11 14:20, 36F
→
08/11 14:20, , 37F
08/11 14:20, 37F
→
08/11 14:20, , 38F
08/11 14:20, 38F
→
08/11 14:21, , 39F
08/11 14:21, 39F
噓
08/12 06:46, , 40F
08/12 06:46, 40F
→
08/12 06:46, , 41F
08/12 06:46, 41F
討論串 (同標題文章)