Goblin Horde: Sprite Sheet
So another game I am working on is called Goblin Horde. This project is just to build a prototype. I wanted to see if I could build a simple game from scratch, unfortunately, due to some stuff with another programmer who is no longer on the team(for other reasons), and to keep things simplified, we ended up using the sample game here as a base for the logic. However we've redone the assets, slowly (still working on that) and I've been rewriting the programming every now and then to suit our needs. This brings up it's own issues, because if I had written the program I would know how it works, and I would know (more or less) how making a change to one part of the programming, would effect other parts of the programming. Anyways, what I want to talk about is making this sprite sheet:
| Goblin Spritesheet |
Here's an animation that I had to add:
![]() |
| A goblin swinging his sword |
1 - Since the goblin is jumping and literally moving up and down in this animation it increases the height of the dimensions needed to play this image by a lot, something I didn't want to deal with.
Solution - I ended up moving the goblin down so that his feet were on the same level on every frame. This works, because the game itself moves the image up and down when the player jumps, so the animation itself does not need to have the goblin actually lifting up into the air.
2 - This animation shows the goblin both "jumping" and "landing". This means that the goblin needs to jump and land at a precise timing.
Solution - one thing you have to realize is that the timing is not going to be precise, because the time it takes for the goblin to jump up and down on level ground is not the same time it takes for the goblin to jump up and off a cliff and then land on the ground below. So, to fix this, I had to do two things: The first thing I had to do was divide the animation up into two different animations. One animation is for "jumping" (which ends when the goblin reaches the peak of his jump) the other animation is for "falling" (which is the rest of the animation). After setting up these images, I got that added bonus that if the goblin simply walks off of a cliff, it will still play the falling animation without doing the jumping animation, which would look weird. The second thing I had to do, was I had to add a new functionality to the animation class. This is because, with the way the class was setup, there was no way to have an animation play once and then stop on the last frame. As it was setup, animations for attacking would simply be swapped out for another animation as soon as the animation was finished. Here's the code with my alterations.
3 - The image shows the goblin preparing to jump, but the program will have the goblin lift up into the air immediately. This might look weird as the goblin crouches down to prepare for a jump but simultaneously, he lifts off the ground and into the air
Solution - this was probably the easiest problem to fix as I simply sped up the animation so that by the time he lifts off the ground, the crouching part of the animation is finished and so it looks "organic enough" to get away with.
4 - The very last part of the animation has the goblin hit the ground and crouch to "settle" as his body absorbs the force of his weight. Then he moves back into a standing position. This is pretty hard to see from the animation above, as that animation is playing too fast. The problem is that this part of the animation got grouped into the "falling" animation and so the goblin now crouches and stands up in as he is falling in the air.
Solution - okay this is actually something I still need to fix. This essentially requires me to make a new animation "action" called "landing". This action occurs when the goblin hits the ground and all that happens, is the goblin plays this animation. I have yet to do this because I know that it requires me to create a new "action" and I hadn't added new actions or deleted any of the actions that were already present. ("falling" was an action already present).
Phew. Overall it has taken me about 4~5 hours, to implement all the animations currently available (coding and testing included), and I still need to add another attack animation, and I need to get a walking animation from my artist at some point. Suffice to say it has been a learning experience to work on this sprite sheet. :3
P.S. I also am about to sign onto a new project for the summer. This project is supposedly going to pay. yes! And I think it might even be money they are paying! No more of those stupid peanuts! Don't want to talk too much about it, but I'll say it's a kids game about saving endangered animals, and the scope is relatively small so I think it will be pretty reachable. I'll talk more about it as it develops. Btw, I'll be working with another reddit user, and if you didn't know this, I only eat free-ranged meat and I love cute things, so this game seems to be right up my ally, plus.... money!?
- Thanks for reading, leave some comments below.







