/** * Act1QuestData.js * ================= * KRVAVA ŽETEV - Act 1: The Search Begins * * Main Quest: "Find Ana's Trail" * * Structure: * - Quest 1.1: Wake Up & Explore * - Quest 1.2: Meet Grok (First NPC) * - Quest 1.3: First Twin Bond Message * - Quest 1.4: Tame Your First Zombie * - Quest 1.5: Build Ana's Grave (Memorial) * - Quest 1.6: Search Lab Ruins * - Quest 1.7: Find Ana's Research Notes * - Quest 1.8: Decipher the Clues * * @author NovaFarma Team * @date 2025-12-23 */ const Act1QuestData = { // ===== QUEST 1.1: WAKE UP & EXPLORE ===== 'quest_1_1_wake_up': { id: 'quest_1_1_wake_up', title: 'A New Beginning', description: 'You wake up in the ruins of the lab. Explore your surroundings and get your bearings.', act: 1, isMainQuest: true, objectives: [ { id: 'explore_ruins', description: 'Explore the lab ruins', type: 'location', target: { x: 500, y: 500, radius: 50 }, current: 0, required: 1, completed: false }, { id: 'check_inventory', description: 'Check your inventory (I key)', type: 'action', current: 0, required: 1, completed: false } ], rewards: { xp: 100, items: [ { id: 'torn_journal', amount: 1 } ], bondStrength: +5 }, nextQuest: 'quest_1_2_meet_grok', startDialogue: { speaker: 'Kai', text: 'My head... what happened? The last thing I remember is the explosion... Ana! Where is she?!' }, completeDialogue: { speaker: 'Kai', text: 'This journal... it\'s Ana\'s handwriting. She was here. I need to find her.' } }, // ===== QUEST 1.2: MEET GROK ===== 'quest_1_2_meet_grok': { id: 'quest_1_2_meet_grok', title: 'The Zen Monk', description: 'You hear the sound of a gong in the distance. Someone else survived?', act: 1, isMainQuest: true, objectives: [ { id: 'find_grok', description: 'Follow the gong sound', type: 'location', target: { x: 1000, y: 800, radius: 100 }, current: 0, required: 1, completed: false }, { id: 'talk_to_grok', description: 'Talk to the mysterious monk', type: 'dialogue', dialogueId: 'grok_first_meeting', current: 0, required: 1, completed: false } ], rewards: { xp: 150, items: [ { id: 'meditation_guide', amount: 1 } ], bondStrength: +3, unlocks: ['grok_shop', 'grok_quests'] }, nextQuest: 'quest_1_3_twin_bond', startDialogue: { speaker: 'Narrator', text: '*BOOONG!* A deep gong echoes through the ruins. You\'re not alone...' } }, // ===== QUEST 1.3: FIRST TWIN BOND MESSAGE ===== 'quest_1_3_twin_bond': { id: 'quest_1_3_twin_bond', title: 'The Twin Bond Awakens', description: 'Ana\'s voice echoes in your mind. The Twin Bond is real!', act: 1, isMainQuest: true, objectives: [ { id: 'receive_message', description: 'Listen to Ana\'s telepathic message', type: 'event', eventId: 'first_twin_bond_message', current: 0, required: 1, completed: false }, { id: 'use_sense_pulse', description: 'Use Sense Pulse ability (F key)', type: 'ability', abilityId: 'sense_pulse', current: 0, required: 1, completed: false } ], rewards: { xp: 200, bondStrength: +10, unlocks: ['twin_bond_ui', 'telepathy_ability'] }, nextQuest: 'quest_1_4_first_zombie', triggerEvent: { type: 'twin_bond_message', delay: 5000, // 5 seconds after quest start message: 'Kai... can you hear me? I\'m alive... but I don\'t know where I am...', emotion: 'worried' } }, // ===== QUEST 1.4: TAME YOUR FIRST ZOMBIE ===== 'quest_1_4_first_zombie': { id: 'quest_1_4_first_zombie', title: 'The Alfa Power', description: 'Use your Alfa abilities to tame wild zombies. They can help you search for Ana.', act: 1, isMainQuest: true, objectives: [ { id: 'find_zombie', description: 'Find a wild zombie', type: 'entity', entityType: 'wild_zombie', current: 0, required: 1, completed: false }, { id: 'tame_zombie', description: 'Tame the zombie (approach and press T)', type: 'tame', current: 0, required: 1, completed: false }, { id: 'command_zombie', description: 'Give your zombie a command', type: 'action', actionId: 'zombie_command', current: 0, required: 1, completed: false } ], rewards: { xp: 250, items: [ { id: 'zombie_guide', amount: 1 } ], bondStrength: +5, unlocks: ['zombie_commands', 'grave_crafting'] }, nextQuest: 'quest_1_5_ana_grave', tutorialText: { 'find': 'Wild zombies are attracted to your Alfa scent. They will approach you.', 'tame': 'Get close to a zombie and press T. Your Alfa power will bring them under control.', 'command': 'Use number keys 1-4 to give commands: Follow, Work, Guard, Rest' } }, // ===== QUEST 1.5: BUILD ANA'S GRAVE (MEMORIAL) ===== 'quest_1_5_ana_grave': { id: 'quest_1_5_ana_grave', title: 'A Sister\'s Memorial', description: 'Build a grave as a memorial for Ana. You will find her, but this represents your bond.', act: 1, isMainQuest: true, objectives: [ { id: 'gather_stone', description: 'Gather 10 stones', type: 'item', itemId: 'stone', current: 0, required: 10, completed: false }, { id: 'gather_dirt', description: 'Gather 5 dirt', type: 'item', itemId: 'dirt', current: 0, required: 5, completed: false }, { id: 'craft_grave', description: 'Craft Ana\'s Memorial Grave', type: 'craft', recipeId: 'ana_memorial_grave', current: 0, required: 1, completed: false }, { id: 'place_grave', description: 'Place the grave at a meaningful location', type: 'placement', current: 0, required: 1, completed: false } ], rewards: { xp: 300, bondStrength: +15, items: [ { id: 'ana_locket', amount: 1 } // Special item ], unlocks: ['ana_memorial_buff'] }, nextQuest: 'quest_1_6_search_lab', emotionalMoment: { text: 'You place flowers on the grave. "I will find you, Ana. I promise."', emotion: 'determined', bondPulse: true, camera: 'zoom_in' } }, // ===== QUEST 1.6: SEARCH LAB RUINS ===== 'quest_1_6_search_lab': { id: 'quest_1_6_search_lab', title: 'Back to the Beginning', description: 'Return to the lab ruins and search for clues about Ana\'s location.', act: 1, isMainQuest: true, objectives: [ { id: 'search_lab_entrance', description: 'Search the lab entrance', type: 'location', target: { x: 200, y: 300, radius: 30 }, current: 0, required: 1, completed: false }, { id: 'search_research_wing', description: 'Search the research wing', type: 'location', target: { x: 400, y: 350, radius: 30 }, current: 0, required: 1, completed: false }, { id: 'search_security_office', description: 'Search the security office', type: 'location', target: { x: 300, y: 450, radius: 30 }, current: 0, required: 1, completed: false } ], rewards: { xp: 350, bondStrength: +8, items: [ { id: 'lab_keycard', amount: 1 }, { id: 'security_footage', amount: 1 } ] }, nextQuest: 'quest_1_7_research_notes', discoveries: [ { location: 'lab_entrance', text: 'Blood on the floor... Ana was injured during the attack.' }, { location: 'research_wing', text: 'Her workstation is destroyed, but some data drives might still work.' }, { location: 'security_office', text: 'Security footage! This could show what happened!' } ] }, // ===== QUEST 1.7: FIND ANA'S RESEARCH NOTES ===== 'quest_1_7_research_notes': { id: 'quest_1_7_research_notes', title: 'Ana\'s Research', description: 'Recover Ana\'s research notes. They might contain clues about who took her.', act: 1, isMainQuest: true, objectives: [ { id: 'decode_data_drive', description: 'Decode the data drive', type: 'puzzle', puzzleId: 'data_drive_decode', current: 0, required: 1, completed: false }, { id: 'watch_security_footage', description: 'Watch security footage', type: 'cutscene', cutsceneId: 'security_footage_reveal', current: 0, required: 1, completed: false }, { id: 'find_research_notes', description: 'Find Ana\'s hidden research notes', type: 'item', itemId: 'ana_research_notes', current: 0, required: 1, completed: false } ], rewards: { xp: 400, bondStrength: +12, items: [ { id: 'alfa_serum_blueprint', amount: 1 } ] }, nextQuest: 'quest_1_8_decipher_clues', cutscene: { id: 'security_footage_reveal', scenes: [ { text: 'The footage is corrupted, but you can make out figures in heavy armor...', speaker: 'Narrator' }, { text: 'They\'re dragging Ana away... she\'s fighting them...', speaker: 'Kai', emotion: 'anger' }, { text: 'Wait... that symbol on their armor... I\'ve seen it before!', speaker: 'Kai', emotion: 'shocked' } ] } }, // ===== QUEST 1.8: DECIPHER THE CLUES ===== 'quest_1_8_decipher_clues': { id: 'quest_1_8_decipher_clues', title: 'The Trail Grows Warm', description: 'Use Ana\'s research and the security footage to figure out where they took her.', act: 1, isMainQuest: true, objectives: [ { id: 'read_notes', description: 'Read Ana\'s research notes', type: 'item_use', itemId: 'ana_research_notes', current: 0, required: 1, completed: false }, { id: 'consult_grok', description: 'Ask Grok about the symbol', type: 'dialogue', dialogueId: 'grok_symbol_knowledge', current: 0, required: 1, completed: false }, { id: 'find_map', description: 'Find a map of the region', type: 'item', itemId: 'region_map', current: 0, required: 1, completed: false } ], rewards: { xp: 500, bondStrength: +20, items: [ { id: 'coordinates_note', amount: 1 } ], unlocks: ['act_2'] }, nextQuest: 'quest_2_1_journey_begins', // ACT 2! revelation: { text: 'The symbol... it\'s from a secret military facility. That\'s where they took Ana!', speaker: 'Kai', emotion: 'determined', cameraEffect: 'dramatic_zoom', bondPulse: true }, endingDialogue: { nodes: { 'ending': { speaker: 'Ana (Twin Bond)', emotion: 'hope', text: 'Kai... I can feel you getting closer. Don\'t give up!', next: 'kai_response' }, 'kai_response': { speaker: 'Kai', emotion: 'determined', text: 'I\'m coming for you, Ana. Nothing will stop me.', next: null } } } } }; // Export for use in QuestSystem if (typeof module !== 'undefined' && module.exports) { module.exports = Act1QuestData; }