📚 DOCUMENTATION COMPLETE: AUDIO_ASSET_MANIFEST.md (61 files detailed) and VFX_IMPLEMENTATION_GUIDE.md (6 systems with code examples). Ready for asset production phase.
This commit is contained in:
179
src/quests/CityGratitudeQuests.js
Normal file
179
src/quests/CityGratitudeQuests.js
Normal file
@@ -0,0 +1,179 @@
|
||||
/**
|
||||
* CITY GRATITUDE QUEST DATA
|
||||
* Related to CityGratitudeSystem and NPCSettlementSystem
|
||||
*/
|
||||
|
||||
export const CityGratitudeQuests = {
|
||||
// QUEST 1: Growing Community
|
||||
growing_community: {
|
||||
id: 'growing_community',
|
||||
name: 'Growing Community',
|
||||
category: 'city',
|
||||
npc: 'mayor',
|
||||
description: 'Attract 10 settlers to build a small community.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'population',
|
||||
target: 10,
|
||||
description: 'Reach 10 population'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 500,
|
||||
currency: 1000,
|
||||
items: [
|
||||
{ id: 'community_hoe', amount: 1 },
|
||||
{ id: 'welcome_banner', amount: 1 }
|
||||
],
|
||||
reputation: 50,
|
||||
gratitudeTier: 1
|
||||
},
|
||||
dialogue: {
|
||||
start: 'mayor_growing_community_start',
|
||||
complete: 'mayor_growing_community_complete'
|
||||
},
|
||||
autoComplete: true // Auto-completes when population reached
|
||||
},
|
||||
|
||||
// QUEST 2: Village Leader
|
||||
village_leader: {
|
||||
id: 'village_leader',
|
||||
name: 'Village Leader',
|
||||
category: 'city',
|
||||
npc: 'mayor',
|
||||
requires: 'growing_community',
|
||||
description: 'Grow your settlement to 25 people and unlock the Town Hall.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'population',
|
||||
target: 25,
|
||||
description: 'Reach 25 population'
|
||||
},
|
||||
{
|
||||
type: 'build_structure',
|
||||
target: 'town_hall',
|
||||
description: 'Build the Town Hall'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 1500,
|
||||
currency: 3000,
|
||||
items: [
|
||||
{ id: 'village_axe', amount: 1 },
|
||||
{ id: 'mayor_blessing', amount: 1 }
|
||||
],
|
||||
reputation: 100,
|
||||
gratitudeTier: 2,
|
||||
unlocks: ['town_hall', 'village_services']
|
||||
},
|
||||
dialogue: {
|
||||
start: 'mayor_village_leader_start',
|
||||
complete: 'mayor_village_leader_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 3: City Builder
|
||||
city_builder: {
|
||||
id: 'city_builder',
|
||||
name: 'City Builder',
|
||||
category: 'city',
|
||||
npc: 'mayor',
|
||||
requires: 'village_leader',
|
||||
description: 'Transform your village into a thriving city of 100 people.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'population',
|
||||
target: 100,
|
||||
description: 'Reach 100 population'
|
||||
},
|
||||
{
|
||||
type: 'build_structure',
|
||||
target: 'advanced_workshop',
|
||||
description: 'Build advanced workshop'
|
||||
},
|
||||
{
|
||||
type: 'settler_happiness',
|
||||
target: 75,
|
||||
description: 'Maintain 75% average settler happiness'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 5000,
|
||||
currency: 15000,
|
||||
items: [
|
||||
{ id: 'legendary_pickaxe', amount: 1 },
|
||||
{ id: 'city_crown', amount: 1 },
|
||||
{ id: 'citizens_gratitude', amount: 1 }
|
||||
],
|
||||
reputation: 500,
|
||||
gratitudeTier: 3,
|
||||
achievement: 'city_builder',
|
||||
unlocks: ['city_monument'],
|
||||
permanentBuff: {
|
||||
name: 'Citizens\' Eternal Gratitude',
|
||||
effect: '+25% all production and efficiency'
|
||||
}
|
||||
},
|
||||
dialogue: {
|
||||
start: 'mayor_city_builder_start',
|
||||
progress: 'mayor_city_builder_progress',
|
||||
complete: 'mayor_city_builder_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 4: Metropolis King
|
||||
metropolis_king: {
|
||||
id: 'metropolis_king',
|
||||
name: 'Metropolis King',
|
||||
category: 'city',
|
||||
npc: 'mayor',
|
||||
requires: 'city_builder',
|
||||
description: 'Build a legendary metropolis of 200 people. The ultimate achievement!',
|
||||
objectives: [
|
||||
{
|
||||
type: 'population',
|
||||
target: 200,
|
||||
description: 'Reach 200 population'
|
||||
},
|
||||
{
|
||||
type: 'build_structure',
|
||||
target: 'palace',
|
||||
description: 'Build the Palace'
|
||||
},
|
||||
{
|
||||
type: 'city_reputation',
|
||||
target: 1000,
|
||||
description: 'Reach 1000 city reputation'
|
||||
},
|
||||
{
|
||||
type: 'all_services_active',
|
||||
description: 'Have all city services operational'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 10000,
|
||||
currency: 50000,
|
||||
items: [
|
||||
{ id: 'omega_tool_set', amount: 1 },
|
||||
{ id: 'metropolis_throne', amount: 1 },
|
||||
{ id: 'eternal_crown', amount: 1 }
|
||||
],
|
||||
reputation: 1000,
|
||||
gratitudeTier: 4,
|
||||
achievement: 'metropolis_king',
|
||||
unlocks: ['palace', 'royal_services'],
|
||||
permanentBuff: {
|
||||
name: 'King\'s Authority',
|
||||
effect: 'All workers +100% efficiency, unlimited building queue'
|
||||
},
|
||||
specialBonus: 'Unlock New Game+ mode'
|
||||
},
|
||||
dialogue: {
|
||||
start: 'mayor_metropolis_king_start',
|
||||
progress: 'mayor_metropolis_king_progress',
|
||||
complete: 'mayor_metropolis_king_complete',
|
||||
special: 'mayor_metropolis_king_coronation' // Special coronation cutscene
|
||||
},
|
||||
cutscene: 'coronation_ceremony'
|
||||
}
|
||||
};
|
||||
142
src/quests/DefenseQuests.js
Normal file
142
src/quests/DefenseQuests.js
Normal file
@@ -0,0 +1,142 @@
|
||||
/**
|
||||
* DEFENSE QUEST DATA
|
||||
* Related to FarmRaidSystem and DefenseSystem
|
||||
*/
|
||||
|
||||
export const DefenseQuests = {
|
||||
// QUEST 1: First Defense
|
||||
first_defense: {
|
||||
id: 'first_defense',
|
||||
name: 'First Blood',
|
||||
category: 'defense',
|
||||
npc: 'mayor',
|
||||
description: 'Your farm is under attack! Defend against the first raider wave.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'survive_raid',
|
||||
target: 1,
|
||||
description: 'Survive the first raid'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 300,
|
||||
currency: 500,
|
||||
items: [
|
||||
{ id: 'basic_weapon', amount: 1 },
|
||||
{ id: 'defense_plans', amount: 1 }
|
||||
],
|
||||
unlocks: ['defense_system']
|
||||
},
|
||||
dialogue: {
|
||||
start: 'mayor_first_defense_start',
|
||||
complete: 'mayor_first_defense_complete'
|
||||
},
|
||||
autoStart: true, // Triggers automatically on first raid
|
||||
priority: 'urgent'
|
||||
},
|
||||
|
||||
// QUEST 2: Build Walls
|
||||
build_walls: {
|
||||
id: 'build_walls',
|
||||
name: 'Fortify the Farm',
|
||||
category: 'defense',
|
||||
npc: 'mayor',
|
||||
requires: 'first_defense',
|
||||
description: 'Build wooden walls around your farm to improve defenses.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'build_structure',
|
||||
target: 'wooden_wall',
|
||||
amount: 20,
|
||||
description: 'Build 20 wooden wall segments'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 500,
|
||||
currency: 1000,
|
||||
items: [{ id: 'wall_upgrade_plans', amount: 1 }],
|
||||
unlocks: ['stone_walls']
|
||||
},
|
||||
dialogue: {
|
||||
start: 'mayor_walls_start',
|
||||
complete: 'mayor_walls_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 3: Raid Master
|
||||
raid_master: {
|
||||
id: 'raid_master',
|
||||
name: 'Raid Master',
|
||||
category: 'defense',
|
||||
npc: 'mayor',
|
||||
requires: 'build_walls',
|
||||
description: 'Successfully defend against 5 raids without losing any buildings.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'defend_raids',
|
||||
amount: 5,
|
||||
condition: 'no_building_loss',
|
||||
description: 'Defend 5 raids with 0 building losses'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 2000,
|
||||
currency: 5000,
|
||||
items: [
|
||||
{ id: 'fortress_plans', amount: 1 },
|
||||
{ id: 'defender_medal', amount: 1 }
|
||||
],
|
||||
achievement: 'raid_master',
|
||||
reputation: 200
|
||||
},
|
||||
dialogue: {
|
||||
start: 'mayor_raid_master_start',
|
||||
complete: 'mayor_raid_master_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 4: Ultimate Defense
|
||||
ultimate_defense: {
|
||||
id: 'ultimate_defense',
|
||||
name: 'Impenetrable Fortress',
|
||||
category: 'defense',
|
||||
npc: 'mayor',
|
||||
requires: 'raid_master',
|
||||
description: 'Build the ultimate defense: stone walls, watchtowers, and fortress gates.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'build_structure',
|
||||
target: 'stone_wall',
|
||||
amount: 40,
|
||||
description: 'Build 40 stone wall segments'
|
||||
},
|
||||
{
|
||||
type: 'build_structure',
|
||||
target: 'watchtower',
|
||||
amount: 4,
|
||||
description: 'Build 4 watchtowers'
|
||||
},
|
||||
{
|
||||
type: 'build_structure',
|
||||
target: 'fortress_gate',
|
||||
amount: 1,
|
||||
description: 'Build 1 fortress gate'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 5000,
|
||||
currency: 15000,
|
||||
items: [
|
||||
{ id: 'legendary_fortress_blueprint', amount: 1 },
|
||||
{ id: 'general_armor', amount: 1 }
|
||||
],
|
||||
achievement: 'impenetrable_fortress',
|
||||
reputation: 500,
|
||||
specialBonus: 'Raids 50% less likely'
|
||||
},
|
||||
dialogue: {
|
||||
start: 'mayor_ultimate_defense_start',
|
||||
complete: 'mayor_ultimate_defense_complete'
|
||||
}
|
||||
}
|
||||
};
|
||||
124
src/quests/MuseumQuests.js
Normal file
124
src/quests/MuseumQuests.js
Normal file
@@ -0,0 +1,124 @@
|
||||
/**
|
||||
* MUSEUM QUEST DATA
|
||||
* Related to MuseumEvolutionSystem
|
||||
*/
|
||||
|
||||
export const MuseumQuests = {
|
||||
// QUEST 1: First Artifact
|
||||
first_artifact: {
|
||||
id: 'first_artifact',
|
||||
name: 'Kustos\'s First Find',
|
||||
category: 'museum',
|
||||
npc: 'kustos',
|
||||
description: 'Kustos needs you to find and donate your first artifact to start the museum collection.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'collect',
|
||||
target: 'any_artifact',
|
||||
amount: 1,
|
||||
description: 'Find any artifact'
|
||||
},
|
||||
{
|
||||
type: 'donate',
|
||||
target: 'museum',
|
||||
description: 'Donate artifact to Kustos'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 100,
|
||||
currency: 200,
|
||||
items: [{ id: 'basic_shovel', amount: 1 }],
|
||||
unlocks: ['artifact_detection']
|
||||
},
|
||||
dialogue: {
|
||||
start: 'kustos_first_artifact_start',
|
||||
progress: 'kustos_first_artifact_progress',
|
||||
complete: 'kustos_first_artifact_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 2: Category Completion
|
||||
complete_prehistory: {
|
||||
id: 'complete_prehistory',
|
||||
name: 'Prehistoric Collection',
|
||||
category: 'museum',
|
||||
npc: 'kustos',
|
||||
requires: 'first_artifact',
|
||||
description: 'Complete the Prehistoric Era collection by donating all 3 artifacts.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'donate_category',
|
||||
target: 'prehistory',
|
||||
amount: 3,
|
||||
description: 'Donate 3 prehistoric artifacts (Dino Skull, Ancient Vase, Fossil)'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 500,
|
||||
currency: 1000,
|
||||
items: [{ id: 'rare_excavation_kit', amount: 1 }],
|
||||
reputation: 50
|
||||
},
|
||||
dialogue: {
|
||||
start: 'kustos_prehistory_start',
|
||||
complete: 'kustos_prehistory_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 3: Museum Stage 2
|
||||
museum_stage_2: {
|
||||
id: 'museum_stage_2',
|
||||
name: 'Advanced Exhibition',
|
||||
category: 'museum',
|
||||
npc: 'kustos',
|
||||
description: 'Help Kustos evolve the museum to Stage 2 by donating 8 artifacts total.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'museum_stage',
|
||||
target: 2,
|
||||
description: 'Donate 8 artifacts to reach Museum Stage 2'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 1000,
|
||||
currency: 2500,
|
||||
items: [{ id: 'artifact_radar', amount: 1 }],
|
||||
unlocks: ['lore_system'],
|
||||
reputation: 100
|
||||
},
|
||||
dialogue: {
|
||||
start: 'kustos_stage2_start',
|
||||
complete: 'kustos_stage2_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 4: Master Curator
|
||||
master_curator: {
|
||||
id: 'master_curator',
|
||||
name: 'Master Curator',
|
||||
category: 'museum',
|
||||
npc: 'kustos',
|
||||
description: 'Complete the entire museum collection - all 12 artifacts.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'museum_stage',
|
||||
target: 3,
|
||||
description: 'Donate all 12 artifacts to reach Museum Stage 3'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 3000,
|
||||
currency: 10000,
|
||||
items: [
|
||||
{ id: 'legendary_excavator', amount: 1 },
|
||||
{ id: 'curator_badge', amount: 1 }
|
||||
],
|
||||
achievement: 'master_curator',
|
||||
reputation: 500
|
||||
},
|
||||
dialogue: {
|
||||
start: 'kustos_master_start',
|
||||
complete: 'kustos_master_complete'
|
||||
}
|
||||
}
|
||||
};
|
||||
155
src/quests/SchoolQuests.js
Normal file
155
src/quests/SchoolQuests.js
Normal file
@@ -0,0 +1,155 @@
|
||||
/**
|
||||
* SCHOOL QUEST DATA
|
||||
* Related to SchoolBuffSystem and Teacher NPC
|
||||
*/
|
||||
|
||||
export const SchoolQuests = {
|
||||
// QUEST 1: School Opening
|
||||
school_opening: {
|
||||
id: 'school_opening',
|
||||
name: 'School Days',
|
||||
category: 'education',
|
||||
npc: 'teacher',
|
||||
description: 'Help Teacher restore the school building and start lessons.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'repair_building',
|
||||
target: 'school',
|
||||
description: 'Repair the school building'
|
||||
},
|
||||
{
|
||||
type: 'gather_materials',
|
||||
items: [
|
||||
{ id: 'wood', amount: 50 },
|
||||
{ id: 'stone', amount: 30 },
|
||||
{ id: 'books', amount: 10 }
|
||||
],
|
||||
description: 'Gather materials for school restoration'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 400,
|
||||
currency: 800,
|
||||
items: [{ id: 'student_handbook', amount: 1 }],
|
||||
unlocks: ['school_system'],
|
||||
freeLesson: 'basic_farming'
|
||||
},
|
||||
dialogue: {
|
||||
start: 'teacher_school_opening_start',
|
||||
progress: 'teacher_school_opening_progress',
|
||||
complete: 'teacher_school_opening_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 2: Star Student
|
||||
star_student: {
|
||||
id: 'star_student',
|
||||
name: 'Star Student',
|
||||
category: 'education',
|
||||
npc: 'teacher',
|
||||
requires: 'school_opening',
|
||||
description: 'Learn 5 different skills from Teacher.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'learn_skills',
|
||||
amount: 5,
|
||||
description: 'Learn 5 skills from Teacher'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 1000,
|
||||
currency: 2000,
|
||||
items: [{ id: 'honor_student_badge', amount: 1 }],
|
||||
reputation: 100,
|
||||
specialBonus: '25% discount on all future lessons'
|
||||
},
|
||||
dialogue: {
|
||||
start: 'teacher_star_student_start',
|
||||
complete: 'teacher_star_student_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 3: Master Scholar
|
||||
master_scholar: {
|
||||
id: 'master_scholar',
|
||||
name: 'Master Scholar',
|
||||
category: 'education',
|
||||
npc: 'teacher',
|
||||
requires: 'star_student',
|
||||
description: 'Learn all permanent skills from Teacher (Farming, Combat, Survival).',
|
||||
objectives: [
|
||||
{
|
||||
type: 'learn_category',
|
||||
target: 'farming',
|
||||
description: 'Learn all farming skills'
|
||||
},
|
||||
{
|
||||
type: 'learn_category',
|
||||
target: 'combat',
|
||||
description: 'Learn all combat skills'
|
||||
},
|
||||
{
|
||||
type: 'learn_category',
|
||||
target: 'survival',
|
||||
description: 'Learn all survival skills'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 3000,
|
||||
currency: 7500,
|
||||
items: [
|
||||
{ id: 'master_diploma', amount: 1 },
|
||||
{ id: 'wisdom_amulet', amount: 1 }
|
||||
],
|
||||
achievement: 'master_scholar',
|
||||
reputation: 300,
|
||||
permanentBuff: {
|
||||
name: 'Master\'s Wisdom',
|
||||
effect: '+10% to all skill effectiveness'
|
||||
}
|
||||
},
|
||||
dialogue: {
|
||||
start: 'teacher_master_scholar_start',
|
||||
complete: 'teacher_master_scholar_complete'
|
||||
}
|
||||
},
|
||||
|
||||
// QUEST 4: Successor
|
||||
successor: {
|
||||
id: 'successor',
|
||||
name: 'The Successor',
|
||||
category: 'education',
|
||||
npc: 'teacher',
|
||||
requires: 'master_scholar',
|
||||
description: 'Teacher sees potential in you. Prove you can teach others.',
|
||||
objectives: [
|
||||
{
|
||||
type: 'teach_npcs',
|
||||
amount: 10,
|
||||
description: 'Teach skills to 10 different NPCs'
|
||||
},
|
||||
{
|
||||
type: 'reach_level',
|
||||
target: 20,
|
||||
description: 'Reach Level 20'
|
||||
}
|
||||
],
|
||||
rewards: {
|
||||
xp: 5000,
|
||||
currency: 20000,
|
||||
items: [
|
||||
{ id: 'teacher_robes', amount: 1 },
|
||||
{ id: 'staff_of_knowledge', amount: 1 }
|
||||
],
|
||||
achievement: 'successor',
|
||||
reputation: 500,
|
||||
unlocks: ['teaching_system'],
|
||||
specialBonus: 'Can now teach skills to NPCs for reputation'
|
||||
},
|
||||
dialogue: {
|
||||
start: 'teacher_successor_start',
|
||||
progress: 'teacher_successor_progress',
|
||||
complete: 'teacher_successor_complete'
|
||||
}
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user