NeroQuests 0.4.0-beta.1 - Forge 26.1.2
Curse Maven Snippet
What's new
Quest packs from other Neroland mods, an in-book quest editor for players the server trusts, a reward-integrity pass (every reward pays at most once and is never lost), companion-app link schema 2, and optional NeroEconomy integration: budgeted quest payouts, daily contracts and an economy objective. NeroEconomy stays optional — NeroQuests builds, loads and runs without it. See Migration before updating a world.
Added
- Budgeted quest payouts. With NeroEconomy 0.3.0 or later installed,
neroquests:currencycredit rewards are paid through its budgeted payout API (reasonquest_reward) with a request key ofnq:<sequence>:<quest id>(never a player id or name). A refused payout is explained to the player in chat and kept as owed in the quest data, then retried on their next join and every five minutes while online with the same key, so it can never pay twice. Other currencies, or no NeroEconomy, keep Core'sCurrencyApi.deposit, whose result is now checked (a failed deposit is also kept as owed). - Daily contracts (
/neroquests contracts,/neroquests contracts submit <contract>, open to every player): a few data-driven hand-in contracts drawn per UTC day fromdata/<namespace>/neroquests/contracts/, each doable once per player per day, paid under the reasondaily_contract. A contract is offered only while the economy's budget can still pay it; without a budgeted economy nothing is offered. Eight vanilla-item contracts ship. New settingsdailyContractsEnabled(defaulttrue) anddailyContractsPerDay(default3). neroquests:economyobjective —eventsold|bought|earned, optionalitemortag,count. Fed by NeroEconomy's trade events;earnedexcludes NeroQuests' own payouts. Without an economy mod it loads and never advances.- Market quests — Open for Business, Iron Trader and Seasoned Trader on a new row of the
Industrial Age chapter, using economy objectives and NeroEconomy's milestone gates. Hidden behind
the
neroeconomy:first_salegate, so they never appear without NeroEconomy. - Hand-in objectives:
collect_itemtakes"consume": trueto take the items when the quest completes (all hand-ins of a quest are checked first, then taken together). once_per_worldonneroquests:currency: pay only the first player in the world who completes the quest.- Quest sources. Every quest and chapter now has a source resolved from its namespace:
spine(neroquests:),pack(any other datapack namespace — a mod's own quest pack or a server datapack) orcustom(reserved for quests made in game). Spine and pack definitions are read-only at runtime. A datapack file in the reservedcustomnamespace is dropped with a reason inreload-check. - Quest-pack rules. A pack quest is dropped with a named reason (never a crash) when it carries a
gateorreputationreward, uses"scope": "server"without a chapter of its own namespace that sets"allow_server_scope": true, depends (prerequisite orquest_complete) on a quest outside its own namespace and the spine, or uses literal text instead of translation keys for its title or description. A pack chapter's title must be a key too, and a pack chapter may list only its own namespace's quests. - Packs follow their mod. A pack whose mod is not installed loads nothing. A chapter can set
"show_when_absent": trueto stay visible anyway: its quests show a "needs a mod that is not installed" badge in the book and can never be completed. A server datapack's own namespace always loads. Pack quests never usemissingModObjectivePolicy=autocomplete. neroquests:manualobjective —{ "type": "neroquests:manual", "label": "<lang key>" }for "build a thing" quests. It never advances on its own; a quest author ticks it for an online player with/neroquests manual complete <quest> <player>(a player who may author quests — see the editor permissions below — or the console). Each use is counted in the log, never named.neroquests:visit_structureobjective — stand inside a generated structure, bystructureid or structuretag(exactly one). Checked on the once-a-second sweep against the structure pieces of the chunk the player stands in; once visited it stays done. No position is stored.- Completion signals for other mods. Every quest completion publishes an anonymous crossing on
Neroland Core's event bus:
neroquests:quest_completed(scope = quest id, value = how many times that quest has been completed in this world), andneroquests:chapter_completed(scope = chapter id) when it finishes a chapter for that player. They never say who. The world counts are stored with no player identifier. neroquests:mod_hookreward —{ "type": "neroquests:mod_hook", "gate": "<ns>:hook/<id>" }opens a player-scope record gate that the pack's own mod ships, for the completing player (also when offline), so that mod can apply its own effect by listening on Core's gate events. The gate must be in the quest's own namespace underhook/; undefined gates grant nothing and are logged once. Hook gates gate nothing and are written even withgateWritesEnabled=false./neroquests reload-checkreports per source —spine N / pack <namespace> N … / custom N— lists packs skipped because their mod is not installed, and keeps naming every dropped definition with the rule it broke.- Wiki: Quest format is now the complete contract for quest packs, and the new Shipping a quest pack page walks a mod author through shipping quests with data files only, including a copyable validator test.
- Custom quests (server side of the in-game editor). A new world store (
neroquests:custom_quests, with recovery backup) holds chapters and quests made in game under randomcustom:ids. They load through the same definitions pipeline as datapacks and follow extra rules: player scope only, 1–12 objectives of the standard types, at most 9 rewards ofitem(one stack each),loot_table,xpandcurrency, never gate, reputation or mod_hook; spine and pack quests may never depend on a custom quest. Every edit re-checks the author's permission on the server, refuses spine/pack ids, validates every id against the running game, rejects prerequisite cycles, previews the whole pipeline before applying, then re-syncs everyone like a/reload(unfinished progress on changed objectives resets). New settings:customQuestMaxTotal(500),customChapterMax(20),customRewardMaxStacks(9),customRewardMaxXp(500),customRewardMaxCurrency(1000). - Editor permissions. Who may author (and tick
manualobjectives): Creative mode (editorRequiresCreative, defaulttrue), permission leveleditorMinOpLevel(default 2) or the editor allow-list; never spectators or dead players; while locked, only level 4. Per-author rate limits on edits (20/s, 200/min) and on manual completions (10/min). The definitions sync tells each player whether they may author (can_author), re-sent when their game mode, level, the lock or the allow-list changes. - Author text is inert. Titles (64), descriptions (512) and manual labels (64) are stripped of formatting codes, control/format characters and braces, stored as plain strings and shown only with literal text components — never as translation keys, never in logs or crash reports.
neroquests:loot_tablereward —{ "type": "neroquests:loot_table", "table": "<id>" }rolls a loot table per completion for the player; unfit or offline items are kept like item rewards.- Repeatable custom quests — off by default; with a cooldown of 60 s to 30 days a completed quest
re-arms per player and pays again at most once per cooldown (a per-player last-paid time in the quest
data, exported and erased;
revoke --repayclears it). - Escrow mode (
customRewardsEscrowed, defaultfalse) — item rewards of custom quests are deposited from the author's inventory (1–64 copies), paid from the deposit, and refunded to the author (kept for them if offline) when changed or deleted; loot-table rewards are refused while it is on. - Commands:
/neroquests editor allow|deny|check|list(level 3, shows counts, never names),/neroquests editor lock|unlock(level 4),/neroquests custom export [<chapter>](level 3; writesdatapacks/neroquests_custom_export/with translation keys and anen_us.json, no author ids),/neroquests custom import <folder> [--dry-run](level 4; validated, all-or-nothing, within the caps) and/neroquests custom delete <id> [confirm](level 3; confirm within 30 s; prunes every player's progress and paid record for it). Player or console only, never command blocks.reload-checkshows the editor lock, allow-list size, escrow mode and custom counts. - Data export now includes the custom quests a player authored and their allow-list membership;
erasure clears
created_byon those quests (they stay) and removes them from the allow-list. - In-book quest editor. Players the server allows to author see an Edit button in the quest
book (shown only when the definitions sync says
can_author; the book drops back to reading mode with a message if that changes while editing). Every change is a serverbound request that the server re-authorises, rate-limits and validates through the custom-quest API, answered with a short message in the book; the client decides nothing. - Chapter column for editing: NeroQuests' chapters first, then mod packs grouped by mod, then custom chapters by their order. In edit mode a padlock (tooltip "Provided by <mod name> — cannot be edited") marks read-only chapters and a pencil marks custom ones; a badge marks chapters of mods that are not installed. Custom chapters can be added, renamed, moved up/down and deleted (with confirmation).
- Graph editing on custom chapters: drag a quest to place it on the grid, drag from a quest's edge handle onto another quest to add a requirement (cycles refused by the server), right-click a link to remove it; read-only chapters refuse drags with a short message.
- Quest panel with Details (title, description, icon with a searchable item picker or the held item, repeatable + cooldown, requirements across chapters), Objectives (a small form per type: item or tag, creature or tag, dimension, structure, gate, event channel seen this session, quest, manual label; counts 1–1,000,000), Rewards (items, loot table, experience, credits, with running totals against the server's caps and the escrow notice and deposit field when escrow is on) and Preview.
- Three-step first quest: "Name it → Add an objective → Add a reward" with inline hints; advanced options (more objectives, repeatable, a requirement, escrow copies) behind More.
- The quest book's layout now adapts to small screens (GUI scale 1–4 at 854×480): the panel shrinks to fit and the chapter column turns icon-only, with titles in tooltips. On larger screens the reading view is unchanged.
- Custom quests show who wrote them only as "you" or "another player".
- Wiki: new Editor permissions (admins) and Quest editor (players) pages; the player page walks through the editor. New Sibling chapters page lists the chapter each Neroland mod adds to the book.
Changed
- Redesigned quest book: the graph opens fitted and centred, pans by drag or WASD/arrow keys and zooms with the wheel (0.5x-1.5x, about the cursor) or the new zoom/fit buttons, with edge chevrons wherever the graph continues. Nodes are larger with state styling (completed check, in-progress bar, pulsing available glow, padlocked locked quests), titles under nodes and right-angled dependency lines with arrowheads. A header shows the chapter and its progress, chapter rows show done/total bars, and quest details open in a drawer that slides over the graph. Chapters with nothing discovered yet stay hidden until their first quest appears.
- Pressed and Powdered and Alloy Ambitions are now hand-ins, so one item set no longer completes them on every alternate account.
/neroquestssubcommands carry the operator check individually socontractscan be open to players;listandreload-checkstill require permission level 2 (grant,revoke,resetandexportnow need level 3 — see below).- Owed rewards and daily-contract records are stored with the player's quest data, exported by
/neroquests exportand erased with it (seePRIVACY.md). - The jar ships a
pack.mcmetafor its bundled resources and data (pack_format84, accepted up to 121), so every supported Minecraft version reads them as a valid pack. - The
telemetryEnabledsetting's comment now says crash reporting is on by default and that turning it off takes effect on restart. The README and the Telemetry wiki page state the opt-out plainly, andPRIVACY.mdcarries the telemetry notice the store pages show. - An
economyobjective'searnedexclusion of NeroQuests' own payouts is one shared check, covered by a test. - The built-in story line is 28 quests (was 30). Breathing Room, Full Larder and Settled Ground left The Space Race: NeroColonies now ships them in its own quest pack, so they appear only where that mod is installed. A new first Groundwork quest, What This Book Is, explains view and edit mode, chapters arriving with other Neroland mods, and player-authored chapters (it is not a prerequisite of anything, so existing progress is untouched).
- Companion-app link schema 2. Quest and chapter rows carry
source(spine/pack/custom),namespace,mod_presentand Englishtitle_text/description_text(custom quests send their player-written text only there); chapters carryorder. New sectionscustom_authoring(a boolean),owed(the claim list) andprogress(a full snapshot instead of an empty body); new eventsreward_owedandreward_claimed;claim_rewardaccepts an owed entrykeyand answers a repeated key as already settled. Two app alerts with fixed text: "A reward is waiting for you" and "A new chapter appeared". Schema-1 fields stay for this release. See Link module.
Migration
- On the first load of a world's quest progress after updating (store format 2), progress, the paid
ledger, revoke markers, repeat timestamps, owed rewards, once-per-world slots and the world completion
counter recorded for
neroquests:space_race/breathing_room,full_larderandsettled_groundmove tonerocolonies:colony_chronicle/breathing_room,full_larderandsettled_ground. Completed quests stay completed and paid; running it again changes nothing. Without NeroColonies installed the moved rows are kept like any other row for a quest that is not loaded. - Built-in story line 30 → 28 quests. The three quests above now ship in NeroColonies' own quest pack
(Colony Chronicle) and appear only where NeroColonies is installed; What This Book Is is new. A
datapack that overrode or depended on
neroquests:space_race/breathing_room,full_larderorsettled_groundmust use thenerocolonies:colony_chronicle/…ids. - Paid ledger. Worlds saved by 0.3.0-beta.1 or earlier have no record of which rewards were paid; on first load every completed quest is entered as paid (player and world-level), so nothing pays again after updating. Each stored progress row is also stamped with its quest's current objective list on the first evaluation (existing counters are kept).
- Owed-reward queue. Credit rewards kept as owed by earlier 0.4.0 test builds keep their entries; an entry without a request key is given one stable key the first time it is retried. Item and experience rewards that could not be delivered are now kept in the same queue (at most 64 entries per player) instead of being dropped or skipped.
- Companion-app link schema 1 → 2. The quest module reports
schema_version2. The schema-1 fields are still sent in this release (except title/description keys on custom quests, which have none) so older companion apps keep working; they will be removed in a later release, so apps should move to the schema-2 fields (see Link module). - New world file
neroquests:custom_questsholds custom quests, the editor allow-list and the editor lock (seePRIVACY.md). - New settings in
config/neroquests.properties, all added with their defaults on first start; the defaults keep 0.3.0 behaviour except where noted:degradedCompletionsPay=false— quests completed throughmissingModObjectivePolicy=autocompleteno longer pay unless set totrue;owedItemsDropWhenFull=false— item rewards that do not fit are kept instead of dropped;dailyContractsEnabled=true,dailyContractsPerDay=3(1–10);editorRequiresCreative=true,editorMinOpLevel=2(1–4);customQuestMaxTotal=500(0–5000),customChapterMax=20(0–200);customRewardMaxStacks=9(0–9),customRewardMaxXp=500(0–100000),customRewardMaxCurrency=1000(0–1000000);customRewardsEscrowed=false;customLootTablePrefixes=minecraft:chests/,minecraft:gameplay/fishing,customCurrencyDailyCap=2000(0–1000000000),customRewardsPerPlayerDaily=20(0–10000).
Fixed (audit)
- A quest pays its rewards at most once. A per-player paid ledger (and a world-level one for
scope: serverquests) is kept with the quest data, exported and erased with it. Revoking or resetting a quest no longer lets it pay again;/neroquests revoke <player> <quest> --repay(alsoreset <player> <quest> --repay) is the explicit way to allow one more payout. A revoked quest stays revoked until the player's progress on it actually changes, instead of being re-completed by the next sweep. Revoke warns how many completed dependents stay complete. Existing completions are entered into the ledger on first load. - Erasing an online player no longer re-completes (and re-pays) their quests a second later: they are left alone until they rejoin.
- Retention no longer purges players who play daily but have nothing left to progress (joining counts as activity), and the sweep now runs once per in-game day as well as at start-up.
- Missing content can no longer complete a quest for free. A quest with no objective present in
the installation is not completable under either
missingModObjectivePolicy; a completion that relied onautocompletepays no rewards unless the new server settingdegradedCompletionsPay(defaultfalse) is on. An id that does not resolve although its mod is loaded (a typo) now drops the quest with a reason in/neroquests reload-check. Agate_openobjective naming a gate nothing defines is treated as missing content instead of blocking forever.custom_eventpresence is decided by the quest's namespace and by channels actually seen this session. - Any decode error drops the whole quest, chapter or contract file instead of loading a partial
definition; an unknown
scopeis a decode error rather than an exception. - Changed objectives reset stale progress. Each progress row remembers which objective list it was
counted against; when a reload changes it, unfinished rows start over (finished ones stay finished
without paying again) and rows of removed quests expire with
questDataRetentionDays. - Owed rewards: one invalid (permanently refused) entry no longer blocks the rest of the queue — it is
kept but not retried, and the player is told once; every owed entry keeps one stable request key;
refused retries no longer count as activity; the player is told when the 64-entry cap drops an old
entry.
once_per_worldclaims are per reward rather than per quest. - Item and experience rewards are no longer lost. A recipient who is offline, dead or leaving, or
whose inventory is full, has the reward kept for them (with the same 64-entry cap as owed credits)
and handed over on join, on respawn or once there is room, oldest first and possibly in part. The
server setting
owedItemsDropWhenFull(defaultfalse) restores dropping the overflow at the player's feet. Kept rewards are included in/neroquests exportand erased with the player. A player-scope gate reward for an offline player is opened directly (when its requirements hold). - Server-scope quests reward everyone who could take part, not the first player in the list: the triggering player and every online player who has the quest available are each paid once (their own ledger entry), with currency paid per player and anything undeliverable kept. A server gate is still set once for the world.
- NeroLink
claim_rewardhands over kept rewards (optionally for one quest): owed credits even while the player is offline, items and experience while they are in the world. The response lists what was delivered and what remains, and keeps its earlier fields. - Quest re-evaluation no longer recurses or runs off-thread. A gate opened by a reward inside an engine pass re-evaluates after that pass instead of recursively; gate, threshold and economy events from other threads are moved onto the server thread first.
- Reward amounts are capped in the data format: experience and currency at 1,000,000 per reward,
item rewards at 2,304 (a full inventory). A quest beyond a cap is dropped with a reason in
/neroquests reload-check. - Gate rewards respect the gate's own scope and requirements. A server-scope quest only sets a
server gate when the gate is declared server-scope and its requirements hold; player and team gates
are opened per player. An undefined gate id is logged once.
gateandreputationrewards are only accepted in quests of theneroquestsnamespace (others are dropped at load). United Frontier no longer rewards thedeep_spacegate it already requires, and stays hidden until First Colony. - A corrupt quest-progress file is kept and recovered from backup. NeroQuests now uses Neroland
Core's saved-data recovery (last-known-good backup) and first copies a damaged file aside as
quest_progress.corrupt-<time>. Erasure,reset <player>and retention purges also clear the player from the backup at once. /neroquests grant,revoke,resetandexportneed permission level 3 and a player or the server console; command blocks and functions can no longer run them. A console export no longer prints the player's UUID into the log./neroquests reload-checkreports on the definitions actually in use (the last/reload) instead of re-reading pack files on its own, and resets the missing-content warnings.- NeroQuests registers with Neroland Core's player-data erasure right after its config, before anything else that could fail during start-up.
- The quest book, the server and NeroLink agree on quest state. One shared rule decides completed,
locked, in progress and available everywhere; each prerequisite is checked in its own scope (a
player quest can wait on a world milestone), and a started quest whose prerequisite is not complete
shows as locked. A
quest_completeobjective resolves the quest it names by that quest's own scope in the same way. - Hidden quests stay hidden. A quest behind a closed
visible_gateis no longer sent to that player's client at all (nor named in a chapter, a NeroLink prerequisite list or another quest's objective, which reads "an undiscovered quest"); opening or closing a gate re-syncs the book. - Quest progress is sent to clients at most once per player per tick; a burst of shared (server-scope) progress no longer sends every player one update per evaluation.
- Large quest packs sync reliably. Quest definitions are sent in pages of at most 512 KiB and the book updates only once the whole set has arrived; a single definition too large to send is skipped with a warning instead of breaking the sync. Malformed sync packets are rejected instead of being half-read.
- Crash reporting is self-contained and sends less. NeroQuests uses its own Sentry client instead of the global one (so it no longer clashes with Neroland Core's or another mod's reporting and installs no global crash handler), and never sends exception or log message text — only error types and stack frames. PRIVACY.md and the Telemetry wiki page list exactly what is sent.
- Stopping a world drops everything NeroQuests held about it at once, instead of keeping the stopped server in memory until the next world started.
- Removed dead code (an unused Gradle file for
common, unused trigger hooks and accessors) and a build comment that described a JEI plugin that does not exist. /neroquests list,list <player>,reload-checkandcontracts, and the quest book's fallback labels for ids without a display name, are now fully translatable (no hard-coded English words or colour codes).- The NeroEconomy bridge detects the installed NeroEconomy API without reflection.
- The Space Race no longer shows quests a pack cannot finish. Each of its quests, and Alloy
Ambitions, stays hidden until the milestone that makes it finishable is open (Industrial Power,
Reached Orbit, First Colony, or a colony mod's Colony Established), so with only Neroland Core the
chapter ends after Launch Materials instead of showing a permanently stuck quest. The Story
chapters wiki page no longer claims the whole line is playable without other mods, and documents
that
gateWritesEnabled=falsehides the Space Race unless another mod opens Industrial Power. - Loader metadata is accurate. Each jar now declares only the Minecraft version it was built for
(for example
>=26.2 <26.3/[26.2,26.3)), the Fabric manifest requires Neroland Core below 2.0.0 and Java 25 (it said Java 21 and left Core uncapped), and all three manifests carry a real description, the homepage and the issue tracker. - Documentation brought up to date. The README and the wiki home page describe the current beta
(28 built-in quests, ten objective types, seven reward types, nine loader × version builds,
Neroland Core 1.15.0) instead of an early skeleton; the Core notes cover the optional NeroEconomy
dependency and Core's saved-data recovery; the store pages list Minecraft 26.3 and describe the
stored data accurately (they promised a per-player tracking opt-out that does not exist); the
quest_completeobjective page states the scope rule. - A crash can no longer pay a credit reward twice. Each NeroEconomy payout is written, with its
request key, to a small journal in the world's
data/folder and forced to disk before the economy is asked, and removed once the call has returned. A payout left there by an unclean stop is retried on the next start with the same key — the economy answers "already applied" if it went through — or kept as owed when still refused.
Security
- Hidden quests cannot be probed from the editor. Naming a quest that is hidden from you (behind a
closed visibility gate) as a requirement or a
quest_completetarget is refused with the same message as an id that does not exist. manual completeno longer changes built-in or quest-pack progress for authors. A quest author may tickmanualobjectives of custom quests only; on built-in and quest-pack quests it takes a trusted operator (level 3 or the console), counted likegrant.- The custom-quest store holds custom ids only. Editor content is merged into the quest list only as
custom:ids and never replaces a built-in or quest-pack definition, and a save file edited by hand to carry another id does not load it. - Editor packets are checked before they are read. The server re-derives the editor permission and takes the rate-limit token before it decodes a request's objectives or rewards; past 40 editor packets a second a player's requests are dropped unread, at most 200 edits a second are applied server-wide, and refusals are answered at most twice a second. A flood from a client that may not edit now costs almost nothing.
- Credits need more than Creative mode. Creative mode alone still lets a player author, but only an
operator (
editorMinOpLevel) or an allow-listed player may setcurrencyrewards, change a custom quest that pays credits, or tickmanualobjectives withmanual complete. - Daily limits for custom-quest payouts. New settings
customCurrencyDailyCap(credits all custom quests together may pay per UTC day, default 2000, 0 = no cap) andcustomRewardsPerPlayerDaily(paid custom completions per player per UTC day, default 20, 0 = no limit). The per-player tally is held in memory only. - Loot-table rewards of custom quests are bounded. Each takes one
customRewardMaxStacksslot and must name a table under the newcustomLootTablePrefixessetting (defaultminecraft:chests/,minecraft:gameplay/fishing), checked when set and at payout. While escrow mode is on, custom quests pay no loot-table rewards, also when saved before escrow was switched on. custom exportwrites an inert template. Exports go toneroquests_exports/<UTC date-time>/in the world folder instead ofdatapacks/, so a/reloador restart can no longer load them next to the originals and pay every reward twice.- Datapacks cannot claim NeroQuests' namespace or a sibling's hooks.
neroquests:quests and chapters load only from NeroQuests' own mod files: a datapack file there is dropped and a datapack copy of a built-in quest is ignored (both reported inreload-check).mod_hookrewards in quests from a datapack are dropped. - Editor flooding of every player's sync is coalesced. Definitions re-sync after custom-quest edits at
most once a second, and a
custom_eventobjective'sevent_scopein a custom quest must be 1–64 id-like characters. - Kept rewards cannot be pushed out by editors. Custom-quest rewards never evict a player's other kept
rewards or an author's escrow refund from the 64-entry queue, and
manual completeon custom quests is refused for a player whose queue is full. - Escrow of an erased author is discarded, never handed to whoever edits or deletes the quest.
- No hidden quest ids in custom quests. A custom quest that requires, or has a
quest_completeobjective for, a quest hidden from a player is not sent to that player. The editor accepts any well-formed gate id in agate_openobjective, so its answer no longer reveals which hidden gates exist. - Text hygiene. Invisible filler characters (Hangul fillers, the braille blank and similar) and more than two combining marks on one character are removed from custom titles, descriptions and labels; a title that is blank afterwards is refused.
- Core currency deposits are journaled like economy payouts; a deposit interrupted by a crash is not repeated (Core's deposit takes no request key) and is counted in the log.
- The editor lock also covers level-3 players'
custom deleteandmanual completeon custom quests (level 4 or the console only while locked). claim_rewardfrom the companion app always runs on the server thread, and kept items leave the queue before they are handed over (put back if they do not fit), so a claim can never deliver twice.
Build
- Requires Neroland Core 1.15.0 (was 1.13.0): its saved-data recovery and the offline gate API are used. Every loader's manifest floors at that version and stays below 2.0.0.
- NeroEconomy is a
compileOnlydependency (neroeconomy_version=0.3.1-beta.1), resolved frommavenLocal()or its GitHub Packages repository when credentials are present. Declared optional in every loader's metadata (Fabricsuggests,breaksbelow 0.3.0-beta.1). - The Eclipse compiler used by
ecjCheckis pinned to3.46.100instead of the latest release.
All Relations
- All Relations
- Embedded Library
- Optional Dependency
- Required Dependency
- Tool
- Incompatible
- Include
This mod has no related projects