Categories
Uncategorised

Game Dev Journal Week 6

Game dev journal

Week 6

Today I began thinking of ideas as to what I should create as a mechanic I was split between two ideas. One being a basic recreation of the tanks minigame from Wii Play (2006) by building on the base that was created through the programming fundamentals tasks. The other being a 2d static platformer shooter where I would have to create the ai from scratch and change the shooting for players

I decided to focus on the shooter as creating everything again will give me time to improve using what I have learnt and will give me greater control than the base we already have. I created the player block and worked on collisions, however I had ran into an issue with the way I drew the block which lead to issues with collisions and adding the gun that points to the cursor. I had to fix the draw function to get the gun rotating correctly

Today I finished implementing collision detection using the AABB method outlined on the Mozilla website (Mozilla 2020). I used this method because I want my prototype to be made of simple blocks and this collision detection method will work best with those and it also means that the system can be easily applied to all of the objects I want it to. I created an array to keep track of all colliders at the moment I have to manually add each collider to the array which will not work once I create enemy spawning but this was purely to test the collisions. An issue I ran into was that the collision would never detect I later found out that this was because I had not been checking the colliders parent, because of the way that I have made colliders they are their own separate object that you can add to an object this is to make adding collisions easier to objects with minor tweaking between each, but the colliders don’t have an x, y, width, height because that’s all stored in the parent and when I forgot to specify parent the script would just ignore the if statement. However that is now fixed and it properly detects when a collision has occurred.

Today I finished the colliders by adding a system to act once a detection occurs. It first determines what side / direction the collision occurred in and then pushes the two away from each other the biggest issues with this system is that the two objects can sink into each other if they keep trying to move inwards. I added bullets into the prototype but at the minute they are not working with the position being reported as NaN. I also added the enemies

References:

Nintendo (2006), Wii Play [Video Game], Nintendo

2D collision detection 2020, Mozilla, viewed 30October 2020, https://developer.mozilla.org/en-US/docs/Games/Techniques/2D_collision_detection

Categories
Uncategorised

Games Dev: Mechanic Prototype Ideas

I began with two ideas in my head. A 2d top down static tank game reminiscent of Wii Play (2006) tanks where the player would fight a wave of enemies in a level there were around 100 levels designed for it. With the base we created during the programming fundamentals tasks I could use it and create the ai and wave system from there.

My second idea was to create a 2d side view arcade wave shooter inspired by Super Crate Box (2010) in that game enemies would spawn from the top and fall down onto the platforms below and the player would have to kill or avoid them. I hope to recreate this but add a few different mechanics and see how it changes the flow of gameplay. I also chose this idea as it would be better to recode everything from scratch as it would give me a chance to apply what i’ve learnt from the fundamentals lessons

References:

Nintendo (2006), Wii Play [Video Game], Nintendo.

Vlambeer (2010), Super Crate Box [Video Game], Vlambeer.

Categories
Uncategorised

Ethics in Computer Games

Video games (more prominently in mobile games) prey upon individuals who suffer from addiction through the use of loot boxes and microtransactions that are designed to focus onto these people and exploit them through a hook habit hobby where they hook the player and have them download the game and then incentivise the player to spend money therefore making the player feel more invested and making it their main hobby. The key to this strategy is making the player feel like spending money isn’t a bad thing in the game and to incentivise social spending where people who spend are announced to over players in a positive way to make other players want to spend more. All of this preys upon people who have shopping or gambling addictions by trying to coax them into spending until they give in and begin the destructive cycle that leads to more and more payments and microtransactions for the game to either gain an advantage or to roll for a chance of a good item

References:

PocketGamer.biz (2016) Let’s go whaling: A guide to monetisation through in-app purchases. Accessible through https://www.pocketgamer.biz/comment-and-opinion/63871/monetisation-lets-go-whaling/, accessed on 24/10/2020 Jim Sterling (2019) The Addictive Cost Of Predatory Videogame Monetization (The Jimquisition). Accessible through https://www.youtube.com/watch?v=7S-DGTBZU14 accessed

Categories
Uncategorised

Dev task: Research Post

I chose to look at Jesse Schell’s Lens of action from “The Art of Game Design, 3rd Edition 2003” which is about the actions that the player can and cannot do in the game. I will be looking at Dead by Daylight (Behaviour Interactive (2016), Dead by Daylight [Video Game], Behaviour Interactive)

This game is split into two sides with 1 killer and 4 survivors. Survivors have to escape and the killer has to stop them. The basic actions the survivors can perform is; moving, sprinting and repairing generators, these actions allow the player to run away from killers and work on the objective of the match (escaping by powering generators). The basic actions for killers are; moving and attack, these actions are purely for finding and chasing survivors which is the only goal for the killer.

The strategic actions that the survivors can perform are; vaulting windows and pallets, throwing down pallets and various perk actions that can slow down being caught, all of these actions are designed to slow and prevent the survivors from being chased or caught and to allow them to traverse obstacles faster than the killer can.

The strategic actions that the killer can perform are; vaulting windows, breaking pallets, the killers actions are fewer and simpler but this is because the killer instigates the chases and is faster than the survivors. The survivors are given a variety of tools to escape the killer because without many tools their actions would be more predictable and would make the killer’s objective easier

I believe that the ratio for actions is well balanced for the games goals and objectives, it leads to varied and interesting gameplay and has a high skill ceiling for players to work towards

Categories
Uncategorised

Drawing Pad Task 2

I’ve added the ability to change the width of the tools by using A and D

I’ve also added a tool that creates squares

https://toddnorrish.nuacomputerscience.co.uk/paint/paint.html

Categories
Uncategorised

Sustainabliliy in games

Older disk games are the least sustainable due to the requirement of materials for the disks, pc games can be even worse for this as when the pc gets older if the parts get replaced it can stop the user from playing the game at all due to drivers or operating system changes. More advance DRM (anti-piracy software) started using codes which gave the copy limited uses and meant that the user would need to buy a new copy if they wanted to reinstall it. Later the codes were replaced with online verification this however brings about new issues along with online games which require servers to be running in order to access the software this means that once the software stops getting supported or the servers get turnt off no one will be able to play them anymore without modifications removing the limitations and DRM.

PC’s are machines that have advanced tremendously in the past decades however this means that they require upgrading and changing more often along with needing more power to function and more materials for the components as they increase in size and capability

Categories
Uncategorised

Reasons why I’m so cool

  1. I want to do games development because I enjoy coding, problem solving and want to add to the industry that’s brought me joy over the years

2. From this handy function we can see that even machinery is not immune from noticing my coolness

if (Todd.isCool)
{
    Console.Log("Oh wow look at Todd he's so cool");
}
else
{
   Console.Log("Oh wow look at Todd he's so cool");
}

Notice how the machine can only reply with “oh wow look at Todd he’s so cool, it’s a testament to how cool I am