Browsing '5SD023': Game Programming II

Game dev – Game states

I created three types of game states using Jonas Lundgrens GameStateManager. These are: PlayState, PauseState and CustomizeState. The PlayState holds the actual playable game, the pause state exists as a first state that is entered when pausing the game. The CustomizeState exists for the player to be able to customize stats using pickups collected in the game.
The GameObjectManager
I described how this manager works in my last post, but I will do so again. It stacks states on top of […]

/ Comments Off on Game dev – Game states
Program: Programming

Game dev – Game states

I created three types of game states using Jonas Lundgrens GameStateManager. These are: PlayState, PauseState and CustomizeState. The PlayState holds the actual playable game, the pause state exists as a first state that is entered when pausing the game. The CustomizeState exists for the player to be able to customize stats using pickups collected in the game.
The GameObjectManager
I described how this manager works in my last post, but I will do so again. It stacks states on top of […]

/ Comments Off on Game dev – Game states
Program: Programming

EntityManager, collision is a breeze

It was a little while ago that I finished the Entitymanager for our spaceshooter project. However today I am going to explain how it works and why it makes collision so much easier for our game.
Lets first look at our Entitymanager.h

Which includes a vector of Entity pointers, a SpriteManager pointer and a map that will control collision.
First there is the constructors, which are not really important at this point. One of them contains a pointer to the sprite manager, […]

/ Comments Off on EntityManager, collision is a breeze
Program: Programming

EntityManager, collision is a breeze

It was a little while ago that I finished the Entitymanager for our spaceshooter project. However today I am going to explain how it works and why it makes collision so much easier for our game.
Lets first look at our Entitymanager.h

Which includes a vector of Entity pointers, a SpriteManager pointer and a map that will control collision.
First there is the constructors, which are not really important at this point. One of them contains a pointer to the sprite manager, […]

/ Comments Off on EntityManager, collision is a breeze
Program: Programming

Pre-alpha

I would have done a blog post when i got home last night but it was past eleven so i figured i’d do it today.
Yesterday we had a seminar about genus through history on which i did coding and wrote my weekly blog post, during the afternoon i has second thoughts about going to the worskshop but in the end i did it anyways, might as well as Leo couldn’t make it to school until right after it ended. We spent […]

/ Comments Off on Pre-alpha
Program: Programming

Pre-alpha

I would have done a blog post when i got home last night but it was past eleven so i figured i’d do it today.
Yesterday we had a seminar about genus through history on which i did coding and wrote my weekly blog post, during the afternoon i has second thoughts about going to the worskshop but in the end i did it anyways, might as well as Leo couldn’t make it to school until right after it ended. We spent […]

/ Comments Off on Pre-alpha
Program: Programming

Codename: Haunted Light – SpriteManager

This week and the previous one have been great! We’ve managed to fix most of the game engine’s core features. In the forthcoming days we’ll start working on some simple gameplay implementations.
The development library we use for Haunted Light is SFML (Simple and Fast Multimedia Library). Well the name speaks for itself but it’s a simple-to-use framework to communicate with all the Input and Output devices of the computer. Without a development library you’d have to write code that directly […]

/ Comments Off on Codename: Haunted Light – SpriteManager
Program: Programming

Codename: Haunted Light – SpriteManager

This week and the previous one have been great! We’ve managed to fix most of the game engine’s core features. In the forthcoming days we’ll start working on some simple gameplay implementations.
The development library we use for Haunted Light is SFML (Simple and Fast Multimedia Library). Well the name speaks for itself but it’s a simple-to-use framework to communicate with all the Input and Output devices of the computer. Without a development library you’d have to write code that directly […]

/ Comments Off on Codename: Haunted Light – SpriteManager
Program: Programming

Artifact Blogpost


I will be talking about an artifact I’ve worked on this week. I’ve been working on a functionality for hiding, it has been delayed by several things. At first i was starting work on the guards until i checked my phone and saw that Oliver had already started doing that so that’s two hours down the drain. Then Git stopped working and delayed me for another three hours. Eventually i was able to do actual work on it however. First […]

/ Comments Off on Artifact Blogpost
Program: Programming

Artifact Blogpost


I will be talking about an artifact I’ve worked on this week. I’ve been working on a functionality for hiding, it has been delayed by several things. At first i was starting work on the guards until i checked my phone and saw that Oliver had already started doing that so that’s two hours down the drain. Then Git stopped working and delayed me for another three hours. Eventually i was able to do actual work on it however. First […]

/ Comments Off on Artifact Blogpost
Program: Programming

Game dev – Programming – Rooms, collisions, pause state, textiles and prioritizing work

Intro
Much has been done with the project, I will describe the different parts that I was a part of. Each part is described in detail in each section.

I made a RoomManager which holds and handles, you guessed it, rooms.
I worked with Malin Lundqvist with collisions between room walls and the avatar, line vs circle collision.
I created a pause state which uses Jonas Lundgrens StateManager, which “freezes” the PlayState logic while still drawing it.
I added textiles that are objects able to […]

/ Comments Off on Game dev – Programming – Rooms, collisions, pause state, textiles and prioritizing work
Program: Programming

Game dev – Programming – Rooms, collisions, pause state, textiles and prioritizing work

Intro
Much has been done with the project, I will describe the different parts that I was a part of. Each part is described in detail in each section.

I made a RoomManager which holds and handles, you guessed it, rooms.
I worked with Malin Lundqvist with collisions between room walls and the avatar, line vs circle collision.
I created a pause state which uses Jonas Lundgrens StateManager, which “freezes” the PlayState logic while still drawing it.
I added textiles that are objects able to […]

/ Comments Off on Game dev – Programming – Rooms, collisions, pause state, textiles and prioritizing work
Program: Programming

Rooms done, and some AI

Today was a good day for my programming. I managed to put collision in all the rooms of our game. There was one room where it didn’t want to work but I’ll check why tomorrow. I probably just sent the wrong file to Tomas (while I made the collisionpoints for every room I sent the files to him so he would implement them). Tomorrow I will make some changes to the Collisionpoint-maker program so he can use it on the […]

/ Comments Off on Rooms done, and some AI
Program: Programming

Rooms done, and some AI

Today was a good day for my programming. I managed to put collision in all the rooms of our game. There was one room where it didn’t want to work but I’ll check why tomorrow. I probably just sent the wrong file to Tomas (while I made the collisionpoints for every room I sent the files to him so he would implement them). Tomorrow I will make some changes to the Collisionpoint-maker program so he can use it on the […]

/ Comments Off on Rooms done, and some AI
Program: Programming

Everything sucks.

Today we had a meeting with Andreas for supervision on our coding, we discussed the different things we would need to do before our pre-alpha presentation this Thursday. He gave us some ideas on what we could cut before it and some pointers on easier ways of doing things.
After that it turned out that the class wasn’t until 1PM so we got down to F15 almost an hour delayed. When we got there i decided to sync up my project […]

/ Comments Off on Everything sucks.
Program: Programming

Everything sucks.

Today we had a meeting with Andreas for supervision on our coding, we discussed the different things we would need to do before our pre-alpha presentation this Thursday. He gave us some ideas on what we could cut before it and some pointers on easier ways of doing things.
After that it turned out that the class wasn’t until 1PM so we got down to F15 almost an hour delayed. When we got there i decided to sync up my project […]

/ Comments Off on Everything sucks.
Program: Programming

How am i supposed to get any work done with all this planning?!

Not much about Friday since i forgot and don’t really remember much other than that we had Andreas Miko stop by since we missed our meeting last Tuesday, i also finished the player’s rotation by mouse. I was also told that i should place the renderwindow pointer in the input manager rather than the player in case i needed something else to rotate by mouse. I’ll do that before the end of the project.
Today we worked on our sprint planning […]

/ Comments Off on How am i supposed to get any work done with all this planning?!
Program: Programming

How am i supposed to get any work done with all this planning?!

Not much about Friday since i forgot and don’t really remember much other than that we had Andreas Miko stop by since we missed our meeting last Tuesday, i also finished the player’s rotation by mouse. I was also told that i should place the renderwindow pointer in the input manager rather than the player in case i needed something else to rotate by mouse. I’ll do that before the end of the project.
Today we worked on our sprint planning […]

/ Comments Off on How am i supposed to get any work done with all this planning?!
Program: Programming

Circles, check

2014 02 10 03:28.
I wanted to fix the circles as well. I wanted to make solid circles, just like I did the rectangles. This was acually mainly for my own sake. Two of the circles push each other around and the third stays where it is.
I thought I would just have to do it exactly like I did with the rectangles, but it didn’t quite work out that way.
I first checked if the distance between the circles centres where lesser […]

/ Comments Off on Circles, check
Program: Programming

Circles, check

2014 02 10 03:28.
I wanted to fix the circles as well. I wanted to make solid circles, just like I did the rectangles. This was acually mainly for my own sake. Two of the circles push each other around and the third stays where it is.
I thought I would just have to do it exactly like I did with the rectangles, but it didn’t quite work out that way.
I first checked if the distance between the circles centres where lesser […]

/ Comments Off on Circles, check
Program: Programming

Rectangles, check.

2014 02 08
Ok, now I have covered the rectangle collisions. Now I can have them behaving as they should. I made two of the Three rectangles able to push each other and the third one just stands its ground like a wall.
I only had some issues with the rectangles jumping around the other and one time I made rectangle nr 1 move when nr 2 and nr 3 collided. Which was quite ammusing. Sorry, the code for that one is […]

/ Comments Off on Rectangles, check.
Program: Programming

Rectangles, check.

2014 02 08
Ok, now I have covered the rectangle collisions. Now I can have them behaving as they should. I made two of the Three rectangles able to push each other and the third one just stands its ground like a wall.
I only had some issues with the rectangles jumping around the other and one time I made rectangle nr 1 move when nr 2 and nr 3 collided. Which was quite ammusing. Sorry, the code for that one is […]

/ Comments Off on Rectangles, check.
Program: Programming

Colliding some more

Ok, today was a scrum meeting. Sprint planning.
I had almost colmpeted the circle circle and rect vs rect. I sat down Before the meeting and tommi was there. I had overthought my check collision functions. I had a bool function to iterate through the elements of the collider arrays and compare them with each other, and every time an overlap was true, the checkcollision function was returned true.
That means every time two object collided, the funktion stopped because it was […]

/ Comments Off on Colliding some more
Program: Programming

Colliding some more

Ok, today was a scrum meeting. Sprint planning.
I had almost colmpeted the circle circle and rect vs rect. I sat down Before the meeting and tommi was there. I had overthought my check collision functions. I had a bool function to iterate through the elements of the collider arrays and compare them with each other, and every time an overlap was true, the checkcollision function was returned true.
That means every time two object collided, the funktion stopped because it was […]

/ Comments Off on Colliding some more
Program: Programming