{"id":22957560,"url":"https://github.com/tca166/ck3-history-extractor","last_synced_at":"2025-07-04T23:35:18.981Z","repository":{"id":53121185,"uuid":"521264396","full_name":"TCA166/CK3-history-extractor","owner":"TCA166","description":"A program designed for creating an encyclopedia of sorts containing your ck3 history","archived":false,"fork":false,"pushed_at":"2024-05-22T23:13:37.000Z","size":4141,"stargazers_count":10,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-05-23T00:11:05.958Z","etag":null,"topics":["ck3","crawler","python3","rust","save-file","save-files"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TCA166.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-08-04T12:49:15.000Z","updated_at":"2024-05-27T16:01:44.529Z","dependencies_parsed_at":"2024-05-27T16:01:40.877Z","dependency_job_id":null,"html_url":"https://github.com/TCA166/CK3-history-extractor","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TCA166%2FCK3-history-extractor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TCA166%2FCK3-history-extractor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TCA166%2FCK3-history-extractor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TCA166%2FCK3-history-extractor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TCA166","download_url":"https://codeload.github.com/TCA166/CK3-history-extractor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229730775,"owners_count":18115423,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ck3","crawler","python3","rust","save-file","save-files"],"created_at":"2024-12-14T17:17:52.823Z","updated_at":"2025-07-04T23:35:18.963Z","avatar_url":"https://github.com/TCA166.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CK3-history-extractor\n\n[![GitHub Downloads (all assets, all releases)](https://img.shields.io/github/downloads/TCA166/CK3-history-extractor/total)](https://github.com/TCA166/CK3-history-extractor/releases/latest)\n[![Example](https://img.shields.io/badge/GitHub_Pages-Output_Example-fuchsia)](https://tca166.github.io/CK3-history-extractor/TCA166's%20history/index.html)\n[![Rust Documentation](https://img.shields.io/badge/GitHub_Pages-Documentation-blue)](https://tca166.github.io/CK3-history-extractor/ck3_history_extractor)\n[![Tests](https://github.com/TCA166/CK3-history-extractor/actions/workflows/rust.yml/badge.svg)](https://github.com/TCA166/CK3-history-extractor/actions/workflows/rust.yml)\n\nA program for generating a wikipedia of your CK3 playthrough. It goes through\nthe lineage of every player in the save file and extracts data about every\ncharacter, title, religion, culture, etc. it encounters. It even renders cool\ngraphs that depict your history. You can preview how you can expect the result\nto look like in your browser\n[here](https://tca166.github.io/CK3-history-extractor/TCA166's%20history/index.html)\n\n## Usage\n\nYou are going to need to get the program first. There are a few ways to do that.\nThe way I recommend, is to use the precompiled binaries that I release on\nGitHub. This is the easiest way to get the program up and running.\n\nYou can also of course compile the program yourself. This is also openly\nsupported and I have a [makefile](./Makefile) that should help you with that. If\nyou are not familiar with compiling Rust programs, I recommend you check out the\n[official Rust book](https://doc.rust-lang.org/book/ch01-01-installation.html).\nThe program is written in Rust and should run on any platform that supports\nRust.\n\nYou can also use the legacy Python version of the program, but I do not\nrecommend it. You can find it\n[here](https://github.com/TCA166/CK3-history-extractor/releases/tag/v1.0.0)\n\nHaving made your choice and downloaded the program, you then need to find\nyour save file of choice.\n\n### Obtaining the save file\n\nYour save files are most likely located in your documents directory, more\nspecifically in\n```%USERPROFILE%\\Documents\\Paradox Interactive\\Crusader Kings III\\save games\\```.\nHaving located the save file, ideally copy it over to the directory where you\nplaced the program. This is not strictly necessary, but it will make your life\neasier. With the current tool version all save files are supported right out of\nthe box.\n\n### Running the program\n\nYou can run the program either from the command line or by double-clicking it.\nIf you run it without any arguments, the program will prompt you for the save\nfile path and the game path. Within the console interface, the program should\nautomatically pre-fill these paths based on your system. You can modify these\npre-filled paths if needed. Note that on some systems, this feature might not\nwork as expected.\n\n**Important:** Ensure that the game path you provide points to the\n```/game``` subdirectory within your ```Crusader Kings III``` folder. Failing to\ndo so will result in errors when running the program.\n\nThe tool can also be used as a command line utility. Running the tool with the\n```--help``` argument will show you all the available options.\n\n## Mod support\n\nThis program should work just fine on modded save files. Some specific aspects\nmay be represented inaccurately to the in game state, but that can be alleviated\nwith providing the tool with the mods you used to play the game. The tool should\nautomatically discover installed Steam mods and allow you to select them. Now\nnaturally very invasive mods allowing for individual country de jure drift, or\nusing weird non standard title naming schemes might break the tool. If that\noccurs please do let me know and I shall see what I can do.\n\n### Load order\n\nInternally all provided paths (those added via include and game-path) are\nhandled in the same way. Iteratively these paths are searched for localization\nand a valid map definition, with the first path provided being searched almost\nlast. Once a valid map definition is found this definition is used and is\nexpected to be entirely valid. The game path is loaded last.\n\n## Output example\n\nYou can find output examples in the [examples](examples/) directory. In order\nto better showcase the tool, I have deployed the result, and you can view it\n[here](https://tca166.github.io/CK3-history-extractor/TCA166's%20history/index.html).\n\n## Other similar tools\n\n- [CK2-history-extractor](https://github.com/TCA166/CK2-history-extractor) is a\n  tool like this for CK2\n- [pdx_unlimiter](https://github.com/crschnick/pdx_unlimiter) is a tool like\n  this, but less focused on CK3 and less on the history aspect. It is more of a\n  general purpose tool for extracting data from Paradox games.\n\n## Problems\n\nIf you encounter any problems please do let me know. The best way to do that is\nby creating a new issue on GitHub, this will let me track them better. This also\napplies to feature suggestions and general feedback.\n\n## Features\n\n- Each in game entity will get it's own HTML page with data and links to other\n  related entities. Characters will link to their Faith, Culture etc...\n- Faith and Culture pages will display graphs showing the amount of deaths of\n  their members through time, which allows for rough tracking of trends within\n  your game\n- Dynasty pages will display family trees\n- Titles will display de facto maps of their extent if applicable and the game\n  path is provided\n- A timeline page with a graphic will display the lifespans of empires and\n  notable events like conquests and falls of notable cities\n- A timelapse gif will show the de jure growth of the importance of your line\n\n## Development status\n\nThe tool has been rewritten using Rust. Currently I'm working on new features\nand bugfixes. Be sure to star this repository or watch it to get regular updates\nregarding the process. If you want to contribute feel free to do so! Plenty of\nthings to be done, just read [this](./CONTRIBUTING.md).\n\n## License\n\nThis work is licensed under the MIT license. The text of the license is fairly\nself explanatory, you can find it [here](./license.txt)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftca166%2Fck3-history-extractor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftca166%2Fck3-history-extractor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftca166%2Fck3-history-extractor/lists"}