{"id":21391054,"url":"https://github.com/slyautomation/osrs_pvp_tutorial","last_synced_at":"2025-04-15T21:48:14.395Z","repository":{"id":221826458,"uuid":"755489372","full_name":"slyautomation/osrs_pvp_tutorial","owner":"slyautomation","description":"PvP (Player versus Player) plugin using the RuneLite API. The development is presented in a tutorial format to inderstand the Runelite API documentation on classes, methods and objects","archived":false,"fork":false,"pushed_at":"2024-03-24T04:20:05.000Z","size":30,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-15T21:48:09.907Z","etag":null,"topics":["java","runelite"],"latest_commit_sha":null,"homepage":"https://www.slyautomation.com/blog/osrs-plugin-runelite-development-pvp-helper-part-1/","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/slyautomation.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":"2024-02-10T11:18:46.000Z","updated_at":"2025-02-13T07:26:51.000Z","dependencies_parsed_at":"2024-03-24T05:32:32.748Z","dependency_job_id":null,"html_url":"https://github.com/slyautomation/osrs_pvp_tutorial","commit_stats":null,"previous_names":["slyautomation/osrs_pvp_tutorial"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slyautomation%2Fosrs_pvp_tutorial","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slyautomation%2Fosrs_pvp_tutorial/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slyautomation%2Fosrs_pvp_tutorial/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/slyautomation%2Fosrs_pvp_tutorial/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/slyautomation","download_url":"https://codeload.github.com/slyautomation/osrs_pvp_tutorial/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249161104,"owners_count":21222468,"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":["java","runelite"],"created_at":"2024-11-22T13:23:15.426Z","updated_at":"2025-04-15T21:48:14.372Z","avatar_url":"https://github.com/slyautomation.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Runelite Plugin Pvp Tutorial\nGuide on this osrs plugin here: https://www.slyautomation.com/blog/osrs-plugin-runelite-development-pvp-helper-part-1/\nhttps://www.slyautomation.com/blog/runelite-plugins-development-pvp-helper-part-2/\n\nPvP (Player versus Player) plugin using the RuneLite API. The development is presented in a tutorial format, and this summary covers the key points discussed in Part 1:\n\n## Introduction to Runelite PvP Plugin:\n\nA new Runelite PvP plugin is introduced, promising an enhanced PvP experience in OSRS.\nThe tutorial encourages users to explore the RuneLite API documentation to understand the classes, interfaces, annotations, enums, and packages constituting the API.\nRuneLite API Documentation Guide:\n\nDevelopers are advised to refer to the official RuneLite API documentation for comprehensive insights.\nGuidance is provided on exploring package hierarchies, understanding class and interface hierarchies, leveraging annotations and enums, and navigating the interface hierarchy.\nCode Development for PvP Plugin:\n\nThe tutorial offers a step-by-step guide on coding a PvP plugin using the RuneLite API.\nA GitHub link to the source code for the PvP plugin development is provided.\n\n## PvpConfig:\n\nA configuration interface (PvpToolsConfig) is defined to allow users to customize various aspects of the PvP Tools plugin behavior.\nConfiguration items include boolean and color options, providing control over features like counting players, hiding certain elements, and enabling a risk calculator panel.\n\n## PlayerCountOverlay:\n\nA RuneLite overlay named PlayerCountOverlay is introduced, displaying a table of player counts categorized as \"Friendly\" and \"Enemy\" in specific game regions.\nThe overlay is conditionally rendered based on the player's location and configuration settings.\n\n## ItemDefinition Interface:\n\nAn interface named ItemDefinition is defined to represent the properties of in-game items within the context of the OSRS plugin.\nThe interface provides methods to retrieve and modify various item properties.\n\n## PvpUtil Utility Class:\n\nThe PvpUtil utility class contains methods related to PvP activities, such as checking if a world is a Deadman world, calculating the wilderness level, determining if a player is attackable, and calculating the risk or wealth of a player.\n\n## Calculate Risk Function:\n\nThe calculateRisk function calculates the risk (wealth) of the local player based on equipped and inventory items, considering tradeability and non-zero values.\nThe total wealth is accumulated, and the result is formatted as a decimal string.\nThe text provides links to the GitHub repository containing the source code for the PvP plugin development, and it hints at upcoming parts of the tutorial covering the panel and adding auto-spec and auto-eating functionality.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslyautomation%2Fosrs_pvp_tutorial","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fslyautomation%2Fosrs_pvp_tutorial","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslyautomation%2Fosrs_pvp_tutorial/lists"}