{"id":14961648,"url":"https://github.com/openvicproject/openvic","last_synced_at":"2025-04-08T09:12:32.725Z","repository":{"id":65511804,"uuid":"591022823","full_name":"OpenVicProject/OpenVic","owner":"OpenVicProject","description":"Main Repo for the OpenVic Project","archived":false,"fork":false,"pushed_at":"2025-04-07T19:34:12.000Z","size":199090,"stargazers_count":379,"open_issues_count":17,"forks_count":28,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-04-08T09:12:19.044Z","etag":null,"topics":["game","game-development","gamedev","godot","godot-engine","openvic","victoria-2","victoria2"],"latest_commit_sha":null,"homepage":"https://openvic.com","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OpenVicProject.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-EXCEPTIONS.md","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":"2023-01-19T18:52:20.000Z","updated_at":"2025-04-05T19:48:46.000Z","dependencies_parsed_at":"2023-10-12T07:29:07.207Z","dependency_job_id":"6341e26e-c4d3-4807-a31b-107e45bdde3c","html_url":"https://github.com/OpenVicProject/OpenVic","commit_stats":{"total_commits":314,"total_committers":27,"mean_commits":11.62962962962963,"dds":0.6178343949044586,"last_synced_commit":"4d8148a3a06df6b93685222ff3d8f1f9b54c734e"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenVicProject%2FOpenVic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenVicProject%2FOpenVic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenVicProject%2FOpenVic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenVicProject%2FOpenVic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OpenVicProject","download_url":"https://codeload.github.com/OpenVicProject/OpenVic/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247809964,"owners_count":20999816,"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":["game","game-development","gamedev","godot","godot-engine","openvic","victoria-2","victoria2"],"created_at":"2024-09-24T13:26:01.699Z","updated_at":"2025-04-08T09:12:32.711Z","avatar_url":"https://github.com/OpenVicProject.png","language":"C++","readme":"[![🖥️ Builds](https://github.com/OpenVicProject/OpenVic/actions/workflows/builds.yml/badge.svg)](https://github.com/OpenVicProject/OpenVic/actions/workflows/builds.yml)\n\n# OpenVic\nMain Repo for the OpenVic Project\n\n## Quickstart Guide\nFor detailed instructions, view the Contributor Quickstart Guide [here](docs/contribution-quickstart-guide.md)\n\n## System Requirements\n* [Godot 4.4.1](https://github.com/godotengine/godot/releases/tag/4.4.1-stable)\n* [scons](https://scons.org/)\n\n\u003e [!WARNING]\n\u003e If you are using Arch Linux, do not use the Arch repo package, it is known to break under some GDExtensions, use the official release file.\n\nSee [System Requirements](docs/contribution/system-requirements.md).\n\n## Repo Setup\n1. Clone the OpenVic Repo to a suitable folder using the git command `git clone https://github.com/OpenVicProject/OpenVic.git`\n2. Update the submodules by executing the git command `git submodule update --init --recursive`\n\nNote that using a zip download instead of cloning means a lot of work in manually managing submodules individually. It is strongly recommended to use git to obtain the source code.\n\nSee [Cloning](docs/contribution/cloning.md).\n\n## [Godot Documentation](https://docs.godotengine.org/en/latest/)\n\n## Build/Run Instructions\n1. Install [Godot 4.4.1](https://github.com/godotengine/godot/releases/tag/4.4.1-stable) and [scons](https://scons.org/) for your system.\n2. Run the command `git submodule update --init --recursive` to retrieve all related submodules.\n3. Run `scons` in the project root, you should see a libopenvic file in `game/bin/openvic`.\n4. Open with Godot 4, click import and navigate to the `game` directory.\n5. Press \"Import \u0026 Edit\", wait for the Editor to finish re-importing assets, and then close the Editor ***without saving*** and reopen the project.\n6. Once loaded, click the play button at the top right, and you should see and hear the game application open on the main menu.\n\nSee [Run, Build, and Export](docs/contribution/run-build-and-export.md).\n\n## Project Export\n1. Build the extension with `scons` or `scons target=template_debug`. (or `scons target=template_release` for release)\n2. Open `game/project.godot` with Godot 4.\n3. Click `Project` at the top left, click `Export`.\n4. If you do not have the templates, you must download the templates, there is highlighted white text at the bottom of the Export subwindow that opens up the template manager for you to download.\n5. Click `Export All`:\n    * If you built with the default or debug target you must export with `Debug`.\n    * If you built with the release target you must export `Release`.\n6. Files will be found in platform specific directories in `game/export`:\n    * On Windows run `game/export/Windows/OpenVic.exe`.\n    * On Linux x86_64 run `game/export/Linux-x86_64/OpenVic.sh`.\n\nSee [Run, Build, and Export](docs/contribution/run-build-and-export.md).\n\n## Extension Debugging\n1. If in a clean build, build the extension with `scons`.\n2. Build with `scons dev_build=yes`.\n3. [Setup your IDE](https://godotengine.org/qa/108346/how-can-i-debug-runtime-errors-of-native-library-in-godot) so your Command/Host/Launching App is your Godot 4 binary and the Working Directory is the `game` directory.\n4. Start the debugger.\n\nSee [Debugging](docs/contribution/debugging.md).\n\n## Extension Class Reference Documentation\nEvery time you add something to the GDExtension you need to add to the class reference documentation, to do such:\n1. Build with `scons`.\n2. Run your Godot 4 binary with `--doctool --headless ../extension --gdextension-docs` in the `game` directory.\n3. Write documentation in the style of Godot, see [Godot's Writing Documentation: Class Reference Guides](https://docs.godotengine.org/en/stable/contributing/documentation/index.html#class-reference-guides).\n4. Build with `scons`.\n\nIf you change anything that causes new behavior in the GDExtension you should also change the corresponding class reference documentation.","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenvicproject%2Fopenvic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenvicproject%2Fopenvic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenvicproject%2Fopenvic/lists"}