{"id":16378221,"url":"https://github.com/redned235/simreader","last_synced_at":"2025-09-13T12:38:35.966Z","repository":{"id":64990808,"uuid":"580109512","full_name":"Redned235/SimReader","owner":"Redned235","description":"A Java reader for game data from the Sim* Franchise.","archived":false,"fork":false,"pushed_at":"2023-10-08T17:37:03.000Z","size":1601,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-21T10:43:49.456Z","etag":null,"topics":["game","java","sc4","sim-city","simcity","simcity4","sims"],"latest_commit_sha":null,"homepage":"","language":"Java","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/Redned235.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-12-19T18:38:30.000Z","updated_at":"2023-05-28T21:47:25.000Z","dependencies_parsed_at":"2024-11-08T16:44:56.353Z","dependency_job_id":null,"html_url":"https://github.com/Redned235/SimReader","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Redned235/SimReader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Redned235%2FSimReader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Redned235%2FSimReader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Redned235%2FSimReader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Redned235%2FSimReader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Redned235","download_url":"https://codeload.github.com/Redned235/SimReader/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Redned235%2FSimReader/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274961748,"owners_count":25381892,"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","status":"online","status_checked_at":"2025-09-13T02:00:10.085Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["game","java","sc4","sim-city","simcity","simcity4","sims"],"created_at":"2024-10-11T03:44:52.909Z","updated_at":"2025-09-13T12:38:35.920Z","avatar_url":"https://github.com/Redned235.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SimReader\n\nA Java parser for game data from the Sim* Franchise.\n\nAt the moment, this project only supports SimCity 4, but since many other Maxis games also use a similar format, it could be expanded to support those games too.\n\nThere are likely things missing, so pull requests are certainly welcome!\n\n## Usage\nYou can parse a .sc4 Savegame file by doing the following:\n```java\nSC4File file = new SC4File(Paths.get(\"my_city.sc4\"));\n```        \n\nOften, SimCity 4 stores much of its data inside of Exemplar files, found inside the game directory (usually with file extension `.dat`). Lots of data stored inside Savegame files make references to this data in these Exemplars through it's `PersistentResourceKey`.\n\nHere is an example that prints the name of each building:\n```java\nSC4File file = new SC4File(Paths.get(\"my_city.sc4\"));\nExemplarFile exemplarFile = new ExemplarFile(Paths.get(\"exemplar/SimCity_1.dat\"));\n\nfor (Building building : file.getBuildingFile().getBuildings()) {\n    IndexEntry indexEntry = exemplarFile.getEntry(building.getResourceKey());\n    byte[] bytes = exemplarFile.getBytesAtIndex(indexEntry);\n\n    ExemplarSubfile exemplar = ExemplarSubfile.parse(ExemplarSubfile::new, new FileBuffer(bytes));\n    System.out.println(\"Building name: \" + exemplar.getProperty(ExemplarPropertyTypes.EXEMPLAR_NAME).getValue());\n}\n```\n\n**Note:** This project may have issues reading data from files generated by the SimCity 4 macOS port. While efforts have been made to support the encoding differences where possible, none of these differences are documented so while the data may parse in some cases, it may be jumbled. Please open an issue if you notice any problems!\n\n## Repository\n\n### Gradle\n```kotlin\nrepositories {\n    maven(\"https://jitpack.io\")\n}\n\ndependencies {\n    implementation(\"com.github.Redned235:SimReader:master-SNAPSHOT\")\n}\n```\n\n### Maven:\n```xml\n\u003crepositories\u003e\n    \u003crepository\u003e\n        \u003cid\u003ejitpack\u003c/id\u003e\n        \u003curl\u003ehttps://jitpack.io\u003c/url\u003e\n    \u003c/repository\u003e\n\u003c/repositories\u003e\n\n\u003cdependencies\u003e\n    \u003cdependency\u003e\n        \u003cgroupId\u003ecom.github.Redned235\u003c/groupId\u003e\n        \u003cartifactId\u003eSimReader\u003c/artifactId\u003e\n        \u003cversion\u003emaster-SNAPSHOT\u003c/version\u003e\n        \u003cscope\u003ecompile\u003c/scope\u003e\n    \u003c/dependency\u003e\n\u003c/dependencies\u003e\n```\n\n## Credits\nMuch of this project would not be possible without the following resources \u0026 repositories:\n- [SC4Devotion Wiki](https://wiki.sc4devotion.com/)\n- [SC4Mapper](https://github.com/wouanagaine/SC4Mapper-2013/)\n- [SC4Parser](https://github.com/Killeroo/SC4Parser)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredned235%2Fsimreader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredned235%2Fsimreader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredned235%2Fsimreader/lists"}