Improved Quest System Blueprints

ANRw Studios - Blueprints - Mar 6, 2024

The blueprint version of Improved Quest System that allows you to quickly create in-game quests that players can receive and complete from NPCs or from in-game events. Quest objectives can be displayed on screen and minimap/compass user widgets

  • Supported Platforms
  • Supported Engine Versions
    4.24 - 4.27, 5.0 - 5.4
  • Download Type
    Complete Project
    This product contains a full Unreal Engine project folder, complete with Config files, Content files and .uproject file, which can be used as a template to create a new project.

With Improved Quest System you can create quests of any complexity for your game in seconds. The system can be used in any type of Unreal Engine project, easily integrates with any other products on the Unreal Marketplace.


Preview (Youtube): https://youtu.be/Nb-qlngFU6c?si=mpOQhfy2SDFQKCmi

Preview (exe): https://drive.google.com/file/d/1SxRdXtV_-sBmIG5UbgsyHNyTMYpMEei7/view?usp=sharing

How to add the system to your project (Youtube): https://www.youtube.com/watch?v=3h5bjLIXxkw

Documentation (pdf): https://drive.google.com/file/d/192BekH5nrLGpZycPNyPlbgDkWfui70LQ/view?usp=sharing


Adding the Improved Quest System into your project will take literally minutes: you just need to add the Quest Component to your PlayerController, copy a few functions from the Demo PlayerController, create a quest in the Quest Table and the main functionality is already implemented.

You can control how the player completes quests in your game using two main functions available anywhere in your project:

  • GetQuestState: pass the Quest Id and get the Quest State (not started | completed | in progress | finished completly).
  • QuestComplete: pass the Quest Id and Quest State you want to set the selected quest to (receive a quest, add one specific step to the quest progress, complete quest).

Detailed documentation with video guides is attached.

A Fog of War feature also available in this version. Static texture-based minimap method will solve all possible problems with creating a minimap in your project.


Link to C++ version of this project (only 5.1+ UE versions supported)


Features:

  • Quickly create quests, set up complex quests.
  • Includes a Minimap and Zone Map User Widgets (static texture-based) with the possibility to display quest objectives. You can scale the minimap and change a rotation method (your game level may need to change the landscape coordinates to use this option).
  • The system provides a full-featured changeable user interface widgets for interacting with a NPC and possibility to accept and complete unlimited amount of Quests.
  • Upon accepting/completing a Quests, you can show game cinematics to the players.
  • The system provides a methods to displaying the goals of the Quests (and places for taking/completing quests) - on the screen, on the minimap, on the compass.
  • System includes an interactive changeable Quest Log widget, which allows the player to read the Quest text, track/untrack the Quests and cancels the Quests.
  • The Fog of War and Zone Map features are available in this version.
  • Depending on the settings, some Quests can be available to the player only if the previous chain Quests are completed.
  • Accepting/turning in Quests can trigger events that change the game world, for example, you can make quests that involves escorting an ally NPC from point A to point B.
  • The possibility of issuing in-game rewards to players after Quests completion is provided.
  • The system supports the possibility of transitions between game levels with any number of nested levels (showing the location of the doors to the levels on which the Quest is performed).
  • The system supports a multiplayer games in the mode of cooperative walkthrough - general quests for the player group (quest progress replication implemented by using a demo Player Controller replicated Custom Events).
  • Save/load game progress is supported.
  • The possibility to change map texture for a caves and building floors.
  • The possibility to customize icons for Quests and objectives.
  • Support for large open levels with WorldPartition and WorldComposition systems.
  • Support for non-linearity - the ability to select the Quest being performed with a complete or partial change in the further walkthrough. Also, the non-linearity of the walkthrough can be applied through interaction with game actors or user widgets.
  • Full GamePad support (all widgets are usable via GamePad).
  • The possibility to use the system in projects of any type (first-person view, third-person view, TopDownTemplate, quest, horror, racing, etc). Quest System settings available as BP component variables and Quest Table variables.
  • The possibility to use the system as a Player Controller Blueprint component which is available anywhere in your project.
  • The project includes a detailed training video guide that demonstrates the how to use the system in detail (4 hours+).
  • Support for localization of Quests text and user interface into any number of languages.
  • The possibility to easily transfer all the plugin user widgets to your own user widgets. The method for this is reviewed in the video guide is provided.
  • There is the possibility of a usage Improved Quest System with a dialog system (the dialog system is not included in the project).


Notification:

Errors "Unknown structure" may occur in the project if you change one of the project Blueprint structures after migrating the content to your project.

A common solution: https://youtu.be/aMGEqsGIrcI?si=AcZeNI6KYIob14k_

I would like to draw special attention to the fact that you must first click “Compile” and then “Save” all these files. Even if you have the “Save after each compilation” setting set, you still need to click “Compile” and then “Save” since it is the “Save” button that corrects this error.


Updates:

Update 1.1 (05/18/2024):

- fixed possible problems with overlapping User Widgets: if your project uses other User Widgets (for example, an inventory system widgets), then IQS widgets no longer overlap them.

- if the mini-map for a game level is not configured, now the mini-map widget is still displayed and shows markers of quest objectives.

- an improvement has been made for the levels using World Partition/World Composition: in the BP_IQS_BotExampleActor_Objective class, a function call has been added that allows you to enable hiding/showing quest markers at the targets if the quest target was removed from the level/added to the tiled level during the game by World Partition/World Composition.

- the ability to “look around” has been added to the demo character BP_IQS_ThirdPersonCharacter.


The font Lt Beverage was used in the project (free for commercial use, OFL). Many thanks to the author of the font

Technical Details

Features:

  • Compass, quest log and texture-based map/minimap widgets are included.
  • Possibility to use the system as Player Controller blueprint component.
  • All quests settings are made in the Data Table.
  • Settings is available as Blueprints component variables.


Number of Blueprints: 45

Network Replicated: Yes

Supported Development Platforms: All

Supported Target Build Platforms: All

Documentation (pdf): https://drive.google.com/file/d/192BekH5nrLGpZycPNyPlbgDkWfui70LQ/view?usp=drive_link

Example Project: https://drive.google.com/file/d/1SxRdXtV_-sBmIG5UbgsyHNyTMYpMEei7/view?usp=sharing

Video: https://youtu.be/p80TlwXmcnQ?si=qqr4QpkF890uWXpR

Please report any issues you find and your questions to email [email protected]