Objective / quest system #54
Replies: 3 comments 2 replies
-
It would be nice if this could support 'kill' quests as well, maybe using the targets that are already built into the demo scene. Further, it would be great if there is a way that users can define their own scripts that can trigger objective completion. Maybe there would be an emit event which specifies an objective that has been completed or counted up. |
Beta Was this translation helpful? Give feedback.
-
Wanted to update that I've started this and made decent progress. Inspired by a different Godot 4 quest system, I've opted to create groups for quests states (active, completed, failed) as it makes managing them more intuitive, plus then users can easily create more groups/states as needed. Should be able to commit a first version of the system some time next week. |
Beta Was this translation helpful? Give feedback.
-
Just pushed the first version of this to BETA 202402.14 / 42438ad Implmented the new Quest system: In order for this to work, you need to add /COGITO/QuestSystemPD/CogitoQuestManager.gd to the autoload. Special thanks to shomykohai, who's Quest system I've adapted to our needs. Will add them to the credits. |
Beta Was this translation helpful? Give feedback.
-
This would be low priority, but I've been thinking about creating a simple quest system for COGITO.
(leaning toward calling this a quest system rather than objective system, as "objective" and “object” are so close and a simple typo can cause a lot of confusion).
Resource based (quests would be custom resources, similar to items)
Quests would have a few basic attributes to keep it simple: Name, description, status (inactive, active, completed, failed).
QuestsComponent for the Player scene that manages quests at runtime and for saving/loading.
A handful of Quest components for objects etc with a few signals to enable stuff like starting or completing objects by interacting with objects, entering certain areas and so on (leaning toward just creating one “master” component that can get a Quest resource assigned and update/change it depending on signals.
HUD/UI that displays quests:
Not sure how to approach that one yet, as it's very game specific, but leaning towards a simple "QuestUI" scene that just displays a list of quests depending on what parameters are set. That way users could just have one of these in the inventory screen that shows the last 10 quest entries, or go more complex by having a few QuestUI scenes that can each show Active/Complete/Failed quests and switch between them if they want a more elaborate quest UI.
Beta Was this translation helpful? Give feedback.
All reactions