前言:這篇推送其實昨天下午就寫得差不多了,但是我現在實在是被各種東西——有外界的,也有自身的,這些東西像枷鎖一樣鎖著自己無法呼吸。成年人的世界好無趣,為了金錢、為了生活,得像螻蟻一樣沒有尊嚴的活著……
昨天早上有朋友告訴我他在「極客灣」訂閱號上看到推送說可以一鍵免費Steam喜+n,自己在連續出差中,身邊沒有電腦,而且有些地方他看得不是很明白,讓我試一下能不能行。先說結果,我試過了,的確可以,下面就簡單闡述一下來源和過程。
首先,上面說了,我的最初消息來源來自於極客灣。這個方法最初來自於「其樂」社區的AK_Scrin(https://keylol.com/t152125-1-1)。這帖子裡面還解釋了「NoCost」和「Free on Demand」兩種「免費」遊戲的區別。按照我的理解,「Free on Demand」遊戲就是像DotA 2這一類的遊戲,你搜索它,進入它的頁面,會顯示「在庫中」,但是在沒安裝的狀態下,在你的庫中甚至都找不到它的名字,應該就是這個樣子吧……而「No Cost」遊戲,一旦在庫中,無論安不安裝,它都會出現在列表裡。
該帖下面有個「引用」(https://keylol.com/t139360-1-1),這個被引用的帖子裡面介紹了第二種方法,通過「Monkey類」插件達到同樣的效果。大家看看哪種方法適合自己吧,其實原理都一樣的。其實我在很多年之前就接觸到了腳本類的擴展,真的好用,建議喜歡折騰的朋友們研究研究,這是題外話了。
上面這兩篇帖子因為是在社區論壇上發的,所以流通度並不是很高。直到知乎上面有人在徵得AK_Scrin的同意後,將內容搬到了上面(https://zhuanlan.zhihu.com/p/122346697),然後才有更多的人知道了這種方法。
下面就開始嘗試了,圖都是我自己截的,所以跟著我一步一步來,一定能成功。在這提醒一下,這種方法的原理是通過代碼代替手動依次領取代碼中的遊戲和工具,所以不會有什麼被封號的風險,我也是拿自己的帳號試的。
首先登陸網頁版Steam(https://store.steampowered.com),登錄進去之後,點擊右上角自己帳號的名字。
點擊「帳戶明細」。
在帳戶頁面點擊「查看許可和產品序列號激活」
這裡我用的方法和原帖不同了,原帖說的是右鍵頁面空白處,點選「檢查元素」,進入控制臺。我平常用Chrome,我記得右鍵是有這麼個「檢查元素」還是「審查元素」來著,但我這次並沒有找到,既然我們要的是Console,索性我直接按F12得了,效果一樣的。
找到Console,在「>」符號後面輸入以下代碼,代碼很長,複製的時候要注意哦。
(function(){ if( location.href.match(/^https:\/\/store\.steampowered\.com\/account\/licenses\/?$/ ) === null ) { alert( '請在Steam帳號明細頁面運行這些代碼:https://store.steampowered.com/account/licenses/' ); window.location ='https://store.steampowered.com/account/licenses/'; return; } var freePackages = [ 39166, 13261, 32032, 59373, 33694, 88162, 36561, 58514, 117526, 85604, 21478, 50861, 21473, 31538, 32287, 38085, 72261, 81026, 47333, 38820, 69802, 60341, 21416, 63207, 59253, 35063, 74465, ]; var ownedPackages = {}; jQuery( '.account_table a' ).each( function(i, el ){ var match = el.href.match(/javascript:RemoveFreeLicense\( ([0-9]+), '/ ); if( match !== null ) { ownedPackages[ +match[ 1 ] ] = true; } } ); var i = 0, loaded = 0, package = 0, total = freePackages.length, modal = ShowBlockingWaitDialog( '努力執行中...', '請耐心等待,如果有錯誤請無視,請耐心等待腳本加載完畢' ); for( ; i < total; i++ ) { package = freePackages[ i ]; if( ownedPackages[ package ] ) { loaded++; continue; } jQuery.post( '//store.steampowered.com/checkout/addfreelicense', { action: 'add_to_cart', sessionid: g_sessionID, subid: package } ).always( function( ){ loaded++; modal.Dismiss(); if( loaded >= total ) { location.reload(); } else { modal =ShowBlockingWaitDialog( '執行中...', '加載至 <b>' + loaded +'</b>/' + total + '.' ); } } ); }}());
複製後,直接Enter回車就開始執行了,你會看到頁面一直在提示「執行中……加載至xx/76」的字樣,總共有76個免費遊戲和工具進入你的遊戲庫了。複製代碼的時候不用在意縮進問題,就算沒有縮進一樣可以,我在試驗的時候故意將縮進全都刪除了,經實測,也可以起效果的。
其實仔細看這些代碼的話,不需要很懂應該就能看出來,領取的這76個遊戲和工具都羅列在其中,所以考慮到畢竟這代碼有年數了,所以如果勤快的話,可以自己加上最新的免費遊戲,代替手工一個一個領取哦。