02 03 04 05 06 07 08 09 10 11 12 13 14 15 16

Dec 28, 2014

Making Skelly Dungeon, a Zelda clone part 3

It's been a slow week since it's been Christmas and all. Last week I finished movement and for the player and this week I've gotten around doing the Rooms. I ran into some problems concerning collision with walls which I'll sort out later and the next step is managing more rooms as well as switching rooms.

The rooms are now defined and usable! In a text file you write down the name of the room, width, height and what all tiles are which are then loaded into a two dimensional vector and then translated to the corresponding tiles.

This makes it so the level designer can implement the levels without the programmers aid, which is good practice.

The only tiles supported right now are ground and walls, and the walls are created separate as objects with collision. Later I plan on implementing doors which would then lead to other rooms.

Speaking of other rooms, that is the next mission in this. We want to be able to go into different rooms and have them connected. And I have a plan for that. I have a room manager which holds all rooms in a map which can search be searched to find the room in question. You can even name the rooms special things to remember them by.

Another problem I ran into was collision with walls. The problem comes from diagonal movement from the player which makes the player move 0.7~ in both x and y direction when moving diagonally as to not speed up. The problem is when a float is converted into a int the float gets rounded down no matter what. This makes it so moving positive in x direction lowers the movement while moving negative in x direction speed up the movement.

Either I have to remove diagonal movement or I have to find out where the horrible float to int conversion takes place and fix it in some way. But as it doesn't break the game right now I'll deal with it when it comes.

Next task in line are:

  • Enable changing rooms
  • Doors
I also need to talk to my partner about how we're going to split the workload. It's hard to figure out at the early stages of programming experience since I tend to get stuck in my own thought process and I can't "help" without figuring everything out myself.

Welp. I hope it works out at least. See you next time~~

Dec 20, 2014

Making Skelly Dungeon, a Zelda clone part 2

A week has gone by and we've gained a foothold on our project we feel confident in. With Github me and Dee can easily work on the project at the same time without trouble. And now that we've implemented some of the basic functions I can see the whole project coming together.

What we've done this week:

  • Player can now move and it feels natural
  • The players animation works while moving. There are a few errors here which will be fixed later
  • We have included hearts which can be picked up and a Item class for objects that can be picked up, which will make other pickuppable items easy to handle.
  • We have walls which have collision, so you can't move through them.
While it might not seem much, there is a lot of generalization so we can work with everything in the future.

This is our to-do list for the next week:
  • Give the player a sword with animations
  • Create enemies which have collision with the sword
  • Make a system for rooms which is composed of walls and ground sprites

I'll most likely be working on the room system. I got really inspired by the animation lecture we had before the break which read in a text file with information on how the animation would look like. If I could create a text file with information on how the room I want looks like then the program could interpret that into the actual room. Then I could even make a room editor so that anyone could make levels for the game.

That will probably be the next update. So until then have a good time!

Dec 14, 2014

Making Skelly Dungeon, a Zelda clone part 1

I have now started working on the last assignments for the first programming course. The assignment consists of using SDL, a library for media functionality additions to C++, to make a clone of an old school video game.


The Team


On this assignment I'm working together with Dee Majek whom you can find here: https://gamedesignandthings.wordpress.com/

The Game

We've chosen the first Zelda game for NES to clone. We wanted to make something along the line of a dungeon crawler inspired buy nethack, but since ASCII art didn't fit with the assignment we chose to start out with Zelda and perhaps make some fork in the road ahead and add our own design.

The Start

So far we've made a list of objects in the game and written down their properties, behaviors as well as their relationships with other objects. This will create the framework for when we'll start coding the objects into the game. These objects are the player, the enemies, the items, pretty much everything in the game is considered an object.

During the project, we will write what needs to be done and then order them in a priority list. Every time we continue working on the project, we look at the list and pick an unfinished task and update the task to "in progress". When the task is finished then you mark it as such and look at the next task in line. When a priority level is finished, you can move to the next level and work on that.

Updates

And I'll be updating our progress on this blog! Expect pictures, code and perhaps even design reasoning. Oh, you want a picture now? Sure, hang on.

Picture of potential player