Designing a Quest System – Chef RPG Devlog #11
This video is sponsored by Squarespace hey Noah here in this video I want to develop a quest system for my open world pixel art game Chef RPG the quest system is the feature I saved for last because it essentially weaves every other system in the game together it would have to
Integrate things like cooking mini gamess restaurant system hunting and Gathering NPC daily schedules dialogues the cut scene system and more due to the number of characters each having their own quests combined with main story quests and miscellane quests we could end up having close to 100 quests in the
Final game for a small team like ours to create this many quests in a reasonable amount of time we really need a flexible and modular Quest system so that we can make quests quickly writing a separate script for each Quest would not be a good idea for something like this to
Properly design a quest system like this I want to First Look at a case study of a game that I think did this open World quest system very well and created it in a very modular manner this game would be RuneScape I’ve played RuneScape more
Than any other game in my My Life part of what is attractive about RuneScape is its Simplicity making it easy to understand and get into RuneScape gets a lot of flak for its low polygraphics but the benefit of the simple design and simple Graphics is that you can create a
Lot of content very quickly the result is a game that you can play for thousands of hours and still not have experienced a large chunk of content a successful result of this simple design is runescape’s Quest system the game Simplicity allowed them to create over 150 quests each with a self-contained
Story The these quests are not simple fetch quests like we see in a lot of games but rather a complex combination of story exploration puzzles and combat some of these longer quests can take over 5 hours to complete this can only be done using a highly modular Quest
System one that I also want to implement into Chef RPG though I’m not going to be adding five hour long quests into the game since I don’t think that will be enjoyable for most players let’s look at one of runescape’s quests and try to break it down to see what a modular
Quest system would require one of runescape’s most famous famous quests is Demon Slayer let’s break this Quest down into separate segments the quest is started by talking to one of the NPCs in town who asks you to protect the town from a powerful demon so first we need a
Segment that uses the dialogue system to initiate quests she will require you to find a special sword that is needed to slay a demon you later discover that the special sword is locked away inside a case to open this case you’ll need to find three keys from different
Characters in The Game World for example one of these NPCs has dropped their key in the kitchen drain you’ll need to pour a bucket of water down this drain behind the castle to wash the key down then you’ll have to travel beneath the City sewers to retrieve the key here we have
A few more segments we need to add one for speaking to various NPCs one for requiring you to go to a specific location another segment that requires you to interact with an object in the game World once you have collected the three keys you have to go to the
Character that keeps the sword so here we will need a segment that takes three of your items items and adds one into your inventory finally with the sword in hand you can go kill the demon so we need one last segment that requires you to slay a creature in between all this
There are cut scenes to strengthen the story beats so we’ll also need a segment for cut scenes each individual segment is fairly simple but when you put them together you get a longer quest line with a self-contained story in a way this is sort of an elaborate fetch
Quests but due to the variety of activities involved as well as the progression of the story if feels a lot more engaging than a standard fetch Quest the quest makes you journey across the world and explore many locations that you might not naturally get to which helps give more meaning and
Function to the different places in the world there are far too many games that look pretty but lacking meaning and function to a lot of its locations which makes the locations just a pretty backdrop in RuneScape every building can be entered and even small details like this Trin behind this building has a
Gameplay function this kind of thing makes a game World feel more alive and lived in even even in the game with simple Graphics now that we have an idea of what is required for a modular Quest system we can begin to implement one in Chef RBG the best way to go about
Building a new Quest system is to actually build out a functional Quest so that we can really stress test this new system I’ll be using one of the character quests I quickly wrote up eventually I’ll have my writer improve the story but for now I’m just using it
As a test case for a quick summary of The Quest the character April had her house broken into by a boar it destroyed her home and more importantly d destroyed her crystal ball that she uses for fortune telling the player will help her create a new crystal ball first the
Player needs to find a method of extracting a large quartz crystal which can’t be done by your current tools you will need to speak to a specific NPC to obtain a stronger tool next you’ll need to find a skilled sculptor who can shape the crystal into a perfect sphere
Finally April’s crystal ball wasn’t just any Crystal Ball but it was blessed by the spirits of the forest the spirits of the forest require a food offering in order to blast the ball so we will need to to cook several dishes and bring them into the Deep Woods where we would place
The crystal ball and food there overnight to be blessed the crystal ball has been bless and you can retrieve it and bring it back to April to complete the quest so there are a lot of steps here the first thing we need to do is to
Create a way to contain all of this Quest information so that it’s easy to keep track of and easy for scripts to reach the information and determine what to do I decided to use a scriptable object here which is essentially an information package that neatly contains
All the information I need for the quest information we need for each Quest includes the quest ID so I can quickly reference or find this package the MPC that gives this Quest the list of requirements to start the quest each requirement could be a certain time or day having a certain friendship level
With a character or having completed a different Quest if all the requirements are met the quest will be able to start we will also need a list of quest segments in the quest once we have the segments we’ll need a script that goes through all the quest segments one by
One to determine what the player needs to do next and finally we’ll need a list of rewards for each Quest so now that the information packet for the quest is ready it’s easy for the script to find its Quest and access all its information now let’s start by making a way to
Actually start the quest to keep things flexible I want there to be multiple ways to start a quest assuming we’ve met all the quest requirements I want some quests to start from entering a scene which would result in a cut scene plan some quests might start by just talking
To an NPC other Quest Quest might start by interacting with an object in a world in games like stardew Valley a lot of quests start when you first leave your house in the morning for every action such as entering a new scene talking to an NPC sleeping or interacting with a
Quest object we will need to check if a quest will be started or if it continues an ongoing Quest this is where I encountered the first design problem a lot of quests can be active at the same time and quests usually involve multiple activities and chatting with multiple
NPCs if an NPC has the ability to both start or continue a quest should we prioritize existing quests first or should we focus on starting new quests since we can’t do both at the same time after some thinking I decided it’s best to continue existing quests first since
It would feel weird for a player to chat with an NPC that a quest instructed them to only to get a new Quest instead which would be confusing if a new Quest doesn’t immediately activate it’s not a big deal since players weren’t expecting anything to happen in the first place of
Course we can design it so that you can just speak to the NPC one more time to start a new Quest before jumping ahead I want to take a minute to talk about this video’s sponsor Squarespace an all-on-one platform for hosting and building websites they have a ton of
Great templates that you can choose from and I recently use Squarespace to create a website for Chef RPG what surprised me was the amount of customization available and you can mix and match different templates to create Pages suited to your needs Squarespace lets you insert short videos so I put one
Right at the front page which looks pretty cool they have a great automated image scaling system so never have to worry about if images or videos are cropped incorrectly scrolling down we have a system for collecting emails which can be linked to squir business emailing system if you ever need to send
Out important updates they also have great portfolio tools that automatically adjust layouts which allowed me to create a screenshots page where you can click and enlarge individual images it’s definitely a useful platform for artists and designers looking to create an online portfolio or game developers looking to make a website for their game
If you’re interested check out squarespace.com for a free trial and when you’re ready to launch go to squares.com pixel architect to save 10% off your first purchase of a website or domain now back to the video for this Quest I also want a cut scene to play which shows that April’s room was
Destroyed by the boore so we’ll need some new art and a method of changing the visuals of the environment based on your progression in certain quests we’ll just add some trash that’s scattered all over the floor as well as some Footprints from the boore after the quest requirements are met when we enter
The scene we’ll be greeted by a new cut scene after some dialogue you given the choice to accept the quest or not I felt it would be important to include this option since I think it would be weird if characters forced you to help them at least for non-main story quests I think
Having this option would be good of course if you decline you can always come back later and accept the quest this required a bit of extra code but I think it’s worth it for improving the player feel of having the option to accept quests now that we can start
Quests another important thing we need to add is the ability to track your Quests for longer quests that involve a lot of steps we’ll need a way to update the quest log so you can know exactly what to do next going back to RuneScape their simple solution is to describe
What to do next Crossing out your previously completed tasks so let’s update the quest tool tip so that it will automatically update based on your progression depending on your progress the tool tip should now tell you what to do next so we can see here now that we
Have completed the quest intro it tells us we should speak to Bianca about extracting perfect quartz crystals now comes the core of the quest system the many segments that when put together make up the whole Quest let’s create a script that describes these segments and tracks what kind of information we need
For each some obvious segments we need to add are talk to an NPC collect an item go to a location defeat an animal wait a certain amount of time or go to sleep since this is a cooking game we should add one for cooking a dish later
We can also add Quest segments for completing an entire restaurant service or hosting an event for each set segment there’s certain information we should store so that we can customize and edit these quests quickly from the inspector the purpose of building a modular system is to build quests quickly so hopefully
By the end we should be able to create a functional multi-step quest in just a few hours the next segment requires you to chat with an NPC and purchase a new Diamond Drill from her so we’ll need to add an option to buy an item if you’re
Good friends with a character you should be able to buy it for a lot cheaper so we should include a friendship check in quest segments so that sometimes we can benefit from higher friendship we receive a drill which will take us to the underground caves where we can
Extract a perfect quartz crystal I have to add a small bit of code here to ensure that weaker drills do not work on this rock and we will need a Diamond Drill to extract a crystal in this case the completion check requires you to have an item in your inventory so when
The crystal is placed in your inventory the segment updates if we check the progress tab it tells us to speak to April again next April will tell us to bring the crystal to an artisan who can polish it anime in town can do this I thought it would be good to show some
Animations here so we can throw another cut scene here where you would see her doing some work on a rock before handing it back after the cut scene is done we can check the quest logs again to see that another segment is complete it now tells us to cook some vegetarian dishes
In order to make an offering to the spirits of the forest we’ll need to link the restaurant and cooking mini games to the quests if we have a quest it should allow allow you to choose the quest dish to cook when opening the fridge I also
Want the ability to choose a type of dish rather than a specific dish let’s add a new Option here called cook type which gives us a few options to choose from for example we can choose a dish by coarse if we select dessert any dessert dishes will work in this Quest segment
Another way to separate dishes can be by Appliance or whether a dish is a meat dish or a vegan dish in this case I want the player to cook a vegetable dish so we’ll need to add a new category that separates dishes based on food specialty then after completing the dish we’ll
Link it back to the quest manager so that it can check if a quest segment is completed we can see here that the cooking segment is complete finally the toal tip tells us to bring the crystal ball and food offerings to the Deep Woods here I went ahead and created a
Little alter to place the ball after interacting with the alter the visuals should update which also helps to inform the player that another Quest segment is complete now we need to leave it overnight the best way to do this is to Simply check whether the player goes to
Sleep when you wake up it should automatically complete the segment since there is no indication for the player I thought it’d be helpful to add a little chat bubble here when waking up which will tell you when a quest has been updated now if we return to the forest
We should see that the alter’s visuals have been updated the food should be gone and maybe the crystal ball will have changed color I feel that it’s important here to have a script that keeps track of all the different visual changes throughout the world I want your
Progression and choices in the game to have a visual impact on the game world so let’s introduce a World visual manager that keeps track of everything in this case if we have reached a certain point in April’s Quest the visuals of the alar will update accordingly if we come back to the scene
The next day it should still remain the same until we pick up the crystal ball the alter’s visuals should permanently update we can bring this blessed crystal ball back to April which will complete the quest and we’ll receive a reward I think these Quest rewards should be very
Valuable and unique to give players a greater incentive to complete them in this case I also want to add a selection of rewards to choose from to help add to the RPG Mechanics for example here we can reward one pendant that gives a massive boost to your social skill and
Another pendant that gives a massive boost to your Gathering skill this took a bit of extra code in UI work to add these additional buttons but eventually I got it working now we can choose the reward and complete the quest so that’s about it for the modular Quest system of
Course we’ll need to add more options to the system later on to to accommodate other activities it should eventually be a flexible and robust system that allows the creation of quests to be very quick and efficient so I can spend more time designing game content instead of
Writing more scripts we have a lot of interesting stories written for the game so the game should feel a lot more alive once these quests are added in now regarding the eventual release of Chef RPG I was contacted by a lot of Publishers over the past year and was
Very close to signing a contract with some big Publishers but some issues always seem to crop up in the end mostly regarding their contracts that in the end I felt it would be better for me to just release on my own if we had funding from a publisher the plan was to go
Straight for a 1.0 launch with everything I want in the game without doing Early Access But as time went on I began to realize that a lot of the timec consuming things I want to add to the game such as a second City and an extended story aren’t really essential
To the main game from the beginning I could just have planned a cooking RPG game around just one town instead of two and it would still work pretty well the planned billboard City will be very cool once complete it’s one thing to make all
The art but it would also need a lot of attractions and activities to make it a natural and fun part of the game combined with weaving the story line and character quests into billboard City it would take quite a lot of time to complete we’re in a fortunate position
That a lot of players are excited and waiting for the game the game is mostly complete for the first town and I don’t want players to wait forever just so I can satisfy a personal desire to do a 1.0 launch with everything I want even with funding from a publisher I felt
That it wouldn’t speed up development by very much so players would need to wait a long time for the final game either way in the long run the benefit of having full control over the project is that I can add what I want into the game without needing a ton of approvals from
A corporate entity or Worse being forced into adding unnecessary transactions or dlc’s for things that I’d much rather just add for free now that we’re releasing without a publisher the new plan is to do an early access with a mostly complete Game centered around the first town early access will help with
Funding and getting feedback for what we should focus our attention on Billboard City the extended story line and some other areas and features will be added to the game during the Early Access period we’ve also received a lot of cool ideas from you guys over the past year
So I think there are plenty of things to add to the game even after the 1.0 launch we’ll likely launch Chef RPG in Early Access next summer I’ll make a proper announcement and set an exact release date once I have a better idea of the dates of steam events and release
Dates of some other games it’ll be a very exciting f months as we prepare the game for release and get it in the hands of players it’ll also be a very tiring period that probably involves 70h hour work weeks but that’s just the reality of game development I guess hope you
Guys enjoyed this video and seeing how quests are made thanks for watching and see you next time
Head to https://squarespace.com/pixelarchitect to save 10% off your first purchase of a website or domain using code pixelarchitect
Wishlist Chef RPG on Steam!
https://store.steampowered.com/app/1796790/Chef_RPG/?beta=0
Follow me on Twitter!
Tweets by PixelArchitect1
21 Comments
I excited for this game!
I'm the kind of player who might want to avoid certain quests altogether, and I would love it if that did not affect the game longterm. For example, if I choose not to accept April's crystal ball quest, will she continue to ask me about it everytime I talk to her? It would be great if she would "forget" about the quest after a certain amount of time passed.
It would also be great if I could cancel a quest if I feel overwhelmed after starting it. One little thing that bothered me in Stardew Valley was how certain quests didn't have an expiration date so they were always hovering there in my quest tab… Annoying me forever because I never wanted to do them 😂
i hated those mine scorpions omg
have you ever considered doing a video about what resources you used to get started with game development?
Bro, I was going to search you a few hours ago. Luckily YouTube recommended you to me at 24 December 2023 @ 2:02 AM CAT in South Africa.
I've always wanted to play a game with a modular quest system like this but with generated quests instead of pre-planned ones. Everyone you talk to has a chance of giving you a quest, every quest could potentially be one step or a whole long journey, and every quest will have a time limit. If you fail or succeed the world of the game will be changed by that outcome. I'm not fussed on games where you need to play with a walkthrough open in order to not feel like you're getting the bad ending so timed out quests should just be completed by an NPC adverturer unless it's something major like an ogre army threatening a town. Whether it's a child reunited with their cat, or an entire kingdom destroyed. I'd also love if the player can decide how long they want the game to go on for with a button in the quest log to start wrapping up up. Maybe they could also change their focus quest and the main story will change to be about that. I've already been told that this is impossible even though I'm certain all the parts already exist and it's just a matter of connecting them. I just shared because I didn't know modular quest systems existed until now.
With each update, I am more and more drawn to this game ! I’m happy you decided to publish it on your own, so you can do the game of your dreams 🙂 I am eager to play it as soon as the alpha releases !
I can’t wait to play this😮
I don’t know if this going to be a future update already but I wish for important npcs their sprites had different body proportions, heights or postures. I get that it’s a lot of work to redraw sprites but it’s just one of my long time personal nitpicks. Other wise tho I’m pretty happy with how the game looks.
What Platforms will the game release on. Trying to figure out if waiting for a Switch release is plausible
Great Vid! Loved how you explained everything, watching your videos help me with my own game dev journey!
love watching this channel, very inspirational and calming, and I also long for the game so much
I cannot wait to play this game!! Its been so worth the wait and being able to see the BTS of the game makes me appreciate it so much more!! Props to you and your team as well for deciding to release on your own, Im sure it wasnt an easy decision! Keep up the great work and don't forget to look after yourselves during this time!
YIPPEE ANOTHER VID!! I get so excited when these vids come out I always feel like I learn so much. always so interesting too!! so excited for full release but also so cool too see how far it’s come over time 🙂
Is there a chance of interacting with the same npc between multiple questlines? How is that prioritized on which quest to continue? Maybe I missed it if it was explained in the video
What platformers do you use?
Glad you ended up doing what you want instead of trusting a corporate company. Sometimes it can help to funding and to reach more people, but we all know they like to change stuff
My main suggestion about quests is to not always tell the player exactly what to do or who to talk to. Like, "find someone that can carve stone" instead of "Ask Anna May to carve the stone" because that way the player can enjoy figuring it out themselves using the things they have noticed while exploring and talking with characters. Potion Permit always told me exactly where to go and what to do which I found so boring I stopped playing.
i am so excited for this game, no matter how long it would take desperately hoping it will eventually be on switch!
It’s been so inspiring to watch you build this game – that’s obvious maybe – but it’s been so cool to start rabidly wanting to play this game and live in this world! As always, these videos are completely priceless and wholly inspiring. You’re such a star 💕
Cannot wait to buy your game. Love to hear you're following in the footsteps of c
Concerned Ape 🙏