当前位置:网站首页>饥荒联机版Mod开发——配置代码环境(二)
饥荒联机版Mod开发——配置代码环境(二)
2022-08-02 14:12:00 【夏湾】
饥荒联机版Mod开发——配置代码环境(二)
前言
回想起我刚写饥荒代码的时候,用的还是Notepad……后面改用了Notepad++有了参数高亮,但是没有官方的代码提示,调用API基本上都是在文件直接Copy。有时手敲代码,进饥荒就莫名其妙报错/崩溃。那段日子大部分时间都在重启游戏和找代码语法错误……直到某一天我摸索着使用了VS Code,官方代码提示/跳转,全局代码搜索,代码格式化,git管理,直接芜湖起飞。
下载VS Code和Lua插件
VS Code
https://code.visualstudio.com/Download
下载安装好后,点击左边的扩展(Ctrl+Shift+X)
输入lua,选择对应插件并安装(Lua插件比较多,基本上都能实现想要的功能)
同时,汉化也可以装上。
然后点击Lua控件的设置(齿轮),
格式化相关
排列 table 中元素(按Shift+Alt+F格式化代码)
代码检查(不关的话mod代码基本都是波浪)
建立工作区
首先来到饥荒目录Don’t Starve Together\data\databundles(wg的是饥荒联机版)下把scripts.zip解压出来(例如:F:\scripts)。之后打开VS Code,点击 文件->打开文件夹 ,打开scripts文件夹,如果出现这个提示,点是
下一步,点击 文件->将文件夹添加到工作区,添加 Don’t Starve Together\mods 。随便打开个mod的modmain,把随便放到函数上看是否有提示,按Ctrl+点击,看能否跳转代码。如果成功,那就可以点击 文件->将工作区另存为 把它存起来,方便下次打开。
以上基本的环境就配好了,下面是进阶技巧
Git和GitHub(可选)
这是为了管理文件,如果对此不熟悉的可以去看其他详细教程。
不过在填链接的时候推荐是ssl(网速快),而不是https。格式如下
[email protected]:UserName/XXX.git
创建文本文件 .gitignore 来避免上传多余的东西。
我习惯把用一个仓库存多个mod,所以我把仓库放在了mods文件夹下,并忽略上传多余的文件
# 忽略名称中开头为workshop的文件夹
workshop*/
dedicated_server_mods_setup_rail.lua
dedicated_server_mods_setup.lua
modsettings.lua
排除多余文件
同时,在mods文件夹下建立 .vscode 文件夹,并在里面创建 settings.json。来排除搜索,文件列表。
{
"search.exclude": {
"*workshop*" : true
},
"files.exclude": {
"workshop*" : true,
"**/.git": true,
"*.gitignore" : true,
"dedicated_server_mods_setup_rail.lua" : true,
"dedicated_server_mods_setup.lua" : true,
"modsettings.lua" : true,
".vscode" : true
}
}
效果如下(跳过git那步的应该不会亮)
删除scripts里多余文件
在VS Code的全局搜索中,经常搜到下面这些多余的文件,所以最好把它们删了。
- languages里非lua文件
- speech_xxx 角色说话列表
VS Code快捷键
按F1,去看官方的介绍
下面是我常用的VS Code快捷键
F1:有时不记得快捷键了,按F1搜以下就好
Ctrl + P:跳转文件
Ctrl + F :搜索
Ctrl + Shift + F :全局搜索
Shift + Alt + ↑或↓:复制粘贴当前行
Alt + ↑或↓:移动当前行
Ctrl + 点击函数:跳转到文件
边栏推荐
猜你喜欢
随机推荐
二叉排序树与 set、map
动态数组-vector
二叉排序树与 set、map
推开机电的大门《电路》(二):功率计算与判断
Redis常见面试题
Test case exercises
STM32LL库——USART中断接收不定长信息
关于推荐系统的随想
Mysql的锁
面试汇总
2021-03-12
第三十一章:二叉树的概念与性质
unity-shader(中级)
十天学习Unity3D脚本(一)九个回调
软件测试基础知识(背)
二叉树创建之层次法入门详解
开心一下,9/28名场面合集
LeetCode 2344. 使数组可以被整除的最少删除次数 最大公约数
7.Redis
2. Log out, log in state examination, verification code