QUEST_SYSTEM_SETUP_GUIDE.md 2.6 KB

Quest System Setup Checklist

Step-by-Step Setup Guide

1. Create Your Test Quest

  1. Right-click in Project window → CreateRPGQuest
  2. Name it something like "TestQuest"
  3. Important: Place it in Assets/Resources/Quests/ folder (create this folder if it doesn't exist)
  4. Configure the quest:
    • Set questTitle (e.g., "Kill 5 Skeletons")
    • Set questDescription
    • Set difficulty (e.g., "Easy")
    • Set goldReward and renownReward
    • Set timeLimitDays and timeLimitHours
    • Add quest goals with targetCount

2. Setup AdventurersGuild Component

  1. Find your town GameObject in the scene
  2. Add AdventurersGuild component
  3. DO NOT add quests to availableQuests array - they will be loaded automatically from Resources
  4. Configure other settings:
    • Set guildLevel (1-5)
    • Set questRefreshRate (hours between refresh)
    • Enable enableDebugLogs for testing

3. Verify Scene Setup

  • Ensure your town has TownShopManager component
  • Make sure townUI field is assigned to your UIDocument
  • AdventurersGuild component should be on the same GameObject or findable in scene

4. Test the Setup

  1. Play the scene
  2. Check Console for debug messages:
    • "🏛️ AdventurersGuild initialized with X available quests"
    • "📋 Available quests:" (lists loaded quests)
  3. Click on the town
  4. Click "Adventurer's Guild" button

🐛 Troubleshooting

If No Quests Show Up:

  • Check if quest is in Assets/Resources/Quests/ folder
  • Verify quest ScriptableObject has proper title and description
  • Look for debug messages about loaded quests

If Guild UI Doesn't Open:

  • Check Console for error messages
  • Verify AdventurersGuildUI.uxml exists in Assets/Resources/UI/Town/
  • Ensure TownShopManager has townUI assigned

If NullReference Errors:

  • QuestManager will be created automatically
  • Wait one frame for initialization (handled by coroutine)

🔍 Debug Information

Enable debug logs on AdventurersGuild component to see:

  • How many quests were loaded
  • List of available quest names
  • Guild initialization status

📁 Required File Structure

Assets/
├── Resources/
│   ├── Quests/
│   │   └── TestQuest.asset
│   └── UI/
│       └── Town/
│           ├── AdventurersGuildUI.uxml
│           └── AdventurersGuildUI_Fixed.uss
└── Scripts/
    ├── Town/
    │   ├── AdventurersGuild.cs
    │   └── TownShopManager.cs
    └── Objects/
        └── Quests/
            └── Quest.cs