{"id":19251793,"url":"https://github.com/kyrczak/virtual-world-java","last_synced_at":"2026-06-10T20:31:27.676Z","repository":{"id":155628339,"uuid":"491270212","full_name":"kyrczak/virtual-world-java","owner":"kyrczak","description":"University project, simulation game similar to Game of Life, presenting a world full of animals and plants. Including a full GUI.","archived":false,"fork":false,"pushed_at":"2024-04-20T14:30:41.000Z","size":58,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-23T16:49:56.009Z","etag":null,"topics":["java","swing","swing-gui"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kyrczak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-05-11T20:58:22.000Z","updated_at":"2024-04-20T14:25:08.000Z","dependencies_parsed_at":"2024-04-20T15:38:37.088Z","dependency_job_id":"83abd822-b76c-40f0-8c74-b9c7e49eac84","html_url":"https://github.com/kyrczak/virtual-world-java","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/kyrczak/virtual-world-java","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyrczak%2Fvirtual-world-java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyrczak%2Fvirtual-world-java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyrczak%2Fvirtual-world-java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyrczak%2Fvirtual-world-java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kyrczak","download_url":"https://codeload.github.com/kyrczak/virtual-world-java/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyrczak%2Fvirtual-world-java/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34170162,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-10T02:00:07.152Z","response_time":89,"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":["java","swing","swing-gui"],"created_at":"2024-11-09T18:24:09.124Z","updated_at":"2026-06-10T20:31:27.663Z","avatar_url":"https://github.com/kyrczak.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Virtual World - Java Version\n\nVirtual World is a simulation game presenting a world full of animals and plants. The game is written fully according to OOP. The subject required us to write this project in 3 different object oriented programming languages.\nThere is also:\n\n- [C++ version](https://github.com/kyrczak/virtual-world-cpp)\n- [Python version](https://github.com/kyrczak/virtual-world-python)\n\n## Game description\nVirtual World is a turn-based game, where user controls human with special abilities and tries to survive in a enviroment\nfilled with various animals, both neutral and hostile, and with plants, each with their special characteristic.\n\nEvery entity has its own strength and initiative attribute value. Animals can move around the map in each, plants can spread \nin each round. When there's a collision between animals, an animal with bigger strength wins, unless animal has a \nspecial collision method. In collision where two animals have the same strength, the one with longer lifetime survives\n the encounter.\n\nBelow is the table of entities that you can interact with in the simulation:\n\n| Entity              | Strength | Initiative | Action                                                  | Collision                                               |\n|---------------------|----------|------------|---------------------------------------------------------|---------------------------------------------------------|\n| Wolf                | 9        | 5          | -                                                       | -                                                       |\n| Sheep               | 4        | 4          | -                                                       | -                                                       |\n| Antelope            | 4        | 4          | Can move across 2 fields                                | 50% chance to avoid fight                               |\n| Turtle              | 2        | 1          | 75% chance not to change position during the turn       | Blocks attack of a an animal with strength lower than 5 |\n| Fox                 | 3        | 7          | Fox won't move to a field occupied by a stronger animal | -                                                       |\n| Human               | 5        | 4          | Human is controlled by a user                           | Has special ability on 'F' key                          |\n| Grass               | 0        | 0          | -                                                       | -                                                       |\n| Dandelion           | 0        | 0          | Dandelion tries to spread up to 3 times per round       | -                                                       |\n| Guarana             | 0        | 0          | -                                                       | Increases the strength of the animals that eats it by 3 |\n| Wolf Berries        | 99       | 0          | -                                                       | Kill the animals that eats it                           |\n| Sosnowski's Hogweed | 10       | 0          | Kill every animal around it                             | Animals that eat it die                                 |\n\n## Installation\nIn order to run the game compile the game and run the main function located in VirtualWord.java file or download \nthe release build and run the .jar file.\n\n## Gameplay\nAfter launching the simulator the user has an option to:\n1. Input width and height parameters and create new game\n2. Load existing game from .txt file\n\n### Game\nEach round the user can move human in the surrounding fields using `ARROW_KEYS` and interact with the virtual world. \nHuman has a special ability which can be activated by using the `F` key. After activation human has a special shield \nblocking all incoming attacks from other animals. The ability is active for 5 turns and then has a cooldawn for 5 turns.\n\nThe user can also add new entities to the map by left-clicking on an empty field and choosing the appropriate entity.\n\nBelow the board, there is a log window which displays messages from few last rounds\n### Built with\n- [Swing](https://docs.oracle.com/javase/8/docs/api/index.html?javax/swing/package-summary.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkyrczak%2Fvirtual-world-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkyrczak%2Fvirtual-world-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkyrczak%2Fvirtual-world-java/lists"}