Phase 8: the quest book, generated from docs/quests.yaml
- tools/quests.py writes pack/config/ftbquests/quests/ in FTB Quests 2101's format (data.snbt, chapters/*.snbt, texts in lang/en_us.snbt) with ids derived from the YAML names, so progress survives regeneration. Flexible progression, no lock icons, no rewards (Adrian, 2026-11-03). tools/build.py runs it. - docs/quests.yaml: 18 chapters, 74 quests. Getting Started; one chapter per zone and the End from a zone template (reach it, catch three of its Pokemon, mine its ores, beat its guardian) plus chapter extras (Mire Waders, Eyes of Ender, Eternatus); Pokemon Machines; Base and Jobs. - Node positions: --pull reads them from an FTB Quests folder into the layout block (only moved nodes); tools/prism_instance.py pulls from the instance before each sync and rebuilds if something moved. - The pack's own events as hidden advancements (cobblesurvival:events/...), granted by QuestEvents: zone reached, guardian beaten, machine filled, End boss beaten. - Self-tests quest_book_loads and quest_events_mark_zones; the guardian and furnace tests check their events. Self-tests and island check pass. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9fb5e9895e
commit
c5d1cf93f4
70 files changed
+3665
-7
No files matched your search
@@ -0,0 +1,99 @@
|
||||
{
|
||||
default_hide_dependency_lines: false
|
||||
default_quest_shape: ""
|
||||
filename: "button_isle"
|
||||
group: ""
|
||||
icon: {
|
||||
id: "cobblemon:poke_ball"
|
||||
}
|
||||
id: "5B1E1FC28AA13DF0"
|
||||
order_index: 1
|
||||
quest_links: [ ]
|
||||
quests: [
|
||||
{
|
||||
icon: {
|
||||
id: "minecraft:filled_map"
|
||||
}
|
||||
id: "74149A0BF939C15E"
|
||||
tasks: [
|
||||
{
|
||||
advancement: "cobblesurvival:events/zone/button_isle"
|
||||
criterion: ""
|
||||
id: "37E84BF7E0830965"
|
||||
type: "advancement"
|
||||
}
|
||||
]
|
||||
x: 0.0d
|
||||
y: 0.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["74149A0BF939C15E"]
|
||||
icon: {
|
||||
id: "cobblemon:poke_ball"
|
||||
}
|
||||
id: "6C03647CB1240A88"
|
||||
tasks: [
|
||||
{
|
||||
action: "catch"
|
||||
amount: 3L
|
||||
biome: ""
|
||||
dex_progress: ""
|
||||
dimension: ""
|
||||
form: ""
|
||||
gender: ""
|
||||
id: "21A5BCFFBB9A9905"
|
||||
max_level: 0
|
||||
min_level: 0
|
||||
natures: ""
|
||||
poke_ball_used: ""
|
||||
pokemon: "cobblemon:beautifly,cobblemon:beedrill,cobblemon:bidoof,cobblemon:bonsly,cobblemon:butterfree,cobblemon:cascoon,cobblemon:caterpie,cobblemon:combee,cobblemon:dustox,cobblemon:gimmighoul,cobblemon:hoothoot,cobblemon:kakuna,cobblemon:kricketot,cobblemon:kricketune,cobblemon:ledyba,cobblemon:meditite,cobblemon:meowth,cobblemon:metapod,cobblemon:morpeko,cobblemon:nincada,cobblemon:pachirisu,cobblemon:rattata,cobblemon:sableye,cobblemon:scatterbug,cobblemon:silcoon,cobblemon:skitty,cobblemon:smeargle,cobblemon:spewpa,cobblemon:spinarak,cobblemon:sunkern,cobblemon:tarountula,cobblemon:weedle,cobblemon:wooper,cobblemon:wurmple,cobblemon:wynaut"
|
||||
pokemon_type: ""
|
||||
region: ""
|
||||
shiny: false
|
||||
time_max: 0L
|
||||
time_min: 0L
|
||||
type: "cobblemon_tasks:cobblemon_task"
|
||||
}
|
||||
]
|
||||
x: 2.0d
|
||||
y: -0.75d
|
||||
}
|
||||
{
|
||||
dependencies: ["74149A0BF939C15E"]
|
||||
icon: {
|
||||
id: "minecraft:iron_pickaxe"
|
||||
}
|
||||
id: "04E681E6F33D559E"
|
||||
tasks: [
|
||||
{
|
||||
count: 8L
|
||||
id: "113016070BB2C8A8"
|
||||
item: {
|
||||
count: 1
|
||||
id: "minecraft:coal"
|
||||
}
|
||||
type: "item"
|
||||
}
|
||||
]
|
||||
x: 2.0d
|
||||
y: 0.75d
|
||||
}
|
||||
{
|
||||
dependencies: ["6C03647CB1240A88"]
|
||||
icon: {
|
||||
id: "minecraft:netherite_sword"
|
||||
}
|
||||
id: "7D6694B8BDAB6CC3"
|
||||
tasks: [
|
||||
{
|
||||
advancement: "cobblesurvival:events/guardian/button_isle"
|
||||
criterion: ""
|
||||
id: "601AABB55A476514"
|
||||
type: "advancement"
|
||||
}
|
||||
]
|
||||
x: 4.0d
|
||||
y: 0.0d
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in new issue
Block a user