Games Development programming
I've always been the type of person to go "Oh wow look at that small attention to detail" or "This is a sick mechanic I wonder how they did that!" and always wanted to find out whether it was me thinking how I would code it in my head or researching online or looking at dev blogs but all the times I was amazed it was something to do with the code, I have a saying when it comes to beautiful things in games. "It may have the looks to please a player but an object is just lifeless without a touch of code." I've always seen code as the blood flow when it comes to games weird take on that I know but it is the most needed basic when it comes to games and even the language itself is fascinating and in my opinion easier than learning something like French or Spanish as its unique way to understand how a computer works and one skill that people depend on in the industry and with that I want to make something that will inspire someone else the same way I was, that's why I choose to program as my speciality.
From the start of college, I've learned a lot of new skills that have helped me grow over the years going through the units with Dan Firth in the first year learning how to model a robot in 3ds max then later translating that skill into Maya with Jordan. The robot was made up on paper before the model was made I first took references from mainly movies and games. The first part I drew up was the body and for simplicity's sake, I wanted to take the main body of Wall-e from the Pixar film (WALL-E) with that in mind the next part was the head, during this time we were learning how to use tools such as the extrude tool which aloud I pull or push a face inside or outside the main body, wanting to go through with something that will show that basic tool in use, I decided to reshape the main body and also make it the face of the robot, the best way for me to do this was to turn the body into a box tv, I got carried away with this idea and thought it was "cute and friendly looking" with that out of the way I quickly made up some basic faces to be shown on the screen of the face. The next part I drew up was the legs I did not have a main idea of how to draw it but in my blog, I said "I tried to go for something that looks advanced but can be easily made in 3d." that's when I came up with the Omni ball as I playing bone works at that time and some of the enemies from that game had robot that stood up and moved around by a ball. I drew that same idea up and then moved on to coming up with the arm design, "with the basic style I was going for, I chose to add mechanical claw hands because nothing screams robot more to me than claw hands, to start off the arms I used the human skeleton to give me an idea on where I should add joints to give a good range of freedom like where the shoulder are elbow ect." (Zak Annetts, 2023)
with the sketch done all I had to do was to recreate the 2d sketch into a 3d model, I did this by focusing on the front part when applying new parts of the model such as the arms or the legs, using cylinders as the arms and spears for joints. Once the main model was assembled it was time to add details, and I thought it would look cool to add some details on the back of the model so I added some USB ports and HDMI to give it a modern touch.
I then worked on learning how to code 2d games in Unity by Dan Lynhan which has led to learning how to code in a 3d environment which also led to me making games from my FMP into some personal projects and games titles being Freeze tag, Spell rusher, brick breaker remake, project ball bounce. As well as some game jams that have led to projects like TowerCity.
During the first year as well I had also was taught how to animate 2D using After Effect and 3D with Maya by Jonathan, when learning how to animate 2D in After Effect I was taught the importance of squash and stretch when it came to my bouncing ball animation to give it more bounce to it to give it more character and more realistic, I also learned about key areas of a walk cycle and to use my walk as a reference when it comes to animating a 3d model or humonoid figure, by mapping out how and where both my feet are touching the floor and the point where they cross.
for the first year FMP I Made a game demo on my own all about bouncing a ball around a map to solve puzzles, its main purpose was to show off how much I can learn to create advanced mechanics and show off them to others the final result turned out great but due to time and technical problems I wasn't able to create some puzzles and the dev test map was used as a little play area which consisted of multiple targets that when hit by a projectile will turn green for a short time these targets mostly was placed floating in the sky with some was placed behind glass with an opening that had a slanted wall that was placed so that the player could bounce the projectile off the wall to reach the target behind the glass.
Over all i was pleased with it.
going into the second year I started making more models and made a collection of medical fantasy objects such as a wizard's hat, wooden mug, table and chair.
With a lot of work finished during the first year, I needed a place to put all of the finishing results so we were taught by Kim how to plan out and produce showreels, it wasn't as easy trying to get all of my work to show off as I never really organised my finished work in places that could be access with ease so I've made sure from that day I organised all my finished work on a separate drive or in a folder named "finished".
The next unit was unit 12, an emerging technologies essay which is the most improvement that is noticeable in my time learning in the course the key things that I learned in this unit were first finding different and hard-to-reach websites that had credibility which means avoiding websites like Wikipedia as that was easily changeable so there could be false information or miss interpreted info, however instead of using Wikipedia id look at their references and sources that they had listed at the bottom then cross-checking facts with one website with my search on google to see if other websites say the same thing then one that was good and checked it then time to log every resource I used no matter how little information was gathered and used, I learned how to show those references in Harvard style referencing when it came to my Bibliography. Another skill that I used was my writing skill, I lacked skill in writing but I made up by being able to use words to spread my message this unit helped me pay attention to the words I spoke and then write them word for word while changing parts to be readable to a wider audience which also then was shown to my teachers for feedback time and time again to double check on any unclear sentence or basic error I made or needed to change. there was also the key skill of understanding what the reader would like to read and see, so I tried to grab key photos of the current topic of the paragraph to keep the reader intrigued and help them visualise and understand better when going into details of certain parts of the topic.
for unit 8 I worked in a group to create a game that would inspire people to visit a museum, I've worked on coming up with puzzle concepts and possible features that would improve interactivity and engagement in the museum experience, and I managed to block out part of the level.
For this FMP, we, as a group, Joseph Bowman, Mitchell Whittaker, Alex Needham, Zak Annetts, and Kyle Williams, aim to create a detailed and realistic First-Person Shooter. The Players will spawn on the map and have to find advanced weapons to fight against their opponents. Play in teams of two to capture the enemy's base or go against each other in a wild, Free-For-All PvP Deathmatch. In this game, the player can switch between found weapons with four guns to select the best choice for the task at hand. The play time of a match will depend on the players, with a two-team match lasting anywhere from 5 to 10 minutes with three rounds. The Free-For-All will last however long it takes to reach a target of fifty eliminations.
Programming:
Mitchell Whittaker - Coding and Animations.
Joseph Bowman - Coding, Sounds, and UI.
Zak Annetts - Coding and Server set up.
Design:
Alex Needham - Level Design, Grey Boxing, and Modelling.
Kyle Williams - Level Design and Modelling.
UI - Joseph Bowman
There will be a simple main menu showing the map in detailed screenshots, fading from one to another. There will be a simple pause menu, so the player can leave the game and return to the main menu. A UI at the top will show the top players and their scores when in a match. In Capture the Flag, it will show the team scores at the top. There will also be a settings menu allowing the player to change the in-game settings.
Music & Sound - Joseph Bowman
There will be music, but we do not plan to create it for the game. We will use copyright-free music from music sources. The game will have sound effects for aspects like shooting, explosions, and flash bangs. Visual effects in the game will include flash bangs, bullet holes, explosions, and more.
The controls will be simple and stick to the keyboard layout. The player will use the movement keys to walk around and run with the shift key. The player will be able to jump and crouch with space and control. The player will have areas to climb, including ladders and stairs. They will be able to climb onto building sides after jumping close.
Map, Weapons & Art style - Alex Needham + Kyle Williams
We will have a single map set in an offside military base, with weapons strewn throughout the map. There will be warehouse buildings where the military used to operate. Throughout the map will be props like shipping containers, crates, and fences. The map will have a realistic style but will be simple to save time.
We will create a functioning game demo or the level in Unity. We will host this online for anyone to play. It will be a downloadable zip and anyone can play for free. We may later expand on it and make it a fully paid game.
We will use a wide range of studio resources. Furthermore, we will use Autodesk Maya for modelling and Substance Painter for creating the in-game textures. The game will be built in Unity, making use of the tools to create the levels and mechanics.
Throughout this project, we will use teams to gather feedback on forms and demos and use the feedback to improve our game. We will ask our peers and tutors for feedback to get a look at the aspects we are missing. This will also be a way to gather bugs, so we can remove them. While developing, it is common to miss bugs as you are noticing other issues or features. My proposal and time planner will be used as a basis to work from while I create the project. This proposal document allows me to break my workload down into a weekly format, which makes working on it much simpler. The proposal will allow me to state my intentions and explain my ideas and concepts to peers, who will then provide me with feedback to use at the start of my project.
For research, I will start by creating some surveys for use as primary research to get an idea of what area to prioritise to make an enjoyable multiplayer experience. I will need to research each method of networking and net code, I will look at major games like Call of Duty and Halo, and I will also heavily look at indie games that have achieved similar goals to what I'm researching, for secondary research I will also look at youtube videos that explain the whats and the hows of networking and net code, to understand the difficulties of making a game multiplayer I will try to find interviews with developers from games that they worked on and advised on how they fixed their common problems.
As multiplayer is of key importance on this project and if it is rushed it could lead to the project's entire downfall, however, if it gets into a satisfactory condition agreed by the team I will be able to move on and assist other programmers workload to keep the projects production speed efficient as possible.
For the project, we will be using Unity to build the game. The reason for Unity is that it is the software I am most comfortable with, and it will be a chance to show my skills without learning a new engine. I will need access to Visual Studio as it is my scripting program of choice. I will also need access to GitHub, as it will be the tool used for sending the game back and forth between developers. To get this all to run, we will need access to a PC and an internet connection. I want to have a look at and get accustomed to a tool to learn during this project is a part of photon or another tool for multiplayer. I will need to understand it as I am working on the code which must function in multiplayer whilst also making it stable and usable.
To properly evaluate this project, I will maintain a weekly log of my accomplishments and challenges that I faced during the week. This will help me identify what requires more attention and what parts I can move past. Followed by this are weekly meetings with the team I am a part of to cover everyone's progress and how well we did, this will be an excellent opportunity to confer with them about my work and confirm my opinions on how well I've implemented my tasks.
I will also go over the final product to see how well as a whole I did by looking at what I have learned and how I could implement more effective techniques and methods in certain areas, doing this will also help me in the future to refer to for useful guides or workarounds when working on a similar project or implementing particular mechanics.
I will also refer to my peers and tutors. Having outside feedback will help me identify what I will need to work on if parts or sections of my work are not understandable or questioned.