Theseus 模组文档
开始

THS 简易语言

面向零基础,用简单脚本就能做出游戏模组


什么是 THS?

THS 是一种简单的脚本语言,专门为 Theseus 游戏设计。你不需要学习 Java 就能用 THS 做出自己的模组。

THS 能做什么:


快速开始

1. 创建文件

在游戏目录的 mods 文件夹中,创建一个以 .ths 结尾的文件。

2. 写模板

text
# 这是我的第一个 THS 模组
name "我的第一个模组"
id "my_first_mod"
author "你的名字"
version "1.0"

3. 添加效果

text
# 启用花屏滤镜
set_filter "glitch" {
    intensity = 0.5
    speed = 1.0
}

4. 在游戏里启用

  1. 启动游戏,进入主菜单的"模组管理"
  2. 找到你的模组,启用它
  3. 进入游玩,效果就出现了

在线体验

不用启动游戏,直接在下面试玩 THS。选择一个预设示例,修改脚本里的参数,点击"运行",右侧的模拟游玩画面会实时展示脚本效果。想改哪里就改哪里,改坏了点"重置"再来。


实时预览实时预览:选择预设示例,修改脚本,运行即可看到滤镜 / HUD / 特效 / 触发器效果
预览加载中…

语法

注释

text
# 这是一行注释

元信息

text
name "模组名"
id "模组标识"
author "作者"
version "1.0"

模板配置

text
set_filter "模板名" {
    参数名 = 值
}

不同模板关键字:

事件

text
on_combo 50 {
    trigger "flash" {
        color = "255 255 255"
        duration = 0.5
    }
}

基本绘制

text
on_render {
    color 255 255 255
    text "Hello" 100 100
    rect 50 50 200 30
    line 0 0 100 100
}

模板列表

滤镜模板

模板名参数效果
glitchintensity (0-1), speed (0-2)花屏噪点
monochromeamount (0-1)黑白去色
vignetteradius (0-0.5), darkness (0-1)边缘暗角

判定模板

模板名参数效果
wideperfect (毫秒), great (毫秒)放宽判定
strictperfect (毫秒), great (毫秒)收窄判定窗口(需注意:多个判定策略叠加时取最大窗口,收紧类策略需单独使用)

HUD 模板

模板名参数效果
comboposition (top/center/bottom), color (R G B), font_size自定义连击显示

特效模板

模板名参数说明
burstcount, speed, color粒子爆发

触发器模板

模板名参数效果
shakeduration (秒), intensity画面抖动
flashcolor (R G B), duration (秒)全屏闪白,duration 秒后淡出结束
messagetext, color (R G B), opacity (0-1), duration (秒), text_color, font_size全屏提示层 + 居中文字,duration 秒后自动消失

事件列表

事件示例说明
on_combo Non_combo 50 { ... }连击数达到 N 时触发
on_miss_count Non_miss_count 3 { ... }连续 Miss N 次时触发(中途命中会清零重新计数)
on_misson_miss { ... }每次 Miss 时触发
on_game_starton_game_start { ... }游戏开始时触发
on_game_endon_game_end { ... }游戏结束时触发
on_renderon_render { ... }每帧触发,可绘制内容
on_note_judgedon_note_judged { ... }音符被判定时触发

命令参考

命令用法说明
loglog "文字"输出日志
colorcolor 255 255 255设置绘制颜色
texttext "文字" x y绘制文本
rectrect x y w h绘制矩形
lineline x1 y1 x2 y2绘制线条
ifif score > 900000 { ... }条件判断
letlet x = 5赋值变量
triggertrigger "shake" { duration = 2.0 }触发效果
effecteffect "burst" { count = 10 }播放特效

完整示例

text
# 综合示例
name "我的综合模组"
id "my_ultimate_mod"
author "你的名字"
version "1.0"

# 启用花屏和暗角滤镜
set_filter "glitch" {
    intensity = 0.3
    speed = 0.8
}

set_filter "vignette" {
    radius = 0.3
    darkness = 0.5
}

# 自定义连击显示
hud "combo" {
    position = "top"
    color = "0 255 200"
    font_size = 48
}

# 放宽判定
set_judgment "wide" {
    perfect = 80
    great = 150
}

# 连击到 100 触发闪白庆祝
on_combo 100 {
    trigger "flash" {
        color = "255 255 255"
        duration = 0.5
    }
}

# 每帧绘制分数
on_render {
    color 255 255 255
    text "Score: " + score 20 20
}

连续 Miss 提醒示例

连续 Miss 3 次时,在屏幕上叠加一层白色提示层,同时显示警示文字,1.5 秒后自动消失。中途只要命中一次,连续计数就会清零重新开始。

text
# 连续 Miss 提醒
name "连续 Miss 提醒"
id "miss_streak_demo"
author "你的名字"
version "1.0"

on_miss_count 3 {
    trigger "message" {
        text = "注意节奏!"
        color = 255 255 255
        opacity = 0.85
        duration = 1.5
    }
}