📚 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:
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'
|
||||
}
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user