1. 关于 Go 代码执行方法#

由于需要科学上网才能使用 Go Playground, 所以就研究了通过反射来执行对应关卡代码的方法。

需要注意将关卡的解决方法定义成 Challenge 结构的方法,形式如下:

func (c *Challenge) Challengexxx() {
    // body
}

xxx 为关卡的三位数字形式,不足左边补 0。如:001002

因为依赖第三方包,所以在构建前请运行以下命令:

# 初始化模块,module_name 通常写为你项目的导入路径,例如:github.com/yourname/project
src/Code/Go> go mod init codehub.cn.eu.org/amos18284/strategy

# 获取 xmlrpc 包
src/Code/Go> go get github.com/kolo/xmlrpc

# 如果上一步因为网络环境拉取失败,可通过以下命令切换到国内的代理镜像
# 国内代理配置开始
> go env -w GOPROXY=https://goproxy.cn,direct
> go env -w GOSUMDB=sum.golang.google.cn
# 清除所有模块的本地缓存,可以解决因之前下载失败产生的缓存问题
> go clean -modcache
# 国内代理配置结束

# 编译 Code/Go 目录下的源文件,并在该目录生成 Challenge.exe 。对源文件更改后需要执行这条命令。
src/Code/Go> go build -o Challenge.exe

# 通过命令行参数指定要执行关卡的代码。 -l 代表 level,后面是关卡数字。
src/Code/Go> Challenge.exe -l 0

2. 关于 PowerShell 代码执行方法#

# 安装 PSXmlRpcClient
PS> Install-Module -Name PSXmlRpcClient

# 执行第 0 关的代码
src/Code/PowerShell> .\Challenge000.ps1

如果出现“无法加载文件 xxx,因为在此系统上禁止运行脚本。”

则需要以管理员权限运行命令行,执行 Set-ExecutionPolicy RemoteSigned ,并在提示后输入 Y 确认。

3. 关于 Python 代码执行方法#

# 创建虚拟环境
src/Code/Python> py -m venv .venv

# 激活虚拟环境
src/Code/Python> .\.venv\Scripts\Activate.ps1 

4. 查看官方的攻略#

将当前关卡地址的 pc 替换为 pcc,就会得到上一关的攻略地址。或者访问 Wiki主页


如果引用图片侵权,请联系我

5. 浏览本攻略#

❤️ 如果这篇文章对你有帮助,欢迎赞助支持我继续维护 ❤️

☕ Support me ⚡ 爱发电赞助