Check out some footage of the Garb & Corncob: Copyright Calamity demo presented at the 2019 Vector Conference!
Last night on Twitch, I made a surprise announcement: Garb & Corncob now has a subtitle! Garb & Corncob: Copyright Calamity chronicles the duo of Garb & Corncob as they go on a quest to free themselves from the shackles of copyright infringement! Catch the full announcement, including the reveal of Corncob’s Unoriginal Form and a tease at the game’s antagonist, below!
Hey everyone. A new month has started, meaning the time has come to post more info about Garb & Corncob. However, you may have noticed the sudden lack of development updates on my social media pages. Unfortunately, I have not been able to share any screenshots or the like for multiple reasons:
- Most of my work this month has gone towards behind-the-scenes efforts like commissioning assets from others and planning marketing materials.
- I got hit with a wave of illness towards the end of the month and needed to take some time to rest for my own well-being.
- There just isn’t too much more I can show at this point in development without spoiling various details about the game.
Taking this 3rd point into account, I intend to wait until more of the game is ready before I continue posting updates. I am actively developing the game, but I ultimately feel that the content currently being worked on should not be shown until it is closer to completion. I would explain further, but again, spoilers. Just know that the project is very much alive and I cannot wait to reveal more about it!
Thank you for your understanding. I hope you’ll stay tuned and look forward to what I’ve got in store!
The spooky month of October has come and gone. Unfortunately, development on Garb & Corncob slowed down this month, as I needed to focus on polishing up Package Handler VR. I still managed to complete a few tasks, though, so let’s take a look at them!
Continuing with my focus on the game’s battle system, I started out the month by implementing win and lose screens. Previously, the game would simply cut to the overworld upon a win or to the main menu upon a loss. But with win and lose screens, these scene transitions appear much less jarring. The win screen currently just displays some win text, but in the future it will likely be updated to include a list of spoils from each battle. The lose screen, on the other hand, allows players to either restart the battle or return to the main menu and load previous save data. This screen also shows dead Corncob. Please do not allow Corncob to die.
Next, I implemented the AP & SP system. Previous screenshots included the UI elements for this point system, but functionality had not been programmed in until now. Players earn 1 AP and 1 SP for each successful standard attack. AP, or Attack Points, can then be used to execute stronger versions of standard attacks. SP, on the other hand, will be used for a mechanic that I intend to reveal much later down the line, as it will not become available until the second half of the game’s first area (and also because I like teasing).
That’s it as far as progress on the game itself goes, but I also began livestreaming work on concept art this month! Check out these 2 pieces of environmental concept art!
Yeah, they’re pretty scrappy, but concept art doesn’t have to be perfect!
Thanks for reading! I intend to continue work on the game’s battle system for the upcoming month, but I feel confident in saying that the basic mechanics are nearly complete. Be sure to tune in next month to see what progress I make!
After wrapping up development on Flewberry and moving back into college, I finally returned to development on Garb & Corncob! I spent this month continuing work on the battle system. Check out what I’ve accomplished!
I previously discussed the game’s 4 planned status effects. I implemented 3 of these effects at the beginning of the month: depression, stun, and burn. At this point, status effects would not expire over time, which lead to the humorous issue of Corncob being permanently stunned.
I then implemented the 4th status effect – yucky – and implemented status effect expiration. I also heavily optimized the code for handling fighters in battle. I originally used separate scripts for Corncob and enemies, but I realized that much of the code contained in these scripts applied to all fighters, regardless of side, so I combined this shared code into a single script. Of course, some of the code remained exclusive to either Corncob or enemies; so I kept the separate Corncob and enemy scripts and simply derived them from the script containing the shared code.
With status effects working for Corncob and the 2 fighter types linked, implementing status effects for enemies was a snap! I only had to make minor changes due to the differences between how Corncob and enemies perform actions (Corncob reads player input, while enemies randomly select an action from their repertoire).
For organizational purposes, I sketched up some custom icons for my enemy and action scriptable objects. I have these 2 types of objects stored together, but they originally shared Unity’s default scriptable object icon, making the assets a bit difficult to navigate. Luckily, setting custom icons in Unity simply entails placing a specifically-named image into the Gizmos folder. Now I can easily determine the 2 object types from each other. You know what they say: neatness counts!
Unfortunately, spending time setting up my Twitch channel and dealing with illness left the latter half of September devoid of screenshots. But fear not! Work is still getting done, albeit at a slower pace right now do to this little hiccup. For now, I am continuing to implement battle mechanics. Once the battle system is done, I plan on fixing up a few things based on what I learned during Flewberry‘s development, and then I will dive into creating the game’s boss battles, which will function a tad differently than regular battles. So get hyped and stay tuned as I work to bring these plans to fruition!
The month of June has ended, so it’s time for another Garb & Corncob devlog! Last month, I completed the game’s cutscene system. Proceeding as planned, I shifted my development focus to tweaking the game’s battle system. Up until this month, I had only shown off the game’s overworld system, but I actually developed the battle system before the overworld when development began back in January and I was following a series of tutorials by xOctoManx. As you’ll see below, I held off on revealing the battle system due to the hand-drawn graphics appearing far more incomplete than those of the pixel-art overworld. Gotta make a good first impression, after all!
The first thing I did when returning to work on the battle system was create icons for status conditions. As with most RPGs, status conditions exist to affect fighters’ performance in battle. Four status conditions are currently planned:
- Yucky fighters have weakened attack and defense stats.
- Burning fighters take damage each turn.
- Depressed fighters have a chance of failing when performing actions.
- Stunned fighters cannot perform any action.
I then realized that the game’s UI should have sound effects to give it some charm. I wanted to give players the freedom to set separate volumes for music and sound effects, but was unsure of the best method for doing so. A simple tutorial search led me to a great video by Brackeys that introduced me to Audio Mixers. This feature of Unity greatly simplified the process of incorporating custom audio settings. By allowing the player to set the Mixer volumes on the main menu, the volumes persist across all scenes, so long as I link my various Audio Sources to their respective Mixers.
Due to E3 viewing, TooManyGames planning, and other projects requiring my attention, development slowed down during the middle of the month. While I had not made any progress during the week of the 16th, I conveniently forgot to post these 2 indifferent emotes when I first drew them. These emotes are the first ones added in since the Steamed Hams parody, which included smiling, joyful, angry, shocked, and sad emotes for both Garb and Corncob. Not all of these initial emotes were visible in the video, but they are all available as emotes in my Discord server (there’s nothing wrong with shamelessly promoting yourself in your own server).
Corncob is lying here. I attended TooManyGames this weekend and had these screenshots planned in advance, but it completely slipped my mind to have him make a post until the final moments of Saturday. Anyways, here’s the long-awaited first look at the battle system! Inspired by the likes of Final Fantasy and Pokemon, players and enemies take turns performing actions, which include melee attacks, projectile attacks, and healing. Corncob will be the only controllable party member (although he will not be battling alone, wink-wink) and up to 3 enemies can be present in battle. As you can see, the battle system still uses placeholder art: a rough sketch of Corncob with varying colors, the Garb Streams background, and some circles. I’m still trying to decide on what sort of art style I’d like to use for battles, but for the sake of getting it up and running I’m sticking with placeholder art for now. You may also notice that Corncob is animated, with separate poses for attacking and taking damage. Certain boss enemies will also have these animated poses, but for basic, randomly-encountered enemies, I’ve decided to limit them to a single pose in order to cut down on production time.
Before the initial battle system reveal, I added some polish to how multiple enemies are handled: duplicate enemies are now labelled with A, B, or C, and enemy spawn positions now change based on the number of enemies in battle.
I had used prefabs for storing enemy data up until this point, but I decided to switch to scriptable objects, as they are better suited for storing data. I have already heavily incorporated scriptable objects for storing region, action, and projectile data, so setting up scriptable objects for enemy data was pretty simple. Corncob broke down how all of these scriptable objects work in the thread below.
Development on Garb & Corncob will slow down for the month of July, as I participate in Kentucky Fried Pixels. I’m hoping to use my experience from this game jam to make Garb & Corncob even better! Thanks for reading, and I can’t wait to see where the road ahead takes us!
Hey all! Last month, my mascot Corncob began sharing behind-the-scenes screenshots of Garb & Corncob on his Twitter. I thought it’d be a good idea to compile these screenshots into monthly devlogs here, and that’s just what I’m going to do, starting with what was posted during the month of May!
This month, efforts went toward completing the game’s cutscene system. The Steamed Hams parody posted on April Fool’s Day first showcased this cutscene system, but much has been added since then.
My first priority after getting the basic cutscene system working was to implement a cutscene trigger. In the Steamed Hams parody, the cutscenes automatically executed upon startup. This worked for the video, but it of course will not work for a playable game. To ensure seamless transitions between player input and predefined cutscenes, I created a trigger containing cutscene data that activates once the player steps into it, disabling player input while the cutscene is active.
Next, I implemented functions that weren’t required for the Steamed Hams parody but will be required for the final game. These include moving the camera, changing the music, fading the screen, and pausing (the Steamed Hams parody appeared to have pauses, but in actuality I set an object to move off-screen).
While the cutscene system was fully functional at this point, it looked like a mess in the inspector. In order to streamline the cutscene creation process, I wrote a custom editor that only displays necessary property fields (no need to see the Move properties if I’m currently working with a Pause command) and displays certain variables within the labels of expandable fields. I initially had some difficulty with learning how to incorporate lists into my custom editor, but a tutorial from Catlike Coding proved immensely helpful, giving me just what I needed to make this custom editor work.
Finally, now that the cutscene system supports screen fades, I figured I’d also have the screen fade when the player moves between doorways. A screen fade was seen in the Steamed Hams parody, but I merely applied this transition when editing the video. Now, screen fades occur directly in the game.
With work on the cutscene system complete (for now), I am shifting my focus to the game’s battle system. I don’t have much to reveal about it at the moment, but I’ll be sure to share more information as development continues, so stay tuned!