我正在使用 ORelio 的 Minecraft 控制台客户端将我的备用帐户连接到服务器。我编写了一个 Windows 批处理文件,可以打开客户端、登录我的帐户,然后连接到指定的服务器。
start MinecraftClient.exe (Account email) (Account Password) (Server IP Address)
从这里,我可以手动将任何我喜欢的命令输入客户端,或者直接输入命令让玩家在服务器聊天中说话。服务器有一个 10 分钟的 AFK 超时插件。我可以通过输入 /move north、east、south、west 或 up 来解决这个问题。我试图创建一个批处理文件,它既可以记录 alt,又可以每 5 分钟循环一次 /move up 命令,让玩家跳跃并避免将其注销。我尝试将其添加到 .bat 文件中,但它似乎会调出一个单独的 Windows 命令,该命令将从 10 倒计时,但不执行任何操作。
type /move up
timeout /t 10
goto loop
我将非常感激任何帮助,因为我已经从事这项工作有一段时间了,但是我对它还很陌生,因此我几乎没有任何知识/经验可以借鉴。
答案1
我没有 minecraft,但它应该与此类似。您可以在这里了解要点,然后使用 google sendkeys 和 powershell 进一步确定您想要做什么。
#intiate your batch file to login with command above
Start-Process C:\Path\login.bat
$wshell = New-Object -ComObject wscript.shell;
#window title name goes here, assuming it is minecraft
$wshell.AppActivate('Minecraft')
#begin infinite loop
while(1)
{
Sleep 5 #initiate a slight delay in the auto typing
$wshell.SendKeys('t') #typing t brings up chat box
Sleep 5 #another delay to allow chat box to come up
$wshell.SendKeys('/move up') #types slash move up
Sleep 5
$wshell.SendKeys('~') #this is the symbol for sending the ENTER keystroke
Sleep 300 #sleeps the program and goes back to the top after the timer is over
}
将所有这些内容复制并粘贴到记事本中,然后将其保存为 .ps1 文件。您需要编辑 login.bat 文件的路径,并确保 minecraft 程序上的窗口名称确实是 minecraft。