用于变形金组和其他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" 。