{"id":2023,"date":"2026-07-18T06:43:55","date_gmt":"2026-07-18T13:43:55","guid":{"rendered":"http:\/\/macdaddy4sure.ai\/?p=2023"},"modified":"2026-07-18T06:43:55","modified_gmt":"2026-07-18T13:43:55","slug":"jobs-reborn-integration","status":"publish","type":"post","link":"http:\/\/macdaddy4sure.ai\/index.php\/2026\/07\/18\/jobs-reborn-integration\/","title":{"rendered":"Jobs Reborn Integration"},"content":{"rendered":"\n<p>Soft-depend on <strong>Jobs Reborn<\/strong> (Zrips \/ com.gamingmesh.jobs). No compile-time jar required.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Features<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Feature<\/strong><\/td><td><strong>Status<\/strong><\/td><\/tr><tr><td>Detect Jobs plugin<\/td><td>Yes<\/td><\/tr><tr><td>Read player job progression (name, level, XP)<\/td><td>Yes<\/td><\/tr><tr><td>List job catalog<\/td><td>Yes<\/td><\/tr><tr><td>Bridge ops<\/td><td>status, list, player \/ progression<\/td><\/tr><tr><td>Events \u2192 bridge<\/td><td>jobs_payment, jobs_levelup, jobs_join, jobs_leave (jobs_exp off by default)<\/td><\/tr><tr><td>Auto join\/leave jobs<\/td><td><strong>No<\/strong> (safety)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Observation fields<\/h2>\n\n\n\n<p>When Jobs is present and a player is observed:<\/p>\n\n\n\n<p><em>[text]<br><\/em>jobs_available, jobs_count, jobs_primary, jobs_primary_level,<br>jobs_primary_xp, jobs_primary_xp_max, jobs_primary_xp_pct,<br>jobs_list, jobs_max_slots, jobs_can_join_more<\/p>\n\n\n\n<p>Example: jobs_list=Miner:14,Builder:3 jobs_primary=Miner jobs_primary_level=14<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Events (reward signals for RL)<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Event<\/strong><\/td><td><strong>Reward (default)<\/strong><\/td><\/tr><tr><td>jobs_payment<\/td><td>min(cap, amount * payment-reward-scale)<\/td><\/tr><tr><td>jobs_levelup<\/td><td>levelup-reward (0.15)<\/td><\/tr><tr><td>jobs_exp<\/td><td>0.01 (disabled by default \u2014 noisy)<\/td><\/tr><tr><td>jobs_join \/ jobs_leave<\/td><td>0<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Commands<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Minecraft<\/h3>\n\n\n\n<p><em>[text]<br><\/em>\/ai jobs status<br>\/ai jobs list<br>\/ai jobs player Steve<br>\/ai jobs progression<br>\/ai jobs reload<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">_AI (bridge connected)<\/h3>\n\n\n\n<p><em>[text]<br><\/em>minecraft jobs status<br>minecraft jobs list<br>minecraft jobs player Steve<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Bridge JSON<\/h3>\n\n\n\n<p><em>[json]<br><\/em>{&#8220;type&#8221;:&#8221;jobs&#8221;,&#8221;id&#8221;:1,&#8221;op&#8221;:&#8221;player&#8221;,&#8221;player&#8221;:&#8221;Steve&#8221;}<br>{&#8220;type&#8221;:&#8221;jobs_result&#8221;,&#8221;ok&#8221;:true,&#8221;jobs_primary&#8221;:&#8221;Miner&#8221;,&#8221;jobs_primary_level&#8221;:14,&#8221;jobs_list&#8221;:&#8221;Miner:14&#8243;,&#8221;summary&#8221;:&#8221;&#8230;&#8221;}<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Config (config.yml)<\/h2>\n\n\n\n<p><em>[yaml]<br><\/em>plugin-integrations:<br>&nbsp; jobs:<br>&nbsp;&nbsp;&nbsp; observe-progression: true<br>&nbsp;&nbsp;&nbsp; max-jobs-in-observation: 3<br>&nbsp;&nbsp;&nbsp; max-jobs-slots: 3<br>&nbsp;&nbsp;&nbsp; emit-events: true<br>&nbsp;&nbsp;&nbsp; emit-payment-events: true<br>&nbsp;&nbsp;&nbsp; emit-levelup-events: true<br>&nbsp;&nbsp;&nbsp; emit-exp-events: false<br>&nbsp;&nbsp;&nbsp; payment-reward-scale: 0.01<br>&nbsp;&nbsp;&nbsp; payment-reward-cap: 0.5<br>&nbsp;&nbsp;&nbsp; levelup-reward: 0.15<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">API notes<\/h2>\n\n\n\n<p>Hook target: com.gamingmesh.jobs.Jobs \u2192 getPlayerManager() \u2192 getJobsPlayer(player) \u2192 getJobProgression().<\/p>\n\n\n\n<p>Events under com.gamingmesh.jobs.api.*. Reflection only \u2014 if a Jobs fork renames packages, status will report unavailable.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Safety<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Read-only API surface for bots by default.<\/li>\n\n\n\n<li>Government jobs_boost_notice still does <strong>not<\/strong> mutate Jobs configs (notice only).<\/li>\n\n\n\n<li>Install <strong>Jobs<\/strong> + <strong>Vault<\/strong> + <strong>CMILib<\/strong> on the server for Jobs Reborn to run.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">File<\/h2>\n\n\n\n<p>minecraft_spigot_plugin\/&#8230;\/JobsService.java<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Soft-depend on Jobs Reborn (Zrips \/ com.gamingmesh.jobs). No compile-time jar required. Features Feature Status Detect Jobs plugin Yes Read player job progression (name, level, XP) Yes List job catalog Yes Bridge ops status, list, player \/ progression Events \u2192 bridge jobs_payment, jobs_levelup, jobs_join, jobs_leave (jobs_exp off by default) Auto join\/leave jobs No (safety) Observation fields [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2023","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/posts\/2023","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/comments?post=2023"}],"version-history":[{"count":1,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/posts\/2023\/revisions"}],"predecessor-version":[{"id":2024,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/posts\/2023\/revisions\/2024"}],"wp:attachment":[{"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/media?parent=2023"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/categories?post=2023"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/tags?post=2023"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}