diff --git a/metadata/shortname.py b/metadata/shortname.py index e7839a22..7715ef84 100644 --- a/metadata/shortname.py +++ b/metadata/shortname.py @@ -9,17 +9,37 @@ __all__ = ["roles", "weapons", "roleToId", "roleToName", "weaponToName", "weapon # noinspection SpellCheckingInspection roles = { - 20000000: ["主角", "旅行者", "卑鄙的外乡人", "荣誉骑士", "爷", "风主", "岩主", "雷主", "草主", "履刑者", "抽卡不歪真君"], - 10000002: ["神里绫华", "Ayaka", "ayaka", "Kamisato Ayaka", "神里", "绫华", "神里凌华", "凌华", "白鹭公主", "神里大小姐"], - 10000003: ["琴", "Jean", "jean", "团长", "代理团长", "琴团长", "蒲公英骑士"], - 10000005: ["空", "Aether", "aether", "男主", "男主角", "龙哥", "空哥"], - 10000006: ["丽莎", "Lisa", "lisa", "图书管理员", "图书馆管理员", "蔷薇魔女"], - 10000007: ["荧", "Lumine", "lumine", "女主", "女主角", "莹", "萤", "黄毛阿姨", "荧妹"], - 10000014: ["芭芭拉", "Barbara", "barbara", "巴巴拉", "拉粑粑", "拉巴巴", "内鬼", "加湿器", "闪耀偶像", "偶像"], - 10000015: ["凯亚", "Kaeya", "kaeya", "盖亚", "凯子哥", "凯鸭", "矿工", "矿工头子", "骑兵队长", "凯子", "凝冰渡海真君"], + 20000000: [ + "主角", + "旅行者", + "卑鄙的外乡人", + "荣誉骑士", + "爷", + "风主", + "岩主", + "雷主", + "草主", + "履刑者", + "人之子", + "命定之人", + "荣誉骑士", + "小可爱", # 丽莎 + "小家伙", # 八重神子 + "金发异乡人", + "大黄金钓鱼手", # 派蒙 + "黄毛阿姨", + "黄毛叔叔", + "大黄倭瓜那菈", + ], + 10000002: ["神里绫华", "ayaka", "kamisato ayaka", "神里", "绫华", "神里凌华", "凌华", "白鹭公主", "神里大小姐", "冰骗骗花"], + 10000003: ["琴", "jean", "团长", "代理团长", "琴团长", "蒲公英骑士", "蒙德砍王", "骑士团的魂"], + 10000005: ["空", "aether", "男主", "男主角", "龙哥", "空哥", "王子"], + 10000006: ["丽莎", "lisa", "图书管理员", "图书馆管理员", "蔷薇魔女"], + 10000007: ["荧", "lumine", "女主", "女主角", "莹", "萤", "黄毛阿姨", "荧妹", "公主殿下"], + 10000014: ["芭芭拉", "barbara", "巴巴拉", "拉粑粑", "拉巴巴", "内鬼", "加湿器", "闪耀偶像", "偶像", "蒙德辣王"], + 10000015: ["凯亚", "kaeya", "盖亚", "凯子哥", "凯鸭", "矿工", "矿工头子", "骑兵队长", "凯子", "凝冰渡海真君", "花脸猫"], 10000016: [ "迪卢克", - "Diluc", "diluc", "卢姥爷", "姥爷", @@ -33,12 +53,43 @@ roles = { "卢卢伯爵", "落魄了", "落魄了家人们", + "哦哦哦", + "前夫哥", + "在此烧鸟真君", + "E键三连真君", + ], + 10000020: [ + "雷泽", + "razor", + "狼少年", + "狼崽子", + "狼崽", + "卢皮卡", + "小狼", + "小狼狼", + "小狼狗", + "小赛诺", + "替身使者", + "须佐狼乎", + "蒙德砍王", + "炸矿之星", + ], + 10000021: [ + "安柏", + "amber", + "安伯", + "兔兔伯爵", + "飞行冠军", + "侦查骑士", + "点火姬", + "点火机", + "打火机", + "打火姬", + "燃炬焚棘真君", + "初代目提瓦特第一火弓", ], - 10000020: ["雷泽", "Razor", "razor", "狼少年", "狼崽子", "狼崽", "卢皮卡", "小狼", "小狼狗"], - 10000021: ["安柏", "Amber", "amber", "安伯", "兔兔伯爵", "飞行冠军", "侦查骑士", "点火姬", "点火机", "打火机", "打火姬"], 10000022: [ "温迪", - "Venti", "venti", "温蒂", "风神", @@ -53,13 +104,31 @@ roles = { "诶嘿", "唉嘿", "摸鱼", + "最弱最丢人的七神", + "卖唱的大哥哥", + "巴巴托斯大人", + "欸嘿聚怪真君", + "荻花洲的吹笛人", + "直升机", ], - 10000023: ["香菱", "Xiangling", "xiangling", "香玲", "锅巴", "厨师", "万民堂厨师", "香师傅"], - 10000024: ["北斗", "Beidou", "beidou", "大姐头", "大姐", "无冕的龙王", "龙王"], - 10000025: ["行秋", "Xingqiu", "xingqiu", "秋秋人", "秋妹妹", "书呆子", "水神", "飞云商会二少爷"], + 10000023: [ + "香菱", + "xiangling", + "香玲", + "锅巴", + "厨师", + "万民堂厨师", + "香师傅", + "哪吒", + "锅巴发射器", + "无敌风火轮真君", + "舌尖上的璃月", + "提瓦特枪王", + ], + 10000024: ["北斗", "beidou", "大姐头", "大姐", "无冕的龙王", "稻妻人形继电石"], + 10000025: ["行秋", "xingqiu", "秋秋人", "秋妹妹", "书呆子", "水神", "飞云商会二少爷", "秋秋人", "6星水神", "玉老师"], 10000026: [ "魈", - "Xiao", "xiao", "杏仁豆腐", "打桩机", @@ -74,11 +143,17 @@ roles = { "矮子仙人", "三点五尺仙人", "跳跳虎", + "护法夜叉大将", + "金鹏大将", + "这里无能真君", + "抬头不见低头见真君", + "跳跳虎", + "随叫随到真君", + "成天冷着脸的帅气小哥", ], - 10000027: ["凝光", "Ningguang", "ningguang", "富婆", "天权星"], + 10000027: ["凝光", "ningguang", "富婆", "天权星", "寻山见矿真君"], 10000029: [ "可莉", - "Klee", "klee", "嘟嘟可", "火花骑士", @@ -92,17 +167,36 @@ roles = { "哒哒哒", "炸弹人", "禁闭室", + "艾莉丝的女儿", + "阿贝多的义妹", + "火化骑士", + "炸鱼禁闭真君", + "蒙德小坦克", + "骑士团团宠", ], - 10000030: ["钟离", "Zhongli", "zhongli", "摩拉克斯", "岩王爷", "岩神", "钟师傅", "天动万象", "岩王帝君", "未来可期", "帝君", "拒收病婿"], - 10000031: ["菲谢尔", "Fischl", "fischl", "皇女", "小艾米", "小艾咪", "奥兹", "断罪皇女", "中二病", "中二少女", "中二皇女", "奥兹发射器"], - 10000032: ["班尼特", "Bennett", "bennett", "点赞哥", "点赞", "倒霉少年", "倒霉蛋", "霹雳闪雷真君", "班神", "班爷", "倒霉", "火神", "六星真神"], + 10000030: [ + "钟离", + "zhongli", + "摩拉克斯", + "岩王爷", + "岩神", + "钟师傅", + "天动万象", + "岩王帝君", + "未来可期", + "帝君", + "契约之神", + "社会废人", + "未来可期真君", + "废人养成器", + "听书人", + ], + 10000031: ["菲谢尔", "fischl", "皇女", "小艾米", "小艾咪", "奥兹", "断罪皇女", "中二病", "中二少女", "中二皇女", "奥兹发射器"], + 10000032: ["班尼特", "bennett", "点赞哥", "点赞", "倒霉少年", "倒霉蛋", "霹雳闪雷真君", "班神", "班爷", "倒霉", "火神", "六星真神"], 10000033: [ "达达利亚", - "Tartaglia", "tartaglia", - "Childe", "childe", - "Ajax", "ajax", "达达鸭", "达达利鸭", @@ -112,14 +206,20 @@ roles = { "钱包", "鸭鸭", "愚人众末席", + "至冬国驻璃月港玩具推销员主管", + "钟离的钱包", + "近战弓兵", + "在蒙德认识的冒险家", + "永别冬都", + "汤达人", + "大貉妖处理专家", ], - 10000034: ["诺艾尔", "Noelle", "noelle", "女仆", "高达", "岩王帝姬"], - 10000035: ["七七", "Qiqi", "qiqi", "僵尸", "肚饿真君", "度厄真君", "77"], - 10000036: ["重云", "Chongyun", "chongyun", "纯阳之体", "冰棍"], - 10000037: ["甘雨", "Ganyu", "ganyu", "椰羊", "椰奶", "王小美"], + 10000034: ["诺艾尔", "noelle", "女仆", "高达", "岩王帝姬", "山吹", "冰萤术士", "岩王帝姬"], + 10000035: ["七七", "qiqi", "僵尸", "肚饿真君", "度厄真君", "77", "起死回骸童子", "救苦度厄真君", "椰羊创始人", "不卜庐砍王"], + 10000036: ["重云", "chongyun", "纯阳之体", "冰棍", "驱邪世家", "大外甥"], + 10000037: ["甘雨", "ganyu", "椰羊", "椰奶", "鸡腿猎人", "咕噜咕噜滚下山真君", "肝雨", "走路上山真君"], 10000038: [ "阿贝多", - "Albedo", "albedo", "可莉哥哥", "升降机", @@ -133,11 +233,18 @@ roles = { "阿贝夕", "abd", "阿师傅", + "小王子", + "调查小队队长", + "西风骑士团首席炼金术师", + "白垩老师", + "电梯人", + "蒙德岩神", + "平平无奇", + "蒙德NPC", ], - 10000039: ["迪奥娜", "Diona", "diona", "迪欧娜", "dio", "dio娜", "冰猫", "猫猫", "猫娘", "喵喵", "调酒师"], + 10000039: ["迪奥娜", "diona", "迪欧娜", "dio", "dio娜", "冰猫", "猫猫", "猫娘", "喵喵", "调酒师"], 10000041: [ "莫娜", - "Mona", "mona", "穷鬼", "穷光蛋", @@ -150,10 +257,11 @@ roles = { "阿斯托洛吉斯·莫娜·梅姬斯图斯", "梅姬斯图斯", "梅姬斯图斯卿", + "梅姬", + "半部讨龙真君", ], 10000042: [ "刻晴", - "Keqing", "keqing", "刻情", "氪晴", @@ -167,13 +275,16 @@ roles = { "屁斜剑法", "玉衡星", "阿晴", - " 啊晴", + "啊晴", + "得不到的女人", + "金丝虾球真君", + "璃月雷神", + "刻猫猫", ], - 10000043: ["砂糖", "Sucrose", "sucrose", "雷莹术士", "雷萤术士", "雷荧术士"], - 10000044: ["辛焱", "Xinyan", "xinyan", "辛炎", "黑妹", "摇滚"], + 10000043: ["砂糖", "sucrose", "雷莹术士", "雷萤术士", "雷荧术士"], + 10000044: ["辛焱", "xinyan", "辛炎", "黑妹", "摇滚"], 10000045: [ "罗莎莉亚", - "Rosaria", "rosaria", "罗莎莉娅", "白色史莱姆", @@ -196,12 +307,9 @@ roles = { ], 10000046: [ "胡桃", - "HuTao", "hutao", - "Hu Tao", "hu tao", - "Hutao", - "胡 淘", + "胡淘", "往生堂堂主", "火化", "抬棺的", @@ -210,17 +318,33 @@ roles = { "堂主", "胡堂主", "雪霁梅香", + "黑无常", + "嘘嘘鬼王", + "琪亚娜", + "薪炎之律者", ], - 10000047: ["枫原万叶", "Kazuha", "kazuha", "Kaedehara Kazuha", "万叶", "叶天帝", "天帝", "叶师傅"], - 10000048: ["烟绯", "Yanfei", "yanfei", "烟老师", "律师", "罗翔"], - 10000049: ["宵宫", "Yoimiya", "yoimiya", "霄宫", "烟花", "肖宫", "肖工", "绷带女孩"], - 10000050: ["托马", "Thoma", "thoma", "家政官", "太郎丸", "地头蛇", "男仆", "拖马"], - 10000051: ["优菈", "Eula", "eula", "优拉", "尤拉", "尤菈", "浪花骑士", "记仇", "劳伦斯"], + 10000047: ["枫原万叶", "kazuha", "kaedehara kazuha", "万叶", "叶天帝", "天帝", "人型气象观测台", "浪人武士"], + 10000048: ["烟绯", "yanfei", "烟老师", "律师", "罗翔", "璃月港的知名律法咨询师", "璃月罗翔", "铁人三项真君"], + 10000049: [ + "宵宫", + "yoimiya", + "霄宫", + "烟花", + "肖宫", + "肖工", + "绷带女孩", + "夏祭的女王", + "地对鸽导弹", + "打火姬二代目", + "长野原加特林", + "花见坂军火商", + ], + 10000050: ["托马", "thoma", "家政官", "太郎丸", "地头蛇", "男仆", "男妈妈"], + 10000051: ["优菈", "eula", "优拉", "尤拉", "尤菈", "浪花骑士", "记仇", "喷嚏记仇真君"], 10000052: [ "雷电将军", - "Shougun", - "Raiden Shogun", - "Raiden", + "shougun", + "raiden shogun", "raiden", "雷神", "将军", @@ -233,16 +357,56 @@ roles = { "奶香一刀", "无想一刀", "宅女", + "大御所大人", + "鸣神", + "永恒之神", + "姐控", + "不会做饭真君", + "宅女程序员", + "奶香一刀真君", + "雷电芽衣", + "又哭又闹真君", + ], + 10000053: ["早柚", "sayu", "小狸猫", "狸猫", "咕噜咕噜赶路真君", "柚岩龙蜥", "善于潜行的矮子", "专业人士"], + 10000054: [ + "珊瑚宫心海", + "kokomi", + "sangonomiya kokomi", + "心海", + "军师", + "珊瑚宫", + "书记", + "观赏鱼", + "水母", + "鱼", + "现人神巫女", + "宅家派节能军师", + "藤原千花", + "能量管理大师", + "五星观赏鱼", + "海天后", + "深海舌鲆鱼小姐", + ], + 10000055: ["五郎", "gorou", "柴犬", "土狗", "希娜", "希娜小姐", "海祇岛的小狗大将", "修勾", "五郎大将的朋友", "小狗勾"], + 10000056: [ + "九条裟罗", + "sara", + "kujou sara", + "九条", + "九条沙罗", + "裟罗", + "条家的养子", + "雷系班尼特", + "雷神单推头子", + "珊瑚宫心海的冤家", + "荒泷一斗的冤家", + "外置暴伤", + "维密天使", ], - 10000053: ["早柚", "Sayu", "sayu", "小狸猫", "狸 猫", "忍者"], - 10000054: ["珊瑚宫心海", "Kokomi", "kokomi", "Sangonomiya Kokomi", "心海", "军师", "珊瑚宫", "书记", "观赏鱼", "水母", "鱼", "美人鱼"], - 10000055: ["五郎", "Gorou", "gorou", "柴犬", "土狗", "希娜", "希娜小姐"], - 10000056: ["九条裟罗", "Sara", "sara", "Kujou Sara", "九条", "九条沙罗", "裟罗", "沙罗", "天狗"], 10000057: [ "荒泷一斗", - "Itto", "itto", - "Arataki Itto", + "arataki itto", "荒龙一斗", "荒泷天下第一斗", "一斗", @@ -257,27 +421,166 @@ roles = { "斗虫", "巧乐兹", "放牛的", + "岩丘丘萨满", + "伐伐伐伐伐木工", + "希娜小姐的榜一大哥", ], - 10000058: ["八重神子", "Miko", "miko", "Yae Miko", "八重", "神子", "狐狸", "想得美哦", "巫女", "屑狐狸", "骚狐狸", "八重宫司", "婶子", "小八"], - 10000059: ["鹿野院平藏", "Heizou", "heizou", "shikanoin heizou", "heizo", "鹿野苑", "鹿野院", "平藏", "鹿野苑平藏", "鹿野", "小鹿"], - 10000060: ["夜兰", "Yelan", "yelan", "夜阑", "叶 澜", "腋兰", "夜天后"], - 10000062: ["埃洛伊", "Aloy", "aloy"], - 10000063: ["申鹤", "Shenhe", "shenhe", "神鹤", "小姨", "小姨子", "审鹤"], - 10000064: ["云堇", "YunJin", "yunjin", "Yun Jin", "yun jin", "云瑾", "云先生", "云锦", "神女劈观"], - 10000065: ["久岐忍", "Kuki", "kuki", "Kuki Shinobu", "Shinobu", "shinobu", "97忍", "小忍", "久歧忍", "97", "茄忍", "阿忍", "忍姐"], - 10000066: ["神里绫人", "Ayato", "ayato", "Kamisato Ayato", "绫人", "神里凌人", "凌人", "0人", "神人", "零人", "大舅哥"], - 10000067: ["柯莱", "Collei", "collei", "柯来", "科莱", "科来", "小天使", "须弥安柏", "须弥飞行冠军", "见习巡林员", "克莱", "草安伯"], - 10000068: ["多莉", "Dori", "dori", "多利", "多力", "多丽", "奸商"], - 10000069: ["提纳里", "Tighnari", "tighnari", "小提", "提那里", "缇娜里", "提哪里", "驴", "柯莱老师", "柯莱师傅", "巡林官", "提那里"], - 10000070: ["妮露", "Nilou", "nilou", "尼露", "尼禄"], - 10000071: ["赛诺", "Cyno", "cyno", "赛洛"], - 10000072: ["坎蒂丝", "Candace", "candace", "坎迪斯"], - 10000073: ["纳西妲", "Nahida", "nahida", "草王", "草神", "小吉祥草王", "草萝莉", "艹萝莉", "羽毛球", "布耶尔", "纳西坦"], - 10000074: ["莱依拉", "Layla", "layla", "拉一拉", "莱伊拉"], - 10000075: ["流浪者", "Wanderer", "散兵", "伞兵", "国崩", "卢本伟", "大炮", "sb"], - 10000076: ["珐露珊", "Faruzan", "法露珊", "珐妹", "初音", "miku", "发露姗", "发姐", "法姐", "百岁珊"], - 10000077: ["瑶瑶", "Yaoyao", "遥遥"], - 10000078: ["艾尔海森", "Alhaitham", "爱尔海森", "艾尔海参", "艾尔", "海森", "海参", "海神"], + 10000058: [ + "八重神子", + "miko", + "yae miko", + "八重", + "神子", + "狐狸", + "想得美哦", + "巫女", + "屑狐狸", + "骚狐狸", + "八重宫司", + "婶子", + "小八", + "白辰血脉的后裔", + "兼具智慧和美貌的八重神子大人", + "稻妻老八", + "雷丘丘萨满", + "八重樱", + "嗑瓜子", + "小奥兹", + "玲珑油豆腐小姐", + ], + 10000059: [ + "鹿野院平藏", + "heizou", + "shikanoin heizou", + "heizo", + "鹿野苑", + "鹿野院", + "平藏", + "鹿野苑平藏", + "鹿野", + "小鹿", + "天领奉行侦探", + "鹿野奈奈的表弟", + "风拳前锋军", + "拳师", + "名侦探柯南", + "捕快展昭", + ], + 10000060: ["夜兰", "yelan", "夜阑", "叶澜", "腋兰", "夜天后", "自称就职于总务司的神秘人士", "岩上茶室老板", "夜上海", "胸怀大痣"], + 10000062: ["埃洛伊", "aloy", "异界的救世主"], + 10000063: ["申鹤", "shenhe", "神鹤", "小姨", "小姨子", "审鹤", "仙家弟子", "驱邪世家旁", "药材杀手"], + 10000064: ["云堇", "yunjin", "yun jin", "云瑾", "云先生", "云锦", "神女劈观", "岩北斗", "五更琉璃"], + 10000065: [ + "久岐忍", + "kuki", + "kuki shinobu", + "shinobu", + "97忍", + "小忍", + "久歧忍", + "97", + "茄忍", + "阿忍", + "忍姐", + "鬼之副手", + "不是忍者的忍者", + "医疗忍者", + "考证专家", + ], + 10000066: [ + "神里绫人", + "ayato", + "kamisato ayato", + "绫人", + "神里凌人", + "凌人", + "0人", + "神人", + "零人", + "大舅哥", + "神里绫华的兄长", + "荒泷一斗的虫友", + "奥托", + "奥托·阿波卡利斯", + "奥托主教", + "藏镜仕男", + "袖藏奶茶真君", + "真正的甘雨", + "可莉的爷爷", + ], + 10000067: [ + "柯莱", + "collei", + "柯来", + "科莱", + "科来", + "小天使", + "须弥安柏", + "须弥飞行冠军", + "见习巡林员", + "克莱", + "草安伯", + "道成林见习巡林员", + "提纳里的学徒", + "安柏的挚友", + "兰那罗奶奶", + ], + 10000068: ["多莉", "dori", "多利", "多力", "多丽", "奸商", "须弥百货商人", "歌玛哈巴依老爷", "艾尔卡萨扎莱宫之主"], + 10000069: [ + "提纳里", + "tighnari", + "小提", + "提那里", + "缇娜里", + "提哪里", + "驴", + "柯莱老师", + "柯莱师傅", + "巡林官", + "提那里", + "耳朵很好摸", + "道成林巡林官", + "柯莱的师父", + ], + 10000070: ["妮露", "nilou", "尼露", "祖拜尔剧场之星", "红牛"], + 10000071: ["赛诺", "cyno", "赛洛", "大风纪官", "大风机关", "胡狼头大人", "夹击妹抖", "游戏王", "冷笑话爱好者"], + 10000072: ["坎蒂丝", "candace", "坎迪斯", "水北斗", "赤王后裔", "阿如村守护者"], + 10000073: [ + "纳西妲", + "nahida", + "草王", + "草神", + "小吉祥草王", + "草萝莉", + "艹萝莉", + "羽毛球", + "布耶尔", + "纳西坦", + "摩诃善法大吉祥智慧主", + "智慧之神", + "草木之主", + ], + 10000074: ["莱依拉", "layla", "拉一拉", "莱伊拉", "莫娜的同行", "西琳", "黑塔"], + 10000075: [ + "流浪者", + "wanderer", + "散兵", + "伞兵", + "伞兵一号", + "国崩", + "卢本伟", + "大炮", + "sb", + "斯卡拉姆齐", + "倾奇者", + "黑主", + "崩崩小圆帽", + "七叶寂照秘密主", + "正机之神", + ], + 10000076: ["珐露珊", "faruzan", "法露珊", "珐妹", "初音", "miku", "发露姗", "发姐", "法姐", "百岁珊", "初音未来", "童姥", "知论派名宿"], + 10000077: ["瑶瑶", "yaoyao", "遥遥", "遥遥无期", "香菱师妹"], + 10000078: ["艾尔海森", "alhaitham", "爱尔海森", "艾尔海参", "艾尔", "海森", "海参", "海神"], } not_real_roles = [10000077, 10000078] weapons = { @@ -375,6 +678,7 @@ weapons = { @functools.lru_cache() def roleToName(shortname: str) -> str: """将角色昵称转为正式名""" + shortname = str.casefold(shortname) # 忽略大小写 return next((value[0] for value in roles.values() for name in value if name == shortname), shortname) @@ -382,6 +686,7 @@ def roleToName(shortname: str) -> str: @functools.lru_cache() def roleToId(name: str) -> int | None: """获取角色ID""" + name = str.casefold(name) return next((key for key, value in roles.items() for n in value if n == name), None) @@ -403,4 +708,5 @@ def weaponToId(name: str) -> int | None: @functools.lru_cache() def roleToTag(role_name: str) -> List[str]: """通过角色名获取TAG""" + role_name = str.casefold(role_name) return next((value for value in roles.values() if value[0] == role_name), [role_name])