This project helped me learn so much, in this final evaluation, I look through what I've learnt over the 8 weeks of working on Beat City.
Published on January 22, 2020 by Amy Elliott
Dev Blog College
9 min READ
The development of my project has been influenced by my drive to want to be a programmer, I’ve pushed myself with the programming side of making this game, by trying out new things and adding features which I’ve never tried before, for example, I tried getting music selection from the players own music source working, and I managed to get that working, and that was a big achievement for me, since I didn’t know where to start, I did get 2 peoples help to get this working though, but through their help and through annotating the code has helped me understand how that worked and taught me how to do that if I wanted to do that again later on, it’s also taught me more about the System.IO namespace and the classes within that, and how using that namespace, I have more access to the player’s computer data, so I can pull information like the players name and read what files they have.
Since I was really interested in the technical art path of the games industry, my research into making shaders using a shader graph has been really helpful since I’ve learnt so much about making shaders for my game, for example, the sun in my game and how it moves by using a mask which moves up and down and emits a bright gradient, another way my game has been influenced through my chosen profession is that I wanted to create this game all by myself, like an indie developer would, from the 3D models to the code, and how it was all presented. One thing which I didn’t do myself was the sound effects, since they’re all royalty free, and alongside this, I’ve also advertised my game, like an indie developer would do, to get more people to see and play my game.
Doing stuff like this is very helpful if I want to go down the indie developer route, since it would allow me to get critique for my game, and feedback, helping me further improve and fix the bugs for my game, and if I needed money for the game, I could always charge for it on there as well.
Researching into indie game development in my Critical Report has greatly helped me since I have followed the steps which an Indie Developer would usually take to publish their own game, that being uploading my game to itch.io, a game streaming site. Uploading it there has taught me how to advertise my game to get an audience, and how to share my game on social media for others to see.
Using the analytics tool on my itch page, I can see where most of my players come in from.
This is the advertisement I done on my social media.
But to my surprise, all of the downloads and views game in from people viewing the site in general.
But viewing this from the URL I can tell the tags which I used with my game really worked well, and most of my views were from the tags Free and Rhythm.
This, from my research is how indie developers publish their game for free and get their players.
From my research as well I wrote about how Indie developers have to have a broad knowledge, so they know how to do a bit of everything, which is what I’ve been trying to do with my games for the past year, and I love how the workflows of an indie developer are different everyday, because I found myself working on Sound Effects one day and Physics the next day, and it’s nice to have a change like that
I’ve done a lot of different things for this project, to try to learn as much as I can and prepare myself for the final project.
In my project I used shaders to achieve effects on my materials, the different types of effects which I have achieved have been all for different purposes, which have helped me learn how I can use shaders for lots of different things; for example, one of my shaders was used for the sun, to make this shader I had to use masks to achieve the look I was going for, I also had to make the mask move to make the sun move. Another way I used shaders to achieve something cool was when I made shaders for the buildings when they crack. The shader itself wasn’t amazing, but getting it working is what was the most helpful, since now I know how to reference a materials variable and adjust it through the script.
I used music selection in my game so the player character can use whatever music they liked to control the rhythm game, if I were to make another rhythm game or another game with some sort of music system, I now know exactly how to do it and access the players own music files, I can also use this method to access other file types, or the players name through using the User on the PC’s username, that could be used in a player name or it could be used in a visual novel or some game which refers to you by your own game
I used rhythm detection as a large part of my game, since the whole city has to bounce to the sound of the music, but I can also use the rhythm detection I used on the city on other parts of the game, or anything I want to really, similar to what I done with my Captain Says game. I love having music which is being interacted with through rhythms and beats in the game since I feel like it makes it look so much nicer and cooler.
I had a combo system in my game which detects how high the player character is and displays how good they’ve jumped, and the higher the combo, the higher the score multiplier is, I find that scoring systems like this are a lot nicer, since you can get really high scores for hitting high combos, or playing well, and it’s satisfying to get that, whereas if you got a really high combo or you played really well but you only got the same score which you always get for every jump, then the player would be dissatisfied with getting better with playing your game
Making missions in my game is very useful, since if I ever want to make a game which has missions in, I now know the best way to implement them through the trail and error I had adding them into this game, I feel like adding missions to any game would make it more complete, and fun and challenging to play, and players would keep coming back to play the missions and try to complete them if they fail.
In this game I had to edit the physics to get it to work how I wanted it to, I didn’t want the player character to fall too quickly or too slowly, so I made it so the player character moved at a speed I was happy with by simply adjusting the physics settings, now I know this is here and can use it to my benefit later on when I’m next making a game which relies on physics.
A reflection and an opinion I got from my development blog is that I work better when I plan a week in advance instead of a month (or longer), since I can plan my week on the Monday and have my week sorted, whereas if I plan a month ahead I don’t know if I’ve set too much or too little for that long period of time, whereas if I set loads or too little for a single week of work, I can always extend deadlines or finish it all and add some more plans if I finish early, so I try to plan as much work as I can for that week just so I’m constantly working on something.
I feel like my planning has worked really well, since I’ve planned my week ahead instead of any longer (above question) - This has worked very well for me and kept me on top of my toes.
Another thing that has worked really well is my use of my Trello board, since it really helps me plan properly, make checklists and set deadlines.
I don’t think my save data I made for the game worked well and I should’ve gave myself more time to get that working so I could get it working with my gold as well, I wish I could’ve set up an upgrades system in my game.
I have learnt so much to do with programming and I’m glad that I have, since these programming skills can be put to use for my final project, another thing that I learnt which was very useful is how to make an itch.io game page, even though I’ve made a few in the past, I’ve learnt things about my game page which I can do which I haven’t done before.
I have also learnt some interesting tips about how to advertise an indie game well, and I’ve made my own screenshot pictures for my game by brainstorming my favorite catch phrases I can use for my advertisement