饥荒联机版Mod开发——配置代码环境(二)

前言

回想起我刚写饥荒代码的时候,用的还是Notepad……后面改用了Notepad++有了参数高亮,但是没有官方的代码提示,调用API基本上都是在文件直接Copy。有时手敲代码,进饥荒就莫名其妙报错/崩溃。那段日子大部分时间都在重启游戏和找代码语法错误……直到某一天我摸索着使用了VS Code,官方代码提示/跳转,全局代码搜索,代码格式化,git管理,直接芜湖起飞。

下载VS Code和Lua插件

VS Code
https://code.visualstudio.com/Download

下载安装好后,点击左边的扩展(Ctrl+Shift+X)
在这里插入图片描述
输入lua,选择对应插件并安装(Lua插件比较多,基本上都能实现想要的功能)
在这里插入图片描述
同时,汉化也可以装上。
在这里插入图片描述

建立工作区

首先来到饥荒目录Don’t Starve Together\data\databundles(wg的是饥荒联机版)下把scripts.zip解压出来,名字不能是scripts,方便后面忽略操作(例如:F:_scripts)。之后打开VS Code,点击 文件->打开文件夹 ,打开_scripts文件夹,如果出现这个提示,点是
在这里插入图片描述
下一步,点击 文件->将文件夹添加到工作区,添加 Don’t Starve Together\mods ,以及其他需要加个文件夹。

配置Lua插件

点击插件右边的齿轮
在这里插入图片描述
修改这两个地方的路径(上面的作用不大,主要是下面的,忽略文件夹内的代码错误)
在这里插入图片描述
同时划到下面,保证开启了代码检查
在这里插入图片描述
可选部分

  1. 降低内存消耗,把Luahelper.Warn:All Enable 下面的除了这个语法检查,其他的关闭
    在这里插入图片描述
  2. 代码格式化(Shift + Alt + F)
    把这个勾上,Asset就不会跑到{ 那里去了
    3.
  3. 颜色
    如果看不惯这插件的颜色,可以直接关了。用VS Code自带颜色即可
    在这里插入图片描述
    打开任意mod下面的modmain,把鼠标放上去看是否有代码提示(Ctrl+左键 跳转)
    在这里插入图片描述

以上基本的环境就配好了,下面是进阶技巧

Git和GitHub(可选)

这是为了管理文件,如果对此不熟悉的可以去看其他详细教程。
不过在填链接的时候推荐是ssh(网速快),而不是https。格式如下
git@github.com: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 + 点击函数:跳转到文件
在这里插入图片描述
在这里插入图片描述

传送门

→饥荒联机版Mod开发——制作简单的物品(三)
←饥荒联机版Mod开发——准备工具(一)

### Don't Starve Together 字体 Mod 的工作原理 #### 自定义字体加载机制 在 `Don't Starve Together` 中,Mod 是通过特定的文件结构和 API 来实现功能扩展的。对于字体 Mod 而言,其核心在于替换或新增游戏中使用的字体资源,并确保这些新字体能够被正确加载并应用到游戏界面中。 1. **字体文件放置位置** 游戏会从指定路径读取字体文件。通常情况下,开发者需要将新的 TTF 或 OTF 文件放入 Mod 的资源目录下。例如,在 Mod 结构中可以创建一个名为 `font` 的子文件夹来存储自定义字体[^3]。 2. **配置文件修改** 配置文件(通常是 `.lua` 文件)用于描述如何加载字体以及将其绑定到 UI 组件上。开发人员可以通过编辑 `modmain.lua` 文件或其他相关脚本文件,调用内置函数如 `FONT:SetFont()` 或类似的接口来动态设置字体样式[^1]。 3. **API 使用说明** 开发者利用官方提供的 Lua Scripting Interface (LSI),编写逻辑代码以控制字体的应用范围。这可能涉及重新定义某些 UI 控件的行为或者覆盖默认渲染方法。具体来说,以下是一个简单的例子展示如何更改全局字体: ```lua -- 定义一个新的字体对象 local custom_font = { name = "CustomFont", -- 字体名称 path = "mods/my_custom_mod/font/custom.ttf" -- 字体文件相对路径 } -- 注册该字体供后续使用 RegisterFont(custom_font) -- 应用至所有文本标签 for _, widget in pairs(GetWidgetList()) do if widget:IsText() then widget:SetFont("CustomFont") -- 设置为刚才注册的新字体 end end ``` 上述代码片段展示了基本流程:先声明字体参数并通过 `RegisterFont()` 函数完成初始化;接着遍历当前场景内的所有文字控件并将它们切换成目标字体[^2]。 4. **注意事项** - 不同平台间可能存在兼容性差异,请务必针对 Windows、MacOS 和 Linux 进行充分测试。 - 如果计划发布公共可用本,则需考虑权问题——所选用字体是否允许自由分发至关重要。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值