hallo! Today we are back at it with another Hollow Knight guide! Today we are diving into the Charms Menu. There is a lot of repetition here, so if you donât have the guts to copy the same 4 devices over and over and over (20 times) again, well just leave now! Well, have fun!
harharharhar83
hey im back for a split second. im still not coding like on my own yet but i have figured out the names of some of the things used for code and i can actually build things if someones tells me exactly how to do it (i made clicclacs board game map thing). once again theres a lot in this section too which i would not be able to handle on my own so im still just the advertisement
tired_rat (again)
So here are the 8 parts to our Guide! Yippee Skippee!
Part 1: The Inventory & Map Menus Click Here
Part 2: The Charms Menu (Thatâs this one)
Part 3: Resting Click Here
Part 4: Items (In development)
Part 5: Relics, Shards, Abilities, & Nails (Not out yet)
Part 6: Map Pins/Charms (Not out yet)
Part 7: The Hunterâs Journal (A Guide to Bugs) (Not out yet)
Part 8: Bosses (Not out yet)
Part 9: Locations/Mapmaking (Not out yet)
Warnings
WARNING: Memory Intensive
WARNING: Device Intensive
WARNING: Includes Blocks
WARNING: Length Alert
WARNING: Major Repetition
WARNING: Unclear Sections
WARNING: Organization is key. Make sure you are organized!!!
Letâs jump right into:
[] The Ultimate Guide to Hollow Knight
Charm Menu
Intro: Hey guys! Make sure to read Part 1 before continuing! So, youâve done that? Good! So, you remember that we put together the menu system for the Inventory and Map. Well, now itâs time to do that for the charms! Ready? Letâs do this!
Chapters:
- Review
- Charm Menu Set-Up
- Collecting Charms
- Equipping Charms
- Poll
Review
So lets review what we did in the last TUG to Hollow Knight. First we created a Menu Page that had 3 sections: Inventory, Map, and Charms. Then, we created the Inventory Menu. After that, we made the system to Check the Map. Finally, when we made the Charm section and we had the first CTA[1] broadcast on Open Charms Page 1
. Here will build the Charm Menu.
Charm Menu Set-Up
So this part will set up the charm menu and make it so you can see your equipped charms and so you can equip charms when resting on a bench.
Devices:
- 2x Pop-Ups
- 1x Notification
- 8x Property
Pop-Up 1 (Equipped Charms)
For this first Pop-Up we are going to set it to show the equipped charms and remaining charm notches.
Settings:
So first letâs set the header toEquipped Charms
and the content toNotches Left: 3 | Equipped Charms:
. Now letâs have it open when receivingOpen Charms Page 1
. Looks-wise set the font toStaatliches
and the color toR 33 G 33 B 33
. For the first CTA name itBack
and have it broadcast onOpen Menu Page 2
. The second CTA should be namedNext
and have it broadcast onOpen Charms Page 2
. Finally, add some blockcode that runs when receiving onUpdate Charms Equipped
:
Explanation:
When this Pop-Up is opened it will show you the charm notches left, and the charms equipped. The first CTA takes you back to the Menu and the second CTA sends you to the next Charms Pop-Up. It should look like this:
Pop-Up 2 (Equipping Charms)
Okay this Pop-Up will give us the option of Equipping or Unequipping charms.
Settings:
Now letâs start by setting the header toEquipping Charms
and the content toWhile resting on a bench you can change which charms you want you want equiped. (WARNING: Unequipping charms unequips all charms).
. Now letâs have it open when receivingOpen Charms Page 2
. Looks-wise set the font toStaatliches
and the color toR 33 G 33 B 33
. For the first CTA name itEquip Charms
and have it broadcast onEquip Charms
. The second CTA should be namedUnequip Charms
and have it broadcast onUnequip
. Finally, add some blockcode that runs when receiving onEquip Charms
:
Explanation:
This Pop-Up gives us the option of either equipping charms or unequipping charms. When we click the first CTA, the blockcode will run and check if we are on a bench. If we are on a bench (ie. On Bench = true), then it will broadcast onEquip Charms Now
. If we are not on a bench (ie. On Bench = false), then it will broadcast onEquip Charms Later
. It should look something like this:
Notification
This notification will inform the player that they cannot put on charms unless they are on the bench.
Settings:
When receiving onEquip Charms Later
have it send aError
notification that has a title ofMust be on Bench
and a content withTo equip a charm, open the CHARMS menu while resting on a bench.
.
Explanation:
Whenever the blockcode above checks runs, it is checking for if a player is on a bench. If they are not, the notification will tell the player they must be on a bench. It should look like this:
Properties 1-8
These properties will store the names of the charms equipped. We will do more with these properties later, for now we are just creating them as placeholders.
Settings:
All you need to do for these properties is have them broadcast onUpdate Charms Equipped
and give them each a unique name from the list:
Equipped Charm 1
Equipped Charm 2
Equipped Charm 3
Equipped Charm 4
Equipped Charm 5
Equipped Charm 6
Equipped Charm 7
Equipped Charm 8
Explanation:
Whenever these properties get a name of a charm put into them, they will update the Pop-Up with the name of the equipped charm, making it look like this:
Okay! Now that that partâs out of the way we can move onto collecting charms! 80+ Devices! Yippy Skippy!
Collecting Charms
This part of the guide is HUGE on repitition! You should probably take breaks when doing this because it is a lot. Dont while reading the device list.
Devices:
- 20x Pop-Ups
- 22x Properties
- 20x Buttons
- 20x Notifications
Pop-Up 1 (Wayward Compass)
This Pop-Up will originally show ??? but, when they collect the charm it will show: [Charm Name]. Letâs gooooooooo!
Settings:
First set the header text to???
and the content toNotch Cost: ??? | Desc: ???
. This Pop-Up should open when receiving onEquip Charms Now
. Now for the color useR 33 G 33 B 33
. For the first CTA name itEquip
and have it broadcast onEquip Wayward Compass
. For the second CTA name itNext
and have it broadcast onNext Charm
. Finally run this blockcode when receiving onWayward Compass
:
(The part that is cut off is this:Notch Cost: 1 | Desc: Whispers the bearer's location while a map is open. Unexplored areas stay for twice as long and pins are shown all the time.
)
Explanation:
At game start this Pop-Up will have a bunch of ???. However, when the player collects the charm the ??? will switch to a description of the charm. Then, it will set the Wayward Compass Property to âtrueâ letting the computer know it was collected. Here is what it will look like:
Pop-Up 2-18 (Other Charms)
Below is a ârubricâ to set up each of these nineteen pop-ups, each one to represent a charm.
Settings:
Looks -
- Header: ???
- Content: Notch Cost: ??? | Desc: ???
- Color: R 33 G 33 B 33
Channels -
- First CTA: Have it be named
Equip
and have it broadcast onEquip [CHARM NAME, SEE BELOW]
- Second CTA/Open when receiving on: The first Pop-Up will open on
Next Charm
and broadcast onNext Charm 1
. The second Pop-Up will open onNext Charm 1
and broadcast onNext Charm 2
. You see the pattern here? Continue that pattern all the way up to the eighteenth charm.- Run blockcode when receiving on:
[CHARM NAME]
Blockcode -
Pop-Up # - Name - Description
2 - Sprintmaster - Notch Cost: 1 | Bears the likeness of a strange bug known only as "The Sprintmaster". Bearer can run 1.5 times faster than usual.
3 - Grubsong - Notch Cost: 1 | Desc: A charm filled with the gratitude of freed grubs! The bearer gains soul when taking damage.
4 - Thorns of Agony - Notch Cost: 1 | Desc: Senses when the bearer is harmed and lashes out at the world around them. After taking damage, thorns will grow and deal damage.
5 - Dream Wielder - Notch Cost: 1 | Desc: Contains the dreams of dead bugs. The bearer gains more soul when killin-g an enem-y.
6 - Glowing Womb - Notch Cost: 2 | Desc: Drains the soul of the bearer to spawn Knightlings. Knightlings have no desire to eat or live and exist only to protect the bearer.
7 - Shape of Unn - Notch Cost: 2 | Desc: Reveals the Unn within the bearer.
8 - Sharp Shadow - Notch Cost: 2 | Desc: Contains a forbidden spell that turns shadows into deadly weapons. When the bearer uses Shade Cloak through an enem-y, they deal the enem-y damage.
9 - Lifeblood Heart - Notch Cost: 2 | Desc: Contains a living core that seeps lifeblood. When resting the bearer gains a thin layer of lifeblood.
10 - Soul Catcher - Notch Cost: 2 | Desc: Used by shamans to draw more soul from the air around them. Increases the amount of soul gained when striking an enem-y with your nail.
11 - Dashmaster - Notch Cost: 2 | Desc: Bears the likeness of an eccentric bug known only as "The Dashmaster". Allows the bearer to dash more frequently and faster.
12 - Fury of the Fallen - Notch Cost: 2 | Desc: Embodi-es the fury and heroism that comes on all of those who are about to di-e. When close to dea-th, the bear's health will increase.
13 - Baldur Shell - Notch Cost: 2 | Protects its bearer with a hard shell while focusing soul. The shell is not indestructible and will break if it takes too much damage.
14 - Lifeblood Core - Notch Cost: 3 | Contains a living core that bleeds lifeblood. When resting the bearer gains a coating of lifeblood.
15 - Shaman Stone - Notch Cost: 3 | Said to contain the knowledge of past generations of shamans. Increases the power of spells, dealing more damage to foes.
16 - Flukenest - Notch Cost: 3 | Living charm born in the gut of Flukemarm. Transforms Venegful Spirit into a horde of baby flukes.
17 - Deep Focus - Notch Cost: 4 | Naturally formed in a crystal over a long period. Draws in soul from the surrounding air. The bearer will focus soul at a slower rate, but the healing effect will double.
18 - Kingsoul - Notch Cost: 5 | Holy charm signifying the union of two higher being. The bearer slowly gains soul from limitless soul within.
Explanation:
At game start this Pop-Up will have a bunch of ???. However, when the player collects the charm the ??? will switch to a description of the charm. Then, it will set the [CHARM NAME] Property to âtrueâ letting the computer know it was collected.
Pop-Up 19 (Fragile Greed)
Settings:
First set the header text to???
and the content toNotch Cost: ??? | Desc: ???
. This Pop-Up should open when receiving onNext Charm 17
. Now for the color useR 33 G 33 B 33
. For the first CTA name itEquip
and have it broadcast onEquip Fragile Greed
. For the second CTA name itNext
and have it broadcast onNext Charm 18
. When receiving onFragile Greed
run this blockcode:
(Note:
1st G/U -This charm is fragile. If the bearer di-es it will break.
2nd G/U -This charm is broken, its powers are hindered until it is repaired.
Create text with (Part 1):Notch Cost: 2 | Desc: Causes the bearer to find more geo upon killin-g the enemie-s.
)
Explanation:
At game start this Pop-Up will have a bunch of ???. However, when the player collects the charm the ??? will switch to a description of the charm. For the description the computer checks to see if the charm is broken, unbroken, or fragile and then sets the text accordingly. It should look like this:
Pop-Up 20 (Fragile Strength)
Settings:
First set the header text to???
and the content toNotch Cost: ??? | Desc: ???
. This Pop-Up should open when receiving onNext Charm 18
. Now for the color useR 33 G 33 B 33
. For the first CTA name itEquip
and have it broadcast onEquip Fragile Strength
. For the second CTA name itClose
and have it broadcast onClose Charm Pop-Ups
. Close the Pop-Up when receiving onClose Charm Pop-Ups
. When receiving onFragile Strength
run this blockcode:
1st G/U -This charm is fragile. If the bearer di-es it will break.
2nd G/U -This charm is broken, its powers are hindered until it is repaired.
Create text with (Part 1):Notch Cost: 2 | Desc: Increases the bearers strength, causing players to cause more damage with their nail.
)
Explanation:
At game start this Pop-Up will have a bunch of ???. However, when the player collects the charm the ??? will switch to a description of the charm. For the description the computer checks to see if the charm is broken, unbroken, or fragile and then sets the text accordingly. It should look like this:
Okay that should be all for the Pop-Ups. Hope you had fun with that! Maybe you should take a little break here. Eat some or take a .
Ready? Good!
Properties 1-20 (Charms Collected?)
Settings:
Make 20true/false
properties with a default offalse
. Give them each a unique name from the list:
Wayward Compass
Sprintmaster
Grubsong
Thorns of Agony
Dream Wielder
Glowing Womb
Shape of Unn
Sharp Shadow
Lifeblood Heart
Soul Catcher
Dashmaster
Fury of the Fallen
Baldur Shell
Lifeblood Core
Shaman Stone
Flukenest
Deep Focus
Kingsoul
Fragile Greed
Fragile Strength
Explanation:
Whenever the player collects a charm, it will set the property totrue
, so the computer recognized it as collected.
Property 21+22 (Greed/Strength)
Settings:
Create atext
property with a default ofFragile
. Then give each a unique name from the list:
Strength
Greed
Explanation:
This will tell the computer weather the computer is Broken, Unbreakable, or Fragile.
WE ARE IN THE HOMESTRECH (of this section)!!!
Buttons 1-20
Settings:
Have Button Message sayCollect
and have its visible-in game set toNo
. Have one button for each charm, and have it broadcast on[CHARM NAME]
.
Explanation:
When a player clicks a button it will broadcast based on what charm it is. So if this charm that they are collecting is Wayward Compass, it will broadcast onWayward Compass
.
Notifications 1-20
Settings:
Set the title toCharm Collected
and the content to[CHARM NAME]
. Set the type toInfo
. Finally, have it send when receiving on[CHARM NAME]
.
Explanation:
Based on what charm it is, it should look something like this:
Phew that is done! Maybe wait till tomorrow to keep readingâŠ
Equipping Charms
Okay this part is a lot and unlike the last part, it is not a lot of repetition. It has A LOT of blockcode too.
Devices:
- 27x Triggers
- 13x Properties
- 2x Notifications
Triggers 1-20 (Selecting Charms)
Settings:
Create one of these for each charm. Make the triggers trigger when receiving onEquip [CHARM NAME]
and it should broadcast onEquip
, when triggered. Run this blockcode as well:
Explanation:
When the player attempts to equip a charm, the computer stores the charm name and charm notch cost for future reference.
Trigger 21 (Verifying Equip)
Settings:
Set this trigger to trigger when receiving onEquip
, and have a delay of1
. Then, run this blockcode:
Explanation:
First, the blockcode sets the Charm Selected Property to a variable to save blockcode space. Then, it checks to see if the player owns the charm they selected. In they donât it broadcasts onNo Charm
and if it does it checks if it already equip, so that way they canât equip it twice. If it is already equipped, it broadcasts onAlready Equipped
. If they own the charm and havenât already equipped it then it broadcasts onEquip Verified
.
Trigger 22
Settings:
Set this trigger to trigger when receiving onEquip Verified
, and have a delay of1
. Have it broadcast onAdd Charm
when triggered. Then, run this blockcode:
Explanation:
After the blockcode sets the variables, it checks to see if the player has enough notches. If they donât it broadcasts onOvercharmed
. If it does it checks to see if Slot [#] = true(ie. it already has a charm in it) and Slot 2 = false(ie. it does not have a charm in it). When it finds an empty slot, it sets the charm name into the Equipped Charms [#]. If there are no empty slots, it broadcasts onOvercharmed
.
Trigger 23 (Subtracting Notches)
Settings:
Set this trigger to trigger when receiving onAdd Charm
, and have a delay of1
. Have it broadcast onDisable Slot
when triggered. Then, run this blockcode:
Explanation:
When the charm is set, the computer needs to get rid of the notches. First, it broadcasts on[CHARM NAME]true
, then it recomputes theavailable notches
andused notches
.
Trigger 24 (Setting Filled Slots)
Settings:
Set this trigger to trigger when receiving onDisable Slots
. Then, run this blockcode:
Explanation:
This code will check for the most recent empty slot and set it too true (ie. Filled slot)
Trigger 25 (Unequip)
Settings:
Set this trigger to trigger when receiving onUnequip
. Have it broadcast onRestore Defaults
when triggered. Then, run this blockcode:
Explanation:
It resets the Charm Properties.
Trigger 26 (Restore Defaults)
Settings:
Set this trigger to trigger when receiving onUnequip
. The, run this blockcode:
Explanation:
It turns off the charm abilities if they were on.
Trigger 27 (Notch Collecting)
Whenever someone collects a NEW charm we need a way to reset the available notches to include the new charm.
Settings:
Set this trigger to trigger when receiving onNotch Collected
. The, run this blockcode:
Explanation:
Recomputes Available Notches and Total Notches after collecting a new charm.
Notification (No Charm)
Settings:
Send aerror
-type poll with a titleNope
and with this content:You don't have that charm!
. Have this send when receiving onNo Charm
.
Explanation:
When it receives on the channel that shows the player doesnât have the charm they are trying to equip, it sends a notification that looks like this:
Notification (Already Equipped)
Settings:
Send aerror
-type poll with a titleAlready Equipped
and with this content:You already have this charm equipped!!
. Have this send when receiving onAlready Equipped
.
Explanation:
When it receives on the channel that shows the player already has that charm equipped, it sends a notification that looks like this:
Notification (Overcharmed)
Settings:
Send aerror
-type poll with a titleOvercharmed
and with this content:!
. Have this send when receiving onOvercharmed
.
Explanation:
When it receives on the channel that shows the player has too many charms/notches, it sends a notification that looks like this:
Properties side note: There will be no explanation because they are pretty self-explanatory
Property 1
Settings:
Name this propertyCharm Selected
.
Properties 2 + 3
Settings:
Set this to anumber
property and give it a default of0
and give each a unique name:
Charm Selected Notch Cost
Used Notches
Properties 4 + 5
Settings:
Set this to anumber
property and give it a default of3
and give each a unique name:
Total Notches
Available Notches
Properties 6 - 13
Settings:
Set this to atrue/false
property and give it a default offalse
and give each a unique name:
Slot 1
Slot 2
Slot 3
Slot 4
Slot 5
Slot 6
Slot 7
Slot 8
WE ARE DONE!!!
Polls
Another two polls!
- Yes
- No
- 0/10
- 1/10
- 2/10
- 3/10
- 4/10
- 5/10
- 6/10
- 7/10
- 8/10
- 9/10
- 10/10
- 11/10
Outro: So that concludes that. So in this guide we: Established a Charms Menu that shows Charm Notches & Equipped Charms, created a system that only allows you equip charms on a bench, it shows the Charm names/descriptions after you collect them, and fill Charm names into specific slots based on whatâs available. Now, if something doesnât work/isnât comprehendible just ping me & tired_rat! Keep a lookout for Part 3!
Call to Action â©ïž