Glyphica: Typing Survival

Glyphica: Typing Survival

32 ratings
导入自定义词书教程(四六级、考研等)
By Zzy
本攻略主要是教大家如何自定义词库,将《Glyphica: Typing Survival》变成一款学习软件。
项目Github仓库地址:https://github.com/ZzySlhbcf/Glyphica-Typing-Survival-Import-Word-Book
3
   
Award
Favorite
Favorited
Unfavorite
一、下载词书
知乎大佬ourongxing用Pyhton爬取了墨墨背单词App的所有词书,下面放出仓库链接,可自行前往下载。
Github仓库地址:https://github.com/busiyiworld/maimemo-export
下载全部项目后,在文件夹路径" \maimemo-export-main\exported\translation "中就是所有的中英对照词书了,本篇教程选择的是其中的" 2025考研英语7000词.csv "。
二、转换词书格式(指南简介中的链接中有代码和处理后的词库)
游戏支持的单词长度为4-8,且单词中只能出现小写字母。再加上词书中有小部分单词内容不规范,代码会将一部分单词过滤掉。
在桌面新建一个文件夹,将挑选的词书复制进去,并在同一文件夹下新建一个Python文件,输入以下内容并运行。(代码在教程最后,可前往复制
注:no_comma函数中黄色方框标注的标点为中文标点。
注:代码第62行将"001"替换为选择词书的文件名。
  • word_checker:过滤不规范单词。
  • revise_translation:单词会有多个词性,将他们拆分,后面会将不同词性释义与相同单词组合后放入词库。
  • no_comma:同类释义挑选一个。(更新:将过长的不同类释义再次拆分)
  • csv_writer:将词库导出到游戏文件夹下。
  1. 若是可以成功运行文件则直接跳转第三部分。
  2. 若是运行失败,则下载简介Github链接中的"English_Chinese_Translation_wordlist.csv"文件,并将其移动到"\Documents\Sphere Saves\aliasblack.glyphica\localization"文件夹中。
三、中文测试版本[正式版已更新中文此步跳过]
若已经为测试版的跳过该步骤。
  1. 在steam游戏库右键点击游戏→选择"属性"。
  2. 点击左侧"测试版"→在"私密测试"中输入"PolitePossumsInPurple"→点击右侧"检查代码"。
四、导入词书
进入游戏,在游戏主页按F9打开控制台,输入"info json English_Chinese_Translation"。回车后按F9关闭控制台,然后重启游戏。
再次进入游戏,将选项中的语言调整到如下图所示。
新开一局游戏(难度可选打字者模式),这样就可以愉快的学习英语啦。
五、附录
import pandas as pd import winreg import re letters = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"] word_list = [[] for i in range(4, 9)] def csv_writer(): dictionary = {} for i in range(4, 9): dictionary[f"{i}-LETTER WORDS"] = word_list[i-4] df_write = pd.DataFrame.from_dict(dictionary, orient='index') df_write = df_write.T key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r"Software\\Microsoft\Windows\\CurrentVersion\\Explorer\\Shell Folders") expanded_path, _ = winreg.QueryValueEx(key, "Personal") path = expanded_path+r"\\Sphere Saves\\aliasblack.glyphica\localization\\English_Chinese_Translation_wordlist.csv" df_write.to_csv(path, encoding='utf-8', index=False) def word_checker(word: str) -> bool: if len(word) > 8 or len(word) < 4: return False for letter in word: if letter not in letters: return False return True def no_comma(chinese: str) -> list: translation_list = [] chinese = chinese.replace(" ", "") chinese_translations = re.split(r';|;', chinese) for translation in chinese_translations: translation_list.append(re.split(r',|,', translation)[-1]) translation_list.sort(key=lambda i: len(i), reverse=False) if len(translation_list) <= 3: return [";".join(translation_list)] res = [] while len(translation_list) > 3: if len(translation_list) == 4: res.append(";".join(translation_list[0:2])) res.append(";".join(translation_list[2:])) break res.append(";".join(translation_list[0:3])) translation_list = translation_list[3:] return res def revise_translation(translations: list) -> str: translation_list = [] for translation in translations: pos_translation = translation.split(". ") if len(pos_translation) < 2: continue chinese_translation_list = no_comma(pos_translation[1]) for chinese_translation in chinese_translation_list: translation_list.append(pos_translation[0]+"."+chinese_translation) return translation_list if __name__ == "__main__": df_read = pd.read_csv("001.csv", encoding='utf-8') for i in range(len(df_read)): row = df_read.iloc[i-0] word = row[0].lower() if not word_checker(word): continue try: translations = row[1].split('\n') except: continue translation_list = revise_translation(translations) if translation_list == []: continue for translation in translation_list: word_translation = word+" "+translation word_list[len(word)-4].append(word_translation) csv_writer()
10 Comments
waggieorr 9 Oct @ 10:35pm 
好使
7 Jul @ 1:52am 
最后一步输入文本后显示unrecognized object name是为什么呀?卡在最后这一步了。
新年快乐 10 Jun @ 9:08pm 
那个,大佬能不能简化下流程,太硬核了,看不懂啊啊==,我想通过你的方法,自己倒入中文双拼的词库
大橘为重 30 Apr @ 7:08pm 
很棒~
子不梦呓 16 Apr @ 9:44am 
切换了之后第三关boss只有一个字符。。。咋办捏
绒布球 11 Apr @ 9:39am 
牛啊·
晚风吹行舟 10 Apr @ 9:53am 
牛逼
七里香 6 Apr @ 7:45pm 
牛逼
Meguminium 2 Apr @ 12:10am 
牛啊
Udonge 1 Apr @ 8:11pm 
牛啊