├── keygen ├── Genshin │ ├── get_keys.py │ └── README.md ├── StarRail │ ├── README.md │ ├── get_keys.py │ ├── 1.4 │ │ ├── GetVideoVersionKeyScRsp.json │ │ └── VideoConfig.json │ ├── 1.5 │ │ ├── GetVideoVersionKeyScRsp.json │ │ └── VideoConfig.json │ ├── 1.6 │ │ ├── GetVideoVersionKeyScRsp.json │ │ └── VideoConfig.json │ ├── 2.0 │ │ ├── GetVideoVersionKeyScRsp.json │ │ └── VideoConfig.json │ ├── 2.1 │ │ ├── GetVideoVersionKeyScRsp.json │ │ └── VideoConfig.json │ └── 2.2 │ │ ├── GetVideoVersionKeyScRsp.json │ │ └── VideoConfig.json ├── README.md └── main.py ├── requirements.txt ├── PyCriUsm ├── __init__.py ├── util.py ├── key.py ├── demux.py ├── fast_core.pyx └── keys.json ├── setup.py ├── README.md └── .gitignore /keygen/Genshin/get_keys.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | Cython 2 | setuptools 3 | -------------------------------------------------------------------------------- /keygen/Genshin/README.md: -------------------------------------------------------------------------------- 1 | Refer to GI-Cutscene 2 | Work in progress -------------------------------------------------------------------------------- /PyCriUsm/__init__.py: -------------------------------------------------------------------------------- 1 | from .demux import extract_usm 2 | from .util import init_log as _init_log 3 | _init_log('PyCriUsm', True) -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup 2 | from Cython.Build import cythonize 3 | from distutils.extension import Extension 4 | 5 | setup( 6 | name='PyCriUsm', 7 | version='0.2.0', 8 | description='A Module to decrypt CRI USM files', 9 | author='unipendix', 10 | ext_modules=cythonize(Extension("pycriusm.fast_core", ["pycriusm/fast_core.pyx"])), 11 | zip_safe=False, 12 | ) -------------------------------------------------------------------------------- /keygen/StarRail/README.md: -------------------------------------------------------------------------------- 1 | **GetVideoVersionKeyScRsp** need to be captured by packet sniffer tools like [Iridium-SR](https://github.com/tamilpp25/Iridium-SR) from game packet. 2 | 3 | **VideoConfig** can extract from design data or get from [dim's repo](https://github.com/Dimbreath/StarRailData/blob/master/ExcelOutput/VideoConfig.json) 4 | 5 | Many thanks to Tart for providing GetVideoVersiobKeyScRsp packet data -------------------------------------------------------------------------------- /keygen/README.md: -------------------------------------------------------------------------------- 1 | ## For User 2 | before update keys, you need to install some modules: 3 | 4 | ``pip install dataclasses_json`` 5 | 6 | Now just update some certain files and run main.py to update keys.json 7 | 8 | ## For Editor 9 | If you want your game support decryption, please do as below: 10 | 1. Create a folder under this directory with the name of the game 11 | 12 | 13 | 2. Create a script named get_keys.py, which contains the function __get_keys__ 14 | 15 | 16 | 3. __get_keys__ function must return audio encryption mode and keys dict(video name: key). In audio encryption mode, 0 stand for no encryption, 1 for USM encryption and 2 for HCA encryption(not supported yet). 17 | 18 | 19 | 3. You can add necessary files to the game folder. 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PyCriUsm 2 | a python library to decrypt and demux HSR cutscene video. In theory, it can demux any of the encrypted Usm file. But I only adapted to HSR.. 3 | 4 | The decryption module was written in cython so that we can achieve a speed 10x to 13x faster than WannaCRI and 1.4x faster than GI-Cutscene. 5 | 6 | Refer to [WannaCRI](https://github.com/donmai-me/WannaCRI) and [GI-Cutscene](https://github.com/ToaHartor/GI-cutscenes) 7 | 8 | ## Build Cython code 9 | 10 | Enter the repository and run this command 11 | 12 | ```python setup.py build_ext --inplace``` 13 | 14 | ## Example 15 | 16 | ``` 17 | import asyncio 18 | from pycriusm import extract_usm 19 | videos, audios = asyncio.run(extract_usm(video_path, output_folder, is_async=True)) 20 | ``` 21 | 22 | ## Roadmap 23 | 24 | - [x] USM decryption support 25 | - [ ] HCA decryption support(Used by GI) 26 | - [ ] More flexable and powerful option to control usm chunks 27 | 28 | -------------------------------------------------------------------------------- /keygen/main.py: -------------------------------------------------------------------------------- 1 | from pathlib import Path 2 | import json 3 | 4 | 5 | def import_helper(path): 6 | from importlib.util import spec_from_file_location, module_from_spec 7 | path = path / "get_keys.py" 8 | if path.is_file() is False: 9 | return 10 | spec = spec_from_file_location("get_keys", str(path)) 11 | if spec is None: 12 | Warning(f'Could not find {path.parent.name}\'s keygen module') 13 | return 14 | module = module_from_spec(spec) 15 | spec.loader.exec_module(module) 16 | return getattr(module, 'get_keys', None) 17 | 18 | 19 | def main(): 20 | keys = {} 21 | root = Path(__file__).parent 22 | for i in root.iterdir(): 23 | if i.is_file(): 24 | continue 25 | get_keys_func = import_helper(i) 26 | if get_keys_func is None: 27 | continue 28 | data = get_keys_func() 29 | keys[i.name] = {'Encrytion': data[0], 'KeyMap': data[1]} 30 | with open(root.parent / 'pycriusm/keys.json', 'w') as f: 31 | json.dump(keys, f, ensure_ascii=False, indent='\t') 32 | 33 | 34 | if __name__ == '__main__': 35 | main() -------------------------------------------------------------------------------- /PyCriUsm/util.py: -------------------------------------------------------------------------------- 1 | import asyncio 2 | from concurrent.futures import Future 3 | from concurrent.futures import ThreadPoolExecutor 4 | from os import cpu_count as _cpu_count 5 | cpu_pool = ThreadPoolExecutor() 6 | io_pool = ThreadPoolExecutor(_cpu_count() * 2) 7 | 8 | 9 | def init_log(name: str, is_debug=False): 10 | import logging 11 | logger = logging.getLogger(name) 12 | logger.setLevel(logging.DEBUG if is_debug else logging.INFO) 13 | 14 | console_handler = logging.StreamHandler() 15 | console_formatter = logging.Formatter('%(asctime)s %(name)s %(levelname)-4s: %(message)s') 16 | console_handler.setFormatter(console_formatter) 17 | logger.addHandler(console_handler) 18 | 19 | 20 | async def async_wait(*futures: Future): 21 | loop = asyncio.get_running_loop() 22 | ret = [] 23 | for future in futures: 24 | if isinstance(future, Future): 25 | future = await asyncio.wrap_future(future, loop=loop) 26 | ret.append(future) 27 | return ret 28 | 29 | 30 | def coro_wait(*futures: Future): 31 | ret = [] 32 | for future in futures: 33 | if isinstance(future, Future): 34 | future = future.result() 35 | ret.append(future) 36 | return ret 37 | 38 | 39 | def reg_dict(dic: dict, key, init_factory): 40 | obj = dic.get(key, None) 41 | if obj is None: 42 | obj = init_factory() 43 | dic[key] = obj 44 | return obj 45 | -------------------------------------------------------------------------------- /PyCriUsm/key.py: -------------------------------------------------------------------------------- 1 | from logging import getLogger 2 | logger = getLogger('PyCriUsm.Key') 3 | 4 | 5 | def _load_keys(): 6 | import json 7 | from pathlib import Path 8 | with (Path(__file__).parent / 'keys.json').open('rb') as f: 9 | return json.load(f) 10 | 11 | 12 | def _flat_key_map(keys): 13 | def core(data, share_dict: dict): 14 | i = None 15 | for i in data.values(): 16 | break 17 | if isinstance(i, int): 18 | share_dict.update(data) 19 | elif isinstance(i, dict): 20 | for i in data.values(): 21 | core(i, share_dict) 22 | else: 23 | raise TypeError('wrong keymap format') 24 | return share_dict 25 | 26 | def start_core(data): 27 | maps = {} 28 | core(data, maps) 29 | return maps 30 | 31 | from collections import defaultdict 32 | cache_map = defaultdict(dict) 33 | for i in keys.values(): 34 | cache_map[i['Encrytion']].update(start_core(i['KeyMap'])) 35 | return cache_map 36 | 37 | 38 | raw_keys = _load_keys() 39 | fast_lookup_keys = _flat_key_map(raw_keys) 40 | 41 | 42 | def get_crypt_args_from_config(key, mode): 43 | hca_key = 0 44 | audio_encryption = bool(mode) 45 | if mode == 2: 46 | if hasattr(key, '__len__'): 47 | hca_key = key[1] 48 | key = key[0] 49 | else: 50 | hca_key = key 51 | return key, audio_encryption, hca_key 52 | 53 | 54 | def get_key(video_path): 55 | key = 0 56 | mode = 0 57 | for mode, key_map in fast_lookup_keys.items(): 58 | key = key_map.get(video_path.stem, 0) 59 | if key: 60 | break 61 | if key == 0: 62 | mode = 0 63 | return get_crypt_args_from_config(key, mode) -------------------------------------------------------------------------------- /keygen/StarRail/get_keys.py: -------------------------------------------------------------------------------- 1 | from dataclasses_json import dataclass_json, LetterCase 2 | from dataclasses import dataclass 3 | import json 4 | from pathlib import Path 5 | 6 | 7 | @dataclass_json(letter_case=LetterCase.PASCAL) 8 | @dataclass 9 | class VideoConfigRow: 10 | video_id: int = 0 11 | video_path: str = '' 12 | is_player_involved: bool = False 13 | caption_path: str = '' 14 | encryption: bool = False 15 | 16 | 17 | def _get_hsr_decrypt_key(video_name: str, version_key: int): 18 | video_name = video_name.encode() 19 | name_hash = 0 20 | for i in video_name: 21 | name_hash = (name_hash * 11 + i) & 0xffffffffffffffff 22 | return ((version_key + name_hash) & 0xffffffffffffffff) % 72043514036987937 23 | 24 | 25 | def get_keys(): 26 | root = Path(__file__).parent 27 | loaded_key = set() 28 | all_keys = {} 29 | for sub_root in root.iterdir(): 30 | if sub_root.is_file() or sub_root.name[0].isdigit() is False: 31 | continue 32 | with open(sub_root / 'GetVideoVersionKeyScRsp.json') as f: 33 | data = tuple(json.load(f).values()) 34 | data = data[0] 35 | tmp_keys = {} 36 | for i in data: 37 | key1, key2 = map(int, i.values()) 38 | if key1 > 10000000: 39 | if key2 not in tmp_keys: 40 | tmp_keys[key2] = key1 41 | else: 42 | if key1 not in tmp_keys: 43 | tmp_keys[key1] = key2 44 | 45 | keys = {} 46 | with open(sub_root / 'VideoConfig.json') as f: 47 | data = json.load(f) 48 | if isinstance(data, dict): 49 | data = data.values() 50 | for i in data: 51 | i = VideoConfigRow.from_dict(i) 52 | if i.video_id in loaded_key: 53 | continue 54 | loaded_key.add(i.video_id) 55 | if i.encryption is False: 56 | continue 57 | version_key = tmp_keys.get(i.video_id, None) 58 | if version_key is None: 59 | Warning(f'Could not find {i.video_path} key') 60 | continue 61 | names = i.video_path.removesuffix('.usm') 62 | if i.is_player_involved: 63 | names = (names + '_f', names + '_m') 64 | else: 65 | names = (names,) 66 | for name in names: 67 | if name in keys: 68 | continue 69 | key = _get_hsr_decrypt_key(name, version_key) 70 | keys[name] = key 71 | all_keys[sub_root.name] = keys 72 | return 1, all_keys 73 | 74 | -------------------------------------------------------------------------------- /keygen/StarRail/1.4/GetVideoVersionKeyScRsp.json: -------------------------------------------------------------------------------- 1 | { 2 | "ACHENOJFHKL": [ 3 | { 4 | "IMEBDPMMEGD": 13230602, 5 | "id": 2760 6 | }, 7 | { 8 | "IMEBDPMMEGD": 13230602, 9 | "id": 2750 10 | }, 11 | { 12 | "IMEBDPMMEGD": 13230602, 13 | "id": 2740 14 | }, 15 | { 16 | "IMEBDPMMEGD": 12230525, 17 | "id": 2560 18 | }, 19 | { 20 | "IMEBDPMMEGD": 12230627, 21 | "id": 2550 22 | }, 23 | { 24 | "IMEBDPMMEGD": 11230119, 25 | "id": 2530 26 | }, 27 | { 28 | "IMEBDPMMEGD": 90220927, 29 | "id": 2480 30 | }, 31 | { 32 | "IMEBDPMMEGD": 90220927, 33 | "id": 2440 34 | }, 35 | { 36 | "IMEBDPMMEGD": 90220927, 37 | "id": 2420 38 | }, 39 | { 40 | "IMEBDPMMEGD": 14220714, 41 | "id": 1240 42 | }, 43 | { 44 | "IMEBDPMMEGD": 70220927, 45 | "id": 21 46 | }, 47 | { 48 | "IMEBDPMMEGD": 11230119, 49 | "id": 320 50 | }, 51 | { 52 | "IMEBDPMMEGD": 90220919, 53 | "id": 2450 54 | }, 55 | { 56 | "IMEBDPMMEGD": 12230601, 57 | "id": 100 58 | }, 59 | { 60 | "IMEBDPMMEGD": 62220927, 61 | "id": 7 62 | }, 63 | { 64 | "IMEBDPMMEGD": 12230601, 65 | "id": 101 66 | }, 67 | { 68 | "IMEBDPMMEGD": 14220714, 69 | "id": 1224 70 | }, 71 | { 72 | "IMEBDPMMEGD": 60220919, 73 | "id": 2 74 | }, 75 | { 76 | "IMEBDPMMEGD": 90220927, 77 | "id": 2490 78 | }, 79 | { 80 | "IMEBDPMMEGD": 13230706, 81 | "id": 2302 82 | }, 83 | { 84 | "IMEBDPMMEGD": 14220714, 85 | "id": 1221 86 | }, 87 | { 88 | "IMEBDPMMEGD": 14220714, 89 | "id": 1223 90 | }, 91 | { 92 | "IMEBDPMMEGD": 60220919, 93 | "id": 1 94 | }, 95 | { 96 | "IMEBDPMMEGD": 13230615, 97 | "id": 2630 98 | }, 99 | { 100 | "IMEBDPMMEGD": 14220714, 101 | "id": 1220 102 | }, 103 | { 104 | "IMEBDPMMEGD": 62220927, 105 | "id": 3 106 | }, 107 | { 108 | "IMEBDPMMEGD": 14220714, 109 | "id": 1222 110 | }, 111 | { 112 | "IMEBDPMMEGD": 13230602, 113 | "id": 2730 114 | }, 115 | { 116 | "IMEBDPMMEGD": 62220927, 117 | "id": 4 118 | }, 119 | { 120 | "IMEBDPMMEGD": 14220714, 121 | "id": 1200 122 | }, 123 | { 124 | "IMEBDPMMEGD": 90220927, 125 | "id": 2460 126 | }, 127 | { 128 | "IMEBDPMMEGD": 70220919, 129 | "id": 16 130 | }, 131 | { 132 | "IMEBDPMMEGD": 14220714, 133 | "id": 1180 134 | }, 135 | { 136 | "IMEBDPMMEGD": 62220927, 137 | "id": 5 138 | }, 139 | { 140 | "IMEBDPMMEGD": 14220714, 141 | "id": 2640 142 | }, 143 | { 144 | "IMEBDPMMEGD": 14220714, 145 | "id": 1230 146 | }, 147 | { 148 | "IMEBDPMMEGD": 70220919, 149 | "id": 8 150 | }, 151 | { 152 | "IMEBDPMMEGD": 12230601, 153 | "id": 102 154 | }, 155 | { 156 | "IMEBDPMMEGD": 12230525, 157 | "id": 2570 158 | }, 159 | { 160 | "IMEBDPMMEGD": 71220919, 161 | "id": 1160 162 | }, 163 | { 164 | "IMEBDPMMEGD": 71220927, 165 | "id": 310 166 | }, 167 | { 168 | "IMEBDPMMEGD": 12230627, 169 | "id": 2580 170 | }, 171 | { 172 | "IMEBDPMMEGD": 14220714, 173 | "id": 1170 174 | }, 175 | { 176 | "IMEBDPMMEGD": 14220714, 177 | "id": 1190 178 | }, 179 | { 180 | "IMEBDPMMEGD": 13230602, 181 | "id": 2620 182 | }, 183 | { 184 | "IMEBDPMMEGD": 13230706, 185 | "id": 1304 186 | }, 187 | { 188 | "IMEBDPMMEGD": 14220714, 189 | "id": 1210 190 | } 191 | ] 192 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | 6 | # C extensions 7 | *.so 8 | 9 | # Distribution / packaging 10 | .Python 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | .eggs/ 17 | lib/ 18 | lib64/ 19 | parts/ 20 | sdist/ 21 | var/ 22 | wheels/ 23 | share/python-wheels/ 24 | *.egg-info/ 25 | .installed.cfg 26 | *.egg 27 | MANIFEST 28 | 29 | # PyInstaller 30 | # Usually these files are written by a python script from a template 31 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 32 | *.manifest 33 | *.spec 34 | 35 | # Installer logs 36 | pip-log.txt 37 | pip-delete-this-directory.txt 38 | 39 | # Unit test / coverage reports 40 | htmlcov/ 41 | .tox/ 42 | .nox/ 43 | .coverage 44 | .coverage.* 45 | .cache 46 | nosetests.xml 47 | coverage.xml 48 | *.cover 49 | *.py,cover 50 | .hypothesis/ 51 | .pytest_cache/ 52 | cover/ 53 | 54 | # Translations 55 | *.mo 56 | *.pot 57 | 58 | # Django stuff: 59 | *.log 60 | local_settings.py 61 | db.sqlite3 62 | db.sqlite3-journal 63 | 64 | # Flask stuff: 65 | instance/ 66 | .webassets-cache 67 | 68 | # Scrapy stuff: 69 | .scrapy 70 | 71 | # Sphinx documentation 72 | docs/_build/ 73 | 74 | # PyBuilder 75 | .pybuilder/ 76 | target/ 77 | 78 | # Jupyter Notebook 79 | .ipynb_checkpoints 80 | 81 | # IPython 82 | profile_default/ 83 | ipython_config.py 84 | 85 | # pyenv 86 | # For a library or package, you might want to ignore these files since the code is 87 | # intended to run in multiple environments; otherwise, check them in: 88 | # .python-version 89 | 90 | # pipenv 91 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 92 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 93 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 94 | # install all needed dependencies. 95 | #Pipfile.lock 96 | 97 | # poetry 98 | # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. 99 | # This is especially recommended for binary packages to ensure reproducibility, and is more 100 | # commonly ignored for libraries. 101 | # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control 102 | #poetry.lock 103 | 104 | # pdm 105 | # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. 106 | #pdm.lock 107 | # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it 108 | # in version control. 109 | # https://pdm.fming.dev/#use-with-ide 110 | .pdm.toml 111 | 112 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm 113 | __pypackages__/ 114 | 115 | # Celery stuff 116 | celerybeat-schedule 117 | celerybeat.pid 118 | 119 | # SageMath parsed files 120 | *.sage.py 121 | 122 | # Environments 123 | .env 124 | .venv 125 | env/ 126 | venv/ 127 | ENV/ 128 | env.bak/ 129 | venv.bak/ 130 | 131 | # Spyder project settings 132 | .spyderproject 133 | .spyproject 134 | 135 | # Rope project settings 136 | .ropeproject 137 | 138 | # mkdocs documentation 139 | /site 140 | 141 | # mypy 142 | .mypy_cache/ 143 | .dmypy.json 144 | dmypy.json 145 | 146 | # Pyre type checker 147 | .pyre/ 148 | 149 | # pytype static type analyzer 150 | .pytype/ 151 | 152 | # Cython debug symbols 153 | cython_debug/ 154 | private_code/ 155 | *.c 156 | *.html 157 | *.pyd 158 | 159 | # PyCharm 160 | # JetBrains specific template is maintained in a separate JetBrains.gitignore that can 161 | # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore 162 | # and can be added to the global gitignore or merged into this file. For a more nuclear 163 | # option (not recommended) you can uncomment the following to ignore the entire idea folder. 164 | .idea/ 165 | -------------------------------------------------------------------------------- /keygen/StarRail/1.5/GetVideoVersionKeyScRsp.json: -------------------------------------------------------------------------------- 1 | { 2 | "HPNLLMNOPPL": [ 3 | { 4 | "DEAKIKHPNCI": 15230830, 5 | "id": 3030 6 | }, 7 | { 8 | "DEAKIKHPNCI": 15230830, 9 | "id": 3020 10 | }, 11 | { 12 | "DEAKIKHPNCI": 13230602, 13 | "id": 2760 14 | }, 15 | { 16 | "DEAKIKHPNCI": 13230602, 17 | "id": 2750 18 | }, 19 | { 20 | "DEAKIKHPNCI": 13230602, 21 | "id": 2740 22 | }, 23 | { 24 | "DEAKIKHPNCI": 13230602, 25 | "id": 2730 26 | }, 27 | { 28 | "DEAKIKHPNCI": 15230830, 29 | "id": 2710 30 | }, 31 | { 32 | "DEAKIKHPNCI": 15230830, 33 | "id": 2701 34 | }, 35 | { 36 | "DEAKIKHPNCI": 15230906, 37 | "id": 2700 38 | }, 39 | { 40 | "DEAKIKHPNCI": 14220714, 41 | "id": 1210 42 | }, 43 | { 44 | "DEAKIKHPNCI": 13230706, 45 | "id": 1304 46 | }, 47 | { 48 | "DEAKIKHPNCI": 14220714, 49 | "id": 1190 50 | }, 51 | { 52 | "DEAKIKHPNCI": 14220714, 53 | "id": 1170 54 | }, 55 | { 56 | "DEAKIKHPNCI": 71220927, 57 | "id": 310 58 | }, 59 | { 60 | "DEAKIKHPNCI": 15230830, 61 | "id": 2660 62 | }, 63 | { 64 | "DEAKIKHPNCI": 71220919, 65 | "id": 1160 66 | }, 67 | { 68 | "DEAKIKHPNCI": 12230525, 69 | "id": 2570 70 | }, 71 | { 72 | "DEAKIKHPNCI": 14220714, 73 | "id": 1230 74 | }, 75 | { 76 | "DEAKIKHPNCI": 12230601, 77 | "id": 102 78 | }, 79 | { 80 | "DEAKIKHPNCI": 62220927, 81 | "id": 5 82 | }, 83 | { 84 | "DEAKIKHPNCI": 14220714, 85 | "id": 1180 86 | }, 87 | { 88 | "DEAKIKHPNCI": 70220919, 89 | "id": 16 90 | }, 91 | { 92 | "DEAKIKHPNCI": 90220927, 93 | "id": 2460 94 | }, 95 | { 96 | "DEAKIKHPNCI": 14220714, 97 | "id": 1200 98 | }, 99 | { 100 | "DEAKIKHPNCI": 12230627, 101 | "id": 2580 102 | }, 103 | { 104 | "DEAKIKHPNCI": 14220714, 105 | "id": 1222 106 | }, 107 | { 108 | "DEAKIKHPNCI": 14220714, 109 | "id": 1220 110 | }, 111 | { 112 | "DEAKIKHPNCI": 13230615, 113 | "id": 2630 114 | }, 115 | { 116 | "DEAKIKHPNCI": 13230602, 117 | "id": 2620 118 | }, 119 | { 120 | "DEAKIKHPNCI": 60220919, 121 | "id": 1 122 | }, 123 | { 124 | "DEAKIKHPNCI": 14220714, 125 | "id": 1223 126 | }, 127 | { 128 | "DEAKIKHPNCI": 15230830, 129 | "id": 2680 130 | }, 131 | { 132 | "DEAKIKHPNCI": 14220714, 133 | "id": 1221 134 | }, 135 | { 136 | "DEAKIKHPNCI": 90220927, 137 | "id": 2490 138 | }, 139 | { 140 | "DEAKIKHPNCI": 60220919, 141 | "id": 2 142 | }, 143 | { 144 | "DEAKIKHPNCI": 14220714, 145 | "id": 1224 146 | }, 147 | { 148 | "DEAKIKHPNCI": 15230830, 149 | "id": 2720 150 | }, 151 | { 152 | "DEAKIKHPNCI": 62220927, 153 | "id": 4 154 | }, 155 | { 156 | "DEAKIKHPNCI": 12230601, 157 | "id": 101 158 | }, 159 | { 160 | "DEAKIKHPNCI": 62220927, 161 | "id": 7 162 | }, 163 | { 164 | "DEAKIKHPNCI": 15230830, 165 | "id": 3010 166 | }, 167 | { 168 | "DEAKIKHPNCI": 62220927, 169 | "id": 3 170 | }, 171 | { 172 | "DEAKIKHPNCI": 12230601, 173 | "id": 100 174 | }, 175 | { 176 | "DEAKIKHPNCI": 90220919, 177 | "id": 2450 178 | }, 179 | { 180 | "DEAKIKHPNCI": 11230119, 181 | "id": 320 182 | }, 183 | { 184 | "DEAKIKHPNCI": 15230830, 185 | "id": 2670 186 | }, 187 | { 188 | "DEAKIKHPNCI": 14220714, 189 | "id": 2640 190 | }, 191 | { 192 | "DEAKIKHPNCI": 70220927, 193 | "id": 21 194 | }, 195 | { 196 | "DEAKIKHPNCI": 14220714, 197 | "id": 1240 198 | }, 199 | { 200 | "DEAKIKHPNCI": 90220927, 201 | "id": 2420 202 | }, 203 | { 204 | "DEAKIKHPNCI": 90220927, 205 | "id": 2440 206 | }, 207 | { 208 | "DEAKIKHPNCI": 90220927, 209 | "id": 2480 210 | }, 211 | { 212 | "DEAKIKHPNCI": 70220919, 213 | "id": 8 214 | }, 215 | { 216 | "DEAKIKHPNCI": 11230119, 217 | "id": 2530 218 | }, 219 | { 220 | "DEAKIKHPNCI": 12230627, 221 | "id": 2550 222 | }, 223 | { 224 | "DEAKIKHPNCI": 12230525, 225 | "id": 2560 226 | }, 227 | { 228 | "DEAKIKHPNCI": 13230706, 229 | "id": 2302 230 | }, 231 | { 232 | "DEAKIKHPNCI": 15230830, 233 | "id": 2690 234 | } 235 | ] 236 | } -------------------------------------------------------------------------------- /keygen/StarRail/1.6/GetVideoVersionKeyScRsp.json: -------------------------------------------------------------------------------- 1 | { 2 | "OJNKIEOHHNP": [ 3 | { 4 | "MFAMLOOLACB": 15230830, 5 | "id": 3020 6 | }, 7 | { 8 | "MFAMLOOLACB": 13230602, 9 | "id": 2760 10 | }, 11 | { 12 | "MFAMLOOLACB": 13230602, 13 | "id": 2750 14 | }, 15 | { 16 | "MFAMLOOLACB": 13230602, 17 | "id": 2740 18 | }, 19 | { 20 | "MFAMLOOLACB": 13230602, 21 | "id": 2730 22 | }, 23 | { 24 | "MFAMLOOLACB": 15230830, 25 | "id": 2710 26 | }, 27 | { 28 | "MFAMLOOLACB": 15230830, 29 | "id": 2701 30 | }, 31 | { 32 | "MFAMLOOLACB": 15230906, 33 | "id": 2700 34 | }, 35 | { 36 | "MFAMLOOLACB": 15230830, 37 | "id": 2680 38 | }, 39 | { 40 | "MFAMLOOLACB": 15230830, 41 | "id": 2670 42 | }, 43 | { 44 | "MFAMLOOLACB": 15230830, 45 | "id": 2660 46 | }, 47 | { 48 | "MFAMLOOLACB": 12230525, 49 | "id": 2570 50 | }, 51 | { 52 | "MFAMLOOLACB": 12230525, 53 | "id": 2560 54 | }, 55 | { 56 | "MFAMLOOLACB": 12230627, 57 | "id": 2550 58 | }, 59 | { 60 | "MFAMLOOLACB": 90220927, 61 | "id": 2490 62 | }, 63 | { 64 | "MFAMLOOLACB": 90220927, 65 | "id": 2480 66 | }, 67 | { 68 | "MFAMLOOLACB": 16231009, 69 | "id": 380 70 | }, 71 | { 72 | "MFAMLOOLACB": 16231009, 73 | "id": 360 74 | }, 75 | { 76 | "MFAMLOOLACB": 16231009, 77 | "id": 340 78 | }, 79 | { 80 | "MFAMLOOLACB": 71220927, 81 | "id": 310 82 | }, 83 | { 84 | "MFAMLOOLACB": 11230119, 85 | "id": 2530 86 | }, 87 | { 88 | "MFAMLOOLACB": 70220919, 89 | "id": 8 90 | }, 91 | { 92 | "MFAMLOOLACB": 14220714, 93 | "id": 1230 94 | }, 95 | { 96 | "MFAMLOOLACB": 14220714, 97 | "id": 2640 98 | }, 99 | { 100 | "MFAMLOOLACB": 70220927, 101 | "id": 21 102 | }, 103 | { 104 | "MFAMLOOLACB": 12230601, 105 | "id": 102 106 | }, 107 | { 108 | "MFAMLOOLACB": 62220927, 109 | "id": 5 110 | }, 111 | { 112 | "MFAMLOOLACB": 16231009, 113 | "id": 361 114 | }, 115 | { 116 | "MFAMLOOLACB": 71220919, 117 | "id": 1160 118 | }, 119 | { 120 | "MFAMLOOLACB": 14220714, 121 | "id": 1180 122 | }, 123 | { 124 | "MFAMLOOLACB": 70220919, 125 | "id": 16 126 | }, 127 | { 128 | "MFAMLOOLACB": 90220927, 129 | "id": 2460 130 | }, 131 | { 132 | "MFAMLOOLACB": 13230615, 133 | "id": 2630 134 | }, 135 | { 136 | "MFAMLOOLACB": 16230928, 137 | "id": 302 138 | }, 139 | { 140 | "MFAMLOOLACB": 13230602, 141 | "id": 2620 142 | }, 143 | { 144 | "MFAMLOOLACB": 60220919, 145 | "id": 1 146 | }, 147 | { 148 | "MFAMLOOLACB": 16231009, 149 | "id": 330 150 | }, 151 | { 152 | "MFAMLOOLACB": 16231009, 153 | "id": 350 154 | }, 155 | { 156 | "MFAMLOOLACB": 14220714, 157 | "id": 1223 158 | }, 159 | { 160 | "MFAMLOOLACB": 16231009, 161 | "id": 370 162 | }, 163 | { 164 | "MFAMLOOLACB": 16230928, 165 | "id": 301 166 | }, 167 | { 168 | "MFAMLOOLACB": 14220714, 169 | "id": 1224 170 | }, 171 | { 172 | "MFAMLOOLACB": 15230830, 173 | "id": 2720 174 | }, 175 | { 176 | "MFAMLOOLACB": 62220927, 177 | "id": 4 178 | }, 179 | { 180 | "MFAMLOOLACB": 12230601, 181 | "id": 101 182 | }, 183 | { 184 | "MFAMLOOLACB": 62220927, 185 | "id": 7 186 | }, 187 | { 188 | "MFAMLOOLACB": 15230830, 189 | "id": 3010 190 | }, 191 | { 192 | "MFAMLOOLACB": 62220927, 193 | "id": 3 194 | }, 195 | { 196 | "MFAMLOOLACB": 12230601, 197 | "id": 100 198 | }, 199 | { 200 | "MFAMLOOLACB": 90220919, 201 | "id": 2450 202 | }, 203 | { 204 | "MFAMLOOLACB": 11230119, 205 | "id": 320 206 | }, 207 | { 208 | "MFAMLOOLACB": 60220919, 209 | "id": 2 210 | }, 211 | { 212 | "MFAMLOOLACB": 16231009, 213 | "id": 390 214 | }, 215 | { 216 | "MFAMLOOLACB": 16231009, 217 | "id": 400 218 | }, 219 | { 220 | "MFAMLOOLACB": 16231009, 221 | "id": 410 222 | }, 223 | { 224 | "MFAMLOOLACB": 15230830, 225 | "id": 3030 226 | }, 227 | { 228 | "MFAMLOOLACB": 16231009, 229 | "id": 411 230 | }, 231 | { 232 | "MFAMLOOLACB": 14220714, 233 | "id": 1210 234 | }, 235 | { 236 | "MFAMLOOLACB": 13230706, 237 | "id": 1304 238 | }, 239 | { 240 | "MFAMLOOLACB": 16231009, 241 | "id": 420 242 | }, 243 | { 244 | "MFAMLOOLACB": 14220714, 245 | "id": 1170 246 | }, 247 | { 248 | "MFAMLOOLACB": 14220714, 249 | "id": 1190 250 | }, 251 | { 252 | "MFAMLOOLACB": 14220714, 253 | "id": 1200 254 | }, 255 | { 256 | "MFAMLOOLACB": 14220714, 257 | "id": 1220 258 | }, 259 | { 260 | "MFAMLOOLACB": 14220714, 261 | "id": 1221 262 | }, 263 | { 264 | "MFAMLOOLACB": 15230830, 265 | "id": 2690 266 | }, 267 | { 268 | "MFAMLOOLACB": 13230706, 269 | "id": 2302 270 | }, 271 | { 272 | "MFAMLOOLACB": 12230627, 273 | "id": 2580 274 | }, 275 | { 276 | "MFAMLOOLACB": 14220714, 277 | "id": 1222 278 | }, 279 | { 280 | "MFAMLOOLACB": 14220714, 281 | "id": 1240 282 | }, 283 | { 284 | "MFAMLOOLACB": 90220927, 285 | "id": 2420 286 | }, 287 | { 288 | "MFAMLOOLACB": 90220927, 289 | "id": 2440 290 | } 291 | ] 292 | } -------------------------------------------------------------------------------- /PyCriUsm/demux.py: -------------------------------------------------------------------------------- 1 | from io import FileIO, BytesIO 2 | from logging import getLogger 3 | from pathlib import Path 4 | from queue import SimpleQueue 5 | from struct import Struct 6 | from typing import Union 7 | 8 | from .fast_core import UsmCrypter, HcaCrypter, FastUsmFile 9 | from .key import get_key 10 | from .util import reg_dict, io_pool, cpu_pool 11 | 12 | logger = getLogger('PyCriUsm.Demuxer') 13 | _usm_header_struct = Struct(r'>4sLxBHBxxBLL8x') 14 | crypt_cache = ({}, {}) 15 | 16 | 17 | def get_crypter(key, is_hca=False): 18 | return reg_dict(crypt_cache[is_hca], key, lambda: (UsmCrypter, HcaCrypter)[is_hca](key)) 19 | 20 | 21 | def cleanup_cryptor(): 22 | crypt_cache[0].clear() 23 | crypt_cache[1].clear() 24 | 25 | 26 | def extract_usm(video_path, output, is_async: bool=False, **kwargs): 27 | video_path = Path(video_path) 28 | key_args = get_key(video_path) 29 | return demux(video_path, output, *key_args, is_async, **kwargs) 30 | 31 | 32 | def _decrypt_usm(usm_decrypter: UsmCrypter, hca_decrypter, input_queue: SimpleQueue, output_queue: SimpleQueue): 33 | video_decrypt = usm_decrypter.decrypt_video if usm_decrypter else None 34 | audio_decrypt = hca_decrypter.decrypt if hca_decrypter else usm_decrypter.crypt_audio if usm_decrypter else None 35 | while True: 36 | buffer = input_queue.get() 37 | if buffer is None: 38 | break 39 | if buffer.is_video: 40 | if video_decrypt: 41 | video_decrypt(buffer) 42 | else: 43 | if audio_decrypt: 44 | audio_decrypt(buffer) 45 | output_queue.put(buffer) 46 | 47 | 48 | def demux(video_path, output: Union[str, Path, SimpleQueue], key=0, audio_encrypt=False, hca_encrypt=0, 49 | is_async=False, filter_mode=0, audio_chno=(), video_chno=()): 50 | """ 51 | :param video_path: same meaning as arg name 52 | :param output: path-like object or queue.Queue 53 | :param key: usm decryption key, 0 means no encryption 54 | :param audio_encrypt: enable usm audio decryption 55 | :param hca_encrypt: 0 not provided, 1 same key as usm, other custom key 56 | :param filter_mode: param to FastUsmFile 57 | :param audio_chno: param to FastUsmFile 58 | :param video_chno: param to FastUsmFile 59 | :return: a coro or the result 60 | """ 61 | def write_loop(queue: SimpleQueue, output): 62 | def write_cache(cache, data): 63 | buffer = reg_dict(cache, data.chno, BytesIO) 64 | write_file(buffer, data) 65 | 66 | def write_file_from_cache(cache, suffix): 67 | ret = {} 68 | for inno, buffer in cache.items(): 69 | file_name = output / f'{video_path.stem}_{inno}{suffix}' 70 | ret[inno] = file_name 71 | with FileIO(file_name, 'wb') as f: 72 | f.write(buffer.getbuffer()) 73 | return ret 74 | 75 | def write_file(fobj, data): 76 | nonlocal finish_flag 77 | index = data.index 78 | if index == chunk_cache[0]: 79 | fobj.write(data) 80 | new_index = index + 1 81 | while True: 82 | data = chunk_cache[1].pop(new_index, None) 83 | if data is None: 84 | break 85 | if fobj.write(data) != data.size: 86 | breakpoint() 87 | new_index += 1 88 | chunk_cache[0] = new_index 89 | if max_index is not None: 90 | if new_index == max_index: 91 | if chunk_cache[1]: 92 | ValueError("DEBUG: it seems that receiving is over but there's still some chunk in cache") 93 | else: 94 | finish_flag = True 95 | elif new_index > max_index: 96 | raise ValueError("DEBUG: number of chunks provided seems to be not as same as received") 97 | elif index > chunk_cache[0]: 98 | chunk_cache[1][index] = data 99 | for i in chunk_cache[1]: 100 | if i < chunk_cache[0]: 101 | raise ValueError("DEBUG:there're some logic problems in write_file") 102 | 103 | logger = getLogger('PyCriUsm.writer') 104 | logger.debug(r'success enter write function') 105 | memory_cache = ({}, {}) 106 | chunk_cache = [0, {}] 107 | stream_video_path = None 108 | stream_video = None 109 | max_index = None 110 | finish_flag = False 111 | # await write_lock.acquire(1) 112 | while True: 113 | data = queue.get(timeout=1) 114 | # check 115 | if isinstance(data, int): 116 | if data == chunk_cache[0]: 117 | break 118 | elif data < chunk_cache[0]: 119 | ValueError("DEBUG: expect chunk index is higher than chunk total number") 120 | max_index = data 121 | continue 122 | if data.is_video and data.chno == 0: 123 | if stream_video_path is None: 124 | stream_video_path = output / (video_path.stem + '.ivf') 125 | stream_video = stream_video_path.open('wb') 126 | write_file(stream_video, data) 127 | else: 128 | write_cache(memory_cache[data.is_video], data) 129 | del data 130 | if finish_flag: 131 | break 132 | 133 | logger.debug(f'writing {video_path} finished') 134 | # check logic 135 | for b in chunk_cache[1].values(): 136 | if b[1]: 137 | ValueError("there're some chunks in cache when reading finish") 138 | 139 | # write cache to file 140 | if stream_video: 141 | stream_video.close() 142 | logger.debug('start writing audio cache to file') 143 | audios = write_file_from_cache(memory_cache[0], '.adx') 144 | logger.debug('start writing video cache to file') 145 | videos = write_file_from_cache(memory_cache[1], '.ivf') 146 | videos[0] = stream_video_path 147 | return videos, audios 148 | 149 | def read_loop(): 150 | logger.info(f'start decrypt {video_path}') 151 | buffer = None 152 | threads = () 153 | from queue import Queue 154 | input_queue = Queue(1) if key else None 155 | video_call = input_queue.put if key else output_queue.put 156 | # TODO hca decrypt support 157 | audio_call = input_queue.put if audio_encrypt and hca_encrypt==0 else output_queue.put 158 | if key: 159 | threads = tuple(cpu_pool.submit(_decrypt_usm, usm_decrypter, None, input_queue, output_queue) for _ in range(3)) 160 | 161 | if id(video_call) == id(audio_call): 162 | for buffer in usm_file.iter_chunks(filter_mode, audio_chno, video_chno): 163 | video_call(buffer) 164 | else: 165 | for buffer in usm_file.iter_chunks(filter_mode, audio_chno, video_chno): 166 | if buffer.is_video: 167 | video_call(buffer) 168 | else: 169 | audio_call(buffer) 170 | 171 | if buffer: 172 | output_queue.put(buffer.index + 1) 173 | else: 174 | logger.debug('nothing to write') 175 | output_queue.put(0) 176 | logger.debug(f'{video_path} read complete') 177 | for i in range(len(threads)): 178 | input_queue.put(None) 179 | for i in threads: 180 | i.result() 181 | logger.info(f'{video_path} complete') 182 | 183 | usm_file = FastUsmFile(video_path) 184 | video_path = Path(video_path) 185 | output_queue = SimpleQueue() 186 | usm_decrypter = None 187 | write_coro = None 188 | if key: 189 | usm_decrypter = get_crypter(key, bool(hca_encrypt)) 190 | if is_async: 191 | async def wait(): 192 | from .util import async_wait 193 | return (await async_wait(read_coro, write_coro))[1] 194 | else: 195 | def wait(): 196 | from .util import coro_wait 197 | return coro_wait(read_coro, write_coro)[1] 198 | read_coro = io_pool.submit(read_loop) 199 | if isinstance(output, SimpleQueue) is False: 200 | output = Path(output) 201 | output.mkdir(parents=True, exist_ok=True) 202 | write_coro = io_pool.submit(write_loop, output_queue, output) 203 | return wait() 204 | -------------------------------------------------------------------------------- /keygen/StarRail/2.0/GetVideoVersionKeyScRsp.json: -------------------------------------------------------------------------------- 1 | { 2 | "8": [ 3 | { 4 | "6": 3090, 5 | "12": 20230828 6 | }, 7 | { 8 | "6": 3080, 9 | "12": 20230828 10 | }, 11 | { 12 | "6": 3070, 13 | "12": 20230828 14 | }, 15 | { 16 | "6": 3060, 17 | "12": 20231023 18 | }, 19 | { 20 | "6": 3040, 21 | "12": 20230828 22 | }, 23 | { 24 | "6": 3020, 25 | "12": 15230830 26 | }, 27 | { 28 | "6": 2760, 29 | "12": 13230602 30 | }, 31 | { 32 | "6": 2750, 33 | "12": 13230602 34 | }, 35 | { 36 | "6": 2740, 37 | "12": 13230602 38 | }, 39 | { 40 | "6": 2730, 41 | "12": 13230602 42 | }, 43 | { 44 | "6": 2710, 45 | "12": 15230830 46 | }, 47 | { 48 | "6": 2701, 49 | "12": 15230830 50 | }, 51 | { 52 | "6": 2700, 53 | "12": 15230906 54 | }, 55 | { 56 | "6": 2680, 57 | "12": 15230830 58 | }, 59 | { 60 | "6": 2670, 61 | "12": 15230830 62 | }, 63 | { 64 | "6": 2660, 65 | "12": 15230830 66 | }, 67 | { 68 | "6": 2570, 69 | "12": 12230525 70 | }, 71 | { 72 | "6": 2560, 73 | "12": 12230525 74 | }, 75 | { 76 | "6": 2550, 77 | "12": 12230627 78 | }, 79 | { 80 | "6": 2490, 81 | "12": 90220927 82 | }, 83 | { 84 | "6": 2480, 85 | "12": 90220927 86 | }, 87 | { 88 | "6": 380, 89 | "12": 16231009 90 | }, 91 | { 92 | "6": 360, 93 | "12": 16231009 94 | }, 95 | { 96 | "6": 340, 97 | "12": 16231009 98 | }, 99 | { 100 | "6": 310, 101 | "12": 71220927 102 | }, 103 | { 104 | "6": 2530, 105 | "12": 11230119 106 | }, 107 | { 108 | "6": 8, 109 | "12": 70220919 110 | }, 111 | { 112 | "6": 3170, 113 | "12": 20230828 114 | }, 115 | { 116 | "6": 1230, 117 | "12": 14220714 118 | }, 119 | { 120 | "6": 2640, 121 | "12": 14220714 122 | }, 123 | { 124 | "6": 21, 125 | "12": 70220927 126 | }, 127 | { 128 | "6": 102, 129 | "12": 12230601 130 | }, 131 | { 132 | "6": 5, 133 | "12": 62220927 134 | }, 135 | { 136 | "6": 361, 137 | "12": 16231009 138 | }, 139 | { 140 | "6": 3100, 141 | "12": 20231023 142 | }, 143 | { 144 | "6": 1160, 145 | "12": 71220919 146 | }, 147 | { 148 | "6": 3120, 149 | "12": 20230828 150 | }, 151 | { 152 | "6": 1180, 153 | "12": 14220714 154 | }, 155 | { 156 | "6": 16, 157 | "12": 70220919 158 | }, 159 | { 160 | "6": 2460, 161 | "12": 90220927 162 | }, 163 | { 164 | "6": 2630, 165 | "12": 13230615 166 | }, 167 | { 168 | "6": 302, 169 | "12": 16230928 170 | }, 171 | { 172 | "6": 2620, 173 | "12": 13230602 174 | }, 175 | { 176 | "6": 1, 177 | "12": 60220919 178 | }, 179 | { 180 | "6": 330, 181 | "12": 16231009 182 | }, 183 | { 184 | "6": 350, 185 | "12": 16231009 186 | }, 187 | { 188 | "6": 1223, 189 | "12": 14220714 190 | }, 191 | { 192 | "6": 370, 193 | "12": 16231009 194 | }, 195 | { 196 | "6": 301, 197 | "12": 16230928 198 | }, 199 | { 200 | "6": 1224, 201 | "12": 14220714 202 | }, 203 | { 204 | "6": 3302, 205 | "12": 20231030 206 | }, 207 | { 208 | "6": 2720, 209 | "12": 15230830 210 | }, 211 | { 212 | "6": 4, 213 | "12": 62220927 214 | }, 215 | { 216 | "6": 101, 217 | "12": 12230601 218 | }, 219 | { 220 | "6": 7, 221 | "12": 62220927 222 | }, 223 | { 224 | "6": 3301, 225 | "12": 20231030 226 | }, 227 | { 228 | "6": 3010, 229 | "12": 15230830 230 | }, 231 | { 232 | "6": 3, 233 | "12": 62220927 234 | }, 235 | { 236 | "6": 100, 237 | "12": 12230601 238 | }, 239 | { 240 | "6": 2450, 241 | "12": 90220919 242 | }, 243 | { 244 | "6": 320, 245 | "12": 11230119 246 | }, 247 | { 248 | "6": 2, 249 | "12": 60220919 250 | }, 251 | { 252 | "6": 390, 253 | "12": 16231009 254 | }, 255 | { 256 | "6": 400, 257 | "12": 16231009 258 | }, 259 | { 260 | "6": 410, 261 | "12": 16231009 262 | }, 263 | { 264 | "6": 3030, 265 | "12": 15230830 266 | }, 267 | { 268 | "6": 411, 269 | "12": 16231009 270 | }, 271 | { 272 | "6": 3150, 273 | "12": 20230828 274 | }, 275 | { 276 | "6": 1210, 277 | "12": 14220714 278 | }, 279 | { 280 | "6": 3050, 281 | "12": 20230828 282 | }, 283 | { 284 | "6": 1304, 285 | "12": 13230706 286 | }, 287 | { 288 | "6": 420, 289 | "12": 16231009 290 | }, 291 | { 292 | "6": 3110, 293 | "12": 20230828 294 | }, 295 | { 296 | "6": 1170, 297 | "12": 14220714 298 | }, 299 | { 300 | "6": 3130, 301 | "12": 20230828 302 | }, 303 | { 304 | "6": 1190, 305 | "12": 14220714 306 | }, 307 | { 308 | "6": 3140, 309 | "12": 20231023 310 | }, 311 | { 312 | "6": 1200, 313 | "12": 14220714 314 | }, 315 | { 316 | "6": 3160, 317 | "12": 20230828 318 | }, 319 | { 320 | "6": 1220, 321 | "12": 14220714 322 | }, 323 | { 324 | "6": 1221, 325 | "12": 14220714 326 | }, 327 | { 328 | "6": 2690, 329 | "12": 15230830 330 | }, 331 | { 332 | "6": 2302, 333 | "12": 13230706 334 | }, 335 | { 336 | "6": 2580, 337 | "12": 12230627 338 | }, 339 | { 340 | "6": 1222, 341 | "12": 14220714 342 | }, 343 | { 344 | "6": 3180, 345 | "12": 20231025 346 | }, 347 | { 348 | "6": 1240, 349 | "12": 14220714 350 | }, 351 | { 352 | "6": 2420, 353 | "12": 90220927 354 | }, 355 | { 356 | "6": 2440, 357 | "12": 90220927 358 | } 359 | ] 360 | } -------------------------------------------------------------------------------- /keygen/StarRail/2.1/GetVideoVersionKeyScRsp.json: -------------------------------------------------------------------------------- 1 | { 2 | "ENDOFDOJNNE": [ 3 | { 4 | "NBDEPHEFKEC": "2561596943881963", 5 | "id": 3280 6 | }, 7 | { 8 | "NBDEPHEFKEC": "8879370645472013", 9 | "id": 3270 10 | }, 11 | { 12 | "NBDEPHEFKEC": "2097603869107987", 13 | "id": 3260 14 | }, 15 | { 16 | "NBDEPHEFKEC": "90220927", 17 | "id": 2440 18 | }, 19 | { 20 | "NBDEPHEFKEC": "90220927", 21 | "id": 2420 22 | }, 23 | { 24 | "NBDEPHEFKEC": "14220714", 25 | "id": 1222 26 | }, 27 | { 28 | "NBDEPHEFKEC": "12230627", 29 | "id": 2580 30 | }, 31 | { 32 | "NBDEPHEFKEC": "14220714", 33 | "id": 1221 34 | }, 35 | { 36 | "NBDEPHEFKEC": "20231023", 37 | "id": 3140 38 | }, 39 | { 40 | "NBDEPHEFKEC": "20231025", 41 | "id": 3180 42 | }, 43 | { 44 | "NBDEPHEFKEC": "14220714", 45 | "id": 1190 46 | }, 47 | { 48 | "NBDEPHEFKEC": "20230828", 49 | "id": 3130 50 | }, 51 | { 52 | "NBDEPHEFKEC": "20230828", 53 | "id": 3160 54 | }, 55 | { 56 | "NBDEPHEFKEC": "14220714", 57 | "id": 1170 58 | }, 59 | { 60 | "NBDEPHEFKEC": "20230828", 61 | "id": 3110 62 | }, 63 | { 64 | "NBDEPHEFKEC": "16231009", 65 | "id": 420 66 | }, 67 | { 68 | "NBDEPHEFKEC": "13230706", 69 | "id": 1304 70 | }, 71 | { 72 | "NBDEPHEFKEC": "20230828", 73 | "id": 3050 74 | }, 75 | { 76 | "NBDEPHEFKEC": "16231009", 77 | "id": 411 78 | }, 79 | { 80 | "NBDEPHEFKEC": "15230830", 81 | "id": 3030 82 | }, 83 | { 84 | "NBDEPHEFKEC": "16231009", 85 | "id": 410 86 | }, 87 | { 88 | "NBDEPHEFKEC": "16231009", 89 | "id": 390 90 | }, 91 | { 92 | "NBDEPHEFKEC": "16231009", 93 | "id": 400 94 | }, 95 | { 96 | "NBDEPHEFKEC": "60220919", 97 | "id": 2 98 | }, 99 | { 100 | "NBDEPHEFKEC": "11230119", 101 | "id": 320 102 | }, 103 | { 104 | "NBDEPHEFKEC": "14220714", 105 | "id": 1240 106 | }, 107 | { 108 | "NBDEPHEFKEC": "1603427538481255", 109 | "id": 3230 110 | }, 111 | { 112 | "NBDEPHEFKEC": "90220919", 113 | "id": 2450 114 | }, 115 | { 116 | "NBDEPHEFKEC": "12230601", 117 | "id": 100 118 | }, 119 | { 120 | "NBDEPHEFKEC": "62220927", 121 | "id": 3 122 | }, 123 | { 124 | "NBDEPHEFKEC": "15230830", 125 | "id": 3010 126 | }, 127 | { 128 | "NBDEPHEFKEC": "20231030", 129 | "id": 3301 130 | }, 131 | { 132 | "NBDEPHEFKEC": "12230601", 133 | "id": 101 134 | }, 135 | { 136 | "NBDEPHEFKEC": "62220927", 137 | "id": 4 138 | }, 139 | { 140 | "NBDEPHEFKEC": "15230830", 141 | "id": 2720 142 | }, 143 | { 144 | "NBDEPHEFKEC": "20231030", 145 | "id": 3302 146 | }, 147 | { 148 | "NBDEPHEFKEC": "14220714", 149 | "id": 1224 150 | }, 151 | { 152 | "NBDEPHEFKEC": "16231009", 153 | "id": 370 154 | }, 155 | { 156 | "NBDEPHEFKEC": "14220714", 157 | "id": 1223 158 | }, 159 | { 160 | "NBDEPHEFKEC": "16231009", 161 | "id": 350 162 | }, 163 | { 164 | "NBDEPHEFKEC": "16231009", 165 | "id": 330 166 | }, 167 | { 168 | "NBDEPHEFKEC": "5468538194758078", 169 | "id": 3240 170 | }, 171 | { 172 | "NBDEPHEFKEC": "60220919", 173 | "id": 1 174 | }, 175 | { 176 | "NBDEPHEFKEC": "13230602", 177 | "id": 2620 178 | }, 179 | { 180 | "NBDEPHEFKEC": "15230830", 181 | "id": 2690 182 | }, 183 | { 184 | "NBDEPHEFKEC": "16230928", 185 | "id": 302 186 | }, 187 | { 188 | "NBDEPHEFKEC": "13230615", 189 | "id": 2630 190 | }, 191 | { 192 | "NBDEPHEFKEC": "90220927", 193 | "id": 2460 194 | }, 195 | { 196 | "NBDEPHEFKEC": "20230828", 197 | "id": 3120 198 | }, 199 | { 200 | "NBDEPHEFKEC": "20230828", 201 | "id": 3150 202 | }, 203 | { 204 | "NBDEPHEFKEC": "71220919", 205 | "id": 1160 206 | }, 207 | { 208 | "NBDEPHEFKEC": "20231023", 209 | "id": 3100 210 | }, 211 | { 212 | "NBDEPHEFKEC": "62220927", 213 | "id": 5 214 | }, 215 | { 216 | "NBDEPHEFKEC": "70220927", 217 | "id": 21 218 | }, 219 | { 220 | "NBDEPHEFKEC": "14220714", 221 | "id": 2640 222 | }, 223 | { 224 | "NBDEPHEFKEC": "14220714", 225 | "id": 1180 226 | }, 227 | { 228 | "NBDEPHEFKEC": "20230828", 229 | "id": 3170 230 | }, 231 | { 232 | "NBDEPHEFKEC": "70220919", 233 | "id": 8 234 | }, 235 | { 236 | "NBDEPHEFKEC": "11230119", 237 | "id": 2530 238 | }, 239 | { 240 | "NBDEPHEFKEC": "71220927", 241 | "id": 310 242 | }, 243 | { 244 | "NBDEPHEFKEC": "14220714", 245 | "id": 1230 246 | }, 247 | { 248 | "NBDEPHEFKEC": "7306477623361936", 249 | "id": 3220 250 | }, 251 | { 252 | "NBDEPHEFKEC": "16231009", 253 | "id": 340 254 | }, 255 | { 256 | "NBDEPHEFKEC": "6314041275143045", 257 | "id": 3250 258 | }, 259 | { 260 | "NBDEPHEFKEC": "16231009", 261 | "id": 360 262 | }, 263 | { 264 | "NBDEPHEFKEC": "16231009", 265 | "id": 380 266 | }, 267 | { 268 | "NBDEPHEFKEC": "90220927", 269 | "id": 2480 270 | }, 271 | { 272 | "NBDEPHEFKEC": "16230928", 273 | "id": 301 274 | }, 275 | { 276 | "NBDEPHEFKEC": "12230601", 277 | "id": 102 278 | }, 279 | { 280 | "NBDEPHEFKEC": "90220927", 281 | "id": 2490 282 | }, 283 | { 284 | "NBDEPHEFKEC": "16231009", 285 | "id": 361 286 | }, 287 | { 288 | "NBDEPHEFKEC": "12230627", 289 | "id": 2550 290 | }, 291 | { 292 | "NBDEPHEFKEC": "12230525", 293 | "id": 2560 294 | }, 295 | { 296 | "NBDEPHEFKEC": "12230525", 297 | "id": 2570 298 | }, 299 | { 300 | "NBDEPHEFKEC": "15230830", 301 | "id": 2660 302 | }, 303 | { 304 | "NBDEPHEFKEC": "15230830", 305 | "id": 2670 306 | }, 307 | { 308 | "NBDEPHEFKEC": "15230830", 309 | "id": 2680 310 | }, 311 | { 312 | "NBDEPHEFKEC": "13230706", 313 | "id": 2302 314 | }, 315 | { 316 | "NBDEPHEFKEC": "15230906", 317 | "id": 2700 318 | }, 319 | { 320 | "NBDEPHEFKEC": "15230830", 321 | "id": 2701 322 | }, 323 | { 324 | "NBDEPHEFKEC": "15230830", 325 | "id": 2710 326 | }, 327 | { 328 | "NBDEPHEFKEC": "13230602", 329 | "id": 2730 330 | }, 331 | { 332 | "NBDEPHEFKEC": "13230602", 333 | "id": 2740 334 | }, 335 | { 336 | "NBDEPHEFKEC": "13230602", 337 | "id": 2750 338 | }, 339 | { 340 | "NBDEPHEFKEC": "13230602", 341 | "id": 2760 342 | }, 343 | { 344 | "NBDEPHEFKEC": "15230830", 345 | "id": 3020 346 | }, 347 | { 348 | "NBDEPHEFKEC": "20230828", 349 | "id": 3040 350 | }, 351 | { 352 | "NBDEPHEFKEC": "20231023", 353 | "id": 3060 354 | }, 355 | { 356 | "NBDEPHEFKEC": "20230828", 357 | "id": 3070 358 | }, 359 | { 360 | "NBDEPHEFKEC": "20230828", 361 | "id": 3080 362 | }, 363 | { 364 | "NBDEPHEFKEC": "20230828", 365 | "id": 3090 366 | }, 367 | { 368 | "NBDEPHEFKEC": "14220714", 369 | "id": 1200 370 | }, 371 | { 372 | "NBDEPHEFKEC": "6934685122749340", 373 | "id": 3190 374 | }, 375 | { 376 | "NBDEPHEFKEC": "62220927", 377 | "id": 7 378 | }, 379 | { 380 | "NBDEPHEFKEC": "9082263766138238", 381 | "id": 3191 382 | }, 383 | { 384 | "NBDEPHEFKEC": "14220714", 385 | "id": 1210 386 | }, 387 | { 388 | "NBDEPHEFKEC": "70220919", 389 | "id": 16 390 | }, 391 | { 392 | "NBDEPHEFKEC": "9030866044638228", 393 | "id": 3200 394 | }, 395 | { 396 | "NBDEPHEFKEC": "14220714", 397 | "id": 1220 398 | }, 399 | { 400 | "NBDEPHEFKEC": "6363892035972617", 401 | "id": 3210 402 | } 403 | ] 404 | } -------------------------------------------------------------------------------- /keygen/StarRail/1.4/VideoConfig.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "video_id": 1, 4 | "video_path": "CS_Chap01_Act010.usm", 5 | "is_player_involved": true, 6 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act010_Caption.json", 7 | "encryption": true 8 | }, 9 | { 10 | "video_id": 2, 11 | "video_path": "CS_Chap01_Act020.usm", 12 | "is_player_involved": true, 13 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act020_Caption.json", 14 | "encryption": true 15 | }, 16 | { 17 | "video_id": 3, 18 | "video_path": "CS_Chap01_Act110.usm", 19 | "is_player_involved": true, 20 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act110_Caption.json", 21 | "encryption": true 22 | }, 23 | { 24 | "video_id": 4, 25 | "video_path": "CS_Chap01_Act120.usm", 26 | "is_player_involved": true, 27 | "caption_path": "", 28 | "encryption": true 29 | }, 30 | { 31 | "video_id": 5, 32 | "video_path": "CS_Chap01_Act130.usm", 33 | "is_player_involved": true, 34 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act130_Caption.json", 35 | "encryption": true 36 | }, 37 | { 38 | "video_id": 7, 39 | "video_path": "CS_Chap01_Act150.usm", 40 | "is_player_involved": true, 41 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act150_Caption.json", 42 | "encryption": true 43 | }, 44 | { 45 | "video_id": 8, 46 | "video_path": "CS_Chap00_Act210.usm", 47 | "is_player_involved": false, 48 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act210_Caption.json", 49 | "encryption": true 50 | }, 51 | { 52 | "video_id": 16, 53 | "video_path": "CS_Chap00_Act270.usm", 54 | "is_player_involved": true, 55 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act270_Caption.json", 56 | "encryption": true 57 | }, 58 | { 59 | "video_id": 21, 60 | "video_path": "CS_Chap00_Act300.usm", 61 | "is_player_involved": true, 62 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act300_Caption.json", 63 | "encryption": true 64 | }, 65 | { 66 | "video_id": 100, 67 | "video_path": "CS_Chap01_Act3010.usm", 68 | "is_player_involved": false, 69 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3010_Caption.json", 70 | "encryption": true 71 | }, 72 | { 73 | "video_id": 101, 74 | "video_path": "CS_Chap01_Act3020.usm", 75 | "is_player_involved": false, 76 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3020_Caption.json", 77 | "encryption": true 78 | }, 79 | { 80 | "video_id": 102, 81 | "video_path": "CS_Chap01_Act3030.usm", 82 | "is_player_involved": false, 83 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3030_Caption.json", 84 | "encryption": true 85 | }, 86 | { 87 | "video_id": 310, 88 | "video_path": "CS_Chap00_Act310.usm", 89 | "is_player_involved": true, 90 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act310_Caption.json", 91 | "encryption": true 92 | }, 93 | { 94 | "video_id": 320, 95 | "video_path": "CS_Chap00_Act320.usm", 96 | "is_player_involved": true, 97 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act320_Caption.json", 98 | "encryption": true 99 | }, 100 | { 101 | "video_id": 1160, 102 | "video_path": "CS_Chap01_Act160.usm", 103 | "is_player_involved": false, 104 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act160_Caption.json", 105 | "encryption": true 106 | }, 107 | { 108 | "video_id": 1170, 109 | "video_path": "CS_Chap01_Act170.usm", 110 | "is_player_involved": false, 111 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act170_Caption.json", 112 | "encryption": true 113 | }, 114 | { 115 | "video_id": 1180, 116 | "video_path": "CS_Chap01_Act180.usm", 117 | "is_player_involved": false, 118 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act180_Caption.json", 119 | "encryption": true 120 | }, 121 | { 122 | "video_id": 1190, 123 | "video_path": "CS_Chap01_Act190.usm", 124 | "is_player_involved": true, 125 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act190_Caption.json", 126 | "encryption": true 127 | }, 128 | { 129 | "video_id": 1200, 130 | "video_path": "CS_Chap01_Act200.usm", 131 | "is_player_involved": false, 132 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act200_Caption.json", 133 | "encryption": true 134 | }, 135 | { 136 | "video_id": 1210, 137 | "video_path": "CS_Chap01_Act210.usm", 138 | "is_player_involved": true, 139 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act210_Caption.json", 140 | "encryption": true 141 | }, 142 | { 143 | "video_id": 1220, 144 | "video_path": "CS_Chap01_Act220.usm", 145 | "is_player_involved": true, 146 | "caption_path": "", 147 | "encryption": true 148 | }, 149 | { 150 | "video_id": 1221, 151 | "video_path": "CS_Chap01_Act221.usm", 152 | "is_player_involved": true, 153 | "caption_path": "", 154 | "encryption": true 155 | }, 156 | { 157 | "video_id": 1222, 158 | "video_path": "CS_Chap01_Act222.usm", 159 | "is_player_involved": false, 160 | "caption_path": "", 161 | "encryption": true 162 | }, 163 | { 164 | "video_id": 1223, 165 | "video_path": "CS_Chap01_Act223.usm", 166 | "is_player_involved": true, 167 | "caption_path": "", 168 | "encryption": true 169 | }, 170 | { 171 | "video_id": 1224, 172 | "video_path": "CS_Chap01_Act224.usm", 173 | "is_player_involved": true, 174 | "caption_path": "", 175 | "encryption": true 176 | }, 177 | { 178 | "video_id": 1230, 179 | "video_path": "CS_Chap01_Act230.usm", 180 | "is_player_involved": true, 181 | "caption_path": "", 182 | "encryption": true 183 | }, 184 | { 185 | "video_id": 1240, 186 | "video_path": "CS_Chap01_Act240.usm", 187 | "is_player_involved": true, 188 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act240_Caption.json", 189 | "encryption": true 190 | }, 191 | { 192 | "video_id": 2302, 193 | "video_path": "CS_Chap02_Act3020.usm", 194 | "is_player_involved": false, 195 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act3020_Caption.json", 196 | "encryption": true 197 | }, 198 | { 199 | "video_id": 1304, 200 | "video_path": "CS_Chap01_Act3040.usm", 201 | "is_player_involved": false, 202 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3040_Caption.json", 203 | "encryption": true 204 | }, 205 | { 206 | "video_id": 2420, 207 | "video_path": "CS_Chap02_Act420.usm", 208 | "is_player_involved": false, 209 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act420_Caption.json", 210 | "encryption": true 211 | }, 212 | { 213 | "video_id": 2440, 214 | "video_path": "CS_Chap02_Act440.usm", 215 | "is_player_involved": true, 216 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act440_Caption.json", 217 | "encryption": true 218 | }, 219 | { 220 | "video_id": 2450, 221 | "video_path": "CS_Chap02_Act450.usm", 222 | "is_player_involved": true, 223 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act450_Caption.json", 224 | "encryption": true 225 | }, 226 | { 227 | "video_id": 2460, 228 | "video_path": "CS_Chap02_Act460.usm", 229 | "is_player_involved": false, 230 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act460_Caption.json", 231 | "encryption": true 232 | }, 233 | { 234 | "video_id": 2480, 235 | "video_path": "CS_Chap02_Act480.usm", 236 | "is_player_involved": true, 237 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act480_Caption.json", 238 | "encryption": true 239 | }, 240 | { 241 | "video_id": 2490, 242 | "video_path": "CS_Chap02_Act490.usm", 243 | "is_player_involved": true, 244 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act490_Caption.json", 245 | "encryption": true 246 | }, 247 | { 248 | "video_id": 2530, 249 | "video_path": "CS_Chap02_Act530.usm", 250 | "is_player_involved": false, 251 | "caption_path": "", 252 | "encryption": true 253 | }, 254 | { 255 | "video_id": 2550, 256 | "video_path": "CS_Chap02_Act550.usm", 257 | "is_player_involved": false, 258 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act550_Caption.json", 259 | "encryption": true 260 | }, 261 | { 262 | "video_id": 2560, 263 | "video_path": "CS_Chap02_Act560.usm", 264 | "is_player_involved": false, 265 | "caption_path": "", 266 | "encryption": true 267 | }, 268 | { 269 | "video_id": 2570, 270 | "video_path": "CS_Chap02_Act570.usm", 271 | "is_player_involved": true, 272 | "caption_path": "", 273 | "encryption": true 274 | }, 275 | { 276 | "video_id": 2580, 277 | "video_path": "CS_Chap02_Act580.usm", 278 | "is_player_involved": true, 279 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act580_Caption.json", 280 | "encryption": true 281 | }, 282 | { 283 | "video_id": 2620, 284 | "video_path": "CS_Chap02_Act620.usm", 285 | "is_player_involved": true, 286 | "caption_path": "", 287 | "encryption": true 288 | }, 289 | { 290 | "video_id": 2630, 291 | "video_path": "CS_Chap02_Act630.usm", 292 | "is_player_involved": false, 293 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act630_Caption.json", 294 | "encryption": true 295 | }, 296 | { 297 | "video_id": 2640, 298 | "video_path": "CS_Chap02_Act640.usm", 299 | "is_player_involved": false, 300 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act640_Caption.json", 301 | "encryption": true 302 | }, 303 | { 304 | "video_id": 2730, 305 | "video_path": "CS_Chap02_Act730.usm", 306 | "is_player_involved": false, 307 | "caption_path": "", 308 | "encryption": true 309 | }, 310 | { 311 | "video_id": 2740, 312 | "video_path": "CS_Chap02_Act740.usm", 313 | "is_player_involved": false, 314 | "caption_path": "", 315 | "encryption": true 316 | }, 317 | { 318 | "video_id": 2750, 319 | "video_path": "CS_Chap02_Act750.usm", 320 | "is_player_involved": false, 321 | "caption_path": "", 322 | "encryption": true 323 | }, 324 | { 325 | "video_id": 2760, 326 | "video_path": "CS_Chap02_Act760.usm", 327 | "is_player_involved": false, 328 | "caption_path": "", 329 | "encryption": true 330 | } 331 | ] -------------------------------------------------------------------------------- /keygen/StarRail/2.2/GetVideoVersionKeyScRsp.json: -------------------------------------------------------------------------------- 1 | { 2 | "MCGIPGAIKGN": [ 3 | { 4 | "CIFMCHONIAM": "8457148526473258", 5 | "id": 3423 6 | }, 7 | { 8 | "CIFMCHONIAM": "5468123285486451", 9 | "id": 3422 10 | }, 11 | { 12 | "CIFMCHONIAM": "5462123842135478", 13 | "id": 3421 14 | }, 15 | { 16 | "CIFMCHONIAM": "228177996495904555", 17 | "id": 3420 18 | }, 19 | { 20 | "CIFMCHONIAM": "226145011383676756", 21 | "id": 3400 22 | }, 23 | { 24 | "CIFMCHONIAM": "226339597272160909", 25 | "id": 3380 26 | }, 27 | { 28 | "CIFMCHONIAM": "228876296055950321", 29 | "id": 3370 30 | }, 31 | { 32 | "CIFMCHONIAM": "222503850315047163", 33 | "id": 3360 34 | }, 35 | { 36 | "CIFMCHONIAM": "223724045306752686", 37 | "id": 3350 38 | }, 39 | { 40 | "CIFMCHONIAM": "221820607074529598", 41 | "id": 3340 42 | }, 43 | { 44 | "CIFMCHONIAM": "225683771355375469", 45 | "id": 3330 46 | }, 47 | { 48 | "CIFMCHONIAM": "221612330630189081", 49 | "id": 3320 50 | }, 51 | { 52 | "CIFMCHONIAM": "226379362923231903", 53 | "id": 3300 54 | }, 55 | { 56 | "CIFMCHONIAM": "226016975882573124", 57 | "id": 3296 58 | }, 59 | { 60 | "CIFMCHONIAM": "223781654220355157", 61 | "id": 3293 62 | }, 63 | { 64 | "CIFMCHONIAM": "225690413994247882", 65 | "id": 3292 66 | }, 67 | { 68 | "CIFMCHONIAM": "221111467705011077", 69 | "id": 3291 70 | }, 71 | { 72 | "CIFMCHONIAM": "223730966657489665", 73 | "id": 3290 74 | }, 75 | { 76 | "CIFMCHONIAM": "2561596943881963", 77 | "id": 3280 78 | }, 79 | { 80 | "CIFMCHONIAM": "8879370645472013", 81 | "id": 3270 82 | }, 83 | { 84 | "CIFMCHONIAM": "2097603869107987", 85 | "id": 3260 86 | }, 87 | { 88 | "CIFMCHONIAM": "90220927", 89 | "id": 2440 90 | }, 91 | { 92 | "CIFMCHONIAM": "90220927", 93 | "id": 2420 94 | }, 95 | { 96 | "CIFMCHONIAM": "14220714", 97 | "id": 1222 98 | }, 99 | { 100 | "CIFMCHONIAM": "12230627", 101 | "id": 2580 102 | }, 103 | { 104 | "CIFMCHONIAM": "226629515328462310", 105 | "id": 3410 106 | }, 107 | { 108 | "CIFMCHONIAM": "14220714", 109 | "id": 1221 110 | }, 111 | { 112 | "CIFMCHONIAM": "20231023", 113 | "id": 3140 114 | }, 115 | { 116 | "CIFMCHONIAM": "20231025", 117 | "id": 3180 118 | }, 119 | { 120 | "CIFMCHONIAM": "14220714", 121 | "id": 1190 122 | }, 123 | { 124 | "CIFMCHONIAM": "20230828", 125 | "id": 3130 126 | }, 127 | { 128 | "CIFMCHONIAM": "20230828", 129 | "id": 3160 130 | }, 131 | { 132 | "CIFMCHONIAM": "14220714", 133 | "id": 1170 134 | }, 135 | { 136 | "CIFMCHONIAM": "20230828", 137 | "id": 3110 138 | }, 139 | { 140 | "CIFMCHONIAM": "16231009", 141 | "id": 420 142 | }, 143 | { 144 | "CIFMCHONIAM": "226143830717446289", 145 | "id": 3294 146 | }, 147 | { 148 | "CIFMCHONIAM": "13230706", 149 | "id": 1304 150 | }, 151 | { 152 | "CIFMCHONIAM": "20230828", 153 | "id": 3050 154 | }, 155 | { 156 | "CIFMCHONIAM": "16231009", 157 | "id": 411 158 | }, 159 | { 160 | "CIFMCHONIAM": "15230830", 161 | "id": 3030 162 | }, 163 | { 164 | "CIFMCHONIAM": "16231009", 165 | "id": 410 166 | }, 167 | { 168 | "CIFMCHONIAM": "16231009", 169 | "id": 390 170 | }, 171 | { 172 | "CIFMCHONIAM": "16231009", 173 | "id": 400 174 | }, 175 | { 176 | "CIFMCHONIAM": "60220919", 177 | "id": 2 178 | }, 179 | { 180 | "CIFMCHONIAM": "11230119", 181 | "id": 320 182 | }, 183 | { 184 | "CIFMCHONIAM": "14220714", 185 | "id": 1240 186 | }, 187 | { 188 | "CIFMCHONIAM": "1603427538481255", 189 | "id": 3230 190 | }, 191 | { 192 | "CIFMCHONIAM": "90220919", 193 | "id": 2450 194 | }, 195 | { 196 | "CIFMCHONIAM": "12230601", 197 | "id": 100 198 | }, 199 | { 200 | "CIFMCHONIAM": "62220927", 201 | "id": 3 202 | }, 203 | { 204 | "CIFMCHONIAM": "15230830", 205 | "id": 3010 206 | }, 207 | { 208 | "CIFMCHONIAM": "20231030", 209 | "id": 3301 210 | }, 211 | { 212 | "CIFMCHONIAM": "12230601", 213 | "id": 101 214 | }, 215 | { 216 | "CIFMCHONIAM": "62220927", 217 | "id": 4 218 | }, 219 | { 220 | "CIFMCHONIAM": "15230830", 221 | "id": 2720 222 | }, 223 | { 224 | "CIFMCHONIAM": "20231030", 225 | "id": 3302 226 | }, 227 | { 228 | "CIFMCHONIAM": "14220714", 229 | "id": 1224 230 | }, 231 | { 232 | "CIFMCHONIAM": "16231009", 233 | "id": 370 234 | }, 235 | { 236 | "CIFMCHONIAM": "14220714", 237 | "id": 1223 238 | }, 239 | { 240 | "CIFMCHONIAM": "16231009", 241 | "id": 350 242 | }, 243 | { 244 | "CIFMCHONIAM": "16231009", 245 | "id": 330 246 | }, 247 | { 248 | "CIFMCHONIAM": "5468538194758078", 249 | "id": 3240 250 | }, 251 | { 252 | "CIFMCHONIAM": "60220919", 253 | "id": 1 254 | }, 255 | { 256 | "CIFMCHONIAM": "13230602", 257 | "id": 2620 258 | }, 259 | { 260 | "CIFMCHONIAM": "15230830", 261 | "id": 2690 262 | }, 263 | { 264 | "CIFMCHONIAM": "16230928", 265 | "id": 302 266 | }, 267 | { 268 | "CIFMCHONIAM": "13230615", 269 | "id": 2630 270 | }, 271 | { 272 | "CIFMCHONIAM": "90220927", 273 | "id": 2460 274 | }, 275 | { 276 | "CIFMCHONIAM": "20230828", 277 | "id": 3120 278 | }, 279 | { 280 | "CIFMCHONIAM": "20230828", 281 | "id": 3150 282 | }, 283 | { 284 | "CIFMCHONIAM": "71220919", 285 | "id": 1160 286 | }, 287 | { 288 | "CIFMCHONIAM": "20231023", 289 | "id": 3100 290 | }, 291 | { 292 | "CIFMCHONIAM": "62220927", 293 | "id": 5 294 | }, 295 | { 296 | "CIFMCHONIAM": "70220927", 297 | "id": 21 298 | }, 299 | { 300 | "CIFMCHONIAM": "14220714", 301 | "id": 2640 302 | }, 303 | { 304 | "CIFMCHONIAM": "14220714", 305 | "id": 1180 306 | }, 307 | { 308 | "CIFMCHONIAM": "20230828", 309 | "id": 3170 310 | }, 311 | { 312 | "CIFMCHONIAM": "70220919", 313 | "id": 8 314 | }, 315 | { 316 | "CIFMCHONIAM": "11230119", 317 | "id": 2530 318 | }, 319 | { 320 | "CIFMCHONIAM": "228245290738848433", 321 | "id": 3295 322 | }, 323 | { 324 | "CIFMCHONIAM": "71220927", 325 | "id": 310 326 | }, 327 | { 328 | "CIFMCHONIAM": "14220714", 329 | "id": 1230 330 | }, 331 | { 332 | "CIFMCHONIAM": "7306477623361936", 333 | "id": 3220 334 | }, 335 | { 336 | "CIFMCHONIAM": "16231009", 337 | "id": 340 338 | }, 339 | { 340 | "CIFMCHONIAM": "6314041275143045", 341 | "id": 3250 342 | }, 343 | { 344 | "CIFMCHONIAM": "16231009", 345 | "id": 360 346 | }, 347 | { 348 | "CIFMCHONIAM": "16231009", 349 | "id": 380 350 | }, 351 | { 352 | "CIFMCHONIAM": "90220927", 353 | "id": 2480 354 | }, 355 | { 356 | "CIFMCHONIAM": "16230928", 357 | "id": 301 358 | }, 359 | { 360 | "CIFMCHONIAM": "12230601", 361 | "id": 102 362 | }, 363 | { 364 | "CIFMCHONIAM": "90220927", 365 | "id": 2490 366 | }, 367 | { 368 | "CIFMCHONIAM": "16231009", 369 | "id": 361 370 | }, 371 | { 372 | "CIFMCHONIAM": "12230627", 373 | "id": 2550 374 | }, 375 | { 376 | "CIFMCHONIAM": "12230525", 377 | "id": 2560 378 | }, 379 | { 380 | "CIFMCHONIAM": "12230525", 381 | "id": 2570 382 | }, 383 | { 384 | "CIFMCHONIAM": "15230830", 385 | "id": 2660 386 | }, 387 | { 388 | "CIFMCHONIAM": "15230830", 389 | "id": 2670 390 | }, 391 | { 392 | "CIFMCHONIAM": "15230830", 393 | "id": 2680 394 | }, 395 | { 396 | "CIFMCHONIAM": "226176734478057044", 397 | "id": 3297 398 | }, 399 | { 400 | "CIFMCHONIAM": "13230706", 401 | "id": 2302 402 | }, 403 | { 404 | "CIFMCHONIAM": "15230906", 405 | "id": 2700 406 | }, 407 | { 408 | "CIFMCHONIAM": "224840882074509280", 409 | "id": 3298 410 | }, 411 | { 412 | "CIFMCHONIAM": "15230830", 413 | "id": 2701 414 | }, 415 | { 416 | "CIFMCHONIAM": "15230830", 417 | "id": 2710 418 | }, 419 | { 420 | "CIFMCHONIAM": "13230602", 421 | "id": 2730 422 | }, 423 | { 424 | "CIFMCHONIAM": "13230602", 425 | "id": 2740 426 | }, 427 | { 428 | "CIFMCHONIAM": "13230602", 429 | "id": 2750 430 | }, 431 | { 432 | "CIFMCHONIAM": "13230602", 433 | "id": 2760 434 | }, 435 | { 436 | "CIFMCHONIAM": "15230830", 437 | "id": 3020 438 | }, 439 | { 440 | "CIFMCHONIAM": "20230828", 441 | "id": 3040 442 | }, 443 | { 444 | "CIFMCHONIAM": "20231023", 445 | "id": 3060 446 | }, 447 | { 448 | "CIFMCHONIAM": "20230828", 449 | "id": 3070 450 | }, 451 | { 452 | "CIFMCHONIAM": "20230828", 453 | "id": 3080 454 | }, 455 | { 456 | "CIFMCHONIAM": "20230828", 457 | "id": 3090 458 | }, 459 | { 460 | "CIFMCHONIAM": "14220714", 461 | "id": 1200 462 | }, 463 | { 464 | "CIFMCHONIAM": "6934685122749340", 465 | "id": 3190 466 | }, 467 | { 468 | "CIFMCHONIAM": "221521859429205755", 469 | "id": 3390 470 | }, 471 | { 472 | "CIFMCHONIAM": "62220927", 473 | "id": 7 474 | }, 475 | { 476 | "CIFMCHONIAM": "9082263766138238", 477 | "id": 3191 478 | }, 479 | { 480 | "CIFMCHONIAM": "14220714", 481 | "id": 1210 482 | }, 483 | { 484 | "CIFMCHONIAM": "70220919", 485 | "id": 16 486 | }, 487 | { 488 | "CIFMCHONIAM": "9030866044638228", 489 | "id": 3200 490 | }, 491 | { 492 | "CIFMCHONIAM": "14220714", 493 | "id": 1220 494 | }, 495 | { 496 | "CIFMCHONIAM": "6363892035972617", 497 | "id": 3210 498 | } 499 | ] 500 | } -------------------------------------------------------------------------------- /keygen/StarRail/1.5/VideoConfig.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "video_id": 1, 4 | "video_path": "CS_Chap01_Act010.usm", 5 | "is_player_involved": true, 6 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act010_Caption.json", 7 | "encryption": true 8 | }, 9 | { 10 | "video_id": 2, 11 | "video_path": "CS_Chap01_Act020.usm", 12 | "is_player_involved": true, 13 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act020_Caption.json", 14 | "encryption": true 15 | }, 16 | { 17 | "video_id": 3, 18 | "video_path": "CS_Chap01_Act110.usm", 19 | "is_player_involved": true, 20 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act110_Caption.json", 21 | "encryption": true 22 | }, 23 | { 24 | "video_id": 4, 25 | "video_path": "CS_Chap01_Act120.usm", 26 | "is_player_involved": true, 27 | "caption_path": "", 28 | "encryption": true 29 | }, 30 | { 31 | "video_id": 5, 32 | "video_path": "CS_Chap01_Act130.usm", 33 | "is_player_involved": true, 34 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act130_Caption.json", 35 | "encryption": true 36 | }, 37 | { 38 | "video_id": 7, 39 | "video_path": "CS_Chap01_Act150.usm", 40 | "is_player_involved": true, 41 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act150_Caption.json", 42 | "encryption": true 43 | }, 44 | { 45 | "video_id": 8, 46 | "video_path": "CS_Chap00_Act210.usm", 47 | "is_player_involved": false, 48 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act210_Caption.json", 49 | "encryption": true 50 | }, 51 | { 52 | "video_id": 16, 53 | "video_path": "CS_Chap00_Act270.usm", 54 | "is_player_involved": true, 55 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act270_Caption.json", 56 | "encryption": true 57 | }, 58 | { 59 | "video_id": 21, 60 | "video_path": "CS_Chap00_Act300.usm", 61 | "is_player_involved": true, 62 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act300_Caption.json", 63 | "encryption": true 64 | }, 65 | { 66 | "video_id": 100, 67 | "video_path": "CS_Chap01_Act3010.usm", 68 | "is_player_involved": false, 69 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3010_Caption.json", 70 | "encryption": true 71 | }, 72 | { 73 | "video_id": 101, 74 | "video_path": "CS_Chap01_Act3020.usm", 75 | "is_player_involved": false, 76 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3020_Caption.json", 77 | "encryption": true 78 | }, 79 | { 80 | "video_id": 102, 81 | "video_path": "CS_Chap01_Act3030.usm", 82 | "is_player_involved": false, 83 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3030_Caption.json", 84 | "encryption": true 85 | }, 86 | { 87 | "video_id": 310, 88 | "video_path": "CS_Chap00_Act310.usm", 89 | "is_player_involved": true, 90 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act310_Caption.json", 91 | "encryption": true 92 | }, 93 | { 94 | "video_id": 320, 95 | "video_path": "CS_Chap00_Act320.usm", 96 | "is_player_involved": true, 97 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act320_Caption.json", 98 | "encryption": true 99 | }, 100 | { 101 | "video_id": 1160, 102 | "video_path": "CS_Chap01_Act160.usm", 103 | "is_player_involved": false, 104 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act160_Caption.json", 105 | "encryption": true 106 | }, 107 | { 108 | "video_id": 1170, 109 | "video_path": "CS_Chap01_Act170.usm", 110 | "is_player_involved": false, 111 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act170_Caption.json", 112 | "encryption": true 113 | }, 114 | { 115 | "video_id": 1180, 116 | "video_path": "CS_Chap01_Act180.usm", 117 | "is_player_involved": false, 118 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act180_Caption.json", 119 | "encryption": true 120 | }, 121 | { 122 | "video_id": 1190, 123 | "video_path": "CS_Chap01_Act190.usm", 124 | "is_player_involved": true, 125 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act190_Caption.json", 126 | "encryption": true 127 | }, 128 | { 129 | "video_id": 1200, 130 | "video_path": "CS_Chap01_Act200.usm", 131 | "is_player_involved": false, 132 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act200_Caption.json", 133 | "encryption": true 134 | }, 135 | { 136 | "video_id": 1210, 137 | "video_path": "CS_Chap01_Act210.usm", 138 | "is_player_involved": true, 139 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act210_Caption.json", 140 | "encryption": true 141 | }, 142 | { 143 | "video_id": 1220, 144 | "video_path": "CS_Chap01_Act220.usm", 145 | "is_player_involved": true, 146 | "caption_path": "", 147 | "encryption": true 148 | }, 149 | { 150 | "video_id": 1221, 151 | "video_path": "CS_Chap01_Act221.usm", 152 | "is_player_involved": true, 153 | "caption_path": "", 154 | "encryption": true 155 | }, 156 | { 157 | "video_id": 1222, 158 | "video_path": "CS_Chap01_Act222.usm", 159 | "is_player_involved": false, 160 | "caption_path": "", 161 | "encryption": true 162 | }, 163 | { 164 | "video_id": 1223, 165 | "video_path": "CS_Chap01_Act223.usm", 166 | "is_player_involved": true, 167 | "caption_path": "", 168 | "encryption": true 169 | }, 170 | { 171 | "video_id": 1224, 172 | "video_path": "CS_Chap01_Act224.usm", 173 | "is_player_involved": true, 174 | "caption_path": "", 175 | "encryption": true 176 | }, 177 | { 178 | "video_id": 1230, 179 | "video_path": "CS_Chap01_Act230.usm", 180 | "is_player_involved": true, 181 | "caption_path": "", 182 | "encryption": true 183 | }, 184 | { 185 | "video_id": 1240, 186 | "video_path": "CS_Chap01_Act240.usm", 187 | "is_player_involved": true, 188 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act240_Caption.json", 189 | "encryption": true 190 | }, 191 | { 192 | "video_id": 2302, 193 | "video_path": "CS_Chap02_Act3020.usm", 194 | "is_player_involved": false, 195 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act3020_Caption.json", 196 | "encryption": true 197 | }, 198 | { 199 | "video_id": 1304, 200 | "video_path": "CS_Chap01_Act3040.usm", 201 | "is_player_involved": false, 202 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3040_Caption.json", 203 | "encryption": true 204 | }, 205 | { 206 | "video_id": 2420, 207 | "video_path": "CS_Chap02_Act420.usm", 208 | "is_player_involved": false, 209 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act420_Caption.json", 210 | "encryption": true 211 | }, 212 | { 213 | "video_id": 2440, 214 | "video_path": "CS_Chap02_Act440.usm", 215 | "is_player_involved": true, 216 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act440_Caption.json", 217 | "encryption": true 218 | }, 219 | { 220 | "video_id": 2450, 221 | "video_path": "CS_Chap02_Act450.usm", 222 | "is_player_involved": true, 223 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act450_Caption.json", 224 | "encryption": true 225 | }, 226 | { 227 | "video_id": 2460, 228 | "video_path": "CS_Chap02_Act460.usm", 229 | "is_player_involved": false, 230 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act460_Caption.json", 231 | "encryption": true 232 | }, 233 | { 234 | "video_id": 2480, 235 | "video_path": "CS_Chap02_Act480.usm", 236 | "is_player_involved": true, 237 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act480_Caption.json", 238 | "encryption": true 239 | }, 240 | { 241 | "video_id": 2490, 242 | "video_path": "CS_Chap02_Act490.usm", 243 | "is_player_involved": true, 244 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act490_Caption.json", 245 | "encryption": true 246 | }, 247 | { 248 | "video_id": 2530, 249 | "video_path": "CS_Chap02_Act530.usm", 250 | "is_player_involved": false, 251 | "caption_path": "", 252 | "encryption": true 253 | }, 254 | { 255 | "video_id": 2550, 256 | "video_path": "CS_Chap02_Act550.usm", 257 | "is_player_involved": false, 258 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act550_Caption.json", 259 | "encryption": true 260 | }, 261 | { 262 | "video_id": 2560, 263 | "video_path": "CS_Chap02_Act560.usm", 264 | "is_player_involved": false, 265 | "caption_path": "", 266 | "encryption": true 267 | }, 268 | { 269 | "video_id": 2570, 270 | "video_path": "CS_Chap02_Act570.usm", 271 | "is_player_involved": true, 272 | "caption_path": "", 273 | "encryption": true 274 | }, 275 | { 276 | "video_id": 2580, 277 | "video_path": "CS_Chap02_Act580.usm", 278 | "is_player_involved": true, 279 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act580_Caption.json", 280 | "encryption": true 281 | }, 282 | { 283 | "video_id": 2620, 284 | "video_path": "CS_Chap02_Act620.usm", 285 | "is_player_involved": true, 286 | "caption_path": "", 287 | "encryption": true 288 | }, 289 | { 290 | "video_id": 2630, 291 | "video_path": "CS_Chap02_Act630.usm", 292 | "is_player_involved": false, 293 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act630_Caption.json", 294 | "encryption": true 295 | }, 296 | { 297 | "video_id": 2640, 298 | "video_path": "CS_Chap02_Act640.usm", 299 | "is_player_involved": false, 300 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act640_Caption.json", 301 | "encryption": true 302 | }, 303 | { 304 | "video_id": 2660, 305 | "video_path": "CS_Chap02_Act660.usm", 306 | "is_player_involved": false, 307 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act660_Caption.json", 308 | "encryption": true 309 | }, 310 | { 311 | "video_id": 2670, 312 | "video_path": "CS_Chap02_Act670.usm", 313 | "is_player_involved": true, 314 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act670_Caption.json", 315 | "encryption": true 316 | }, 317 | { 318 | "video_id": 2680, 319 | "video_path": "CS_Chap02_Act680.usm", 320 | "is_player_involved": true, 321 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act680_Caption.json", 322 | "encryption": true 323 | }, 324 | { 325 | "video_id": 2690, 326 | "video_path": "CS_Chap02_Act690.usm", 327 | "is_player_involved": true, 328 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act690_Caption.json", 329 | "encryption": true 330 | }, 331 | { 332 | "video_id": 2700, 333 | "video_path": "CS_Chap02_Act700.usm", 334 | "is_player_involved": true, 335 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act700_Caption.json", 336 | "encryption": true 337 | }, 338 | { 339 | "video_id": 2701, 340 | "video_path": "CS_Chap02_Act701.usm", 341 | "is_player_involved": true, 342 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act701_Caption.json", 343 | "encryption": true 344 | }, 345 | { 346 | "video_id": 2710, 347 | "video_path": "CS_Chap02_Act710.usm", 348 | "is_player_involved": false, 349 | "caption_path": "", 350 | "encryption": true 351 | }, 352 | { 353 | "video_id": 2720, 354 | "video_path": "CS_Chap02_Act720.usm", 355 | "is_player_involved": false, 356 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act720_Caption.json", 357 | "encryption": true 358 | }, 359 | { 360 | "video_id": 2730, 361 | "video_path": "CS_Chap02_Act730.usm", 362 | "is_player_involved": false, 363 | "caption_path": "", 364 | "encryption": true 365 | }, 366 | { 367 | "video_id": 2740, 368 | "video_path": "CS_Chap02_Act740.usm", 369 | "is_player_involved": false, 370 | "caption_path": "", 371 | "encryption": true 372 | }, 373 | { 374 | "video_id": 2750, 375 | "video_path": "CS_Chap02_Act750.usm", 376 | "is_player_involved": false, 377 | "caption_path": "", 378 | "encryption": true 379 | }, 380 | { 381 | "video_id": 2760, 382 | "video_path": "CS_Chap02_Act760.usm", 383 | "is_player_involved": false, 384 | "caption_path": "", 385 | "encryption": true 386 | }, 387 | { 388 | "video_id": 3010, 389 | "video_path": "CS_Chap03_Act010.usm", 390 | "is_player_involved": true, 391 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act010_Caption.json", 392 | "encryption": true 393 | }, 394 | { 395 | "video_id": 3020, 396 | "video_path": "CS_Chap03_Act020.usm", 397 | "is_player_involved": true, 398 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act020_Caption.json", 399 | "encryption": true 400 | }, 401 | { 402 | "video_id": 3030, 403 | "video_path": "CS_Chap03_Act030.usm", 404 | "is_player_involved": true, 405 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act030_Caption.json", 406 | "encryption": true 407 | } 408 | ] -------------------------------------------------------------------------------- /keygen/StarRail/1.6/VideoConfig.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "video_id": 1, 4 | "video_path": "CS_Chap01_Act010.usm", 5 | "is_player_involved": true, 6 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act010_Caption.json", 7 | "encryption": true 8 | }, 9 | { 10 | "video_id": 2, 11 | "video_path": "CS_Chap01_Act020.usm", 12 | "is_player_involved": true, 13 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act020_Caption.json", 14 | "encryption": true 15 | }, 16 | { 17 | "video_id": 3, 18 | "video_path": "CS_Chap01_Act110.usm", 19 | "is_player_involved": true, 20 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act110_Caption.json", 21 | "encryption": true 22 | }, 23 | { 24 | "video_id": 4, 25 | "video_path": "CS_Chap01_Act120.usm", 26 | "is_player_involved": true, 27 | "caption_path": "", 28 | "encryption": true 29 | }, 30 | { 31 | "video_id": 5, 32 | "video_path": "CS_Chap01_Act130.usm", 33 | "is_player_involved": true, 34 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act130_Caption.json", 35 | "encryption": true 36 | }, 37 | { 38 | "video_id": 7, 39 | "video_path": "CS_Chap01_Act150.usm", 40 | "is_player_involved": true, 41 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act150_Caption.json", 42 | "encryption": true 43 | }, 44 | { 45 | "video_id": 8, 46 | "video_path": "CS_Chap00_Act210.usm", 47 | "is_player_involved": false, 48 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act210_Caption.json", 49 | "encryption": true 50 | }, 51 | { 52 | "video_id": 16, 53 | "video_path": "CS_Chap00_Act270.usm", 54 | "is_player_involved": true, 55 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act270_Caption.json", 56 | "encryption": true 57 | }, 58 | { 59 | "video_id": 21, 60 | "video_path": "CS_Chap00_Act300.usm", 61 | "is_player_involved": true, 62 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act300_Caption.json", 63 | "encryption": true 64 | }, 65 | { 66 | "video_id": 100, 67 | "video_path": "CS_Chap01_Act3010.usm", 68 | "is_player_involved": false, 69 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3010_Caption.json", 70 | "encryption": true 71 | }, 72 | { 73 | "video_id": 101, 74 | "video_path": "CS_Chap01_Act3020.usm", 75 | "is_player_involved": false, 76 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3020_Caption.json", 77 | "encryption": true 78 | }, 79 | { 80 | "video_id": 102, 81 | "video_path": "CS_Chap01_Act3030.usm", 82 | "is_player_involved": false, 83 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3030_Caption.json", 84 | "encryption": true 85 | }, 86 | { 87 | "video_id": 310, 88 | "video_path": "CS_Chap00_Act310.usm", 89 | "is_player_involved": true, 90 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act310_Caption.json", 91 | "encryption": true 92 | }, 93 | { 94 | "video_id": 320, 95 | "video_path": "CS_Chap00_Act320.usm", 96 | "is_player_involved": true, 97 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act320_Caption.json", 98 | "encryption": true 99 | }, 100 | { 101 | "video_id": 301, 102 | "video_path": "CS_Chap00_Act3010.usm", 103 | "is_player_involved": false, 104 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act3010_Caption.json", 105 | "encryption": true 106 | }, 107 | { 108 | "video_id": 302, 109 | "video_path": "CS_Chap00_Act3020.usm", 110 | "is_player_involved": false, 111 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act3020_Caption.json", 112 | "encryption": true 113 | }, 114 | { 115 | "video_id": 330, 116 | "video_path": "CS_Chap00_Act330.usm", 117 | "is_player_involved": true, 118 | "caption_path": "", 119 | "encryption": true 120 | }, 121 | { 122 | "video_id": 340, 123 | "video_path": "CS_Chap00_Act340.usm", 124 | "is_player_involved": true, 125 | "caption_path": "", 126 | "encryption": true 127 | }, 128 | { 129 | "video_id": 350, 130 | "video_path": "CS_Chap00_Act350.usm", 131 | "is_player_involved": true, 132 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act350_Caption.json", 133 | "encryption": true 134 | }, 135 | { 136 | "video_id": 360, 137 | "video_path": "CS_Chap00_Act360.usm", 138 | "is_player_involved": true, 139 | "caption_path": "", 140 | "encryption": true 141 | }, 142 | { 143 | "video_id": 361, 144 | "video_path": "CS_Chap00_Act361.usm", 145 | "is_player_involved": true, 146 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act361_Caption.json", 147 | "encryption": true 148 | }, 149 | { 150 | "video_id": 370, 151 | "video_path": "CS_Chap00_Act370.usm", 152 | "is_player_involved": false, 153 | "caption_path": "", 154 | "encryption": true 155 | }, 156 | { 157 | "video_id": 380, 158 | "video_path": "CS_Chap00_Act380.usm", 159 | "is_player_involved": true, 160 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act380_Caption.json", 161 | "encryption": true 162 | }, 163 | { 164 | "video_id": 390, 165 | "video_path": "CS_Chap00_Act390.usm", 166 | "is_player_involved": true, 167 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act390_Caption.json", 168 | "encryption": true 169 | }, 170 | { 171 | "video_id": 400, 172 | "video_path": "CS_Chap00_Act400.usm", 173 | "is_player_involved": true, 174 | "caption_path": "", 175 | "encryption": true 176 | }, 177 | { 178 | "video_id": 410, 179 | "video_path": "CS_Chap00_Act410.usm", 180 | "is_player_involved": true, 181 | "caption_path": "", 182 | "encryption": true 183 | }, 184 | { 185 | "video_id": 411, 186 | "video_path": "CS_Chap00_Act411.usm", 187 | "is_player_involved": false, 188 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act411_Caption.json", 189 | "encryption": true 190 | }, 191 | { 192 | "video_id": 420, 193 | "video_path": "CS_Chap00_Act420.usm", 194 | "is_player_involved": false, 195 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act420_Caption.json", 196 | "encryption": true 197 | }, 198 | { 199 | "video_id": 1160, 200 | "video_path": "CS_Chap01_Act160.usm", 201 | "is_player_involved": false, 202 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act160_Caption.json", 203 | "encryption": true 204 | }, 205 | { 206 | "video_id": 1170, 207 | "video_path": "CS_Chap01_Act170.usm", 208 | "is_player_involved": false, 209 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act170_Caption.json", 210 | "encryption": true 211 | }, 212 | { 213 | "video_id": 1180, 214 | "video_path": "CS_Chap01_Act180.usm", 215 | "is_player_involved": false, 216 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act180_Caption.json", 217 | "encryption": true 218 | }, 219 | { 220 | "video_id": 1190, 221 | "video_path": "CS_Chap01_Act190.usm", 222 | "is_player_involved": true, 223 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act190_Caption.json", 224 | "encryption": true 225 | }, 226 | { 227 | "video_id": 1200, 228 | "video_path": "CS_Chap01_Act200.usm", 229 | "is_player_involved": false, 230 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act200_Caption.json", 231 | "encryption": true 232 | }, 233 | { 234 | "video_id": 1210, 235 | "video_path": "CS_Chap01_Act210.usm", 236 | "is_player_involved": true, 237 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act210_Caption.json", 238 | "encryption": true 239 | }, 240 | { 241 | "video_id": 1220, 242 | "video_path": "CS_Chap01_Act220.usm", 243 | "is_player_involved": true, 244 | "caption_path": "", 245 | "encryption": true 246 | }, 247 | { 248 | "video_id": 1221, 249 | "video_path": "CS_Chap01_Act221.usm", 250 | "is_player_involved": true, 251 | "caption_path": "", 252 | "encryption": true 253 | }, 254 | { 255 | "video_id": 1222, 256 | "video_path": "CS_Chap01_Act222.usm", 257 | "is_player_involved": false, 258 | "caption_path": "", 259 | "encryption": true 260 | }, 261 | { 262 | "video_id": 1223, 263 | "video_path": "CS_Chap01_Act223.usm", 264 | "is_player_involved": true, 265 | "caption_path": "", 266 | "encryption": true 267 | }, 268 | { 269 | "video_id": 1224, 270 | "video_path": "CS_Chap01_Act224.usm", 271 | "is_player_involved": true, 272 | "caption_path": "", 273 | "encryption": true 274 | }, 275 | { 276 | "video_id": 1230, 277 | "video_path": "CS_Chap01_Act230.usm", 278 | "is_player_involved": true, 279 | "caption_path": "", 280 | "encryption": true 281 | }, 282 | { 283 | "video_id": 1240, 284 | "video_path": "CS_Chap01_Act240.usm", 285 | "is_player_involved": true, 286 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act240_Caption.json", 287 | "encryption": true 288 | }, 289 | { 290 | "video_id": 2302, 291 | "video_path": "CS_Chap02_Act3020.usm", 292 | "is_player_involved": false, 293 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act3020_Caption.json", 294 | "encryption": true 295 | }, 296 | { 297 | "video_id": 1304, 298 | "video_path": "CS_Chap01_Act3040.usm", 299 | "is_player_involved": false, 300 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3040_Caption.json", 301 | "encryption": true 302 | }, 303 | { 304 | "video_id": 2420, 305 | "video_path": "CS_Chap02_Act420.usm", 306 | "is_player_involved": false, 307 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act420_Caption.json", 308 | "encryption": true 309 | }, 310 | { 311 | "video_id": 2440, 312 | "video_path": "CS_Chap02_Act440.usm", 313 | "is_player_involved": true, 314 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act440_Caption.json", 315 | "encryption": true 316 | }, 317 | { 318 | "video_id": 2450, 319 | "video_path": "CS_Chap02_Act450.usm", 320 | "is_player_involved": true, 321 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act450_Caption.json", 322 | "encryption": true 323 | }, 324 | { 325 | "video_id": 2460, 326 | "video_path": "CS_Chap02_Act460.usm", 327 | "is_player_involved": false, 328 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act460_Caption.json", 329 | "encryption": true 330 | }, 331 | { 332 | "video_id": 2480, 333 | "video_path": "CS_Chap02_Act480.usm", 334 | "is_player_involved": true, 335 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act480_Caption.json", 336 | "encryption": true 337 | }, 338 | { 339 | "video_id": 2490, 340 | "video_path": "CS_Chap02_Act490.usm", 341 | "is_player_involved": true, 342 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act490_Caption.json", 343 | "encryption": true 344 | }, 345 | { 346 | "video_id": 2530, 347 | "video_path": "CS_Chap02_Act530.usm", 348 | "is_player_involved": false, 349 | "caption_path": "", 350 | "encryption": true 351 | }, 352 | { 353 | "video_id": 2550, 354 | "video_path": "CS_Chap02_Act550.usm", 355 | "is_player_involved": false, 356 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act550_Caption.json", 357 | "encryption": true 358 | }, 359 | { 360 | "video_id": 2560, 361 | "video_path": "CS_Chap02_Act560.usm", 362 | "is_player_involved": false, 363 | "caption_path": "", 364 | "encryption": true 365 | }, 366 | { 367 | "video_id": 2570, 368 | "video_path": "CS_Chap02_Act570.usm", 369 | "is_player_involved": true, 370 | "caption_path": "", 371 | "encryption": true 372 | }, 373 | { 374 | "video_id": 2580, 375 | "video_path": "CS_Chap02_Act580.usm", 376 | "is_player_involved": true, 377 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act580_Caption.json", 378 | "encryption": true 379 | }, 380 | { 381 | "video_id": 2620, 382 | "video_path": "CS_Chap02_Act620.usm", 383 | "is_player_involved": true, 384 | "caption_path": "", 385 | "encryption": true 386 | }, 387 | { 388 | "video_id": 2630, 389 | "video_path": "CS_Chap02_Act630.usm", 390 | "is_player_involved": false, 391 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act630_Caption.json", 392 | "encryption": true 393 | }, 394 | { 395 | "video_id": 2640, 396 | "video_path": "CS_Chap02_Act640.usm", 397 | "is_player_involved": false, 398 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act640_Caption.json", 399 | "encryption": true 400 | }, 401 | { 402 | "video_id": 2660, 403 | "video_path": "CS_Chap02_Act660.usm", 404 | "is_player_involved": false, 405 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act660_Caption.json", 406 | "encryption": true 407 | }, 408 | { 409 | "video_id": 2670, 410 | "video_path": "CS_Chap02_Act670.usm", 411 | "is_player_involved": true, 412 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act670_Caption.json", 413 | "encryption": true 414 | }, 415 | { 416 | "video_id": 2680, 417 | "video_path": "CS_Chap02_Act680.usm", 418 | "is_player_involved": true, 419 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act680_Caption.json", 420 | "encryption": true 421 | }, 422 | { 423 | "video_id": 2690, 424 | "video_path": "CS_Chap02_Act690.usm", 425 | "is_player_involved": true, 426 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act690_Caption.json", 427 | "encryption": true 428 | }, 429 | { 430 | "video_id": 2700, 431 | "video_path": "CS_Chap02_Act700.usm", 432 | "is_player_involved": true, 433 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act700_Caption.json", 434 | "encryption": true 435 | }, 436 | { 437 | "video_id": 2701, 438 | "video_path": "CS_Chap02_Act701.usm", 439 | "is_player_involved": true, 440 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act701_Caption.json", 441 | "encryption": true 442 | }, 443 | { 444 | "video_id": 2710, 445 | "video_path": "CS_Chap02_Act710.usm", 446 | "is_player_involved": false, 447 | "caption_path": "", 448 | "encryption": true 449 | }, 450 | { 451 | "video_id": 2720, 452 | "video_path": "CS_Chap02_Act720.usm", 453 | "is_player_involved": false, 454 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act720_Caption.json", 455 | "encryption": true 456 | }, 457 | { 458 | "video_id": 2730, 459 | "video_path": "CS_Chap02_Act730.usm", 460 | "is_player_involved": false, 461 | "caption_path": "", 462 | "encryption": true 463 | }, 464 | { 465 | "video_id": 2740, 466 | "video_path": "CS_Chap02_Act740.usm", 467 | "is_player_involved": false, 468 | "caption_path": "", 469 | "encryption": true 470 | }, 471 | { 472 | "video_id": 2750, 473 | "video_path": "CS_Chap02_Act750.usm", 474 | "is_player_involved": false, 475 | "caption_path": "", 476 | "encryption": true 477 | }, 478 | { 479 | "video_id": 2760, 480 | "video_path": "CS_Chap02_Act760.usm", 481 | "is_player_involved": false, 482 | "caption_path": "", 483 | "encryption": true 484 | }, 485 | { 486 | "video_id": 3010, 487 | "video_path": "CS_Chap03_Act010.usm", 488 | "is_player_involved": true, 489 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act010_Caption.json", 490 | "encryption": true 491 | }, 492 | { 493 | "video_id": 3020, 494 | "video_path": "CS_Chap03_Act020.usm", 495 | "is_player_involved": true, 496 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act020_Caption.json", 497 | "encryption": true 498 | }, 499 | { 500 | "video_id": 3030, 501 | "video_path": "CS_Chap03_Act030.usm", 502 | "is_player_involved": true, 503 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act030_Caption.json", 504 | "encryption": true 505 | } 506 | ] -------------------------------------------------------------------------------- /PyCriUsm/fast_core.pyx: -------------------------------------------------------------------------------- 1 | from libc.string cimport memcpy 2 | from cython cimport boundscheck, wraparound 3 | from cpython cimport PyMem_Malloc, PyMem_Free, PyObject 4 | from cpython cimport PyLong_FromLong 5 | from libc.stdio cimport fdopen, fseek, ftell, fread, rewind, ferror, setvbuf, _IOFBF, FILE, printf 6 | from libc.stdint cimport uint8_t, uint16_t, uint32_t, uint64_t, int8_t, int32_t, int64_t 7 | 8 | 9 | cdef uint16_t[256] hca_check_sum_table = [ 10 | 0x0000, 0x8005, 0x800F, 0x000A, 0x801B, 0x001E, 0x0014, 0x8011, 11 | 0x8033, 0x0036, 0x003C, 0x8039, 0x0028, 0x802D, 0x8027, 0x0022, 12 | 0x8063, 0x0066, 0x006C, 0x8069, 0x0078, 0x807D, 0x8077, 0x0072, 13 | 0x0050, 0x8055, 0x805F, 0x005A, 0x804B, 0x004E, 0x0044, 0x8041, 14 | 0x80C3, 0x00C6, 0x00CC, 0x80C9, 0x00D8, 0x80DD, 0x80D7, 0x00D2, 15 | 0x00F0, 0x80F5, 0x80FF, 0x00FA, 0x80EB, 0x00EE, 0x00E4, 0x80E1, 16 | 0x00A0, 0x80A5, 0x80AF, 0x00AA, 0x80BB, 0x00BE, 0x00B4, 0x80B1, 17 | 0x8093, 0x0096, 0x009C, 0x8099, 0x0088, 0x808D, 0x8087, 0x0082, 18 | 0x8183, 0x0186, 0x018C, 0x8189, 0x0198, 0x819D, 0x8197, 0x0192, 19 | 0x01B0, 0x81B5, 0x81BF, 0x01BA, 0x81AB, 0x01AE, 0x01A4, 0x81A1, 20 | 0x01E0, 0x81E5, 0x81EF, 0x01EA, 0x81FB, 0x01FE, 0x01F4, 0x81F1, 21 | 0x81D3, 0x01D6, 0x01DC, 0x81D9, 0x01C8, 0x81CD, 0x81C7, 0x01C2, 22 | 0x0140, 0x8145, 0x814F, 0x014A, 0x815B, 0x015E, 0x0154, 0x8151, 23 | 0x8173, 0x0176, 0x017C, 0x8179, 0x0168, 0x816D, 0x8167, 0x0162, 24 | 0x8123, 0x0126, 0x012C, 0x8129, 0x0138, 0x813D, 0x8137, 0x0132, 25 | 0x0110, 0x8115, 0x811F, 0x011A, 0x810B, 0x010E, 0x0104, 0x8101, 26 | 0x8303, 0x0306, 0x030C, 0x8309, 0x0318, 0x831D, 0x8317, 0x0312, 27 | 0x0330, 0x8335, 0x833F, 0x033A, 0x832B, 0x032E, 0x0324, 0x8321, 28 | 0x0360, 0x8365, 0x836F, 0x036A, 0x837B, 0x037E, 0x0374, 0x8371, 29 | 0x8353, 0x0356, 0x035C, 0x8359, 0x0348, 0x834D, 0x8347, 0x0342, 30 | 0x03C0, 0x83C5, 0x83CF, 0x03CA, 0x83DB, 0x03DE, 0x03D4, 0x83D1, 31 | 0x83F3, 0x03F6, 0x03FC, 0x83F9, 0x03E8, 0x83ED, 0x83E7, 0x03E2, 32 | 0x83A3, 0x03A6, 0x03AC, 0x83A9, 0x03B8, 0x83BD, 0x83B7, 0x03B2, 33 | 0x0390, 0x8395, 0x839F, 0x039A, 0x838B, 0x038E, 0x0384, 0x8381, 34 | 0x0280, 0x8285, 0x828F, 0x028A, 0x829B, 0x029E, 0x0294, 0x8291, 35 | 0x82B3, 0x02B6, 0x02BC, 0x82B9, 0x02A8, 0x82AD, 0x82A7, 0x02A2, 36 | 0x82E3, 0x02E6, 0x02EC, 0x82E9, 0x02F8, 0x82FD, 0x82F7, 0x02F2, 37 | 0x02D0, 0x82D5, 0x82DF, 0x02DA, 0x82CB, 0x02CE, 0x02C4, 0x82C1, 38 | 0x8243, 0x0246, 0x024C, 0x8249, 0x0258, 0x825D, 0x8257, 0x0252, 39 | 0x0270, 0x8275, 0x827F, 0x027A, 0x826B, 0x026E, 0x0264, 0x8261, 40 | 0x0220, 0x8225, 0x822F, 0x022A, 0x823B, 0x023E, 0x0234, 0x8231, 41 | 0x8213, 0x0216, 0x021C, 0x8219, 0x0208, 0x820D, 0x8207, 0x0202 42 | ] 43 | 44 | 45 | cdef Py_ssize_t _char_size = sizeof(char) 46 | 47 | 48 | #无符号整型16位 49 | @boundscheck(False) 50 | cdef uint16_t _bswap_16(uint16_t* x) noexcept nogil: 51 | return ((x[0] & 0x00ff) << 8) | ((x[0] & 0xff00) >> 8) 52 | 53 | 54 | #无符号整型32位 55 | @boundscheck(False) 56 | cdef uint32_t _bswap_32(uint32_t* x) noexcept nogil: 57 | return ((x[0] & (0xff000000)) >> 24) | ((x[0] & (0x00ff0000)) >> 8) | ((x[0] & (0x0000ff00)) << 8) | ((x[0] & (0x000000ff)) << 24) 58 | 59 | 60 | cdef void load_array(iter_obj, uint8_t* array): 61 | cdef uint8_t i 62 | for i in iter_obj: 63 | array[0] = i 64 | array = array + 1 65 | 66 | 67 | def test_for_array(iter_obj): 68 | cdef uint8_t[64] array 69 | load_array(iter_obj, array) 70 | return array 71 | 72 | 73 | @boundscheck(False) 74 | cdef bint _is_in_array(uint8_t num, uint8_t* array, Py_ssize_t array_len) noexcept nogil: 75 | cdef bint result = 0 76 | for i in range(array_len): 77 | if num == array[i]: 78 | result = 1 79 | return result 80 | 81 | 82 | cdef class SimpleBuffer: 83 | cdef readonly Py_ssize_t size 84 | cdef uint8_t* data 85 | cdef readonly bint is_video 86 | cdef readonly uint8_t chno 87 | cdef readonly uint32_t index 88 | cdef int64_t buffer_ref_count 89 | 90 | def __cinit__(self): 91 | self.size = 0 92 | 93 | cdef void init(self, size_t size): 94 | self.free() 95 | self.data = PyMem_Malloc(size) 96 | self.size = size 97 | 98 | def __getbuffer__(self, Py_buffer *buffer, int flags): 99 | buffer.buf = self.data 100 | buffer.format = "B" 101 | buffer.internal = NULL 102 | buffer.itemsize = sizeof(char) 103 | buffer.len = self.size 104 | buffer.ndim = 1 105 | buffer.obj = self 106 | buffer.readonly = 0 107 | buffer.shape = &self.size 108 | buffer.strides = &_char_size 109 | buffer.suboffsets = NULL 110 | self.buffer_ref_count += 1 111 | 112 | def __releasebuffer__(self, Py_buffer *buffer): 113 | self.buffer_ref_count -= 1 114 | if self.buffer_ref_count < 0: 115 | raise OverflowError('buffer ref count become minus, something wrong') 116 | 117 | def __len__(self): 118 | return self.size 119 | 120 | cdef void free(self): 121 | if self.data: 122 | # printf("call simple buffer free") 123 | PyMem_Free(self.data) 124 | self.data = NULL 125 | 126 | def __dealloc__(self): 127 | self.free() 128 | 129 | 130 | cdef class FastUsmFile: 131 | cdef FILE* _file_obj 132 | cdef _py_file_obj 133 | cdef char* _custom_buf 134 | cdef uint32_t chunk_index 135 | 136 | def __cinit__(self, path): 137 | from io import FileIO, DEFAULT_BUFFER_SIZE 138 | self._py_file_obj = FileIO(path, "rb") 139 | self._file_obj = fdopen(self._py_file_obj.fileno(), "rb") 140 | self._custom_buf = PyMem_Malloc(DEFAULT_BUFFER_SIZE) 141 | setvbuf(self._file_obj, self._custom_buf, _IOFBF, 8192) 142 | 143 | cdef SimpleBuffer _get_chunk(self, int32_t offset, size_t size, bint is_video, uint8_t chno): 144 | cdef SimpleBuffer buffer = SimpleBuffer() 145 | buffer.init(size) 146 | with nogil: 147 | buffer.is_video = is_video 148 | buffer.chno = chno 149 | buffer.index = self.chunk_index 150 | self.chunk_index += 1 151 | fseek(self._file_obj, offset, 1) 152 | fread(buffer.data, 1, size, self._file_obj) 153 | self._check_file_error() 154 | return buffer 155 | 156 | @boundscheck(False) 157 | @wraparound(False) 158 | def iter_chunks(self, int8_t filter_mode=0, filter_audio_chnos=(), filter_video_chnos=()): 159 | cdef uint8_t[24] header_array 160 | cdef uint32_t file_size, pos, chunk_size 161 | cdef uint32_t* chunk_type 162 | cdef uint16_t padding_size 163 | cdef uint8_t* data_offset 164 | cdef uint8_t* chno 165 | cdef uint8_t data_type 166 | cdef bint is_video 167 | 168 | # printf("进入iter_chunks函数成功\n") 169 | cdef uint8_t filter_audio_len = len(filter_audio_chnos) 170 | cdef uint8_t filter_video_len = len(filter_video_chnos) 171 | cdef uint8_t[64] _filter_audio_chnos 172 | cdef uint8_t[8] _filter_video_chnos 173 | cdef bint enable_filter 174 | 175 | # 检查参数 176 | # printf("参数检查\n") 177 | if len(filter_audio_chnos) > 64: 178 | raise OverflowError("最多支持64个Audio Chno") 179 | if len(filter_video_chnos) > 8: 180 | raise OverflowError("最多支持8个Video Chno") 181 | if filter_mode > 2 or filter_mode < 0: 182 | raise TypeError('Wrong filter_mode arg:%s'%filter_mode) 183 | 184 | with nogil: 185 | # printf("预处理\n") 186 | enable_filter = 0 if filter_mode == 0 else 1 187 | if filter_mode > 0: 188 | filter_mode -= 1 189 | self.chunk_index = 0 190 | chunk_type = header_array 191 | data_offset = header_array + 9 192 | chno = header_array + 12 193 | fseek(self._file_obj, 0, 2) 194 | file_size = ftell(self._file_obj) 195 | rewind(self._file_obj) 196 | 197 | while pos < file_size: 198 | # printf("开始读取头\n") 199 | fseek(self._file_obj, pos, 0) 200 | fread(header_array, 1, sizeof(header_array), self._file_obj) 201 | self._check_file_error() 202 | # printf("解析头\n") 203 | chunk_size = _bswap_32((header_array + 4)) 204 | padding_size = _bswap_16((header_array + 10)) 205 | pos += chunk_size + 8 206 | data_type = (header_array[15]) & 3 207 | with gil: 208 | # print(header_array[:sizeof(header_array)]) 209 | print("header信息:", chunk_size, data_offset[0], padding_size, pos, data_type) 210 | if data_type != 0: 211 | #with gil: 212 | # print('非流,跳过\n') 213 | continue 214 | if chunk_type[0] == 1447449408: 215 | if enable_filter and filter_mode^_is_in_array(chno[0], _filter_video_chnos, filter_video_len): 216 | #with gil: 217 | # print('筛选,跳过\n') 218 | continue 219 | is_video = 1 220 | elif chunk_type[0] == 1095127872: 221 | if enable_filter and filter_mode^_is_in_array(chno[0], _filter_audio_chnos, filter_audio_len): 222 | #with gil: 223 | # print('筛选,跳过\n') 224 | continue 225 | is_video = 0 226 | else: 227 | #with gil: 228 | # print('未知chunk,跳过\n') 229 | continue 230 | # printf("开始读取chunk\n") 231 | with gil: 232 | yield self._get_chunk(data_offset[0] + 8 - sizeof(header_array), chunk_size - data_offset[0] - padding_size, is_video, chno[0]) 233 | #printf('proccess end\n') 234 | self.chunk_index = 0 235 | 236 | def __dealloc__(self): 237 | self.close() 238 | PyMem_Free(self._custom_buf) 239 | 240 | cdef void _check_file_error(self) noexcept nogil: 241 | # printf("检查文件错误\n") 242 | if ferror(self._file_obj): 243 | with gil: 244 | raise IOError 245 | 246 | cpdef void close(self): 247 | self._py_file_obj.close() 248 | 249 | 250 | cdef class UsmCrypter: 251 | cdef uint8_t[0x20] _video_mask1 252 | cdef uint8_t[0x20] _video_mask2 253 | cdef uint8_t[0x20] _audio_mask 254 | 255 | @wraparound(False) 256 | @boundscheck(False) 257 | def __init__(self, uint64_t key): 258 | cdef uint32_t tmp_key1 259 | cdef uint32_t tmp_key2 260 | cdef uint8_t[4] key1 261 | cdef uint8_t[4] key2 262 | cdef uint8_t[4] table2 263 | cdef uint8_t i 264 | 265 | with nogil: 266 | table2 = [85, 82, 85, 67] 267 | tmp_key1 = key & (0xffffffff) 268 | tmp_key2 = key >> 32 269 | key1 = &tmp_key1 270 | key2 = &tmp_key2 271 | self._video_mask1[0x00] = key1[0] 272 | self._video_mask1[0x01] = key1[1] 273 | self._video_mask1[0x02] = key1[2] 274 | self._video_mask1[0x03] = key1[3] - 0x34 275 | self._video_mask1[0x04] = key2[0] + 0xF9 276 | self._video_mask1[0x05] = key2[1] ^ 0x13 277 | self._video_mask1[0x06] = key2[2] + 0x61 278 | self._video_mask1[0x07] = self._video_mask1[0x00] ^ 0xFF 279 | self._video_mask1[0x08] = self._video_mask1[0x02] + self._video_mask1[0x01] 280 | self._video_mask1[0x09] = self._video_mask1[0x01] - self._video_mask1[0x07] 281 | self._video_mask1[0x0A] = self._video_mask1[0x02] ^ 0xFF 282 | self._video_mask1[0x0B] = self._video_mask1[0x01] ^ 0xFF 283 | self._video_mask1[0x0C] = self._video_mask1[0x0B] + self._video_mask1[0x09] 284 | self._video_mask1[0x0D] = self._video_mask1[0x08] - self._video_mask1[0x03] 285 | self._video_mask1[0x0E] = self._video_mask1[0x0D] ^ 0xFF 286 | self._video_mask1[0x0F] = self._video_mask1[0x0A] - self._video_mask1[0x0B] 287 | self._video_mask1[0x10] = self._video_mask1[0x08] - self._video_mask1[0x0F] 288 | self._video_mask1[0x11] = self._video_mask1[0x10] ^ self._video_mask1[0x07] 289 | self._video_mask1[0x12] = self._video_mask1[0x0F] ^ 0xFF 290 | self._video_mask1[0x13] = self._video_mask1[0x03] ^ 0x10 291 | self._video_mask1[0x14] = self._video_mask1[0x04] - 0x32 292 | self._video_mask1[0x15] = self._video_mask1[0x05] + 0xED 293 | self._video_mask1[0x16] = self._video_mask1[0x06] ^ 0xF3 294 | self._video_mask1[0x17] = self._video_mask1[0x13] - self._video_mask1[0x0F] 295 | self._video_mask1[0x18] = self._video_mask1[0x15] + self._video_mask1[0x07] 296 | self._video_mask1[0x19] = 0x21 - self._video_mask1[0x13] 297 | self._video_mask1[0x1A] = self._video_mask1[0x14] ^ self._video_mask1[0x17] 298 | self._video_mask1[0x1B] = self._video_mask1[0x16] + self._video_mask1[0x16] 299 | self._video_mask1[0x1C] = self._video_mask1[0x17] + 0x44 300 | self._video_mask1[0x1D] = self._video_mask1[0x03] + self._video_mask1[0x04] 301 | self._video_mask1[0x1E] = self._video_mask1[0x05] - self._video_mask1[0x16] 302 | self._video_mask1[0x1F] = self._video_mask1[0x1D] ^ self._video_mask1[0x13] 303 | 304 | for i in range(0x20): 305 | self._video_mask2[i] = self._video_mask1[i] ^ 0xFF 306 | self._audio_mask[i] = table2[i >> 1 & 3] if i & 1 == 1 else self._video_mask1[i] ^ 0xFF 307 | 308 | @wraparound(False) 309 | @boundscheck(False) 310 | def decrypt_video(self, SimpleBuffer chunk_array): 311 | cdef uint64_t i 312 | cdef uint64_t dataOffset = 0x40 313 | cdef uint8_t[0x20] mask 314 | cdef uint8_t* data = chunk_array.data 315 | cdef Py_ssize_t size = chunk_array.size 316 | if size < 0x240: 317 | return 318 | with nogil: 319 | size -= dataOffset 320 | memcpy(mask, self._video_mask2, sizeof(mask)) 321 | for i in range(0x100, size): 322 | data[i + dataOffset] ^= mask[i & 0x1F] 323 | mask[i & 0x1F] = data[i + dataOffset] ^ self._video_mask2[i & 0x1F] 324 | memcpy(mask, self._video_mask1, sizeof(mask)) 325 | for i in range(0x100): 326 | mask[i & 0x1F] ^= data[0x100 + i + dataOffset] 327 | data[i + dataOffset] ^= mask[i & 0x1F] 328 | 329 | @wraparound(False) 330 | @boundscheck(False) 331 | def crypt_audio(self, SimpleBuffer chunk_array): 332 | cdef uint64_t i 333 | cdef uint8_t* data = chunk_array.data 334 | cdef Py_ssize_t size = chunk_array.size 335 | if size <= 0x140: 336 | return 337 | with nogil: 338 | for i in range(0x140, size): 339 | data[i] ^= self._audio_mask[i & 0x1f] 340 | 341 | 342 | @wraparound(False) 343 | @boundscheck(False) 344 | cdef uint8_t* init_default_audio_ciph(uint8_t* _ciphTable): 345 | cdef uint64_t i 346 | cdef uint8_t v = 0 347 | for i in range(0xff): 348 | v = v * 13 + 11 349 | if v == 0 or v == 0xFF: 350 | v = v * 13 + 11 351 | _ciphTable[i] = v 352 | _ciphTable[0] = 0 353 | _ciphTable[0xFF] = 0xFF 354 | 355 | cdef uint8_t[0x100] default_audio_ciph_table 356 | init_default_audio_ciph(default_audio_ciph_table) 357 | 358 | 359 | cdef class HcaCrypter: 360 | cdef uint8_t[0x100] _ciph_table 361 | 362 | @wraparound(False) 363 | @boundscheck(False) 364 | def __init__(self, uint32_t key1, uint32_t key2): 365 | cdef uint8_t* _ciph_table 366 | cdef uint64_t i 367 | cdef uint64_t j 368 | cdef uint8_t tmp1 369 | cdef uint8_t v 370 | cdef uint8_t[7] t1 371 | cdef uint8_t[16] t2 372 | cdef uint8_t[0x100] t3 373 | cdef uint8_t[0x10] t31 374 | cdef uint8_t[0x10] t32 375 | cdef uint32_t iTable = 1 376 | 377 | _ciphTable = self._ciph_table 378 | if key1 == 0: 379 | key2 -= 1 380 | key1 -= 1 381 | for i in range(7): 382 | t1[i] = key1 383 | key1 = key1 >> 8 | key2 << 24 384 | key2 >>= 8 385 | 386 | t2 = [t1[1], t1[1] ^ t1[6], t1[2] ^ t1[3], 387 | t1[2], t1[2] ^ t1[1], t1[3] ^ t1[4], 388 | t1[3], t1[3] ^ t1[2], t1[4] ^ t1[5], 389 | t1[4], t1[4] ^ t1[3], t1[5] ^ t1[6], 390 | t1[5], t1[5] ^ t1[4], t1[6] ^ t1[1], 391 | t1[6]] 392 | 393 | init56_create_table(t31, t1[0]) 394 | # Create Table 395 | for i in range(0x10): 396 | init56_create_table(t32, t2[i]) 397 | v = t31[i] << 4 398 | for j in range(sizeof(t32)): 399 | tmp1 = t32[j] 400 | t3[i * 0x10 + j] = v | tmp1 401 | 402 | # CIPHテーブル 403 | for i in range(0x100): 404 | v = v + 0x11 405 | tmp1 = t3[v] 406 | iTable += 1 407 | if tmp1 != 0 and tmp1 != 0xFF: 408 | _ciphTable[iTable] = tmp1 409 | _ciphTable[0] = 0 410 | _ciphTable[0xFF] = 0xFF 411 | 412 | @wraparound(False) 413 | @boundscheck(False) 414 | def decrypt(self, uint8_t* data, uint64_t size, uint8_t type): 415 | cdef uint8_t* _ciph_table 416 | cdef uint16_t sum 417 | if type == 0: 418 | return 419 | elif type == 1: 420 | _ciph_table = default_audio_ciph_table 421 | elif type == 65: 422 | _ciph_table = self._ciph_table 423 | else: 424 | return -1 425 | with nogil: 426 | for i in range(size): 427 | data[i] = _ciph_table[data[i]] 428 | sum = self.check_sum(data, size - 2) 429 | data[size - 1] = sum >> 8 430 | data[size - 2] = sum & 0xff 431 | return data[:size] 432 | 433 | @wraparound(False) 434 | @boundscheck(False) 435 | cdef uint16_t check_sum(self, uint8_t* data, uint64_t size): 436 | cdef uint64_t i 437 | cdef uint16_t sum 438 | with nogil: 439 | for i in range(size): 440 | sum = sum << 8 ^ hca_check_sum_table[sum >> 8 ^ data[i]] 441 | return sum 442 | 443 | @wraparound(False) 444 | @boundscheck(False) 445 | cdef uint8_t* init56_create_table(uint8_t* table, uint8_t key): 446 | cdef int32_t mul = (key & 1) << 3 | 5 447 | cdef int32_t add = key & 0xE | 1 448 | key >>= 4 449 | for i in range(0x10): 450 | key = key * mul + add 451 | table[i] = key 452 | -------------------------------------------------------------------------------- /keygen/StarRail/2.0/VideoConfig.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "video_id": 1, 4 | "video_path": "CS_Chap01_Act010.usm", 5 | "is_player_involved": true, 6 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act010_Caption.json", 7 | "encryption": true 8 | }, 9 | { 10 | "video_id": 2, 11 | "video_path": "CS_Chap01_Act020.usm", 12 | "is_player_involved": true, 13 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act020_Caption.json", 14 | "encryption": true 15 | }, 16 | { 17 | "video_id": 3, 18 | "video_path": "CS_Chap01_Act110.usm", 19 | "is_player_involved": true, 20 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act110_Caption.json", 21 | "encryption": true 22 | }, 23 | { 24 | "video_id": 4, 25 | "video_path": "CS_Chap01_Act120.usm", 26 | "is_player_involved": true, 27 | "caption_path": "", 28 | "encryption": true 29 | }, 30 | { 31 | "video_id": 5, 32 | "video_path": "CS_Chap01_Act130.usm", 33 | "is_player_involved": true, 34 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act130_Caption.json", 35 | "encryption": true 36 | }, 37 | { 38 | "video_id": 7, 39 | "video_path": "CS_Chap01_Act150.usm", 40 | "is_player_involved": true, 41 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act150_Caption.json", 42 | "encryption": true 43 | }, 44 | { 45 | "video_id": 8, 46 | "video_path": "CS_Chap00_Act210.usm", 47 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act210_Caption.json", 48 | "encryption": true 49 | }, 50 | { 51 | "video_id": 16, 52 | "video_path": "CS_Chap00_Act270.usm", 53 | "is_player_involved": true, 54 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act270_Caption.json", 55 | "encryption": true 56 | }, 57 | { 58 | "video_id": 21, 59 | "video_path": "CS_Chap00_Act300.usm", 60 | "is_player_involved": true, 61 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act300_Caption.json", 62 | "encryption": true 63 | }, 64 | { 65 | "video_id": 100, 66 | "video_path": "CS_Chap01_Act3010.usm", 67 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3010_Caption.json", 68 | "encryption": true 69 | }, 70 | { 71 | "video_id": 101, 72 | "video_path": "CS_Chap01_Act3020.usm", 73 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3020_Caption.json", 74 | "encryption": true 75 | }, 76 | { 77 | "video_id": 102, 78 | "video_path": "CS_Chap01_Act3030.usm", 79 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3030_Caption.json", 80 | "encryption": true 81 | }, 82 | { 83 | "video_id": 310, 84 | "video_path": "CS_Chap00_Act310.usm", 85 | "is_player_involved": true, 86 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act310_Caption.json", 87 | "encryption": true 88 | }, 89 | { 90 | "video_id": 320, 91 | "video_path": "CS_Chap00_Act320.usm", 92 | "is_player_involved": true, 93 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act320_Caption.json", 94 | "encryption": true 95 | }, 96 | { 97 | "video_id": 301, 98 | "video_path": "CS_Chap00_Act3010.usm", 99 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act3010_Caption.json", 100 | "encryption": true 101 | }, 102 | { 103 | "video_id": 302, 104 | "video_path": "CS_Chap00_Act3020.usm", 105 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act3020_Caption.json", 106 | "encryption": true 107 | }, 108 | { 109 | "video_id": 330, 110 | "video_path": "CS_Chap00_Act330.usm", 111 | "is_player_involved": true, 112 | "caption_path": "", 113 | "encryption": true 114 | }, 115 | { 116 | "video_id": 340, 117 | "video_path": "CS_Chap00_Act340.usm", 118 | "is_player_involved": true, 119 | "caption_path": "", 120 | "encryption": true 121 | }, 122 | { 123 | "video_id": 350, 124 | "video_path": "CS_Chap00_Act350.usm", 125 | "is_player_involved": true, 126 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act350_Caption.json", 127 | "encryption": true 128 | }, 129 | { 130 | "video_id": 360, 131 | "video_path": "CS_Chap00_Act360.usm", 132 | "is_player_involved": true, 133 | "caption_path": "", 134 | "encryption": true 135 | }, 136 | { 137 | "video_id": 361, 138 | "video_path": "CS_Chap00_Act361.usm", 139 | "is_player_involved": true, 140 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act361_Caption.json", 141 | "encryption": true 142 | }, 143 | { 144 | "video_id": 370, 145 | "video_path": "CS_Chap00_Act370.usm", 146 | "caption_path": "", 147 | "encryption": true 148 | }, 149 | { 150 | "video_id": 380, 151 | "video_path": "CS_Chap00_Act380.usm", 152 | "is_player_involved": true, 153 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act380_Caption.json", 154 | "encryption": true 155 | }, 156 | { 157 | "video_id": 390, 158 | "video_path": "CS_Chap00_Act390.usm", 159 | "is_player_involved": true, 160 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act390_Caption.json", 161 | "encryption": true 162 | }, 163 | { 164 | "video_id": 400, 165 | "video_path": "CS_Chap00_Act400.usm", 166 | "is_player_involved": true, 167 | "caption_path": "", 168 | "encryption": true 169 | }, 170 | { 171 | "video_id": 410, 172 | "video_path": "CS_Chap00_Act410.usm", 173 | "is_player_involved": true, 174 | "caption_path": "", 175 | "encryption": true 176 | }, 177 | { 178 | "video_id": 411, 179 | "video_path": "CS_Chap00_Act411.usm", 180 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act411_Caption.json", 181 | "encryption": true 182 | }, 183 | { 184 | "video_id": 420, 185 | "video_path": "CS_Chap00_Act420.usm", 186 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act420_Caption.json", 187 | "encryption": true 188 | }, 189 | { 190 | "video_id": 1160, 191 | "video_path": "CS_Chap01_Act160.usm", 192 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act160_Caption.json", 193 | "encryption": true 194 | }, 195 | { 196 | "video_id": 1170, 197 | "video_path": "CS_Chap01_Act170.usm", 198 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act170_Caption.json", 199 | "encryption": true 200 | }, 201 | { 202 | "video_id": 1180, 203 | "video_path": "CS_Chap01_Act180.usm", 204 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act180_Caption.json", 205 | "encryption": true 206 | }, 207 | { 208 | "video_id": 1190, 209 | "video_path": "CS_Chap01_Act190.usm", 210 | "is_player_involved": true, 211 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act190_Caption.json", 212 | "encryption": true 213 | }, 214 | { 215 | "video_id": 1200, 216 | "video_path": "CS_Chap01_Act200.usm", 217 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act200_Caption.json", 218 | "encryption": true 219 | }, 220 | { 221 | "video_id": 1210, 222 | "video_path": "CS_Chap01_Act210.usm", 223 | "is_player_involved": true, 224 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act210_Caption.json", 225 | "encryption": true 226 | }, 227 | { 228 | "video_id": 1220, 229 | "video_path": "CS_Chap01_Act220.usm", 230 | "is_player_involved": true, 231 | "caption_path": "", 232 | "encryption": true 233 | }, 234 | { 235 | "video_id": 1221, 236 | "video_path": "CS_Chap01_Act221.usm", 237 | "is_player_involved": true, 238 | "caption_path": "", 239 | "encryption": true 240 | }, 241 | { 242 | "video_id": 1222, 243 | "video_path": "CS_Chap01_Act222.usm", 244 | "caption_path": "", 245 | "encryption": true 246 | }, 247 | { 248 | "video_id": 1223, 249 | "video_path": "CS_Chap01_Act223.usm", 250 | "is_player_involved": true, 251 | "caption_path": "", 252 | "encryption": true 253 | }, 254 | { 255 | "video_id": 1224, 256 | "video_path": "CS_Chap01_Act224.usm", 257 | "is_player_involved": true, 258 | "caption_path": "", 259 | "encryption": true 260 | }, 261 | { 262 | "video_id": 1230, 263 | "video_path": "CS_Chap01_Act230.usm", 264 | "is_player_involved": true, 265 | "caption_path": "", 266 | "encryption": true 267 | }, 268 | { 269 | "video_id": 1240, 270 | "video_path": "CS_Chap01_Act240.usm", 271 | "is_player_involved": true, 272 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act240_Caption.json", 273 | "encryption": true 274 | }, 275 | { 276 | "video_id": 2302, 277 | "video_path": "CS_Chap02_Act3020.usm", 278 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act3020_Caption.json", 279 | "encryption": true 280 | }, 281 | { 282 | "video_id": 1304, 283 | "video_path": "CS_Chap01_Act3040.usm", 284 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3040_Caption.json", 285 | "encryption": true 286 | }, 287 | { 288 | "video_id": 2420, 289 | "video_path": "CS_Chap02_Act420.usm", 290 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act420_Caption.json", 291 | "encryption": true 292 | }, 293 | { 294 | "video_id": 2440, 295 | "video_path": "CS_Chap02_Act440.usm", 296 | "is_player_involved": true, 297 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act440_Caption.json", 298 | "encryption": true 299 | }, 300 | { 301 | "video_id": 2450, 302 | "video_path": "CS_Chap02_Act450.usm", 303 | "is_player_involved": true, 304 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act450_Caption.json", 305 | "encryption": true 306 | }, 307 | { 308 | "video_id": 2460, 309 | "video_path": "CS_Chap02_Act460.usm", 310 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act460_Caption.json", 311 | "encryption": true 312 | }, 313 | { 314 | "video_id": 2480, 315 | "video_path": "CS_Chap02_Act480.usm", 316 | "is_player_involved": true, 317 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act480_Caption.json", 318 | "encryption": true 319 | }, 320 | { 321 | "video_id": 2490, 322 | "video_path": "CS_Chap02_Act490.usm", 323 | "is_player_involved": true, 324 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act490_Caption.json", 325 | "encryption": true 326 | }, 327 | { 328 | "video_id": 2530, 329 | "video_path": "CS_Chap02_Act530.usm", 330 | "caption_path": "", 331 | "encryption": true 332 | }, 333 | { 334 | "video_id": 2550, 335 | "video_path": "CS_Chap02_Act550.usm", 336 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act550_Caption.json", 337 | "encryption": true 338 | }, 339 | { 340 | "video_id": 2560, 341 | "video_path": "CS_Chap02_Act560.usm", 342 | "caption_path": "", 343 | "encryption": true 344 | }, 345 | { 346 | "video_id": 2570, 347 | "video_path": "CS_Chap02_Act570.usm", 348 | "is_player_involved": true, 349 | "caption_path": "", 350 | "encryption": true 351 | }, 352 | { 353 | "video_id": 2580, 354 | "video_path": "CS_Chap02_Act580.usm", 355 | "is_player_involved": true, 356 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act580_Caption.json", 357 | "encryption": true 358 | }, 359 | { 360 | "video_id": 2620, 361 | "video_path": "CS_Chap02_Act620.usm", 362 | "is_player_involved": true, 363 | "caption_path": "", 364 | "encryption": true 365 | }, 366 | { 367 | "video_id": 2630, 368 | "video_path": "CS_Chap02_Act630.usm", 369 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act630_Caption.json", 370 | "encryption": true 371 | }, 372 | { 373 | "video_id": 2640, 374 | "video_path": "CS_Chap02_Act640.usm", 375 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act640_Caption.json", 376 | "encryption": true 377 | }, 378 | { 379 | "video_id": 2660, 380 | "video_path": "CS_Chap02_Act660.usm", 381 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act660_Caption.json", 382 | "encryption": true 383 | }, 384 | { 385 | "video_id": 2670, 386 | "video_path": "CS_Chap02_Act670.usm", 387 | "is_player_involved": true, 388 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act670_Caption.json", 389 | "encryption": true 390 | }, 391 | { 392 | "video_id": 2680, 393 | "video_path": "CS_Chap02_Act680.usm", 394 | "is_player_involved": true, 395 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act680_Caption.json", 396 | "encryption": true 397 | }, 398 | { 399 | "video_id": 2690, 400 | "video_path": "CS_Chap02_Act690.usm", 401 | "is_player_involved": true, 402 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act690_Caption.json", 403 | "encryption": true 404 | }, 405 | { 406 | "video_id": 2700, 407 | "video_path": "CS_Chap02_Act700.usm", 408 | "is_player_involved": true, 409 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act700_Caption.json", 410 | "encryption": true 411 | }, 412 | { 413 | "video_id": 2701, 414 | "video_path": "CS_Chap02_Act701.usm", 415 | "is_player_involved": true, 416 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act701_Caption.json", 417 | "encryption": true 418 | }, 419 | { 420 | "video_id": 2710, 421 | "video_path": "CS_Chap02_Act710.usm", 422 | "caption_path": "", 423 | "encryption": true 424 | }, 425 | { 426 | "video_id": 2720, 427 | "video_path": "CS_Chap02_Act720.usm", 428 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act720_Caption.json", 429 | "encryption": true 430 | }, 431 | { 432 | "video_id": 2730, 433 | "video_path": "CS_Chap02_Act730.usm", 434 | "caption_path": "", 435 | "encryption": true 436 | }, 437 | { 438 | "video_id": 2740, 439 | "video_path": "CS_Chap02_Act740.usm", 440 | "caption_path": "", 441 | "encryption": true 442 | }, 443 | { 444 | "video_id": 2750, 445 | "video_path": "CS_Chap02_Act750.usm", 446 | "caption_path": "", 447 | "encryption": true 448 | }, 449 | { 450 | "video_id": 2760, 451 | "video_path": "CS_Chap02_Act760.usm", 452 | "caption_path": "", 453 | "encryption": true 454 | }, 455 | { 456 | "video_id": 3010, 457 | "video_path": "CS_Chap03_Act010.usm", 458 | "is_player_involved": true, 459 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act010_Caption.json", 460 | "encryption": true 461 | }, 462 | { 463 | "video_id": 3020, 464 | "video_path": "CS_Chap03_Act020.usm", 465 | "is_player_involved": true, 466 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act020_Caption.json", 467 | "encryption": true 468 | }, 469 | { 470 | "video_id": 3030, 471 | "video_path": "CS_Chap03_Act030.usm", 472 | "is_player_involved": true, 473 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act030_Caption.json", 474 | "encryption": true 475 | }, 476 | { 477 | "video_id": 3040, 478 | "video_path": "CS_Chap03_Act040.usm", 479 | "is_player_involved": true, 480 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act040_Caption.json", 481 | "encryption": true 482 | }, 483 | { 484 | "video_id": 3050, 485 | "video_path": "CS_Chap03_Act050.usm", 486 | "is_player_involved": true, 487 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act050_Caption.json", 488 | "encryption": true 489 | }, 490 | { 491 | "video_id": 3060, 492 | "video_path": "CS_Chap03_Act060.usm", 493 | "is_player_involved": true, 494 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act060_Caption.json", 495 | "encryption": true 496 | }, 497 | { 498 | "video_id": 3070, 499 | "video_path": "CS_Chap03_Act070.usm", 500 | "is_player_involved": true, 501 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act070_Caption.json", 502 | "encryption": true 503 | }, 504 | { 505 | "video_id": 3080, 506 | "video_path": "CS_Chap03_Act080.usm", 507 | "is_player_involved": true, 508 | "caption_path": "", 509 | "encryption": true 510 | }, 511 | { 512 | "video_id": 3090, 513 | "video_path": "CS_Chap03_Act090.usm", 514 | "is_player_involved": true, 515 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act090_Caption.json", 516 | "encryption": true 517 | }, 518 | { 519 | "video_id": 3100, 520 | "video_path": "CS_Chap03_Act100.usm", 521 | "is_player_involved": true, 522 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act100_Caption.json", 523 | "encryption": true 524 | }, 525 | { 526 | "video_id": 3110, 527 | "video_path": "CS_Chap03_Act110.usm", 528 | "is_player_involved": true, 529 | "caption_path": "", 530 | "encryption": true 531 | }, 532 | { 533 | "video_id": 3120, 534 | "video_path": "CS_Chap03_Act120.usm", 535 | "is_player_involved": true, 536 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act120_Caption.json", 537 | "encryption": true 538 | }, 539 | { 540 | "video_id": 3130, 541 | "video_path": "CS_Chap03_Act130.usm", 542 | "is_player_involved": true, 543 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act130_Caption.json", 544 | "encryption": true 545 | }, 546 | { 547 | "video_id": 3140, 548 | "video_path": "CS_Chap03_Act140.usm", 549 | "caption_path": "", 550 | "encryption": true 551 | }, 552 | { 553 | "video_id": 3150, 554 | "video_path": "CS_Chap03_Act150.usm", 555 | "is_player_involved": true, 556 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act150_Caption.json", 557 | "encryption": true 558 | }, 559 | { 560 | "video_id": 3160, 561 | "video_path": "CS_Chap03_Act160.usm", 562 | "is_player_involved": true, 563 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act160_Caption.json", 564 | "encryption": true 565 | }, 566 | { 567 | "video_id": 3170, 568 | "video_path": "CS_Chap03_Act170.usm", 569 | "is_player_involved": true, 570 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act170_Caption.json", 571 | "encryption": true 572 | }, 573 | { 574 | "video_id": 3180, 575 | "video_path": "CS_Chap03_Act180.usm", 576 | "is_player_involved": true, 577 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act180_Caption.json", 578 | "encryption": true 579 | }, 580 | { 581 | "video_id": 3301, 582 | "video_path": "CS_Chap03_Act3010.usm", 583 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3010_Caption.json", 584 | "encryption": true 585 | }, 586 | { 587 | "video_id": 3302, 588 | "video_path": "CS_Chap03_Act3020.usm", 589 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3020_Caption.json", 590 | "encryption": true 591 | } 592 | ] -------------------------------------------------------------------------------- /keygen/StarRail/2.1/VideoConfig.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "video_id": 1, 4 | "video_path": "CS_Chap01_Act010.usm", 5 | "is_player_involved": true, 6 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act010_Caption.json", 7 | "encryption": true 8 | }, 9 | { 10 | "video_id": 2, 11 | "video_path": "CS_Chap01_Act020.usm", 12 | "is_player_involved": true, 13 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act020_Caption.json", 14 | "encryption": true 15 | }, 16 | { 17 | "video_id": 3, 18 | "video_path": "CS_Chap01_Act110.usm", 19 | "is_player_involved": true, 20 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act110_Caption.json", 21 | "encryption": true 22 | }, 23 | { 24 | "video_id": 4, 25 | "video_path": "CS_Chap01_Act120.usm", 26 | "is_player_involved": true, 27 | "caption_path": "", 28 | "encryption": true 29 | }, 30 | { 31 | "video_id": 5, 32 | "video_path": "CS_Chap01_Act130.usm", 33 | "is_player_involved": true, 34 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act130_Caption.json", 35 | "encryption": true 36 | }, 37 | { 38 | "video_id": 7, 39 | "video_path": "CS_Chap01_Act150.usm", 40 | "is_player_involved": true, 41 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act150_Caption.json", 42 | "encryption": true 43 | }, 44 | { 45 | "video_id": 8, 46 | "video_path": "CS_Chap00_Act210.usm", 47 | "is_player_involved": false, 48 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act210_Caption.json", 49 | "encryption": true 50 | }, 51 | { 52 | "video_id": 16, 53 | "video_path": "CS_Chap00_Act270.usm", 54 | "is_player_involved": true, 55 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act270_Caption.json", 56 | "encryption": true 57 | }, 58 | { 59 | "video_id": 21, 60 | "video_path": "CS_Chap00_Act300.usm", 61 | "is_player_involved": true, 62 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act300_Caption.json", 63 | "encryption": true 64 | }, 65 | { 66 | "video_id": 100, 67 | "video_path": "CS_Chap01_Act3010.usm", 68 | "is_player_involved": false, 69 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3010_Caption.json", 70 | "encryption": true 71 | }, 72 | { 73 | "video_id": 101, 74 | "video_path": "CS_Chap01_Act3020.usm", 75 | "is_player_involved": false, 76 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3020_Caption.json", 77 | "encryption": true 78 | }, 79 | { 80 | "video_id": 102, 81 | "video_path": "CS_Chap01_Act3030.usm", 82 | "is_player_involved": false, 83 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3030_Caption.json", 84 | "encryption": true 85 | }, 86 | { 87 | "video_id": 310, 88 | "video_path": "CS_Chap00_Act310.usm", 89 | "is_player_involved": true, 90 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act310_Caption.json", 91 | "encryption": true 92 | }, 93 | { 94 | "video_id": 320, 95 | "video_path": "CS_Chap00_Act320.usm", 96 | "is_player_involved": true, 97 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act320_Caption.json", 98 | "encryption": true 99 | }, 100 | { 101 | "video_id": 301, 102 | "video_path": "CS_Chap00_Act3010.usm", 103 | "is_player_involved": false, 104 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act3010_Caption.json", 105 | "encryption": true 106 | }, 107 | { 108 | "video_id": 302, 109 | "video_path": "CS_Chap00_Act3020.usm", 110 | "is_player_involved": false, 111 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act3020_Caption.json", 112 | "encryption": true 113 | }, 114 | { 115 | "video_id": 330, 116 | "video_path": "CS_Chap00_Act330.usm", 117 | "is_player_involved": true, 118 | "caption_path": "", 119 | "encryption": true 120 | }, 121 | { 122 | "video_id": 340, 123 | "video_path": "CS_Chap00_Act340.usm", 124 | "is_player_involved": true, 125 | "caption_path": "", 126 | "encryption": true 127 | }, 128 | { 129 | "video_id": 350, 130 | "video_path": "CS_Chap00_Act350.usm", 131 | "is_player_involved": true, 132 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act350_Caption.json", 133 | "encryption": true 134 | }, 135 | { 136 | "video_id": 360, 137 | "video_path": "CS_Chap00_Act360.usm", 138 | "is_player_involved": true, 139 | "caption_path": "", 140 | "encryption": true 141 | }, 142 | { 143 | "video_id": 361, 144 | "video_path": "CS_Chap00_Act361.usm", 145 | "is_player_involved": true, 146 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act361_Caption.json", 147 | "encryption": true 148 | }, 149 | { 150 | "video_id": 370, 151 | "video_path": "CS_Chap00_Act370.usm", 152 | "is_player_involved": false, 153 | "caption_path": "", 154 | "encryption": true 155 | }, 156 | { 157 | "video_id": 380, 158 | "video_path": "CS_Chap00_Act380.usm", 159 | "is_player_involved": true, 160 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act380_Caption.json", 161 | "encryption": true 162 | }, 163 | { 164 | "video_id": 390, 165 | "video_path": "CS_Chap00_Act390.usm", 166 | "is_player_involved": true, 167 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act390_Caption.json", 168 | "encryption": true 169 | }, 170 | { 171 | "video_id": 400, 172 | "video_path": "CS_Chap00_Act400.usm", 173 | "is_player_involved": true, 174 | "caption_path": "", 175 | "encryption": true 176 | }, 177 | { 178 | "video_id": 410, 179 | "video_path": "CS_Chap00_Act410.usm", 180 | "is_player_involved": true, 181 | "caption_path": "", 182 | "encryption": true 183 | }, 184 | { 185 | "video_id": 411, 186 | "video_path": "CS_Chap00_Act411.usm", 187 | "is_player_involved": false, 188 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act411_Caption.json", 189 | "encryption": true 190 | }, 191 | { 192 | "video_id": 420, 193 | "video_path": "CS_Chap00_Act420.usm", 194 | "is_player_involved": false, 195 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act420_Caption.json", 196 | "encryption": true 197 | }, 198 | { 199 | "video_id": 1160, 200 | "video_path": "CS_Chap01_Act160.usm", 201 | "is_player_involved": false, 202 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act160_Caption.json", 203 | "encryption": true 204 | }, 205 | { 206 | "video_id": 1170, 207 | "video_path": "CS_Chap01_Act170.usm", 208 | "is_player_involved": false, 209 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act170_Caption.json", 210 | "encryption": true 211 | }, 212 | { 213 | "video_id": 1180, 214 | "video_path": "CS_Chap01_Act180.usm", 215 | "is_player_involved": false, 216 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act180_Caption.json", 217 | "encryption": true 218 | }, 219 | { 220 | "video_id": 1190, 221 | "video_path": "CS_Chap01_Act190.usm", 222 | "is_player_involved": true, 223 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act190_Caption.json", 224 | "encryption": true 225 | }, 226 | { 227 | "video_id": 1200, 228 | "video_path": "CS_Chap01_Act200.usm", 229 | "is_player_involved": false, 230 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act200_Caption.json", 231 | "encryption": true 232 | }, 233 | { 234 | "video_id": 1210, 235 | "video_path": "CS_Chap01_Act210.usm", 236 | "is_player_involved": true, 237 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act210_Caption.json", 238 | "encryption": true 239 | }, 240 | { 241 | "video_id": 1220, 242 | "video_path": "CS_Chap01_Act220.usm", 243 | "is_player_involved": true, 244 | "caption_path": "", 245 | "encryption": true 246 | }, 247 | { 248 | "video_id": 1221, 249 | "video_path": "CS_Chap01_Act221.usm", 250 | "is_player_involved": true, 251 | "caption_path": "", 252 | "encryption": true 253 | }, 254 | { 255 | "video_id": 1222, 256 | "video_path": "CS_Chap01_Act222.usm", 257 | "is_player_involved": false, 258 | "caption_path": "", 259 | "encryption": true 260 | }, 261 | { 262 | "video_id": 1223, 263 | "video_path": "CS_Chap01_Act223.usm", 264 | "is_player_involved": true, 265 | "caption_path": "", 266 | "encryption": true 267 | }, 268 | { 269 | "video_id": 1224, 270 | "video_path": "CS_Chap01_Act224.usm", 271 | "is_player_involved": true, 272 | "caption_path": "", 273 | "encryption": true 274 | }, 275 | { 276 | "video_id": 1230, 277 | "video_path": "CS_Chap01_Act230.usm", 278 | "is_player_involved": true, 279 | "caption_path": "", 280 | "encryption": true 281 | }, 282 | { 283 | "video_id": 1240, 284 | "video_path": "CS_Chap01_Act240.usm", 285 | "is_player_involved": true, 286 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act240_Caption.json", 287 | "encryption": true 288 | }, 289 | { 290 | "video_id": 2302, 291 | "video_path": "CS_Chap02_Act3020.usm", 292 | "is_player_involved": false, 293 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act3020_Caption.json", 294 | "encryption": true 295 | }, 296 | { 297 | "video_id": 1304, 298 | "video_path": "CS_Chap01_Act3040.usm", 299 | "is_player_involved": false, 300 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3040_Caption.json", 301 | "encryption": true 302 | }, 303 | { 304 | "video_id": 2420, 305 | "video_path": "CS_Chap02_Act420.usm", 306 | "is_player_involved": false, 307 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act420_Caption.json", 308 | "encryption": true 309 | }, 310 | { 311 | "video_id": 2440, 312 | "video_path": "CS_Chap02_Act440.usm", 313 | "is_player_involved": true, 314 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act440_Caption.json", 315 | "encryption": true 316 | }, 317 | { 318 | "video_id": 2450, 319 | "video_path": "CS_Chap02_Act450.usm", 320 | "is_player_involved": true, 321 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act450_Caption.json", 322 | "encryption": true 323 | }, 324 | { 325 | "video_id": 2460, 326 | "video_path": "CS_Chap02_Act460.usm", 327 | "is_player_involved": false, 328 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act460_Caption.json", 329 | "encryption": true 330 | }, 331 | { 332 | "video_id": 2480, 333 | "video_path": "CS_Chap02_Act480.usm", 334 | "is_player_involved": true, 335 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act480_Caption.json", 336 | "encryption": true 337 | }, 338 | { 339 | "video_id": 2490, 340 | "video_path": "CS_Chap02_Act490.usm", 341 | "is_player_involved": true, 342 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act490_Caption.json", 343 | "encryption": true 344 | }, 345 | { 346 | "video_id": 2530, 347 | "video_path": "CS_Chap02_Act530.usm", 348 | "is_player_involved": false, 349 | "caption_path": "", 350 | "encryption": true 351 | }, 352 | { 353 | "video_id": 2550, 354 | "video_path": "CS_Chap02_Act550.usm", 355 | "is_player_involved": false, 356 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act550_Caption.json", 357 | "encryption": true 358 | }, 359 | { 360 | "video_id": 2560, 361 | "video_path": "CS_Chap02_Act560.usm", 362 | "is_player_involved": false, 363 | "caption_path": "", 364 | "encryption": true 365 | }, 366 | { 367 | "video_id": 2570, 368 | "video_path": "CS_Chap02_Act570.usm", 369 | "is_player_involved": true, 370 | "caption_path": "", 371 | "encryption": true 372 | }, 373 | { 374 | "video_id": 2580, 375 | "video_path": "CS_Chap02_Act580.usm", 376 | "is_player_involved": true, 377 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act580_Caption.json", 378 | "encryption": true 379 | }, 380 | { 381 | "video_id": 2620, 382 | "video_path": "CS_Chap02_Act620.usm", 383 | "is_player_involved": true, 384 | "caption_path": "", 385 | "encryption": true 386 | }, 387 | { 388 | "video_id": 2630, 389 | "video_path": "CS_Chap02_Act630.usm", 390 | "is_player_involved": false, 391 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act630_Caption.json", 392 | "encryption": true 393 | }, 394 | { 395 | "video_id": 2640, 396 | "video_path": "CS_Chap02_Act640.usm", 397 | "is_player_involved": false, 398 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act640_Caption.json", 399 | "encryption": true 400 | }, 401 | { 402 | "video_id": 2660, 403 | "video_path": "CS_Chap02_Act660.usm", 404 | "is_player_involved": false, 405 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act660_Caption.json", 406 | "encryption": true 407 | }, 408 | { 409 | "video_id": 2670, 410 | "video_path": "CS_Chap02_Act670.usm", 411 | "is_player_involved": true, 412 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act670_Caption.json", 413 | "encryption": true 414 | }, 415 | { 416 | "video_id": 2680, 417 | "video_path": "CS_Chap02_Act680.usm", 418 | "is_player_involved": true, 419 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act680_Caption.json", 420 | "encryption": true 421 | }, 422 | { 423 | "video_id": 2690, 424 | "video_path": "CS_Chap02_Act690.usm", 425 | "is_player_involved": true, 426 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act690_Caption.json", 427 | "encryption": true 428 | }, 429 | { 430 | "video_id": 2700, 431 | "video_path": "CS_Chap02_Act700.usm", 432 | "is_player_involved": true, 433 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act700_Caption.json", 434 | "encryption": true 435 | }, 436 | { 437 | "video_id": 2701, 438 | "video_path": "CS_Chap02_Act701.usm", 439 | "is_player_involved": true, 440 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act701_Caption.json", 441 | "encryption": true 442 | }, 443 | { 444 | "video_id": 2710, 445 | "video_path": "CS_Chap02_Act710.usm", 446 | "is_player_involved": false, 447 | "caption_path": "", 448 | "encryption": true 449 | }, 450 | { 451 | "video_id": 2720, 452 | "video_path": "CS_Chap02_Act720.usm", 453 | "is_player_involved": false, 454 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act720_Caption.json", 455 | "encryption": true 456 | }, 457 | { 458 | "video_id": 2730, 459 | "video_path": "CS_Chap02_Act730.usm", 460 | "is_player_involved": false, 461 | "caption_path": "", 462 | "encryption": true 463 | }, 464 | { 465 | "video_id": 2740, 466 | "video_path": "CS_Chap02_Act740.usm", 467 | "is_player_involved": false, 468 | "caption_path": "", 469 | "encryption": true 470 | }, 471 | { 472 | "video_id": 2750, 473 | "video_path": "CS_Chap02_Act750.usm", 474 | "is_player_involved": false, 475 | "caption_path": "", 476 | "encryption": true 477 | }, 478 | { 479 | "video_id": 2760, 480 | "video_path": "CS_Chap02_Act760.usm", 481 | "is_player_involved": false, 482 | "caption_path": "", 483 | "encryption": true 484 | }, 485 | { 486 | "video_id": 3010, 487 | "video_path": "CS_Chap03_Act010.usm", 488 | "is_player_involved": true, 489 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act010_Caption.json", 490 | "encryption": true 491 | }, 492 | { 493 | "video_id": 3020, 494 | "video_path": "CS_Chap03_Act020.usm", 495 | "is_player_involved": true, 496 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act020_Caption.json", 497 | "encryption": true 498 | }, 499 | { 500 | "video_id": 3030, 501 | "video_path": "CS_Chap03_Act030.usm", 502 | "is_player_involved": true, 503 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act030_Caption.json", 504 | "encryption": true 505 | }, 506 | { 507 | "video_id": 3040, 508 | "video_path": "CS_Chap03_Act040.usm", 509 | "is_player_involved": true, 510 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act040_Caption.json", 511 | "encryption": true 512 | }, 513 | { 514 | "video_id": 3050, 515 | "video_path": "CS_Chap03_Act050.usm", 516 | "is_player_involved": true, 517 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act050_Caption.json", 518 | "encryption": true 519 | }, 520 | { 521 | "video_id": 3060, 522 | "video_path": "CS_Chap03_Act060.usm", 523 | "is_player_involved": true, 524 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act060_Caption.json", 525 | "encryption": true 526 | }, 527 | { 528 | "video_id": 3070, 529 | "video_path": "CS_Chap03_Act070.usm", 530 | "is_player_involved": true, 531 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act070_Caption.json", 532 | "encryption": true 533 | }, 534 | { 535 | "video_id": 3080, 536 | "video_path": "CS_Chap03_Act080.usm", 537 | "is_player_involved": true, 538 | "caption_path": "", 539 | "encryption": true 540 | }, 541 | { 542 | "video_id": 3090, 543 | "video_path": "CS_Chap03_Act090.usm", 544 | "is_player_involved": true, 545 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act090_Caption.json", 546 | "encryption": true 547 | }, 548 | { 549 | "video_id": 3100, 550 | "video_path": "CS_Chap03_Act100.usm", 551 | "is_player_involved": true, 552 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act100_Caption.json", 553 | "encryption": true 554 | }, 555 | { 556 | "video_id": 3110, 557 | "video_path": "CS_Chap03_Act110.usm", 558 | "is_player_involved": true, 559 | "caption_path": "", 560 | "encryption": true 561 | }, 562 | { 563 | "video_id": 3120, 564 | "video_path": "CS_Chap03_Act120.usm", 565 | "is_player_involved": true, 566 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act120_Caption.json", 567 | "encryption": true 568 | }, 569 | { 570 | "video_id": 3130, 571 | "video_path": "CS_Chap03_Act130.usm", 572 | "is_player_involved": true, 573 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act130_Caption.json", 574 | "encryption": true 575 | }, 576 | { 577 | "video_id": 3140, 578 | "video_path": "CS_Chap03_Act140.usm", 579 | "is_player_involved": false, 580 | "caption_path": "", 581 | "encryption": true 582 | }, 583 | { 584 | "video_id": 3150, 585 | "video_path": "CS_Chap03_Act150.usm", 586 | "is_player_involved": true, 587 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act150_Caption.json", 588 | "encryption": true 589 | }, 590 | { 591 | "video_id": 3160, 592 | "video_path": "CS_Chap03_Act160.usm", 593 | "is_player_involved": true, 594 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act160_Caption.json", 595 | "encryption": true 596 | }, 597 | { 598 | "video_id": 3170, 599 | "video_path": "CS_Chap03_Act170.usm", 600 | "is_player_involved": true, 601 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act170_Caption.json", 602 | "encryption": true 603 | }, 604 | { 605 | "video_id": 3180, 606 | "video_path": "CS_Chap03_Act180.usm", 607 | "is_player_involved": true, 608 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act180_Caption.json", 609 | "encryption": true 610 | }, 611 | { 612 | "video_id": 3301, 613 | "video_path": "CS_Chap03_Act3010.usm", 614 | "is_player_involved": false, 615 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3010_Caption.json", 616 | "encryption": true 617 | }, 618 | { 619 | "video_id": 3302, 620 | "video_path": "CS_Chap03_Act3020.usm", 621 | "is_player_involved": false, 622 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3020_Caption.json", 623 | "encryption": true 624 | }, 625 | { 626 | "video_id": 3190, 627 | "video_path": "CS_Chap03_Act190.usm", 628 | "is_player_involved": false, 629 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act190_Caption.json", 630 | "encryption": true 631 | }, 632 | { 633 | "video_id": 3191, 634 | "video_path": "CS_Chap03_Act191.usm", 635 | "is_player_involved": false, 636 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act191_Caption.json", 637 | "encryption": true 638 | }, 639 | { 640 | "video_id": 3200, 641 | "video_path": "CS_Chap03_Act200.usm", 642 | "is_player_involved": false, 643 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act200_Caption.json", 644 | "encryption": true 645 | }, 646 | { 647 | "video_id": 3210, 648 | "video_path": "CS_Chap03_Act210.usm", 649 | "is_player_involved": true, 650 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act210_Caption.json", 651 | "encryption": true 652 | }, 653 | { 654 | "video_id": 3220, 655 | "video_path": "CS_Chap03_Act220.usm", 656 | "is_player_involved": true, 657 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act220_Caption.json", 658 | "encryption": true 659 | }, 660 | { 661 | "video_id": 3230, 662 | "video_path": "CS_Chap03_Act230.usm", 663 | "is_player_involved": true, 664 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act230_Caption.json", 665 | "encryption": true 666 | }, 667 | { 668 | "video_id": 3240, 669 | "video_path": "CS_Chap03_Act240.usm", 670 | "is_player_involved": false, 671 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act240_Caption.json", 672 | "encryption": true 673 | }, 674 | { 675 | "video_id": 3250, 676 | "video_path": "CS_Chap03_Act250.usm", 677 | "is_player_involved": true, 678 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act250_Caption.json", 679 | "encryption": true 680 | }, 681 | { 682 | "video_id": 3260, 683 | "video_path": "CS_Chap03_Act260.usm", 684 | "is_player_involved": false, 685 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act260_Caption.json", 686 | "encryption": true 687 | }, 688 | { 689 | "video_id": 3270, 690 | "video_path": "CS_Chap03_Act270.usm", 691 | "is_player_involved": false, 692 | "caption_path": "", 693 | "encryption": true 694 | }, 695 | { 696 | "video_id": 3280, 697 | "video_path": "CS_Chap03_Act280.usm", 698 | "is_player_involved": false, 699 | "caption_path": "", 700 | "encryption": true 701 | } 702 | ] -------------------------------------------------------------------------------- /keygen/StarRail/2.2/VideoConfig.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "video_id": 1, 4 | "video_path": "CS_Chap01_Act010.usm", 5 | "is_player_involved": true, 6 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act010_Caption.json", 7 | "encryption": true 8 | }, 9 | { 10 | "video_id": 2, 11 | "video_path": "CS_Chap01_Act020.usm", 12 | "is_player_involved": true, 13 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act020_Caption.json", 14 | "encryption": true 15 | }, 16 | { 17 | "video_id": 3, 18 | "video_path": "CS_Chap01_Act110.usm", 19 | "is_player_involved": true, 20 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act110_Caption.json", 21 | "encryption": true 22 | }, 23 | { 24 | "video_id": 4, 25 | "video_path": "CS_Chap01_Act120.usm", 26 | "is_player_involved": true, 27 | "caption_path": "", 28 | "encryption": true 29 | }, 30 | { 31 | "video_id": 5, 32 | "video_path": "CS_Chap01_Act130.usm", 33 | "is_player_involved": true, 34 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act130_Caption.json", 35 | "encryption": true 36 | }, 37 | { 38 | "video_id": 7, 39 | "video_path": "CS_Chap01_Act150.usm", 40 | "is_player_involved": true, 41 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act150_Caption.json", 42 | "encryption": true 43 | }, 44 | { 45 | "video_id": 8, 46 | "video_path": "CS_Chap00_Act210.usm", 47 | "is_player_involved": false, 48 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act210_Caption.json", 49 | "encryption": true 50 | }, 51 | { 52 | "video_id": 16, 53 | "video_path": "CS_Chap00_Act270.usm", 54 | "is_player_involved": true, 55 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act270_Caption.json", 56 | "encryption": true 57 | }, 58 | { 59 | "video_id": 21, 60 | "video_path": "CS_Chap00_Act300.usm", 61 | "is_player_involved": true, 62 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act300_Caption.json", 63 | "encryption": true 64 | }, 65 | { 66 | "video_id": 100, 67 | "video_path": "CS_Chap01_Act3010.usm", 68 | "is_player_involved": false, 69 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3010_Caption.json", 70 | "encryption": true 71 | }, 72 | { 73 | "video_id": 101, 74 | "video_path": "CS_Chap01_Act3020.usm", 75 | "is_player_involved": false, 76 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3020_Caption.json", 77 | "encryption": true 78 | }, 79 | { 80 | "video_id": 102, 81 | "video_path": "CS_Chap01_Act3030.usm", 82 | "is_player_involved": false, 83 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3030_Caption.json", 84 | "encryption": true 85 | }, 86 | { 87 | "video_id": 310, 88 | "video_path": "CS_Chap00_Act310.usm", 89 | "is_player_involved": true, 90 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act310_Caption.json", 91 | "encryption": true 92 | }, 93 | { 94 | "video_id": 320, 95 | "video_path": "CS_Chap00_Act320.usm", 96 | "is_player_involved": true, 97 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act320_Caption.json", 98 | "encryption": true 99 | }, 100 | { 101 | "video_id": 301, 102 | "video_path": "CS_Chap00_Act3010.usm", 103 | "is_player_involved": false, 104 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act3010_Caption.json", 105 | "encryption": true 106 | }, 107 | { 108 | "video_id": 302, 109 | "video_path": "CS_Chap00_Act3020.usm", 110 | "is_player_involved": false, 111 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act3020_Caption.json", 112 | "encryption": true 113 | }, 114 | { 115 | "video_id": 330, 116 | "video_path": "CS_Chap00_Act330.usm", 117 | "is_player_involved": true, 118 | "caption_path": "", 119 | "encryption": true 120 | }, 121 | { 122 | "video_id": 340, 123 | "video_path": "CS_Chap00_Act340.usm", 124 | "is_player_involved": true, 125 | "caption_path": "", 126 | "encryption": true 127 | }, 128 | { 129 | "video_id": 350, 130 | "video_path": "CS_Chap00_Act350.usm", 131 | "is_player_involved": true, 132 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act350_Caption.json", 133 | "encryption": true 134 | }, 135 | { 136 | "video_id": 360, 137 | "video_path": "CS_Chap00_Act360.usm", 138 | "is_player_involved": true, 139 | "caption_path": "", 140 | "encryption": true 141 | }, 142 | { 143 | "video_id": 361, 144 | "video_path": "CS_Chap00_Act361.usm", 145 | "is_player_involved": true, 146 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act361_Caption.json", 147 | "encryption": true 148 | }, 149 | { 150 | "video_id": 370, 151 | "video_path": "CS_Chap00_Act370.usm", 152 | "is_player_involved": false, 153 | "caption_path": "", 154 | "encryption": true 155 | }, 156 | { 157 | "video_id": 380, 158 | "video_path": "CS_Chap00_Act380.usm", 159 | "is_player_involved": true, 160 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act380_Caption.json", 161 | "encryption": true 162 | }, 163 | { 164 | "video_id": 390, 165 | "video_path": "CS_Chap00_Act390.usm", 166 | "is_player_involved": true, 167 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act390_Caption.json", 168 | "encryption": true 169 | }, 170 | { 171 | "video_id": 400, 172 | "video_path": "CS_Chap00_Act400.usm", 173 | "is_player_involved": true, 174 | "caption_path": "", 175 | "encryption": true 176 | }, 177 | { 178 | "video_id": 410, 179 | "video_path": "CS_Chap00_Act410.usm", 180 | "is_player_involved": true, 181 | "caption_path": "", 182 | "encryption": true 183 | }, 184 | { 185 | "video_id": 411, 186 | "video_path": "CS_Chap00_Act411.usm", 187 | "is_player_involved": false, 188 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act411_Caption.json", 189 | "encryption": true 190 | }, 191 | { 192 | "video_id": 420, 193 | "video_path": "CS_Chap00_Act420.usm", 194 | "is_player_involved": false, 195 | "caption_path": "Config/CutSceneCaption/CS_Chap00_Act420_Caption.json", 196 | "encryption": true 197 | }, 198 | { 199 | "video_id": 1160, 200 | "video_path": "CS_Chap01_Act160.usm", 201 | "is_player_involved": false, 202 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act160_Caption.json", 203 | "encryption": true 204 | }, 205 | { 206 | "video_id": 1170, 207 | "video_path": "CS_Chap01_Act170.usm", 208 | "is_player_involved": false, 209 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act170_Caption.json", 210 | "encryption": true 211 | }, 212 | { 213 | "video_id": 1180, 214 | "video_path": "CS_Chap01_Act180.usm", 215 | "is_player_involved": false, 216 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act180_Caption.json", 217 | "encryption": true 218 | }, 219 | { 220 | "video_id": 1190, 221 | "video_path": "CS_Chap01_Act190.usm", 222 | "is_player_involved": true, 223 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act190_Caption.json", 224 | "encryption": true 225 | }, 226 | { 227 | "video_id": 1200, 228 | "video_path": "CS_Chap01_Act200.usm", 229 | "is_player_involved": false, 230 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act200_Caption.json", 231 | "encryption": true 232 | }, 233 | { 234 | "video_id": 1210, 235 | "video_path": "CS_Chap01_Act210.usm", 236 | "is_player_involved": true, 237 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act210_Caption.json", 238 | "encryption": true 239 | }, 240 | { 241 | "video_id": 1220, 242 | "video_path": "CS_Chap01_Act220.usm", 243 | "is_player_involved": true, 244 | "caption_path": "", 245 | "encryption": true 246 | }, 247 | { 248 | "video_id": 1221, 249 | "video_path": "CS_Chap01_Act221.usm", 250 | "is_player_involved": true, 251 | "caption_path": "", 252 | "encryption": true 253 | }, 254 | { 255 | "video_id": 1222, 256 | "video_path": "CS_Chap01_Act222.usm", 257 | "is_player_involved": false, 258 | "caption_path": "", 259 | "encryption": true 260 | }, 261 | { 262 | "video_id": 1223, 263 | "video_path": "CS_Chap01_Act223.usm", 264 | "is_player_involved": true, 265 | "caption_path": "", 266 | "encryption": true 267 | }, 268 | { 269 | "video_id": 1224, 270 | "video_path": "CS_Chap01_Act224.usm", 271 | "is_player_involved": true, 272 | "caption_path": "", 273 | "encryption": true 274 | }, 275 | { 276 | "video_id": 1230, 277 | "video_path": "CS_Chap01_Act230.usm", 278 | "is_player_involved": true, 279 | "caption_path": "", 280 | "encryption": true 281 | }, 282 | { 283 | "video_id": 1240, 284 | "video_path": "CS_Chap01_Act240.usm", 285 | "is_player_involved": true, 286 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act240_Caption.json", 287 | "encryption": true 288 | }, 289 | { 290 | "video_id": 2302, 291 | "video_path": "CS_Chap02_Act3020.usm", 292 | "is_player_involved": false, 293 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act3020_Caption.json", 294 | "encryption": true 295 | }, 296 | { 297 | "video_id": 1304, 298 | "video_path": "CS_Chap01_Act3040.usm", 299 | "is_player_involved": false, 300 | "caption_path": "Config/CutSceneCaption/CS_Chap01_Act3040_Caption.json", 301 | "encryption": true 302 | }, 303 | { 304 | "video_id": 2420, 305 | "video_path": "CS_Chap02_Act420.usm", 306 | "is_player_involved": false, 307 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act420_Caption.json", 308 | "encryption": true 309 | }, 310 | { 311 | "video_id": 2440, 312 | "video_path": "CS_Chap02_Act440.usm", 313 | "is_player_involved": true, 314 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act440_Caption.json", 315 | "encryption": true 316 | }, 317 | { 318 | "video_id": 2450, 319 | "video_path": "CS_Chap02_Act450.usm", 320 | "is_player_involved": true, 321 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act450_Caption.json", 322 | "encryption": true 323 | }, 324 | { 325 | "video_id": 2460, 326 | "video_path": "CS_Chap02_Act460.usm", 327 | "is_player_involved": false, 328 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act460_Caption.json", 329 | "encryption": true 330 | }, 331 | { 332 | "video_id": 2480, 333 | "video_path": "CS_Chap02_Act480.usm", 334 | "is_player_involved": true, 335 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act480_Caption.json", 336 | "encryption": true 337 | }, 338 | { 339 | "video_id": 2490, 340 | "video_path": "CS_Chap02_Act490.usm", 341 | "is_player_involved": true, 342 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act490_Caption.json", 343 | "encryption": true 344 | }, 345 | { 346 | "video_id": 2530, 347 | "video_path": "CS_Chap02_Act530.usm", 348 | "is_player_involved": false, 349 | "caption_path": "", 350 | "encryption": true 351 | }, 352 | { 353 | "video_id": 2550, 354 | "video_path": "CS_Chap02_Act550.usm", 355 | "is_player_involved": false, 356 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act550_Caption.json", 357 | "encryption": true 358 | }, 359 | { 360 | "video_id": 2560, 361 | "video_path": "CS_Chap02_Act560.usm", 362 | "is_player_involved": false, 363 | "caption_path": "", 364 | "encryption": true 365 | }, 366 | { 367 | "video_id": 2570, 368 | "video_path": "CS_Chap02_Act570.usm", 369 | "is_player_involved": true, 370 | "caption_path": "", 371 | "encryption": true 372 | }, 373 | { 374 | "video_id": 2580, 375 | "video_path": "CS_Chap02_Act580.usm", 376 | "is_player_involved": true, 377 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act580_Caption.json", 378 | "encryption": true 379 | }, 380 | { 381 | "video_id": 2620, 382 | "video_path": "CS_Chap02_Act620.usm", 383 | "is_player_involved": true, 384 | "caption_path": "", 385 | "encryption": true 386 | }, 387 | { 388 | "video_id": 2630, 389 | "video_path": "CS_Chap02_Act630.usm", 390 | "is_player_involved": false, 391 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act630_Caption.json", 392 | "encryption": true 393 | }, 394 | { 395 | "video_id": 2640, 396 | "video_path": "CS_Chap02_Act640.usm", 397 | "is_player_involved": false, 398 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act640_Caption.json", 399 | "encryption": true 400 | }, 401 | { 402 | "video_id": 2660, 403 | "video_path": "CS_Chap02_Act660.usm", 404 | "is_player_involved": false, 405 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act660_Caption.json", 406 | "encryption": true 407 | }, 408 | { 409 | "video_id": 2670, 410 | "video_path": "CS_Chap02_Act670.usm", 411 | "is_player_involved": true, 412 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act670_Caption.json", 413 | "encryption": true 414 | }, 415 | { 416 | "video_id": 2680, 417 | "video_path": "CS_Chap02_Act680.usm", 418 | "is_player_involved": true, 419 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act680_Caption.json", 420 | "encryption": true 421 | }, 422 | { 423 | "video_id": 2690, 424 | "video_path": "CS_Chap02_Act690.usm", 425 | "is_player_involved": true, 426 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act690_Caption.json", 427 | "encryption": true 428 | }, 429 | { 430 | "video_id": 2700, 431 | "video_path": "CS_Chap02_Act700.usm", 432 | "is_player_involved": true, 433 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act700_Caption.json", 434 | "encryption": true 435 | }, 436 | { 437 | "video_id": 2701, 438 | "video_path": "CS_Chap02_Act701.usm", 439 | "is_player_involved": true, 440 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act701_Caption.json", 441 | "encryption": true 442 | }, 443 | { 444 | "video_id": 2710, 445 | "video_path": "CS_Chap02_Act710.usm", 446 | "is_player_involved": false, 447 | "caption_path": "", 448 | "encryption": true 449 | }, 450 | { 451 | "video_id": 2720, 452 | "video_path": "CS_Chap02_Act720.usm", 453 | "is_player_involved": false, 454 | "caption_path": "Config/CutSceneCaption/CS_Chap02_Act720_Caption.json", 455 | "encryption": true 456 | }, 457 | { 458 | "video_id": 2730, 459 | "video_path": "CS_Chap02_Act730.usm", 460 | "is_player_involved": false, 461 | "caption_path": "", 462 | "encryption": true 463 | }, 464 | { 465 | "video_id": 2740, 466 | "video_path": "CS_Chap02_Act740.usm", 467 | "is_player_involved": false, 468 | "caption_path": "", 469 | "encryption": true 470 | }, 471 | { 472 | "video_id": 2750, 473 | "video_path": "CS_Chap02_Act750.usm", 474 | "is_player_involved": false, 475 | "caption_path": "", 476 | "encryption": true 477 | }, 478 | { 479 | "video_id": 2760, 480 | "video_path": "CS_Chap02_Act760.usm", 481 | "is_player_involved": false, 482 | "caption_path": "", 483 | "encryption": true 484 | }, 485 | { 486 | "video_id": 3010, 487 | "video_path": "CS_Chap03_Act010.usm", 488 | "is_player_involved": true, 489 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act010_Caption.json", 490 | "encryption": true 491 | }, 492 | { 493 | "video_id": 3020, 494 | "video_path": "CS_Chap03_Act020.usm", 495 | "is_player_involved": true, 496 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act020_Caption.json", 497 | "encryption": true 498 | }, 499 | { 500 | "video_id": 3030, 501 | "video_path": "CS_Chap03_Act030.usm", 502 | "is_player_involved": true, 503 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act030_Caption.json", 504 | "encryption": true 505 | }, 506 | { 507 | "video_id": 3040, 508 | "video_path": "CS_Chap03_Act040.usm", 509 | "is_player_involved": true, 510 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act040_Caption.json", 511 | "encryption": true 512 | }, 513 | { 514 | "video_id": 3050, 515 | "video_path": "CS_Chap03_Act050.usm", 516 | "is_player_involved": true, 517 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act050_Caption.json", 518 | "encryption": true 519 | }, 520 | { 521 | "video_id": 3060, 522 | "video_path": "CS_Chap03_Act060.usm", 523 | "is_player_involved": true, 524 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act060_Caption.json", 525 | "encryption": true 526 | }, 527 | { 528 | "video_id": 3070, 529 | "video_path": "CS_Chap03_Act070.usm", 530 | "is_player_involved": true, 531 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act070_Caption.json", 532 | "encryption": true 533 | }, 534 | { 535 | "video_id": 3080, 536 | "video_path": "CS_Chap03_Act080.usm", 537 | "is_player_involved": true, 538 | "caption_path": "", 539 | "encryption": true 540 | }, 541 | { 542 | "video_id": 3090, 543 | "video_path": "CS_Chap03_Act090.usm", 544 | "is_player_involved": true, 545 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act090_Caption.json", 546 | "encryption": true 547 | }, 548 | { 549 | "video_id": 3100, 550 | "video_path": "CS_Chap03_Act100.usm", 551 | "is_player_involved": true, 552 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act100_Caption.json", 553 | "encryption": true 554 | }, 555 | { 556 | "video_id": 3110, 557 | "video_path": "CS_Chap03_Act110.usm", 558 | "is_player_involved": true, 559 | "caption_path": "", 560 | "encryption": true 561 | }, 562 | { 563 | "video_id": 3120, 564 | "video_path": "CS_Chap03_Act120.usm", 565 | "is_player_involved": true, 566 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act120_Caption.json", 567 | "encryption": true 568 | }, 569 | { 570 | "video_id": 3130, 571 | "video_path": "CS_Chap03_Act130.usm", 572 | "is_player_involved": true, 573 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act130_Caption.json", 574 | "encryption": true 575 | }, 576 | { 577 | "video_id": 3140, 578 | "video_path": "CS_Chap03_Act140.usm", 579 | "is_player_involved": false, 580 | "caption_path": "", 581 | "encryption": true 582 | }, 583 | { 584 | "video_id": 3150, 585 | "video_path": "CS_Chap03_Act150.usm", 586 | "is_player_involved": true, 587 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act150_Caption.json", 588 | "encryption": true 589 | }, 590 | { 591 | "video_id": 3160, 592 | "video_path": "CS_Chap03_Act160.usm", 593 | "is_player_involved": true, 594 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act160_Caption.json", 595 | "encryption": true 596 | }, 597 | { 598 | "video_id": 3170, 599 | "video_path": "CS_Chap03_Act170.usm", 600 | "is_player_involved": true, 601 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act170_Caption.json", 602 | "encryption": true 603 | }, 604 | { 605 | "video_id": 3180, 606 | "video_path": "CS_Chap03_Act180.usm", 607 | "is_player_involved": true, 608 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act180_Caption.json", 609 | "encryption": true 610 | }, 611 | { 612 | "video_id": 3301, 613 | "video_path": "CS_Chap03_Act3010.usm", 614 | "is_player_involved": false, 615 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3010_Caption.json", 616 | "encryption": true 617 | }, 618 | { 619 | "video_id": 3302, 620 | "video_path": "CS_Chap03_Act3020.usm", 621 | "is_player_involved": false, 622 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3020_Caption.json", 623 | "encryption": true 624 | }, 625 | { 626 | "video_id": 3190, 627 | "video_path": "CS_Chap03_Act190.usm", 628 | "is_player_involved": false, 629 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act190_Caption.json", 630 | "encryption": true 631 | }, 632 | { 633 | "video_id": 3191, 634 | "video_path": "CS_Chap03_Act191.usm", 635 | "is_player_involved": false, 636 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act191_Caption.json", 637 | "encryption": true 638 | }, 639 | { 640 | "video_id": 3200, 641 | "video_path": "CS_Chap03_Act200.usm", 642 | "is_player_involved": false, 643 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act200_Caption.json", 644 | "encryption": true 645 | }, 646 | { 647 | "video_id": 3210, 648 | "video_path": "CS_Chap03_Act210.usm", 649 | "is_player_involved": true, 650 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act210_Caption.json", 651 | "encryption": true 652 | }, 653 | { 654 | "video_id": 3220, 655 | "video_path": "CS_Chap03_Act220.usm", 656 | "is_player_involved": true, 657 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act220_Caption.json", 658 | "encryption": true 659 | }, 660 | { 661 | "video_id": 3230, 662 | "video_path": "CS_Chap03_Act230.usm", 663 | "is_player_involved": true, 664 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act230_Caption.json", 665 | "encryption": true 666 | }, 667 | { 668 | "video_id": 3240, 669 | "video_path": "CS_Chap03_Act240.usm", 670 | "is_player_involved": false, 671 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act240_Caption.json", 672 | "encryption": true 673 | }, 674 | { 675 | "video_id": 3250, 676 | "video_path": "CS_Chap03_Act250.usm", 677 | "is_player_involved": true, 678 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act250_Caption.json", 679 | "encryption": true 680 | }, 681 | { 682 | "video_id": 3260, 683 | "video_path": "CS_Chap03_Act260.usm", 684 | "is_player_involved": false, 685 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act260_Caption.json", 686 | "encryption": true 687 | }, 688 | { 689 | "video_id": 3270, 690 | "video_path": "CS_Chap03_Act270.usm", 691 | "is_player_involved": false, 692 | "caption_path": "", 693 | "encryption": true 694 | }, 695 | { 696 | "video_id": 3280, 697 | "video_path": "CS_Chap03_Act280.usm", 698 | "is_player_involved": false, 699 | "caption_path": "", 700 | "encryption": true 701 | }, 702 | { 703 | "video_id": 3290, 704 | "video_path": "CS_Chap03_Act290.usm", 705 | "is_player_involved": false, 706 | "caption_path": "", 707 | "encryption": true 708 | }, 709 | { 710 | "video_id": 3291, 711 | "video_path": "CS_Chap03_Act291.usm", 712 | "is_player_involved": false, 713 | "caption_path": "", 714 | "encryption": true 715 | }, 716 | { 717 | "video_id": 3292, 718 | "video_path": "CS_Chap03_Act292.usm", 719 | "is_player_involved": false, 720 | "caption_path": "", 721 | "encryption": true 722 | }, 723 | { 724 | "video_id": 3293, 725 | "video_path": "CS_Chap03_Act293.usm", 726 | "is_player_involved": false, 727 | "caption_path": "", 728 | "encryption": true 729 | }, 730 | { 731 | "video_id": 3294, 732 | "video_path": "CS_Chap03_Act294.usm", 733 | "is_player_involved": false, 734 | "caption_path": "", 735 | "encryption": true 736 | }, 737 | { 738 | "video_id": 3295, 739 | "video_path": "CS_Chap03_Act295.usm", 740 | "is_player_involved": false, 741 | "caption_path": "", 742 | "encryption": true 743 | }, 744 | { 745 | "video_id": 3296, 746 | "video_path": "CS_Chap03_Act296.usm", 747 | "is_player_involved": false, 748 | "caption_path": "", 749 | "encryption": true 750 | }, 751 | { 752 | "video_id": 3297, 753 | "video_path": "CS_Chap03_Act297.usm", 754 | "is_player_involved": false, 755 | "caption_path": "", 756 | "encryption": true 757 | }, 758 | { 759 | "video_id": 3298, 760 | "video_path": "CS_Chap03_Act298.usm", 761 | "is_player_involved": false, 762 | "caption_path": "", 763 | "encryption": true 764 | }, 765 | { 766 | "video_id": 3300, 767 | "video_path": "CS_Chap03_Act300.usm", 768 | "is_player_involved": true, 769 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act300_Caption.json", 770 | "encryption": true 771 | }, 772 | { 773 | "video_id": 3320, 774 | "video_path": "CS_Chap03_Act320.usm", 775 | "is_player_involved": true, 776 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act320_Caption.json", 777 | "encryption": true 778 | }, 779 | { 780 | "video_id": 3330, 781 | "video_path": "CS_Chap03_Act330.usm", 782 | "is_player_involved": true, 783 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act330_Caption.json", 784 | "encryption": true 785 | }, 786 | { 787 | "video_id": 3340, 788 | "video_path": "CS_Chap03_Act340.usm", 789 | "is_player_involved": true, 790 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act340_Caption.json", 791 | "encryption": true 792 | }, 793 | { 794 | "video_id": 3350, 795 | "video_path": "CS_Chap03_Act350.usm", 796 | "is_player_involved": true, 797 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act350_Caption.json", 798 | "encryption": true 799 | }, 800 | { 801 | "video_id": 3360, 802 | "video_path": "CS_Chap03_Act360.usm", 803 | "is_player_involved": true, 804 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act360_Caption.json", 805 | "encryption": true 806 | }, 807 | { 808 | "video_id": 3370, 809 | "video_path": "CS_Chap03_Act370.usm", 810 | "is_player_involved": true, 811 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act370_Caption.json", 812 | "encryption": true 813 | }, 814 | { 815 | "video_id": 3380, 816 | "video_path": "CS_Chap03_Act380.usm", 817 | "is_player_involved": true, 818 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act380_Caption.json", 819 | "encryption": true 820 | }, 821 | { 822 | "video_id": 3390, 823 | "video_path": "CS_Chap03_Act390.usm", 824 | "is_player_involved": true, 825 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act390_Caption.json", 826 | "encryption": true 827 | }, 828 | { 829 | "video_id": 3400, 830 | "video_path": "CS_Chap03_Act400.usm", 831 | "is_player_involved": false, 832 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act400_Caption.json", 833 | "encryption": true 834 | }, 835 | { 836 | "video_id": 3410, 837 | "video_path": "CS_Chap03_Act410.usm", 838 | "is_player_involved": true, 839 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act410_Caption.json", 840 | "encryption": true 841 | }, 842 | { 843 | "video_id": 3420, 844 | "video_path": "CS_Chap03_Act420.usm", 845 | "is_player_involved": false, 846 | "caption_path": "", 847 | "encryption": true 848 | }, 849 | { 850 | "video_id": 3421, 851 | "video_path": "CS_Chap03_Act3030.usm", 852 | "is_player_involved": false, 853 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3030_Caption.json", 854 | "encryption": true 855 | }, 856 | { 857 | "video_id": 3422, 858 | "video_path": "CS_Chap03_Act3040.usm", 859 | "is_player_involved": false, 860 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3040_Caption.json", 861 | "encryption": true 862 | }, 863 | { 864 | "video_id": 3423, 865 | "video_path": "CS_Chap03_Act3050.usm", 866 | "is_player_involved": false, 867 | "caption_path": "Config/CutSceneCaption/CS_Chap03_Act3050_Caption.json", 868 | "encryption": true 869 | } 870 | ] -------------------------------------------------------------------------------- /PyCriUsm/keys.json: -------------------------------------------------------------------------------- 1 | { 2 | "StarRail": { 3 | "Encrytion": 1, 4 | "KeyMap": { 5 | "1.4": { 6 | "CS_Chap01_Act010_f": 58804058007084814, 7 | "CS_Chap01_Act010_m": 58804058007084821, 8 | "CS_Chap01_Act020_f": 58804058007086145, 9 | "CS_Chap01_Act020_m": 58804058007086152, 10 | "CS_Chap01_Act110_f": 58804058009099463, 11 | "CS_Chap01_Act110_m": 58804058009099470, 12 | "CS_Chap01_Act120_f": 58804058009100794, 13 | "CS_Chap01_Act120_m": 58804058009100801, 14 | "CS_Chap01_Act130_f": 58804058009102125, 15 | "CS_Chap01_Act130_m": 58804058009102132, 16 | "CS_Chap01_Act150_f": 58804058009104787, 17 | "CS_Chap01_Act150_m": 58804058009104794, 18 | "CS_Chap00_Act210": 26743203654499374, 19 | "CS_Chap00_Act270_f": 58804055659174391, 20 | "CS_Chap00_Act270_m": 58804055659174398, 21 | "CS_Chap00_Act300_f": 58804055659179723, 22 | "CS_Chap00_Act300_m": 58804055659179730, 23 | "CS_Chap01_Act3010": 6001183505702008, 24 | "CS_Chap01_Act3020": 6001183505702019, 25 | "CS_Chap01_Act3030": 6001183505702030, 26 | "CS_Chap00_Act310_f": 58804055660181054, 27 | "CS_Chap00_Act310_m": 58804055660181061, 28 | "CS_Chap00_Act320_f": 58804055600191577, 29 | "CS_Chap00_Act320_m": 58804055600191584, 30 | "CS_Chap01_Act160": 26743203674986479, 31 | "CS_Chap01_Act170": 26743203617986285, 32 | "CS_Chap01_Act180": 26743203617986296, 33 | "CS_Chap01_Act190_f": 58804057961109898, 34 | "CS_Chap01_Act190_m": 58804057961109905, 35 | "CS_Chap01_Act200": 26743203617986329, 36 | "CS_Chap01_Act210_f": 58804057961113891, 37 | "CS_Chap01_Act210_m": 58804057961113898, 38 | "CS_Chap01_Act220_f": 58804057961115222, 39 | "CS_Chap01_Act220_m": 58804057961115229, 40 | "CS_Chap01_Act221_f": 58804057961115343, 41 | "CS_Chap01_Act221_m": 58804057961115350, 42 | "CS_Chap01_Act222": 26743203617986353, 43 | "CS_Chap01_Act223_f": 58804057961115585, 44 | "CS_Chap01_Act223_m": 58804057961115592, 45 | "CS_Chap01_Act224_f": 58804057961115706, 46 | "CS_Chap01_Act224_m": 58804057961115713, 47 | "CS_Chap01_Act230_f": 58804057961116553, 48 | "CS_Chap01_Act230_m": 58804057961116560, 49 | "CS_Chap01_Act240_f": 58804057961117884, 50 | "CS_Chap01_Act240_m": 58804057961117891, 51 | "CS_Chap02_Act3020": 6001183721061005, 52 | "CS_Chap01_Act3040": 6001183506702146, 53 | "CS_Chap02_Act420": 26743203713473977, 54 | "CS_Chap02_Act440_f": 58804060395095070, 55 | "CS_Chap02_Act440_m": 58804060395095077, 56 | "CS_Chap02_Act450_f": 58804060395096393, 57 | "CS_Chap02_Act450_m": 58804060395096400, 58 | "CS_Chap02_Act460": 26743203713474021, 59 | "CS_Chap02_Act480_f": 58804060395100394, 60 | "CS_Chap02_Act480_m": 58804060395100401, 61 | "CS_Chap02_Act490_f": 58804060395101725, 62 | "CS_Chap02_Act490_m": 58804060395101732, 63 | "CS_Chap02_Act530": 26743203634483301, 64 | "CS_Chap02_Act550": 26743203635483831, 65 | "CS_Chap02_Act560": 26743203635483740, 66 | "CS_Chap02_Act570_f": 58804060317123302, 67 | "CS_Chap02_Act570_m": 58804060317123309, 68 | "CS_Chap02_Act580_f": 58804060317124735, 69 | "CS_Chap02_Act580_m": 58804060317124742, 70 | "CS_Chap02_Act620_f": 58804060318131365, 71 | "CS_Chap02_Act620_m": 58804060318131372, 72 | "CS_Chap02_Act630": 26743203636483918, 73 | "CS_Chap02_Act640": 26743203637474028, 74 | "CS_Chap02_Act730": 26743203636484026, 75 | "CS_Chap02_Act740": 26743203636484037, 76 | "CS_Chap02_Act750": 26743203636484048, 77 | "CS_Chap02_Act760": 26743203636484059 78 | }, 79 | "1.5": { 80 | "CS_Chap02_Act660": 26743203638484166, 81 | "CS_Chap02_Act670_f": 58804060320138248, 82 | "CS_Chap02_Act670_m": 58804060320138255, 83 | "CS_Chap02_Act680_f": 58804060320139579, 84 | "CS_Chap02_Act680_m": 58804060320139586, 85 | "CS_Chap02_Act690_f": 58804060320140910, 86 | "CS_Chap02_Act690_m": 58804060320140917, 87 | "CS_Chap02_Act700_f": 58804060320143648, 88 | "CS_Chap02_Act700_m": 58804060320143655, 89 | "CS_Chap02_Act701_f": 58804060320143693, 90 | "CS_Chap02_Act701_m": 58804060320143700, 91 | "CS_Chap02_Act710": 26743203638484232, 92 | "CS_Chap02_Act720": 26743203638484243, 93 | "CS_Chap03_Act010_f": 58804062677990107, 94 | "CS_Chap03_Act010_m": 58804062677990114, 95 | "CS_Chap03_Act020_f": 58804062677991438, 96 | "CS_Chap03_Act020_m": 58804062677991445, 97 | "CS_Chap03_Act030_f": 58804062677992769, 98 | "CS_Chap03_Act030_m": 58804062677992776 99 | }, 100 | "1.6": { 101 | "CS_Chap00_Act3010": 6001183295343454, 102 | "CS_Chap00_Act3020": 6001183295343465, 103 | "CS_Chap00_Act330_f": 58804055605193798, 104 | "CS_Chap00_Act330_m": 58804055605193805, 105 | "CS_Chap00_Act340_f": 58804055605195129, 106 | "CS_Chap00_Act340_m": 58804055605195136, 107 | "CS_Chap00_Act350_f": 58804055605196460, 108 | "CS_Chap00_Act350_m": 58804055605196467, 109 | "CS_Chap00_Act360_f": 58804055605197791, 110 | "CS_Chap00_Act360_m": 58804055605197798, 111 | "CS_Chap00_Act361_f": 58804055605197912, 112 | "CS_Chap00_Act361_m": 58804055605197919, 113 | "CS_Chap00_Act370": 26743203600509651, 114 | "CS_Chap00_Act380_f": 58804055605200453, 115 | "CS_Chap00_Act380_m": 58804055605200460, 116 | "CS_Chap00_Act390_f": 58804055605201784, 117 | "CS_Chap00_Act390_m": 58804055605201791, 118 | "CS_Chap00_Act400_f": 58804055605204446, 119 | "CS_Chap00_Act400_m": 58804055605204453, 120 | "CS_Chap00_Act410_f": 58804055605205777, 121 | "CS_Chap00_Act410_m": 58804055605205784, 122 | "CS_Chap00_Act411": 26743203600509707, 123 | "CS_Chap00_Act420": 26743203600509717 124 | }, 125 | "2.0": { 126 | "CS_Chap03_Act040_f": 58804062682994098, 127 | "CS_Chap03_Act040_m": 58804062682994105, 128 | "CS_Chap03_Act050_f": 58804062682995429, 129 | "CS_Chap03_Act050_m": 58804062682995436, 130 | "CS_Chap03_Act060_f": 58804062682996955, 131 | "CS_Chap03_Act060_m": 58804062682996962, 132 | "CS_Chap03_Act070_f": 58804062682998091, 133 | "CS_Chap03_Act070_m": 58804062682998098, 134 | "CS_Chap03_Act080_f": 58804062682999422, 135 | "CS_Chap03_Act080_m": 58804062682999429, 136 | "CS_Chap03_Act090_f": 58804062683000753, 137 | "CS_Chap03_Act090_m": 58804062683000760, 138 | "CS_Chap03_Act100_f": 58804062683003610, 139 | "CS_Chap03_Act100_m": 58804062683003617, 140 | "CS_Chap03_Act110_f": 58804062683004746, 141 | "CS_Chap03_Act110_m": 58804062683004753, 142 | "CS_Chap03_Act120_f": 58804062683006077, 143 | "CS_Chap03_Act120_m": 58804062683006084, 144 | "CS_Chap03_Act130_f": 58804062683007408, 145 | "CS_Chap03_Act130_m": 58804062683007415, 146 | "CS_Chap03_Act140": 26743203662970903, 147 | "CS_Chap03_Act150_f": 58804062683010070, 148 | "CS_Chap03_Act150_m": 58804062683010077, 149 | "CS_Chap03_Act160_f": 58804062683011401, 150 | "CS_Chap03_Act160_m": 58804062683011408, 151 | "CS_Chap03_Act170_f": 58804062683012732, 152 | "CS_Chap03_Act170_m": 58804062683012739, 153 | "CS_Chap03_Act180_f": 58804062683014260, 154 | "CS_Chap03_Act180_m": 58804062683014267, 155 | "CS_Chap03_Act3010": 6001183942420199, 156 | "CS_Chap03_Act3020": 6001183942420210 157 | }, 158 | "2.1": { 159 | "CS_Chap03_Act190": 33677888765489275, 160 | "CS_Chap03_Act191": 35825467408878174, 161 | "CS_Chap03_Act200": 35774069687378185, 162 | "CS_Chap03_Act210_f": 65167954698761176, 163 | "CS_Chap03_Act210_m": 65167954698761183, 164 | "CS_Chap03_Act220_f": 66110540286151826, 165 | "CS_Chap03_Act220_m": 66110540286151833, 166 | "CS_Chap03_Act230_f": 60407490201272476, 167 | "CS_Chap03_Act230_m": 60407490201272483, 168 | "CS_Chap03_Act240": 32211741837498079, 169 | "CS_Chap03_Act250_f": 65118103937936928, 170 | "CS_Chap03_Act250_m": 65118103937936935, 171 | "CS_Chap03_Act260": 28840807511848010, 172 | "CS_Chap03_Act270": 35622574288212047, 173 | "CS_Chap03_Act280": 29304800586622008 174 | }, 175 | "3.7": { 176 | "CS_Chap01_Act010_m": 58804058007084821, 177 | "CS_Chap01_Act010_f": 58804058007084814, 178 | "CS_Chap01_Act020_m": 58804058007086152, 179 | "CS_Chap01_Act020_f": 58804058007086145, 180 | "CS_Chap01_Act110_m": 58804058009099470, 181 | "CS_Chap01_Act110_f": 58804058009099463, 182 | "CS_Chap01_Act120_m": 58804058009100801, 183 | "CS_Chap01_Act120_f": 58804058009100794, 184 | "CS_Chap01_Act130_m": 58804058009102132, 185 | "CS_Chap01_Act130_f": 58804058009102125, 186 | "CS_Chap01_Act150_m": 58804058009104794, 187 | "CS_Chap01_Act150_f": 58804058009104787, 188 | "CS_Chap00_Act210": 26743203654499374, 189 | "CS_Chap00_Act270_m": 58804055659174398, 190 | "CS_Chap00_Act270_f": 58804055659174391, 191 | "CS_Chap00_Act300_m": 18830882451776183, 192 | "CS_Chap00_Act300_f": 18830882446011382, 193 | "CS_AvatarShow_1407": 19737441126710141, 194 | "CS_AvatarShow_1408": 21994165260614771, 195 | "CS_AvatarShowTransition_1408": 60610210064264370, 196 | "CS_AvatarShow_1415_m": 3166103462093130, 197 | "CS_AvatarShow_1415_f": 1537689864182681, 198 | "CS_AvatarShowTransition_1415": 54425396150114837, 199 | "CS_Chap01_Act3010": 6001183505702008, 200 | "CS_Chap01_Act3020": 6001183505702019, 201 | "CS_Chap01_Act3030": 6001183505702030, 202 | "CS_Chap00_Act310_m": 58804055660181061, 203 | "CS_Chap00_Act310_f": 58804055660181054, 204 | "CS_Chap00_Act320_m": 58804055600191584, 205 | "CS_Chap00_Act320_f": 58804055600191577, 206 | "CS_Chap00_Act3010": 6001183295343454, 207 | "CS_Chap00_Act3020": 6001183295343465, 208 | "CS_Chap00_Act330_m": 58804055605193805, 209 | "CS_Chap00_Act330_f": 58804055605193798, 210 | "CS_Chap00_Act340_m": 58804055605195136, 211 | "CS_Chap00_Act340_f": 58804055605195129, 212 | "CS_Chap00_Act350_m": 58804055605196467, 213 | "CS_Chap00_Act350_f": 58804055605196460, 214 | "CS_Chap00_Act360_m": 58804055605197798, 215 | "CS_Chap00_Act360_f": 58804055605197791, 216 | "CS_Chap00_Act361_m": 58804055605197919, 217 | "CS_Chap00_Act361_f": 58804055605197912, 218 | "CS_Chap00_Act370": 26743203600509651, 219 | "CS_Chap00_Act380_m": 58804055605200460, 220 | "CS_Chap00_Act380_f": 58804055605200453, 221 | "CS_Chap00_Act390_m": 58804055605201791, 222 | "CS_Chap00_Act390_f": 58804055605201784, 223 | "CS_Chap00_Act400_m": 58804055605204453, 224 | "CS_Chap00_Act400_f": 58804055605204446, 225 | "CS_Chap00_Act410_m": 58804055605205784, 226 | "CS_Chap00_Act410_f": 58804055605205777, 227 | "CS_Chap00_Act411": 26743203600509707, 228 | "CS_Chap00_Act420": 26743203600509717, 229 | "CS_Chap_TestRes": 9987299379606438, 230 | "CS_Chap01_Act160": 26743203674986479, 231 | "CS_Chap01_Act170": 26743203617986285, 232 | "CS_Chap01_Act180": 26743203617986296, 233 | "CS_Chap01_Act190_m": 58804057961109905, 234 | "CS_Chap01_Act190_f": 58804057961109898, 235 | "CS_Chap01_Act200": 26743203617986329, 236 | "CS_Chap01_Act210_m": 58804057961113898, 237 | "CS_Chap01_Act210_f": 58804057961113891, 238 | "CS_Chap01_Act220_m": 58804057961115229, 239 | "CS_Chap01_Act220_f": 58804057961115222, 240 | "CS_Chap01_Act221_m": 58804057961115350, 241 | "CS_Chap01_Act221_f": 58804057961115343, 242 | "CS_Chap01_Act222": 26743203617986353, 243 | "CS_Chap01_Act223_m": 58804057961115592, 244 | "CS_Chap01_Act223_f": 58804057961115585, 245 | "CS_Chap01_Act224_m": 58804057961115713, 246 | "CS_Chap01_Act224_f": 58804057961115706, 247 | "CS_Chap01_Act230_m": 58804057961116560, 248 | "CS_Chap01_Act230_f": 58804057961116553, 249 | "CS_Chap01_Act240_m": 58804057961117891, 250 | "CS_Chap01_Act240_f": 58804057961117884, 251 | "CS_Chap02_Act3020": 6001183721061005, 252 | "CS_Chap01_Act3040": 6001183506702146, 253 | "CS_Chap02_Act420": 26743203713473977, 254 | "CS_Chap02_Act440_m": 58804060395095077, 255 | "CS_Chap02_Act440_f": 58804060395095070, 256 | "CS_Chap02_Act450_m": 58804060395096400, 257 | "CS_Chap02_Act450_f": 58804060395096393, 258 | "CS_Chap02_Act460": 26743203713474021, 259 | "CS_Chap02_Act480_m": 58804060395100401, 260 | "CS_Chap02_Act480_f": 58804060395100394, 261 | "CS_Chap02_Act490_m": 58804060395101732, 262 | "CS_Chap02_Act490_f": 58804060395101725, 263 | "CS_Chap02_Act530": 26743203634483301, 264 | "CS_Chap02_Act550": 26743203635483831, 265 | "CS_Chap02_Act560": 26743203635483740, 266 | "CS_Chap02_Act570_m": 58804060317123309, 267 | "CS_Chap02_Act570_f": 58804060317123302, 268 | "CS_Chap02_Act580_m": 58804060317124742, 269 | "CS_Chap02_Act580_f": 58804060317124735, 270 | "CS_Chap02_Act620_m": 58804060318131372, 271 | "CS_Chap02_Act620_f": 58804060318131365, 272 | "CS_Chap02_Act630": 26743203636483918, 273 | "CS_Chap02_Act640": 26743203637474028, 274 | "CS_Chap02_Act660": 6680746846845654, 275 | "CS_Chap02_Act670_m": 58804060320138255, 276 | "CS_Chap02_Act670_f": 58804060320138248, 277 | "CS_Chap02_Act680_m": 58804060320139586, 278 | "CS_Chap02_Act680_f": 58804060320139579, 279 | "CS_Chap02_Act690_m": 17523614258491558, 280 | "CS_Chap02_Act690_f": 17490381327921957, 281 | "CS_Chap02_Act700_m": 17007803291536909, 282 | "CS_Chap02_Act700_f": 16974570360967308, 283 | "CS_Chap02_Act701_m": 19244977819234187, 284 | "CS_Chap02_Act701_f": 19211744888664586, 285 | "CS_Chap02_Act710": 26743203638484232, 286 | "CS_Chap02_Act720": 26743203638484243, 287 | "CS_Chap02_Act730": 26743203636484026, 288 | "CS_Chap02_Act740": 26743203636484037, 289 | "CS_Chap02_Act750": 26743203636484048, 290 | "CS_Chap02_Act760": 26743203636484059, 291 | "CS_Chap03_Act010_m": 58804062677990114, 292 | "CS_Chap03_Act010_f": 58804062677990107, 293 | "CS_Chap03_Act020_m": 18877094054901668, 294 | "CS_Chap03_Act020_f": 18843861124332067, 295 | "CS_Chap03_Act030_m": 58804062677992776, 296 | "CS_Chap03_Act030_f": 58804062677992769, 297 | "CS_Chap03_Act040_m": 58804062682994105, 298 | "CS_Chap03_Act040_f": 58804062682994098, 299 | "CS_Chap03_Act050_m": 58804062682995436, 300 | "CS_Chap03_Act050_f": 58804062682995429, 301 | "CS_Chap03_Act060_m": 58804062682996962, 302 | "CS_Chap03_Act060_f": 58804062682996955, 303 | "CS_Chap03_Act070_m": 58804062682998098, 304 | "CS_Chap03_Act070_f": 58804062682998091, 305 | "CS_Chap03_Act080_m": 58804062682999429, 306 | "CS_Chap03_Act080_f": 58804062682999422, 307 | "CS_Chap03_Act090_m": 58804062683000760, 308 | "CS_Chap03_Act090_f": 58804062683000753, 309 | "CS_Chap03_Act100_m": 58804062683003617, 310 | "CS_Chap03_Act100_f": 58804062683003610, 311 | "CS_Chap03_Act110_m": 58804062683004753, 312 | "CS_Chap03_Act110_f": 58804062683004746, 313 | "CS_Chap03_Act120_m": 58804062683006084, 314 | "CS_Chap03_Act120_f": 58804062683006077, 315 | "CS_Chap03_Act130_m": 58804062683007415, 316 | "CS_Chap03_Act130_f": 58804062683007408, 317 | "CS_Chap03_Act140": 26743203662970903, 318 | "CS_Chap03_Act150_m": 58804062683010077, 319 | "CS_Chap03_Act150_f": 58804062683010070, 320 | "CS_Chap03_Act160_m": 58804062683011408, 321 | "CS_Chap03_Act160_f": 58804062683011401, 322 | "CS_Chap03_Act170_m": 58804062683012739, 323 | "CS_Chap03_Act170_f": 58804062683012732, 324 | "CS_Chap03_Act180_m": 58804062683014267, 325 | "CS_Chap03_Act180_f": 58804062683014260, 326 | "CS_Chap03_Act3010": 6001183942420199, 327 | "CS_Chap03_Act3020": 6001183942420210, 328 | "CS_Chap03_Act190": 33677888765489275, 329 | "CS_Chap03_Act191": 35825467408878174, 330 | "CS_Chap03_Act200": 35774069687378185, 331 | "CS_Chap03_Act210_m": 65167954698761183, 332 | "CS_Chap03_Act210_f": 65167954698761176, 333 | "CS_Chap03_Act220_m": 66110540286151833, 334 | "CS_Chap03_Act220_f": 66110540286151826, 335 | "CS_Chap03_Act230_m": 60407490201272483, 336 | "CS_Chap03_Act230_f": 60407490201272476, 337 | "CS_Chap03_Act240": 32211741837498079, 338 | "CS_Chap03_Act250_m": 65118103937936935, 339 | "CS_Chap03_Act250_f": 65118103937936928, 340 | "CS_Chap03_Act260": 28840807511848010, 341 | "CS_Chap03_Act270": 35622574288212047, 342 | "CS_Chap03_Act280": 29304800586622008, 343 | "CS_Chap03_Act290": 4301666030412441, 344 | "CS_Chap03_Act291": 1682167078051502, 345 | "CS_Chap03_Act292": 6261113367405956, 346 | "CS_Chap03_Act293": 4352353593630880, 347 | "CS_Chap03_Act294": 6714530090839661, 348 | "CS_Chap03_Act295": 8815990112359454, 349 | "CS_Chap03_Act296": 6587675256201794, 350 | "CS_Chap03_Act297": 6747433851803363, 351 | "CS_Chap03_Act298": 5411581448373248, 352 | "CS_Chap03_Act300_m": 34367230014952527, 353 | "CS_Chap03_Act300_f": 34367230014935720, 354 | "CS_Chap03_Act320_m": 29600197723556791, 355 | "CS_Chap03_Act320_f": 29600197723539984, 356 | "CS_Chap03_Act330_m": 30753856557797685, 357 | "CS_Chap03_Act330_f": 30753856557780878, 358 | "CS_Chap03_Act340_m": 29808474169544394, 359 | "CS_Chap03_Act340_f": 29808474169527587, 360 | "CS_Chap03_Act350_m": 31711912402591025, 361 | "CS_Chap03_Act350_f": 31711912402574218, 362 | "CS_Chap03_Act360_m": 30015231330691800, 363 | "CS_Chap03_Act360_f": 30015231330674993, 364 | "CS_Chap03_Act370_m": 36864163153435746, 365 | "CS_Chap03_Act370_f": 36864163153418939, 366 | "CS_Chap03_Act380_m": 34327464370469877, 367 | "CS_Chap03_Act380_f": 34327464370453070, 368 | "CS_Chap03_Act390_m": 29509726528338266, 369 | "CS_Chap03_Act390_f": 29509726528321459, 370 | "CS_Chap03_Act400": 6715710760717247, 371 | "CS_Chap03_Act410_m": 34617382426771278, 372 | "CS_Chap03_Act410_f": 34617382426754471, 373 | "CS_Chap03_Act420": 8748695874592132, 374 | "CS_Chap03_Act3030": 11463307764324669, 375 | "CS_Chap03_Act3040": 11469307207675653, 376 | "CS_Chap03_Act3050": 14458332448662471, 377 | "CS_Chap03_Act430": 2532929457029620, 378 | "CS_Chap03_Act440_m": 27600513353601372, 379 | "CS_Chap03_Act440_f": 27600513353483723, 380 | "CS_Chap03_Act450_m": 34250041657642178, 381 | "CS_Chap03_Act450_f": 34250041657524529, 382 | "CS_Chap02_Act770": 6361048063662940, 383 | "CS_Chap02_Act780": 4749347772399348, 384 | "CS_Chap02_Act790": 6855164507500279, 385 | "CS_Chap02_Act800": 9247733685236374, 386 | "CS_Chap02_Act810_m": 35220604613723480, 387 | "CS_Chap02_Act810_f": 35220604612899937, 388 | "CS_Chap02_Act820": 7032864098715939, 389 | "CS_Chap02_Act840_m": 36309513703400254, 390 | "CS_Chap02_Act840_f": 36309513702576711, 391 | "CS_Chap02_Act3030": 10260902376664671, 392 | "CS_Chap02_Act850": 6797184754512867, 393 | "CS_Chap02_Act860": 3927311611223264, 394 | "CS_Chap02_Act870_m": 19234030977868442, 395 | "CS_Chap02_Act870_f": 19234030972103641, 396 | "CS_Chap02_Act880": 2114321924037762, 397 | "CS_Chap02_Act890": 2415722065783117, 398 | "CS_Chap02_Act900": 10287169707682411, 399 | "CS_Chap02_Act910": 9261893147251876, 400 | "CS_Chap02_Act920": 8330677816420070, 401 | "CS_Chap02_Act930": 7903788961800410, 402 | "CS_Chap02_Act940": 3177794035680172, 403 | "CS_Chap02_Act950": 3815830948408198, 404 | "CS_Chap02_Act960": 2620943166842341, 405 | "CS_Chap02_Act970": 10104244572920178, 406 | "CS_Chap03_Act460_m": 22451077401774749, 407 | "CS_Chap03_Act460_f": 22451077361421142, 408 | "CS_Chap03_Act470_m": 24895260253342750, 409 | "CS_Chap03_Act470_f": 24895260212989143, 410 | "CS_Chap03_Act480_m": 21761462849784304, 411 | "CS_Chap03_Act480_f": 21761462809430697, 412 | "CS_Chap03_Act490_m": 22841076578846943, 413 | "CS_Chap03_Act490_f": 22841076538493336, 414 | "CS_Chap03_Act500": 7032671491823108, 415 | "CS_Chap03_Act510": 4740615121991433, 416 | "CS_Chap03_Act520_m": 22790075898055355, 417 | "CS_Chap03_Act520_f": 22790075857701748, 418 | "CS_Chap03_Act530_m": 24884448329882201, 419 | "CS_Chap03_Act530_f": 24884448289528594, 420 | "CS_Chap03_Act3060": 10144752440238549, 421 | "CS_Chap03_Act3070": 13336172118908093, 422 | "CS_Chap03_Act3080": 6210566626027518, 423 | "CS_Chap03_Act540": 7775910618137884, 424 | "CS_Chap03_Act560_m": 26257714335158504, 425 | "CS_Chap03_Act560_f": 26257714052683255, 426 | "CS_Chap03_Act570": 3919325893550067, 427 | "CS_Chap03_Act580": 3140922122220584, 428 | "CS_Chap03_Act590": 6123836288591857, 429 | "CS_Chap03_Act600_m": 31602881625140528, 430 | "CS_Chap03_Act600_f": 31602881342665279, 431 | "CS_Chap03_Act610_m": 32862851373088449, 432 | "CS_Chap03_Act610_f": 32862851090613200, 433 | "CS_Chap04_Act010_m": 35522083719795042, 434 | "CS_Chap04_Act010_f": 35521986830784635, 435 | "CS_Chap04_Act020_m": 35390048698608244, 436 | "CS_Chap04_Act020_f": 35389951809597837, 437 | "CS_Chap04_Act030_m": 36092173649247244, 438 | "CS_Chap04_Act030_f": 36092076760236837, 439 | "CS_Chap04_Act040_m": 33993225388529654, 440 | "CS_Chap04_Act040_f": 33993128499519247, 441 | "CS_Chap04_Act050_m": 33565373845059493, 442 | "CS_Chap04_Act050_f": 33565276956049086, 443 | "CS_Chap04_Act060_m": 30767575239070685, 444 | "CS_Chap04_Act060_f": 30767478350060278, 445 | "CS_Chap04_Act070_m": 37702576874462704, 446 | "CS_Chap04_Act070_f": 37702479985452297, 447 | "CS_Chap04_Act080_m": 32753441879227346, 448 | "CS_Chap04_Act080_f": 32753344990216939, 449 | "CS_Chap04_Act090_m": 33222332651609359, 450 | "CS_Chap04_Act090_f": 33222235762598952, 451 | "CS_Chap04_Act100_m": 30260136989591554, 452 | "CS_Chap04_Act100_f": 30260040100581147, 453 | "CS_Chap04_Act110_m": 30901692637788503, 454 | "CS_Chap04_Act110_f": 30901595748778096, 455 | "CS_Chap04_Act120_m": 36099743908894049, 456 | "CS_Chap04_Act120_f": 36099647019883642, 457 | "CS_Chap04_Act130_m": 30079226915198358, 458 | "CS_Chap04_Act130_f": 30079130026187951, 459 | "CS_Chap04_Act140_m": 18884279567611699, 460 | "CS_Chap04_Act140_f": 18883601344538850, 461 | "CS_Chap04_Act150_m": 22572926105438543, 462 | "CS_Chap04_Act150_f": 22572247882365694, 463 | "CS_Chap04_Act160_m": 19997993413972956, 464 | "CS_Chap04_Act160_f": 19997315190900107, 465 | "CS_Chap04_Act170_m": 19558300638406138, 466 | "CS_Chap04_Act170_f": 19557622415333289, 467 | "CS_Chap04_Act180": 7079227114919241, 468 | "CS_Chap04_Act190_m": 14618953815842073, 469 | "CS_Chap04_Act190_f": 14618275592769224, 470 | "CS_Chap04_Act200_m": 16494110853375634, 471 | "CS_Chap04_Act200_f": 16493432630302785, 472 | "CS_Chap04_Act210_m": 22474353585783075, 473 | "CS_Chap04_Act210_f": 22473675362710226, 474 | "CS_Chap04_Act220": 7290015146237779, 475 | "CS_Chap04_Act230": 8606730537489605, 476 | "CS_Chap04_Act240_m": 20771642093937585, 477 | "CS_Chap04_Act240_f": 20766894532427642, 478 | "CS_Chap04_Act250": 9278089150981513, 479 | "CS_Chap04_Act260_m": 18243639788329232, 480 | "CS_Chap04_Act260_f": 18238892226819289, 481 | "CS_Chap04_Act270": 7227604779444612, 482 | "CS_Chap04_Act280": 4066020018087681, 483 | "CS_Chap04_Act290_m": 24234468351377625, 484 | "CS_Chap04_Act290_f": 24229720789867682, 485 | "CS_Chap04_Act300": 9704777859917586, 486 | "CS_Chap04_Act310": 3827654454270713, 487 | "CS_Chap04_Act3020": 8168117149339908, 488 | "CS_Chap04_Act3010": 8498665850054460, 489 | "CS_Chap04_Act320_m": 20100796315234745, 490 | "CS_Chap04_Act320_f": 20067563384665144, 491 | "CS_Chap04_Act330_m": 17038800489686726, 492 | "CS_Chap04_Act330_f": 17005567559117125, 493 | "CS_Chap04_Act340_m": 21515344658108157, 494 | "CS_Chap04_Act340_f": 21482111727538556, 495 | "CS_Chap04_Act350_m": 24278833240726318, 496 | "CS_Chap04_Act350_f": 24245600310156717, 497 | "CS_Chap04_Act360_m": 20479653616367402, 498 | "CS_Chap04_Act360_f": 20446420685797801, 499 | "CS_Chap04_Act370_m": 17462087791660295, 500 | "CS_Chap04_Act370_f": 17428854861090694, 501 | "CS_Chap04_Act380_m": 22358381667947672, 502 | "CS_Chap04_Act380_f": 22325148737378071, 503 | "CS_Chap04_Act390_m": 18517938457120779, 504 | "CS_Chap04_Act390_f": 18484705526551178, 505 | "CS_Chap04_Act400": 5095539995641440, 506 | "CS_Chap04_Act410": 3651321297611160, 507 | "CS_Chap04_Act420_m": 19699265211794332, 508 | "CS_Chap04_Act420_f": 19666032281224731, 509 | "CS_Chap04_Act430": 10285615336828496, 510 | "CS_Chap04_Act3040": 8764539825755575, 511 | "CS_Chap04_Act440_m": 30638067664609737, 512 | "CS_Chap04_Act440_f": 30405437150622530, 513 | "CS_Chap04_Act450_m": 35378713822607436, 514 | "CS_Chap04_Act450_f": 35146083308620229, 515 | "CS_Chap04_Act460_m": 34569695852678251, 516 | "CS_Chap04_Act460_f": 34337065338691044, 517 | "CS_Chap04_Act470": 9554883309634062, 518 | "CS_Chap04_Act480_m": 30068189207043646, 519 | "CS_Chap04_Act480_f": 29835558693056439, 520 | "CS_Chap04_Act490_m": 28110775734746794, 521 | "CS_Chap04_Act490_f": 27878145220759587, 522 | "CS_Chap04_Act500_m": 35066981409246421, 523 | "CS_Chap04_Act500_f": 34834350895259214, 524 | "CS_Chap04_Act3060": 8297529118161882, 525 | "CS_Chap04_Act510_m": 35688764689187746, 526 | "CS_Chap04_Act510_f": 34060351091277297, 527 | "CS_Chap04_Act520_m": 31058379721789456, 528 | "CS_Chap04_Act520_f": 29429966123879007, 529 | "CS_Chap04_Act540_m": 35140949163699001, 530 | "CS_Chap04_Act540_f": 33512535565788552, 531 | "CS_Chap04_Act560_m": 30928624847153989, 532 | "CS_Chap04_Act560_f": 29300211249243540, 533 | "CS_Chap04_Act570_m": 35269219375006793, 534 | "CS_Chap04_Act570_f": 33640805777096344, 535 | "CS_Chap04_Act580_m": 33666902441228042, 536 | "CS_Chap04_Act580_f": 32038488843317593, 537 | "CS_Chap04_Act590_m": 34769380653978598, 538 | "CS_Chap04_Act590_f": 33140967056068149, 539 | "CS_Chap04_Act3050": 11311160450894865, 540 | "CS_Chap04_Act3051": 7917443668632416, 541 | "CS_Chap04_Act3052": 11096803248312485, 542 | "CS_Chap04_Act3053": 7426648010173066, 543 | "CS_Chap04_Act3054": 10017583072868902, 544 | "CS_Chap04_Act3055": 7768558536745439, 545 | "CS_Chap04_Act3056": 4166431423897508, 546 | "CS_Chap04_Act3057": 9389414503407897, 547 | "CS_Chap03_Act620_m": 35862189005589478, 548 | "CS_Chap03_Act620_f": 35629558491602271, 549 | "CS_Chap03_Act640_m": 34565361387181150, 550 | "CS_Chap03_Act640_f": 34332730873193943, 551 | "CS_Chap03_Act650_m": 32505047518217446, 552 | "CS_Chap03_Act650_f": 32272417004230239, 553 | "CS_Chap03_Act660_m": 33147411371270781, 554 | "CS_Chap03_Act660_f": 32914780857283574, 555 | "CS_Chap03_Act670": 3213256904987572, 556 | "CS_Chap03_Act680_m": 28592695972388830, 557 | "CS_Chap03_Act680_f": 28360065458401623, 558 | "CS_Chap03_Act3090": 7741707347517673, 559 | "CS_SkinShow_1131001": 27112750619876289, 560 | "CS_Chap04_Act501": 9382123807439418, 561 | "CS_Activity_Fate_CN": 47381650778602952, 562 | "CS_Activity_Fate_TC": 49231064268287087, 563 | "CS_Activity_Fate_EN": 50768980360255621, 564 | "CS_Activity_Fate_KR": 47323283637327671, 565 | "CS_Activity_Fate_JP": 52264275396675091, 566 | "CS_Chap04_Act600": 2485302615286023, 567 | "CS_Chap04_Act610": 2567672899484558, 568 | "CS_Chap04_Act620_m": 20848378965433181, 569 | "CS_Chap04_Act620_f": 20848378965433174, 570 | "CS_Chap04_Act630_m": 27741371154981195, 571 | "CS_Chap04_Act630_f": 27741371154981188, 572 | "CS_Chap04_Act640_m": 24261259443352297, 573 | "CS_Chap04_Act640_f": 24261259443352290, 574 | "CS_Chap04_Act650_m": 27941244117075311, 575 | "CS_Chap04_Act650_f": 27941244117075304, 576 | "CS_Chap04_Act660_m": 24925670114138050, 577 | "CS_Chap04_Act660_f": 24925670114138043, 578 | "CS_Chap04_Act670_m": 21326611391938059, 579 | "CS_Chap04_Act670_f": 21326611391938052, 580 | "CS_Chap04_Act680_m": 28112519242214258, 581 | "CS_Chap04_Act680_f": 28112519242214251, 582 | "CS_Chap04_Act690": 6888171736349241, 583 | "CS_Chap04_Act700_m": 32170532575359448, 584 | "CS_Chap04_Act700_f": 32170532575359399, 585 | "CS_Chap04_Act710_m": 30309205371060070, 586 | "CS_Chap04_Act710_f": 30309205371060021, 587 | "CS_Chap04_Act720_m": 29918966747070452, 588 | "CS_Chap04_Act720_f": 29918966747070403, 589 | "CS_Chap04_Act730_m": 29132927673956903, 590 | "CS_Chap04_Act730_f": 29132927673956854, 591 | "CS_Chap04_Act740_m": 24018511288433027, 592 | "CS_Chap04_Act740_f": 24018511288432978, 593 | "CS_Chap04_Act750_m": 30604990567768468, 594 | "CS_Chap04_Act750_f": 30604990567768419, 595 | "CS_Chap04_Act760_m": 32192514376728598, 596 | "CS_Chap04_Act760_f": 32192514376728549, 597 | "CS_Chap04_Act770": 9017376077731583, 598 | "CS_Chap04_Act780_m": 32070642894203986, 599 | "CS_Chap04_Act780_f": 32070642894203937, 600 | "CS_Chap04_Act781_m": 30375199630913799, 601 | "CS_Chap04_Act781_f": 30375199630913750, 602 | "CS_SkinShow_1141501_m": 63492844385006645, 603 | "CS_SkinShow_1141501_f": 63260213871019438, 604 | "CS_ChapLoop01_Act0010": 0, 605 | "CS_ChapLoop01_Act0020": 0, 606 | "CS_ChapLoop01_Act0030": 0, 607 | "CS_ChapLoop_Black": 0, 608 | "CS_ChapLoop01_Act0070": 0, 609 | "CS_ChapLoop01_Act0080": 0, 610 | "CS_ChapLoop01_Act0090": 0, 611 | "CS_ChapLoop01_Act0100_m": 0, 612 | "CS_ChapLoop01_Act0100_f": 0, 613 | "CS_ChapLoop01_Act0110": 0, 614 | "CS_ChapLoop02_Act0010": 0, 615 | "CS_ChapLoop02_Act0040": 0, 616 | "CS_Chap02_Act3010": 0, 617 | "CS_ChapLoop02_Act0050": 0, 618 | "CS_ChapLoop02_Act0060": 0, 619 | "CS_ChapLoop02_Act0070": 0, 620 | "CS_ChapLoop02_Act0080": 0, 621 | "CS_ChapLoop02_Act0090": 0, 622 | "CS_ChapLoop02_Act0100": 0, 623 | "CS_ChapLoop02_Act0110": 0, 624 | "CS_ChapLoop02_Act0120": 0, 625 | "CS_ChapLoop02_Act0130": 0, 626 | "CS_ChapLoop02_Act0150": 0, 627 | "CS_Chap02_Act3020_Loop": 0, 628 | "CS_Chap01_Act3040_Loop": 0, 629 | "CS_ChapLoop01_Act0120": 0, 630 | "CS_ChapLoop02_Act0160": 0, 631 | "CS_ChapLoop02_Act0170_m": 0, 632 | "CS_ChapLoop02_Act0170_f": 0, 633 | "CS_ChapLoop02_Act0180": 0, 634 | "CS_ChapLoop02_Act0190": 0, 635 | "CS_ChapLoop02_Act0200_m": 0, 636 | "CS_ChapLoop02_Act0200_f": 0, 637 | "CS_ChapLoop01_Act0130": 0, 638 | "CS_ChapLoop01_Act0140": 0, 639 | "CS_ChapLoop01_Act0150": 0, 640 | "CS_ChapLoop01_Act0160": 0, 641 | "CS_ChapLoop01_Act0170": 0, 642 | "CS_ChapLoop01_Act0180": 0, 643 | "CS_ChapLoop02_Act0220": 0, 644 | "CS_ChapLoop02_Act0210": 0, 645 | "CS_ChapLoop03_Act0010": 0, 646 | "CS_ChapLoop00_Act0010": 0, 647 | "CS_ChapLoop00_Act0020": 0, 648 | "CS_ChapLoop02_Act0230": 0, 649 | "CS_ChapLoop02_Act0240": 0, 650 | "CS_ChapLoop_TestRes": 0, 651 | "CS_Chap01_BattleCollege_01": 0, 652 | "CS_Chap01_BattleCollege_02": 0, 653 | "CS_Chap01_BattleCollege_03": 0, 654 | "CS_Chap01_BattleCollege_04": 0, 655 | "CS_Chap01_BattleCollege_05": 0, 656 | "CS_Chap01_BattleCollege_06": 0, 657 | "CS_Chap01_BattleCollege_07": 0, 658 | "CS_Chap01_BattleCollege_08": 0, 659 | "CS_Chap01_BattleCollege_09": 0, 660 | "CS_Chap01_BattleCollege_10": 0, 661 | "CS_Chap01_BattleCollege_11": 0, 662 | "CS_Chap01_BattleCollege_12": 0, 663 | "CS_Chap01_BattleCollege_13": 0, 664 | "CS_Chap01_BattleCollege_14": 0, 665 | "CS_Chap01_BattleCollege_15": 0, 666 | "CS_Chap01_BattleCollege_16": 0, 667 | "CS_Chap01_BattleCollege_18": 0, 668 | "CS_Chap01_BattleCollege_19": 0, 669 | "CS_Chap01_BattleCollege_17": 0, 670 | "CS_Chap01_BattleCollege_20": 0, 671 | "Chap01_Eff_Dual_A_01": 0, 672 | "Chap01_Eff_Dual_B_01_m": 0, 673 | "Chap01_Eff_Dual_B_01_f": 0, 674 | "Chap01_Eff_Dual_C_01_m": 0, 675 | "Chap01_Eff_Dual_C_01_f": 0, 676 | "Chap01_Eff_Dual_B_02_m": 0, 677 | "Chap01_Eff_Dual_B_02_f": 0, 678 | "Chap01_Eff_Dual_C_02_m": 0, 679 | "Chap01_Eff_Dual_C_02_f": 0, 680 | "Chap01_Eff_Dual_B_03_m": 0, 681 | "Chap01_Eff_Dual_B_03_f": 0, 682 | "Chap01_Eff_Dual_C_03_m": 0, 683 | "Chap01_Eff_Dual_C_03_f": 0, 684 | "Chap01_Eff_Dual_B_05_m": 0, 685 | "Chap01_Eff_Dual_B_05_f": 0, 686 | "Chap01_Eff_Dual_C_05_m": 0, 687 | "Chap01_Eff_Dual_C_05_f": 0, 688 | "Chap01_Eff_Dual_B_04_m": 0, 689 | "Chap01_Eff_Dual_B_04_f": 0, 690 | "Chap01_Eff_Dual_C_04_m": 0, 691 | "Chap01_Eff_Dual_C_04_f": 0, 692 | "Chap01_Eff_Dual_D_01_m": 0, 693 | "Chap01_Eff_Dual_D_01_f": 0, 694 | "Chap01_Eff_Dual_E_01_m": 0, 695 | "Chap01_Eff_Dual_E_01_f": 0, 696 | "CS_ChapLoop03_Act0020_m": 0, 697 | "CS_ChapLoop03_Act0020_f": 0, 698 | "CS_ChapLoop03_Act0080_m": 0, 699 | "CS_ChapLoop03_Act0080_f": 0, 700 | "CS_ChapLoop03_Act0090": 0, 701 | "CS_ChapLoop03_Act0030": 0, 702 | "CS_ChapLoop03_Act0040": 0, 703 | "CS_ChapLoop03_Act0050": 0, 704 | "CS_ChapLoop03_Act0060": 0, 705 | "CS_ChapLoop03_Act0070": 0, 706 | "CS_Chap03_Act3020_Loop": 0, 707 | "Chap03_TV_Video_01": 0, 708 | "CS_ChapLoop03_Act0100": 0, 709 | "CS_ChapLoop03_Act0110": 0, 710 | "CS_ChapLoop03_Act0120": 0, 711 | "CS_ChapLoop03_Act0130": 0, 712 | "CS_ChapLoop03_Act0140": 0, 713 | "CS_ChapLoop03_Act0150": 0, 714 | "CS_ChapLoop03_Act0160": 0, 715 | "CS_ChapLoop03_Act0170": 0, 716 | "Chap03_TV_Video_02": 0, 717 | "Chap03_TV_Video_03": 0, 718 | "Chap03_TV_Video_04": 0, 719 | "CS_ChapLoop03_Act0180": 0, 720 | "CS_ChapLoop03_Act0190": 0, 721 | "CS_ChapLoop03_Act0200": 0, 722 | "CS_ChapLoop03_Act0210": 0, 723 | "CS_ChapLoop03_Act0220": 0, 724 | "CS_ChapLoop03_Act0230": 0, 725 | "CS_ChapLoop03_Act0240": 0, 726 | "CS_ChapLoop03_Act0250": 0, 727 | "CS_ChapLoop03_Act0260": 0, 728 | "CS_ChapLoop03_Act0270": 0, 729 | "CS_ChapLoop03_Act0280": 0, 730 | "CS_ChapLoop03_Act0290": 0, 731 | "CS_ChapLoop03_Act0300": 0, 732 | "CS_ChapLoop03_Act0310": 0, 733 | "CS_ChapLoop03_Act0320": 0, 734 | "Chap03_TV_Video_Robin": 0, 735 | "CS_ChapLoop03_Act0330": 0, 736 | "CS_ChapLoop02_Act0250": 5217771801911943, 737 | "CS_ChapLoop02_Act0260": 6808100821157594, 738 | "CS_ChapLoop02_Act0270": 9190471238999967, 739 | "CS_ChapLoop02_Act0280": 3899548240078678, 740 | "CS_ChapLoop02_Act0290": 3445029855837604, 741 | "CS_ChapLoop02_Act0300": 1782434929407211, 742 | "CS_ChapLoop02_Act0310": 3100459460527787, 743 | "CS_ChapLoop02_Act0320": 3273206482543668, 744 | "CS_ChapLoop02_Act0330": 9564333937548806, 745 | "CS_ChapLoop02_Act0340": 2310046740330926, 746 | "CS_ChapLoop02_Act0350": 7902432227105476, 747 | "CS_ChapLoop02_Act0360": 7079171337028637, 748 | "CS_ChapLoop02_Act0370": 3061008911430629, 749 | "CS_ChapLoop02_Act0380": 1801097095732223, 750 | "CS_ChapLoop02_Act0390": 1062536424631798, 751 | "CS_ChapLoop02_Act0400": 4162803588955315, 752 | "CS_ChapLoop02_Act0410": 10004931662612900, 753 | "CS_ChapLoop03_Act0340": 7750832498256888, 754 | "CS_ChapLoop03_Act0350": 4702566051768720, 755 | "CS_ChapLoop03_Act0360": 7556589223381585, 756 | "CS_ChapLoop03_Act0370": 1092146196643403, 757 | "CS_ChapLoop03_Act0380": 4418381244495875, 758 | "Chap03_TV_Video_3080": 0, 759 | "CS_ChapLoop03_Act0390": 5727534880497818, 760 | "CS_ChapLoop03_Act0400": 9283782268639763, 761 | "CS_ChapLoop03_Act0410": 1209171054927671, 762 | "CS_ChapLoop03_Act0420": 5880199628212690, 763 | "CS_ChapLoop03_Act0430": 8739018351099458, 764 | "CS_ChapLoop04_Act0010_m": 8563208942135198, 765 | "CS_ChapLoop04_Act0010_f": 8558461380625255, 766 | "CS_ChapLoop04_Act0011_m": 3615861243050951, 767 | "CS_ChapLoop04_Act0011_f": 3611113681541008, 768 | "CS_ChapLoop04_Act0020": 2411023158665102, 769 | "CS_ChapLoop04_Act0030": 8877445803448918, 770 | "CS_ChapLoop04_Act0040": 2568000967551283, 771 | "CS_ChapLoop04_Act0041": 4790922442964533, 772 | "CS_ChapLoop04_Act0050": 9754677788869198, 773 | "CS_ChapLoop04_Act0060": 3809199953069210, 774 | "CS_ChapLoop04_Act0031": 5063170741085492, 775 | "CS_ChapLoop04_Act0032": 8017386128942735, 776 | "CS_ChapLoop04_Act0070": 9047267217825744, 777 | "CS_ChapLoop04_Act0080": 5392064170101952, 778 | "CS_ChapLoop04_Act0081": 3658614110280649, 779 | "CS_ChapLoop04_Act0082": 8050801353861302, 780 | "CS_ChapLoop04_Act0083": 6918098917446089, 781 | "CS_ChapLoop04_Act0084": 2614240447635452, 782 | "CS_ChapLoop04_Act0085": 3512172448909502, 783 | "CS_ChapLoop04_Act0090": 9822769016106928, 784 | "CS_ChapLoop04_Act0100": 8463333084162131, 785 | "CS_ChapLoop04_Act0110": 9308378119959836, 786 | "CS_ChapLoop04_Act0120": 5665536124583015, 787 | "CS_ChapLoop04_Act0130_m": 7227976705895412, 788 | "CS_ChapLoop04_Act0130_f": 7194743775325811, 789 | "CS_ChapLoop04_Act0140": 4361958671355353, 790 | "CS_ChapLoop04_Act0131_m": 3004459112639238, 791 | "CS_ChapLoop04_Act0131_f": 2971226182069637, 792 | "CS_ChapLoop04_Act0132": 5796727353539314, 793 | "CS_ChapLoop04_Act0141": 7882114692151000, 794 | "CS_ChapLoop04_Act0150": 7660691380297155, 795 | "CS_ChapLoop04_Act0160": 1286446619328870, 796 | "CS_ChapLoop04_Act0170": 8493551805365414, 797 | "CS_ChapLoop04_Act0171": 8105441245357854, 798 | "CS_ChapLoop04_Act0172": 2165408267528075, 799 | "CS_ChapLoop04_Act0173": 9625922414406787, 800 | "CS_ChapLoop04_Act0180": 2811337944181782, 801 | "CS_ChapLoop04_Act0200": 6718759953253919, 802 | "CS_ChapLoop04_Act0210": 6984335000920462, 803 | "CS_ChapLoop04_Act0211": 2252985692162877, 804 | "CS_ChapLoop04_Act0230": 9034891301244013, 805 | "CS_ChapLoop04_Act0231": 9611328038479350, 806 | "CS_ChapLoop04_Act0240": 2876817085623161, 807 | "CS_ChapLoop04_Act0250": 9949251972092473, 808 | "CS_ChapLoop04_Act0330_m": 6751260898073528, 809 | "CS_ChapLoop04_Act0330_f": 6718027967503927, 810 | "CS_AvatarShowLoop_1407": 9677677630930320, 811 | "CS_ChapLoop04_Act0360_m": 2271950444212293, 812 | "CS_ChapLoop04_Act0360_f": 2271950444212286, 813 | "Chap04_ActivityMarble_01": 0, 814 | "Chap04_ActivityMarble_02": 0, 815 | "Chap04_ActivityMarble_03": 0, 816 | "Chap04_ActivityMarble_04": 0, 817 | "Chap04_ActivityMarble_05": 0, 818 | "Chap04_ActivityMarble_06": 0, 819 | "Chap04_ActivityMarble_07": 0, 820 | "Chap04_ActivityMarble_08": 0, 821 | "Chap04_ActivityMarble_09": 0, 822 | "Chap04_ActivityMarble_10": 0, 823 | "Chap04_ActivityMarble_11": 0, 824 | "CS_ChapLoop04_Act0260": 9660376377491084, 825 | "CS_ChapLoop04_Act0261": 6592379703085037, 826 | "CS_ChapLoop04_Act0262": 9681141596161640, 827 | "CS_ChapLoop04_Act0263": 6455665062514458, 828 | "CS_ChapLoop04_Act0264": 3251547851130810, 829 | "CS_ChapLoop04_Act0265": 8195650925965676, 830 | "CS_ChapLoop04_Act0266": 3335793177742515, 831 | "CS_ChapLoop04_Act0270": 5766963981181154, 832 | "CS_ChapLoop04_Act0271": 8282865875989859, 833 | "CS_ChapLoop04_Act0290": 4199923179823969, 834 | "CS_ChapLoop04_Act0300": 3161635249111237, 835 | "CS_ChapLoop04_Act0310": 1949713254384463, 836 | "CS_ChapLoop04_Act0320": 3427851465285323, 837 | "CS_ChapLoop04_Act0430": 7264988956067791, 838 | "CS_ChapLoop04_Act0431": 3267975827541674, 839 | "CS_ChapLoop04_Act0432": 9909503081220655, 840 | "CS_ChapLoop04_Act0433": 9380717041507015, 841 | "CS_ChapLoop04_Act0434": 4835555468712514, 842 | "CS_ChapLoop04_Act0435": 7046778377389694, 843 | "CS_ChapLoop04_Act0436": 2052243027528267, 844 | "CS_ChapLoop04_Act0437": 3445388576044879, 845 | "CS_ChapLoop04_Act0340": 7908090798238171, 846 | "CS_ChapLoop04_Act0341": 5599400985684748, 847 | "CS_ChapLoop04_Act0342": 7326177264320324, 848 | "CS_ChapLoop04_Act0343": 1098353799868019, 849 | "CS_ChapLoop04_Act0344": 6897632050419935, 850 | "CS_ChapLoop04_Act0345": 1237604637297055, 851 | "CS_ChapLoop04_Act0350": 4661651735090843, 852 | "CS_ChapLoop04_Act0370": 9398976650517171, 853 | "CS_ChapLoop04_Act0380": 8445307195642129, 854 | "CS_ChapLoop04_Act0400": 8838802607875407, 855 | "CS_ChapLoop04_Act0410": 1318869858273256, 856 | "CS_ChapLoop04_Act0420": 4995446380091798, 857 | "CS_ChapLoop04_Act0421": 6717842520440742, 858 | "CS_ChapLoop04_Act0440": 3383687120283656, 859 | "CS_ChapLoop04_Act0441": 8331813160278786, 860 | "CS_ChapLoop04_Act0450": 9764645459169441, 861 | "CS_ChapLoop04_Act0460": 3316551615594726, 862 | "CS_ChapLoop04_Act0470": 4094909246682289, 863 | "CS_ChapLoop04_Act0471": 1426763005959918, 864 | "CS_ChapLoop04_Act0480_m": 6565292383612956, 865 | "CS_ChapLoop04_Act0480_f": 6565292383610555, 866 | "CS_ChapLoop04_Act0481_m": 4641695651968619, 867 | "CS_ChapLoop04_Act0481_f": 4641695651966218, 868 | "CS_ChapLoop04_Act0482_m": 5049378197020054, 869 | "CS_ChapLoop04_Act0482_f": 5049378197017653, 870 | "CS_ChapLoop04_Act0483_m": 3005708110202526, 871 | "CS_ChapLoop04_Act0483_f": 3005708110200125, 872 | "CS_ChapLoop04_Act0484_m": 8434629596633796, 873 | "CS_ChapLoop04_Act0484_f": 8434629596631395, 874 | "CS_ChapLoop04_Act0490": 3494083445704145, 875 | "CS_ChapLoop04_Act0500": 9572626456862923, 876 | "CS_ChapLoop04_Act0510": 3286518251420476, 877 | "CS_AvatarShowLoop_1408": 10165889346237374, 878 | "CS_ChapLoop04_Act0520": 7557745001628549, 879 | "CS_ChapLoop04_Act0530": 2115955206727710, 880 | "CS_ChapLoop04_Act0540": 9607573525008569, 881 | "CS_ChapLoop03_Act0440": 7959333222011212, 882 | "CS_ChapLoop04_Act0371": 2927891166465770, 883 | "CS_ChapLoop04_Act0351": 8710486149073386, 884 | "CS_ChapLoop04_Act0352": 5415971109967505, 885 | "CS_ChapLoop04_Act0353": 9792183048973498, 886 | "CS_ChapLoop04_Act0354": 8251079411490855, 887 | "CS_ChapLoop04_Act0411": 4025904943181022, 888 | "CS_ChapLoop04_Act0412": 1079789396872587, 889 | "CS_ChapLoop04_Act0381": 9305341105983597, 890 | "CS_ChapLoop03_Act0450": 1663038562764543, 891 | "CS_ChapLoop04_Act0630": 1214275126081148, 892 | "CS_ChapLoop04_Act0491": 2297873753102834, 893 | "CS_ChapLoop04_Act0511": 8246752303440544, 894 | "CS_ChapLoop04_Act0512": 8217225006151877, 895 | "CS_ChapLoop04_Act0513": 9175939884134898, 896 | "CS_ChapLoop04_Act0550": 1627833204838148, 897 | "CS_ChapLoop04_Act0560": 4720756704656475, 898 | "CS_ChapLoop04_Act0561": 3385053520976738, 899 | "CS_ChapLoop04_Act0580": 6374796531176269, 900 | "CS_ChapLoop04_Act0590": 2207984425002195, 901 | "CS_ChapLoop04_Act0600_m": 4210153729389616, 902 | "CS_ChapLoop04_Act0600_f": 4210153729372809, 903 | "CS_ChapLoop04_Act0610": 5552156501335596, 904 | "CS_ChapLoop04_Act0620": 4542779271485789, 905 | "CS_ChapLoop04_Act0581": 8583237032332167, 906 | "CS_ChapLoop04_Act0591_m": 8258567043863498, 907 | "CS_ChapLoop04_Act0591_f": 8258567043846691, 908 | "CS_ChapLoop04_Act0592_m": 5070458791238498, 909 | "CS_ChapLoop04_Act0592_f": 5070458791221691, 910 | "CS_ChapLoop04_Act0593_m": 6903172087883364, 911 | "CS_ChapLoop04_Act0593_f": 6903172087866557, 912 | "CS_ChapLoop04_Act0601_m": 7609080848927125, 913 | "CS_ChapLoop04_Act0601_f": 7609080848910318, 914 | "CS_ChapLoop04_Act0602": 1291973155244365, 915 | "CS_ChapLoop04_Act0603": 7799725692721189, 916 | "CS_ChapLoop04_Act0604_m": 7996689018991948, 917 | "CS_ChapLoop04_Act0604_f": 7996689018975141, 918 | "CS_ChapLoop04_Act0605_m": 7398360097274728, 919 | "CS_ChapLoop04_Act0605_f": 7398360097257921, 920 | "CS_ChapLoop04_Act0606_m": 1904887944681306, 921 | "CS_ChapLoop04_Act0606_f": 1904887944664499, 922 | "CS_ChapLoop04_Act0607": 7847977817654870, 923 | "CS_ChapLoop04_Act0608_m": 2651358244722890, 924 | "CS_ChapLoop04_Act0608_f": 2651358244706083, 925 | "CS_AvatarShowLoop_1415": 63824736707469763, 926 | "CS_ChapLoop04_Act0640": 1975684793943205, 927 | "CS_ChapLoop04_Act0641": 9999719619979548, 928 | "CS_ChapLoop04_Act0642": 4136413235767255, 929 | "CS_ChapLoop04_Act0650": 1939068261272973, 930 | "CS_ChapLoop04_Act0651": 9694925763356799, 931 | "CS_ChapLoop04_Act0652": 1404186300584306, 932 | "CS_ChapLoop04_Act0653": 8591490710841587, 933 | "CS_ChapLoop04_Act0654": 3844640478782003, 934 | "CS_ChapLoop04_Act0655": 6234026817009175, 935 | "CS_ChapLoop04_Act0656": 4695555711073266, 936 | "CS_ChapLoop04_Act0657": 5071236012333703, 937 | "CS_ChapLoop04_Act0658": 5402380265987642, 938 | "CS_ChapLoop04_Act0659": 1175557289849924, 939 | "CS_ChapLoop04_Act0660": 5469168297041238, 940 | "CS_ChapLoop04_Act0661": 2185288494762644, 941 | "CS_ChapLoop04_Act0662": 5643506189544850, 942 | "CS_ChapLoop04_Act0663": 4069131851425102, 943 | "CS_ChapLoop04_Act0664_m": 2807738850666051, 944 | "CS_ChapLoop04_Act0664_f": 2807738850548402, 945 | "CS_ChapLoop04_Act0665_m": 3348883146782221, 946 | "CS_ChapLoop04_Act0665_f": 3348883146664572, 947 | "CS_ChapLoop04_Act0670": 6277819074551308, 948 | "CS_ChapLoop04_Act0671": 9342586750612483, 949 | "CS_ChapLoop04_Act0672": 4176084310508185, 950 | "CS_ChapLoop04_Act0673": 2815937861118269, 951 | "CS_ChapLoop04_Act0674": 4731811940366612, 952 | "CS_ChapLoop04_Act0675": 7828640724010158, 953 | "CS_ChapLoop04_Act0676": 5559567100323421, 954 | "CS_ChapLoop04_Act0677": 3078498494239671, 955 | "CS_ChapLoop04_Act0678": 6959549407285765, 956 | "CS_ChapLoop04_Act0679": 9365785251370926, 957 | "CS_ChapLoop04_Act0680": 3885279573385341, 958 | "CS_ChapLoop04_Act0681": 7303856027611400, 959 | "CS_ChapLoop04_Act0710": 6655472647467661, 960 | "CS_ChapLoop04_Act0690": 2293387823412439, 961 | "CS_ChapLoop04_Act0691": 4763763744252767, 962 | "CS_ChapLoop04_Act0692": 5223734381298800, 963 | "CS_ChapLoop04_Act0693": 1973807900416683, 964 | "CS_ChapLoop04_Act0694": 8134417787156528, 965 | "CS_ChapLoop04_Act0695": 8522564311638950, 966 | "CS_ChapLoop04_Act0700_m": 3442201535811838, 967 | "CS_ChapLoop04_Act0700_f": 3442201535694189, 968 | "CS_ChapLoop04_Act0701_m": 3845183342905563, 969 | "CS_ChapLoop04_Act0701_f": 3845183342787914, 970 | "CS_ChapLoop04_Act0702_m": 10036901409788940, 971 | "CS_ChapLoop04_Act0702_f": 10036901409671291, 972 | "CS_ChapLoop04_Act0703_m": 3073377448957654, 973 | "CS_ChapLoop04_Act0703_f": 3073377448840005, 974 | "CS_ChapLoop04_Act0704_m": 1462946703738853, 975 | "CS_ChapLoop04_Act0704_f": 1462946703621204, 976 | "CS_ChapLoop04_Act0705_m": 6426603699851420, 977 | "CS_ChapLoop04_Act0705_f": 6426603699733771, 978 | "Chap04_WSW_nothing_30fps": 0, 979 | "Chap04_WSW_fisheye_30fps": 0, 980 | "Activity_Parkour_Guide_Bomb": 0, 981 | "Activity_Parkour_Guide_SuperSpeedup": 0, 982 | "Activity_Parkour_Guide_Invincibility": 0, 983 | "Activity_Parkour_Guide_Random": 0, 984 | "ActivityOnline_Entrance_Marble": 0, 985 | "Activity_MatchThreeV2_BirdJade": 0, 986 | "Activity_MatchThreeV2_BirdBoothill": 0, 987 | "Activity_MatchThreeV2_BirdQinqque": 0, 988 | "Activity_MatchThreeV2_BirdPlayer": 0, 989 | "Activity_MatchThreeV2_BirdSilverWolf": 0, 990 | "Activity_MatchThreeV2_BirdMarch7th": 0, 991 | "Activity_MatchThreeV2_BirdFirefly": 0, 992 | "Activity_MatchThreeV2_BirdRobin": 0, 993 | "Activity_Fate_Guide_SaberShowVideo": 0, 994 | "Activity_Fate_Guide_ArcherShowVideo": 0, 995 | "Activity_Fate_Guide_LancerShowVideo": 0, 996 | "Activity_Fate_Guide_RiderShowVideo": 0, 997 | "Activity_Fate_Guide_AssassinShowVideo": 0, 998 | "Activity_Fate_Guide_BerserkerShowVideo": 0, 999 | "Activity_MatchThreeV2_Entrance": 0, 1000 | "Activity_MultiplayCollection_MatchThree_BirdQinqque": 0, 1001 | "Activity_MultiplayCollection_Entrance": 0, 1002 | "Activity_Chimera_Guide_Entrance": 0, 1003 | "Activity_Alley_Guide_Entrance": 0, 1004 | "Activity_AetherDivide_Guide_Entrance": 0, 1005 | "Activity_Museum_Guide_Entrance": 0, 1006 | "Activity_AmphoreusActivity_Guide_Entrance": 0, 1007 | "Activity_MusicRhythm_Guide_Entrance": 0, 1008 | "Activity_ElfRestaurant_Guide_Entrance": 0, 1009 | "Activity_SpaceZoo_Guide_Entrance": 0, 1010 | "Activity_SwordTraining_Guide_Entrance": 0, 1011 | "Activity_TrainPartyPanel_Guide_Entrance": 0, 1012 | "Activity_DrinkMaker_Guide_Entrance": 0, 1013 | "Activity_Heliobus_Guide_Entrance": 0, 1014 | "Activity_FightFest_Guide_Entrance": 0, 1015 | "Activity_DrinkMakerSecond_Guide_Entrance": 0, 1016 | "Activity_Hipplen_Guide_Entrance": 0, 1017 | "Activity_MatchThreeV1_Entrance": 0, 1018 | "Activity_GridFight_Guide_ShowVideo_LCTX": 0, 1019 | "Activity_GridFight_Guide_ShowVideo_XHLS": 0, 1020 | "Activity_GridFight_Guide_ShowVideo_YHXZ": 0, 1021 | "Activity_GridFight_Guide_ShowVideo_BLBG": 0, 1022 | "Activity_GridFight_Guide_ShowVideo_XZ": 0, 1023 | "Activity_GridFight_Guide_ShowVideo_LS": 0, 1024 | "Activity_GridFight_Guide_ShowVideo_XHYX": 0, 1025 | "Activity_GridFight_Guide_ShowVideo_SHZX": 0, 1026 | "Activity_GridFight_Guide_ShowVideo_ZZBS": 0, 1027 | "Activity_GridFight_Guide_ShowVideo_YZBS": 0, 1028 | "Activity_GridFight_Guide_ShowVideo_ZJ": 0, 1029 | "Activity_GridFight_Guide_ShowVideo_JP": 0, 1030 | "Activity_GridFight_Guide_ShowVideo_QG": 0, 1031 | "Activity_GridFight_Guide_ShowVideo_NL": 0, 1032 | "Activity_GridFight_Guide_ShowVideo_RX": 0, 1033 | "Activity_GridFight_Guide_ShowVideo_JY": 0, 1034 | "Activity_GridFight_Guide_ShowVideo_CXSH": 0, 1035 | "Activity_GridFight_Guide_ShowVideo_ZJD": 0, 1036 | "Activity_CakeRace_Entrance": 0 1037 | } 1038 | } 1039 | } 1040 | } 1041 | --------------------------------------------------------------------------------