用於變形金組和其他Atelier 801遊戲的自定義加載程序,迫使客戶連接到本地代理。
要構建,您應該使用asconfig.json文件來編譯TFMProxyLoader.swf文件。這可以使用VSCODE-AS3MXML或ASCONFIGC完成。
OU還需要將以下庫中的SWC文件放在lib文件夾下方的級別與asconfig.json文件相同的級別:
如果您想節省自己的麻煩,那麼此存儲庫的發行版中也有一個預先建造的SWF。
要使用此加載程序,您需要加載TFMProxyLoader.swf文件。如果您使用的是Transformice的Steam版本,則意味著您應該打開遊戲的本地文件,並用TFMProxyLoader.swf One替換包含的Transformice.swf文件(將其重命名為Transformice.swf )。
加載後,將有以下游戲的按鈕:
單擊按鈕將加載該遊戲,並使其連接到端口11801上的localhost 。您應該在那裡運行代理,例如Caseus的代理。遊戲將正常啟動,它將連接到代理,就好像連接到普通服務器一樣。
此外,按“ Enter”鍵將加載最後加載的遊戲,從而使您可以規避任何鼠標按下。
當加載程序在空氣運行時運行時,以下一節都不適用,例如Transformice的Steam版本。否則,還有其他與安全有關的事情要大驚小怪。
當不在空氣運行時運行時,加載程序將需要加載遊戲域的URL策略文件。所有遊戲都有這個(例如,Transformice's:https://www.transformice.com/crossdomain.xml),除了Fortoresse,使其無法加載。此外,每個遊戲都會為localhost:11801 。
當遊戲向localhost:11801 ,首先將嘗試端口843 。失敗的情況下,它將嘗試使用端口10801 ,如果也失敗了,它最終將嘗試目標端口, 11801 。因此,可以在端口10801上運行套接字策略服務器,從而消除了最終用戶禁用任何安全功能(對於Fortoresse以外的遊戲)的需求,並允許端口11801專用於典型的數據包流。
但是,如果您使用獨立投影儀並從文件中運行加載程序,則可以禁用所有有關策略文件的大驚小怪。為此,您可以將文件放在平台的相應位置:
%AppData%/Macromedia/Flash Player/#Security/FlashPlayerTrust/TFMProxyLoader.cfg~/Library/Preferences/Macromedia/Flash Player/#Security/FlashPlayerTrust/TFMProxyLoader.cfg~/.macromedia/Flash_Player/#Security/FlashPlayerTrust/TFMProxyLoader.cfg文件的內容應為包含代理加載程序SWF的目錄的路徑,例如,如果加載程序的路徑為/path/to/TFMProxyLoader.swf ,則在上面位置的配置文件的內容應為/path/to 。
這將使Fortoresse可以加載並阻止所有遊戲請求套接字策略文件。如果您知道其他任何方法來完成這兩個方面,請告訴我。
代理裝載機的尺寸與各種香草裝載機不同。值得注意的是,因為握手數據包包括stage.loaderInfo.bytes.length的值,與原始加載器SWF的未壓縮大小相對應,並且服務器接收到此字段的意外值,則它將關閉連接,並且遊戲將顯示“不正確的版本”消息。因此,裝載機連接的代理應注意用有效的大小替換此值。
0x1FBD的尺寸將適用於所有遊戲,因為這是Windows獨立版本中TransformiceAIR.swf文件的相應大小,可用於啟動所有遊戲。
加載程序發送某些自定義數據包,這些數據包未包含在Vanilla協議中。這些數據包稱為“擴展”數據包,具有以下格式:
(255, 255) 。這似乎是從香草協議中安全的。writeUTF / readUTF中)開頭,代表嵌套數據包的ID。這類似於遊戲如何使用Tribulle/Community Platform數據包。
擴展包的指紋將始終為0 ,應忽略,以便不要取消香草包的指紋。
加載程序將將包含數據包密鑰源的擴展包發送到代理,以便代理可以破譯(和重新調整)某些數據包。此數據包是在任何其他數據包之前發送的。它具有以下格式:
"packet_key_sources" 。發送數據包密鑰源後,加載程序將發送一個包含用於登錄數據包的“ auth鍵”的擴展包。它具有以下格式:
"auth_key" 。加載程序還將發送一個用於主服務器信息的擴展包,即其地址和端口。此數據包是在握手數據包之前發送的。它具有以下格式:
"main_server_info" 。