{"id":16961015,"url":"https://github.com/cubbossa/pathfinder","last_synced_at":"2025-03-17T08:37:42.445Z","repository":{"id":39338961,"uuid":"503291669","full_name":"CubBossa/PathFinder","owner":"CubBossa","description":"A path finding tool for minecraft to make your maps discoverable and enable navigation","archived":false,"fork":false,"pushed_at":"2024-04-22T10:11:51.000Z","size":8142,"stargazers_count":15,"open_issues_count":22,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-04-23T02:26:40.323Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://docs.leonardbausenwein.de/","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/CubBossa.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}},"created_at":"2022-06-14T09:26:42.000Z","updated_at":"2024-04-26T07:34:08.941Z","dependencies_parsed_at":"2024-04-14T20:28:52.259Z","dependency_job_id":"948912cb-c13b-48fb-bc21-7caaccdc011a","html_url":"https://github.com/CubBossa/PathFinder","commit_stats":null,"previous_names":[],"tags_count":35,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CubBossa%2FPathFinder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CubBossa%2FPathFinder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CubBossa%2FPathFinder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CubBossa%2FPathFinder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CubBossa","download_url":"https://codeload.github.com/CubBossa/PathFinder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243852499,"owners_count":20358271,"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":[],"created_at":"2024-10-13T22:50:46.524Z","updated_at":"2025-03-17T08:37:41.529Z","avatar_url":"https://github.com/CubBossa.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GPS - PathFinder\n\n---\n\n## What is it\n\nPathfinder is a plugin for minecraft servers, that allows administrators to set up graphs of waypoints and connecting edges. This roadmap can then be used to visualize shortest paths, discover points of interest and more.\n\nFor more details check the [docs](https://docs.leonardbausenwein.de/getting_started/introduction.html).\n\n## Contribution\n### Building\n`./gradlew build`\n### Running\n`./gradlew runServer`\n### Publishing\n`./gradlew publish`\n\n## Dependency\n\nThe pathfinder artifact can be found in a nexus repository:\n```kotlin\nrepositories {\n    maven(\"https://nexus.leonardbausenwein.de/repository/maven-public/\")\n}\n\ndependencies {\n    implementation(\"de.cubbossa:pathfinder-core:[VERSION]\")\n}\n```\n\n``` xml\n\u003crepository\u003e\n    \u003cid\u003ecubbossa\u003c/id\u003e\n    \u003curl\u003ehttps://nexus.leonardbausenwein.de/repository/maven-public/\u003c/url\u003e\n\u003c/repository\u003e\n\n\u003cdependency\u003e\n    \u003cgroupId\u003ede.cubbossa\u003c/groupId\u003e\n    \u003cartifactId\u003epathfinder-core\u003c/artifactId\u003e\n    \u003cversion\u003e[VERSION]\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n\n## Project Structure\n\n### pathfinder-core\n\nThe main module that handles RoadMaps, Waypoints, Nodegroups and the according logic.\nIt is to be used as API for now. Interesting classes might be `NodeType`, `VisualizerType`, `PathVisualizer`\nand the matching handlers `NodeTypeHandler` and `VisualizerHandler`. More information on using the\nAPI will be added to the docs soon.\n\n### pathfinder-graphs\n\nThe logic for path solving on graphs. It is a dependency of `pathfinder-core` and has to be\nshaded into the core module, otherwise exceptions will occur.\n\n### pathfinder-editmode\n\nAdds an ingame editor for RoadMaps. It uses clientside armorstands and particles to display\nwaypoints and edges and requires [ProtocolLib](https://www.spigotmc.org/resources/protocollib.1997/).\nIt is not necessary to shade `pathfinder-editmode` into core. The module registeres itself to core\nas a service once it is shaded. If it is not, the ingame command `/roadmap editmode \u003croadmap\u003e` will not work.\n\nYou can also use your own editmode visualizer by implementing the RoadMapEditor interface\nand registering a RoadMapEditorFactory service class.\n\n### pathfinder-scripted-visualizer\n\nAdds a pathvisualizer to the core module that uses javascript to define particle behaviour.\nParticles can be shifted by using complex math expressions. The visualizer requires a heavy\nscript engine service to be shaded into the jar. Therefore, it is a separate module that is again\nnot necessary for core to function. It implements the PathPluginExtension Service interface and\nregisters the VisualizerType implementation to the VisualizerHandler from core.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcubbossa%2Fpathfinder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcubbossa%2Fpathfinder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcubbossa%2Fpathfinder/lists"}