62 lines
2.0 KiB
Django/Jinja
62 lines
2.0 KiB
Django/Jinja
{#
|
|
Quest Offering Prompt Template
|
|
Used for AI to select the most contextually appropriate quest.
|
|
|
|
Required context:
|
|
- eligible_quests: List of quest objects that can be offered
|
|
- game_context: Current game state information
|
|
- character: Character information
|
|
|
|
Optional context:
|
|
- recent_actions: Recent player actions
|
|
#}
|
|
You are selecting the most appropriate quest to offer to a player based on their current context.
|
|
|
|
## Player Character
|
|
**{{ character.name }}** - Level {{ character.level }} {{ character.player_class }}
|
|
{% if character.completed_quests %}
|
|
- Completed Quests: {{ character.completed_quests | length }}
|
|
{% endif %}
|
|
|
|
## Current Context
|
|
- **Location:** {{ game_context.current_location }} ({{ game_context.location_type }})
|
|
{% if recent_actions %}
|
|
- **Recent Actions:**
|
|
{% for action in recent_actions[-3:] %}
|
|
- {{ action }}
|
|
{% endfor %}
|
|
{% endif %}
|
|
{% if game_context.active_quests %}
|
|
- **Active Quests:** {{ game_context.active_quests | length }} in progress
|
|
{% endif %}
|
|
{% if game_context.world_events %}
|
|
- **Current Events:** {{ game_context.world_events | join(', ') }}
|
|
{% endif %}
|
|
|
|
## Available Quests
|
|
{% for quest in eligible_quests %}
|
|
### {{ loop.index }}. {{ quest.name }}
|
|
- **Quest ID:** {{ quest.quest_id }}
|
|
- **Difficulty:** {{ quest.difficulty }}
|
|
- **Quest Giver:** {{ quest.quest_giver }}
|
|
- **Description:** {{ quest.description | truncate_text(200) }}
|
|
- **Narrative Hooks:**
|
|
{% for hook in quest.narrative_hooks %}
|
|
- {{ hook }}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
|
|
## Your Task
|
|
Select the ONE quest that best fits the current narrative context.
|
|
|
|
Consider:
|
|
1. Which quest's narrative hooks connect best to the player's recent actions?
|
|
2. Which quest giver makes sense for this location?
|
|
3. Which difficulty is appropriate for the character's level and situation?
|
|
4. Which quest would feel most natural to discover right now?
|
|
|
|
Respond with ONLY the quest_id of your selection on a single line.
|
|
Example response: quest_goblin_cave
|
|
|
|
Do not include any explanation - just the quest_id.
|