Link to the game: Cultist Clicker
As the first assignment, I needed to make 4 game prototypes. The first was a cookie clicker clone, where the player repeatedly clicks to generate cookies and then spends those cookies for upgrades that increase cookie production and so on.
Design and Sprites
I decided to make my version of the game into one where the player uses various methods to grow their cult and take over the world.
I made 5 main sprites, with the primary clicker button being the cultist and the other 4 being the upgrades.





The Scripts
I was still very new to Unity and C# so I initially just followed the video tutorials, making the scr_click script first before later adding audio elements to it.

The main bulk of the script covers the process that follows clicking the main cultist button, with the void Update() checking for number changes every frame and updating them in the relevant text boxes, listing how many cultists the player has, and also how many they gain from each click.
The rest includes FMod integration for audio, setting up and playing the click sounds that accompany pressing the main cultist button.
The next script was the flyers upgrade, which increased the number of cultists the player gains per click of the main button.

The bulk of this script deals with how to price the upgrade, setting the initial price, and adjusting the multiplier, going from a flat 1.15x initially as seen in the muted line 33 to a more flexible power multiplier in line 35.
There is also a custom function in ‘public void PurchaseUpgrade()’ allowing the code to wait until the player has interacted with the upgrade button before then checking if the player can afford it, then going on to subtract the cost and increase the amount the player gains per click.
The last chunk of script deals with the information of the upgrade, making it so that when the mouse is over the upgrade, relevant information like the current cost, effect, and name of the upgrade are shown in a text box, and hidden when the mouse leaves.
Then there is also audio integration for a separate sound used for the Upgrade buttons, which is also present in the other upgrade buttons but I don’t need to keep mentioning.
Next was the scr_autoClick, which was a necessary precursor to the per second upgrades as it checks if any of the per second upgrades have been bought and updating the ‘xx cultists per second’ text box before running the coroutine, ‘MakeCultist()’, to add the amount of cultists set by the upgrades with a set delay of 1 second, meaning the main code for the three upgrades could essentially sit on top of this one, using it as a base code that they merely changed the variables of.

The bulk of the three upgrades is stuff already covered with costs, audio, showing info with the mouse over it. The only real difference is that instead of changing the cultists per click in the scr_click script, it changes the cultists per second in the scr_autoClick script.



Then the final script I made was a simple quality of life change that allows the player to close the game, with the void Update() checking every frame whether the ‘escape’ key has been pressed, closing the game if it has, meaning that the player can now close or restart the game without reloading or closing down the page.

Changes I Would Make Next Time
Next time there are a few tweaks I would make to change up the game a bit and make it a bit more interesting. Passively, a good way to improve would be to have unique sounds for each upgrade button that fit their upgrade more specifically.
In terms of gameplay I think the main issue is the costs as they, especially for the second two upgrades, become unsustainable very quickly after a few upgrades, making them not worth upgrading as it takes too long to afford them. This could also be countered by adding more middling upgrades to smoothen the rise in costs with a smoother increase in earning
Another thing I would add would be an end goal, e.g. 8 billion as you have now successfully got every member of humanity to join your cult.