L3HCTF 2025 Misc Why not read it out? 详解

一道抛开脑洞部分,还是有点意思的语言题

只有一个是jpg文件头的README文件

img

以及 文件尾的信息:

1
==wdllmdlJFIOdUSgoDduFDa
1
h1nt: IGN Review

tunic

根据狐狸手,以及文字特点,找到了游戏【TUNIC】 【TUNIC】教你如何阅读狐狸文字

why not tunic font

table1

table2

table3

但找了很多个字母表,翻译器,都找不到符合这种情况的

img

仔细了解,这个文字在官方设计中的结构是如下图所示的:(我画的可能有些偏差)

img其中左外圈绿色这部分,在游戏中不可能出现断开的情况

因为这个图形 实际上是长方体从一个角看过来的投影,

左边就是一条边,而中间实际上是两条边重叠,所以是有可能只有一段点亮的情况

about Trunic

(接下来用Trunic指代这种没有具体命名的文字)

中横线

img中间的横线是无意义的,代表书面语,也可以指代word的split

主体线条

表音文字(英语:phonogram)指一个语言在表达其内容时,其记录的形式和符号,是以语音来表注的文字系统,这会与其口语达成一定的吻合。这套记录的符号,就被称为表音文字。例如:拉丁文字假名谚文等。

Trunic这种文字就是一种表音文字, 外圈和内圈分别代表英文的音素的两大类,也就是 元音和辅音

由character组成word word内的字符

也就是说一个最小单位的Trunic可以指代 1-2种音素

下标圆

Trunic有时会是带有下标的状态:

img这个圆圈代表元音和辅音位置交换

默认状态是先辅音后元音,加上后会就变成先元音后辅音

比如img是指代/t//ɪ/,加上下标就变成了/ɪ//t/

continue

需要一些脑洞

也就是说,网上可能没有码表,要自己推测

那么就要继续脑洞了,这个IGN Review到底怎么用?

(队友G3师傅的脑洞)

直接搜索引擎搜 ign review tunic 能得到一篇文章:https://www.ign.com/articles/tunic-review-xbox-pc-steam

里面的前两段是这样的:

Don’t let Tunic’s first-glance charm fool you. Actually, nevermind – go ahead and enjoy that charm. It’s a gorgeous game with a colorful, almost Link’s Awakening-esque art style, beautifully serene music, and an adorable sword-wielding fox for a protagonist. Enjoy it, because even though Tunic may look like a simplistic isometric action-adventure that draws clear inspiration from the early Legend of Zelda games, it is in reality a decidedly hardcore experience that will fiercely test both your mind and your combat abilities. It’s not “kiddier Zelda,” as its bushy-tailed hero suggests (though Tunic himself should be made into a real-life plush immediately). Instead, Tunic caught me off guard with its challenging combat and complex puzzles, and once I regained my footing I found that it executes on that premise wonderfully.

One of my favorite things about Tunic is that, like the old-school classics it clearly takes inspiration from, it tells you nothing. Less than nothing, in fact: nearly all of its dialogue and in-game language is in an indecipherable script, Tunic never speaks, and there are no objective markers, hints, or breadcrumb trails to speak of. Everything must be intuited, which is done partly through exploration but primarily through the individual pages of the in-game instruction manual that you’ll find scattered about the world.

这个引号和-是不是很眼熟

img

得到明文

再把这段可能是明文的文字,转成英文的音标(音素)

这里用的工具是:https://tophonetics.com/zh/

英式发音

dəʊnt lɛt ˈtjuːnɪks fɜːst-ɡlɑːns ʧɑːm fuːl juː. ˈækʧuəli, ˈnɛvəˌmaɪnd – ɡəʊ əˈhɛd ænd ɪnˈʤɔɪ ðæt ʧɑːm. ɪts ə ˈɡɔːʤəs ɡeɪm wɪð ə ˈkʌləfᵊl, ˈɔːlməʊst lɪŋks əˈweɪkᵊnɪŋ-esque ɑːt staɪl, ˈbjuːtɪfᵊli sɪˈriːn ˈmjuːzɪk, ænd ən əˈdɔːrəbᵊl sɔːd-ˈwiːldɪŋ fɒks fɔːr ə prəˈtæɡənɪst. ɪnˈʤɔɪ ɪt, bɪˈkɒz ˈiːvᵊn ðəʊ ˈtjuːnɪk meɪ lʊk laɪk ə sɪmˈplɪstɪk isometric ˈækʃᵊn-ədˈvɛnʧə ðæt drɔːz klɪər ˌɪnspɪˈreɪʃᵊn frɒm ði ˈɜːli ˈlɛʤənd ɒv ˈzɛldə ɡeɪmz, ɪt ɪz ɪn riˈæləti ə dɪˈsaɪdɪdli ˈhɑːdˌkɔːr ɪkˈspɪəriəns ðæt wɪl ˈfɪəsli tɛst bəʊθ jɔː maɪnd ænd jɔː ˈkɒmbæt əˈbɪlətiz. ɪts nɒt “ˈkɪdiə ˈzɛldə,” æz ɪts ˈbʊʃi-teɪld ˈhɪərəʊ səˈʤɛsts (ðəʊ ˈtjuːnɪk hɪmˈsɛlf ʃʊd biː meɪd ˈɪntuː ə rɪəl-laɪf plʌʃ ɪˈmiːdiətli). ɪnˈstɛd, ˈtjuːnɪk kɔːt miː ɒf ɡɑːd wɪð ɪts ˈʧælɪnʤɪŋ ˈkɒmbæt ænd ˈkɒmplɛks ˈpʌzᵊlz, ænd wʌns aɪ rɪˈɡeɪnd maɪ ˈfʊtɪŋ aɪ faʊnd ðæt ɪt ˈɛksɪkjuːts ɒn ðæt ˈprɛmɪs ˈwʌndəfᵊli.

美式发音

doʊnt lɛt ˈtunɪks fɜrst-ɡlæns ʧɑrm ful ju. ˈækʧuəli, ˈnɛvərˌmaɪnd – ɡoʊ əˈhɛd ænd ɛnˈʤɔɪ ðæt ʧɑrm. ɪts ə ˈɡɔrʤəs ɡeɪm wɪð ə ˈkʌlərfəl, ˈɔlˌmoʊst lɪŋks əˈweɪkənɪŋ-ɛsk ɑrt staɪl, ˈbjutəfli səˈrin ˈmjuzɪk, ænd ən əˈdɔrəbəl sɔrd-ˈwildɪŋ fɑks fɔr ə proʊˈtæɡənəst. ɛnˈʤɔɪ ɪt, bɪˈkɔz ˈivɪn ðoʊ ˈtunɪk meɪ lʊk laɪk ə sɪmˈplɪstɪk isometric ˈækʃən-ædˈvɛnʧər ðæt drɔz klɪr ˌɪnspəˈreɪʃən frʌm ði ˈɜrli ˈlɛʤənd ʌv ˈzɛldə ɡeɪmz, ɪt ɪz ɪn ˌriˈæləˌti ə ˌdɪˈsaɪdədli ˈhɑrdˈkɔr ɪkˈspɪriəns ðæt wɪl ˈfɪrsli tɛst boʊθ jʊər maɪnd ænd jʊər ˈkɑmbæt əˈbɪlətiz. ɪts nɑt “ˈkɪdiər ˈzɛldə,” æz ɪts ˈbʊʃi-teɪld ˈhɪroʊ səɡˈʤɛsts (ðoʊ ˈtunɪk hɪmˈsɛlf ʃʊd bi meɪd ˈɪntu ə riəl-laɪf plʌʃ ɪˈmidiətli). ɪnˈstɛd, ˈtunɪk kɑt mi ɔf ɡɑrd wɪð ɪts ˈʧælənʤɪŋ ˈkɑmbæt ænd ˈkɑmplɛks ˈpʌzəlz, ænd wʌns aɪ riˈɡeɪnd maɪ ˈfʊtɪŋ aɪ faʊnd ðæt ɪt ˈɛksəˌkjuts ɑn ðæt ˈprɛmɪs ˈwʌndərfəli.

dəʊnt\doʊnt刚好四个音素:`/d//əʊ//n//t/ \ /d//oʊ//n//t/

img

可以对应上

let的lɛt同理,可以基本确定这就是明文,也就是说 需要选手自己根据已知信息推测码表

再 由于美式和英式元音有不同,所以需要一些测试,具体哪组是对的

再看kiddier Zelda对应的

1
2
英式 kɪdiə  ˈzɛldə : /k//ɪ//d//ɪə/      /z//e//l//d//ə/
美式 kɪdiər ˈzɛldə : /k//ɪ//d//ɪə//r/   /z//e//l//d//ə/
img

而图中 明显kiddier是四个音素组成的,也就是对应英式元音

这点通过first的音标也可以判断出来

得到flag

那就可以开始推理码表了

img

然后这是队友手搓的,有一点部分错误,比如/v/

img

然后主要是在纠错和通过音素还原单词,被brave:/b//r//eɪ//v/的v卡了一会,甚至错到了bravo上

img

然后先凑合的把flag交了,抢个血


not end

重写码表

这个题让我想起来一个“以破解新文字为主线”的游戏《巴别塔圣歌》

在做出来三血后,我打算看作游戏,做一个相对完整可读的表,以及方便的工具

这个由出题人编造的新文字,结构上更接近 https://lilithdesign.com.au/experiments/tunic-translator/

然后我基于这个源码二开了一个小工具,增加了一个渲染复制Trunic字符的按钮,花了三小时对照,写了一个新表

image-20250714004707511

现在可以在:https://blog.shenghuo2.top/tools/trunic-translator.html 使用此工具

然后写了一个快速创建新字典的工具

img

为了防止被复用于出题,我不会放出字典编辑器的源码

使用 字典编辑器 对做好的表编码,然后输入到 trunic-translator

狐语学家

那么就可以得到

img

img

img

img

img

  1. /ð//ə/ /k//ɒ//n//t//e//n//t/ /ʌ//v/ /f//l//æ//g/ /ɪ//z/: /k//ʌ//m/ /ɒ//n/ /l//ɪ//t//ə//l/ /b//r//eɪ//v/ /f//ɒ//k//s/

  2. /r//ɪ//p//l//eɪ//s/ /l//e//t//ə//r/ /əʊ/ /w//ɪ//s/ /n//ʌ//m//b//ə/ /z//ɪə//r//əʊ/, /l//e//t//ə//r/ /e//l/ /w//ɪ//s/ /n//ʌ//m//b//ə/ /w//ʌ//n/

  3. /r//ɪ//p//l//eɪ//s/ /l//e//t//ə//r/ /eɪ/ /w//ɪ//s/ /s//ɪ//m//b//ə//l/ /æ//t/

  4. /m//eɪ//k/ /e//v//r//ɪ/ /l//e//t//ə//r/ /i:/ /ʌ//p//ə//k//eɪ//s/

  5. /j//u://z/ /ʌ//n//d//ə//l//aɪ//n/ /t//ʊ/ /l//ɪ//ŋ//k/ /i://ʧ/ /w//ɜ//d/

1
2
3
4
5
1./ðə/ /kɒntent/ /ɒv/ /flæg/ /ɪz/: /kʌm/ /ɒn/ /lɪtəl/ /breɪv/ /fɒks/
2./rɪpleɪs/ /letər/ /əʊ/ /wɪs/ /nʌmbə/ /zɪərəʊ/, /letər/ /el/ /wɪs/ /nʌmbə/ /wʌn/
3./rɪpleɪs/ /letər/ /eɪ/ /wɪs/ /sɪmbəl/ /æt/
4./meɪk/ /evri/ /letər/ /i:/ /ʌpəkeɪs/
5./ju:z/ /ʌndəlaɪn/ /tu/ /lɪŋk/ /i:ʧ/ /wɜ:d/
1
2
3
4
5
1.The content of flag is: come on little brave fox
2.Replace letter O with number 0, letter L with number 1
3.Replace letter A with symbol @
4.Make every letter E uppercase
5.Use underline to link each word

flag也就是

1
L3HCTF{c0mE_0n_1itt1e_br@vE_f0x}
img

?

img

那么这个是什么单词?

0%