SPIKE REPORT, Week 4-5



SPIKE TITLE - Quest Chains, NPC's and Dialogue

Context

The Goal is to create a probera chain of quest that can be accept through an NPC via a Dialogue System

Goals

  1. Learning and Understanding the Basics of a Chain Quest, Quest NPC and Dialogue System
  2. We need to aslo know who to create the nessary elements of the NPC and Dialogue System
  3. Working to find a solution to make an Interactable and Testable Quest and Dialogue System

Personnel

In this section, list the primary author of the spike report, as well as any personnel who assisted in completing the work.

  • Primary - Alexander Schiemann
  • Secondary - N/A

Technologies, Tools, and Resources used

Provide resource information for team members who wish to learn additional information from this spike.

Tasks Undertaken

  1. Create a basic Setup to prepare implementation of the quest and dialogue systems
    1. Basic Moveable Player
    2. Basic Interactable NPC
    3. Basic Nav Mesh Agent for Actors and World
    4. Add Comments and Discription For My the Thoughts of What I am Scripting
  2. Create a new script for a PlayerController to control a basic characters movement
  3. Create 2 scripts for actor, object and world Interactions
  4. Create Basic Nav Mesh and Nav Mesh Agents for Player, Ground of the Workd and NPC
  5. Creating a World Interactable script to interact with the games diffrent game objects.
  6. Creating and Interactable script specificly for items, npcs, and objects.
  7. Bake the navigation meshs and use it to replace the players collison box.
  8. Creating Identifer scripts for enemyID, itemID and LocationID
  9. Creating a basic Enemy to use for test purposes.
  10. Creating unique colored materials for each entity enemy, player and npc to keep them apart.
  11. Creating a Dialogue System script that uses find components to find the text components to use for the quest system script
  12. Setting Dialogue Panel as inactive and active when colliding in a certain radius around the npc.
  13. Creating Names, Dialogue Lines and Dialouge Text seralized fields to edit each individual npcs unique dialogue
  14. Creating Scroll Text Using Animations (Still In Progress).
  15. Creating Prefabs of the Main Scene Components and Sample Test Scenes
  16. Importing Quest Scripts from another Unity Project.
  17. Fixing Bugs and Making sure the Quest Scripts work without conflicts in new updated Version
  18. Creating Quest Identifer Script to Identify Quest, Chain and NPC IDs
  19. Rework and Modify Dialogue Canvas to better embody the Dungeon Seige Game.
  20. Creating npc Quest Giver that pulls from the npc and dialogue system
  21. Creating npc Quest Giver giving him a quest type that can be changed for collection, kill and location quests via their details scripts
  22. Created a hightligher useing via the use of shaders and materials.

What we found out

Creating Chain quest and interactive quest and npc and dialogue systems for a prober rpg experience. Learned How to create world object and npc interactions, dialogue systems using diffrent methods for diffrent results som using multiple scripts while others use singular scripts. Learning the basic requirements for both npces and the other systems.

Creating A Chain Quest

The simplist of the codes as it makes use of mainly get and set functions and if statements depending on what the target goal is of the method of implementation.

Primary Resource for creating a quest chain can be found here: Make An RPG 2016 Ep 2 : Quest System Unity, C#

Creating A Interactable Actors and Objects Interaction System

This System was Vital as all of the other systems where essential in one way or another reliant on these interaction scripts and there is a varity of ways of going about creating them and finding out how to best adjust it to the game is increadibly complex.

Primary Resource for creating a Interaction System can be found here: ITEMS - Making an RPG in Unity (E04) INTEGRATION 01 - Making an RPG in Unity (E03) Interactions in Unity - Calling an Elevator Unity Tutorial - How to create the Interaction System NPC Interaction | C# Tutorials in Unity Unity Tutorial : Interact With Game ObjectINTERACTION - Making an RPG in Unity (E02)

Creating A Dialogue System

This seemingly simple sytem is in fact quite complicated making use of UI, combing Interaction functions between the player and an object or AI(NPC) as well as collison scripts and script code that Finds Childs from the source Canvas Panel combing many diffrent elements including even navmeshs and collisons making it difficult and complicated to understand.

Primary Resource for creating a Dialogue System can be found here: How to make a Dialogue System in Unity COOL DIALOG SYSTEM - EASY UNITY AND C# TUTORIAL Unity3d Dialogue System Tutorial Unity Dialogue System

Creating A RPG NPC

These videos showed me how to create basic to more complex functions need to create a basic npc. However they mainly rely on using interaction functions to make them work as well as making use of things such as navmeshs and collisons which I had to learn about to understand which I had thankfully learned alot of before during the first spike/blog report/post.

Primary Resource for creating a RPG NPC can be found here: NPC Interaction | C# Tutorials in Unity NPCs - Making simple AI: Make a game like Zelda using Unity and C# Unity Tutorial - NPC Artificial Intelligence (Blacksmith) Unity 2D Game Basics - Talking to NPCs NPC interaction in Unity with Game Bridge BETA NPC Head Look - How To Make A Game

Difficulties

I had alot of difficulties when it came to how I wasn't able to think well outside of the box to simplify some processes. Causeing me to need to take a lot more difficult roots to accomplish my tasks. Also due to me trying to make the systems such as Quests and dialogue systems and my lack of knowledge and understanding of them and the many components and elements on top of which they are build caused me alot of Issues.

Open Issues/Risks

The Quest Systems Location Quest Type is still not fully functional and is still a big difficulties

Recommendations

My Recommendation is to go through all tutorials above and the ue4 project file and always make sure to use debug to test your code

Get Questing Simulator

Leave a comment

Log in with itch.io to leave a comment.