dwightingale-blog
dwightingale-blog
Dwight's Gamedev Blog
1 post
A simple blog about me learning how to make computer games
Don't wanna be here? Send us removal request.
dwightingale-blog · 8 years ago
Text
Faire Le Pas - A Gamedev Blog
tI don’t actually speak any French, but my understanding of the phrase “Faire Le Pas” is that it means “take a step”. I don’t know if that’s the correct tense, or if it’s “take the step”, but I think it means to “take action”. Someone who actually speaks French could correct me, but for my current purposes it works well. It should become clear what I mean by taking action later, but the word “pas” which means “step” or “footstep” or something, according to Google translate. It is also an acronym for the general structure of the main section of these posts: Problem, Action/Attempts, Solution (this post is not following that structure). The “problem” section will describe what problem I am facing. The “action/attempts” section will describe what I have tried to do in order to solve the problem. It is important that the “s” is silent because the word “solution” suggests that I am done with the subject at hand. I’m currently learning how to develop video games, so any “solutions” are completely up in the air, temporary, and subject to change. This could be because fixing one thing leads to other things breaking, or because I found a better (cleaner, faster, etc.) way of doing things, or a million other reasons that I haven’t figured out yet. That’s because the Faire Le Pas sections of this blog will be focused on learning. 
So, what am I doing?
Anyway, this post is starting to sound a lot like a way to procrastinate working on a game, so here’s a screenshot of the one I’m currently working on:
Tumblr media
Alright, it’s ugly. I think it’s somewhere slightly above programmer art. Only slightly, but that’s totally fine. I’ve searched the #gamedev tag on tumblr and seen a lot of beautiful games and I think that’s fantastic, but I am a writer and a programmer. I can do two things! I may expand on this thought later, but I am really trying to take a “just make the game” approach. If I didn’t make a game because I haven’t invested the thousands of hours that these amazing artists have into their craft, then it would be another reason to procrastinate making a game for thousands of hours (and end up not ever doing it because art is hard). 
I’d like to be structured and organized. I’m going to try to stay away from long posts like this in the future and mostly stick with the “pas” structure I described in the first paragraph. I’d also like to have some other sections, such as a section for talking about my other media interests (film, Pathfinder, video games, literature, music, computers).
I’d also like to stay accessible. One thing I’ll try to do is break down technical concepts into easy-to-understand language. This is a challenge to myself as a writer. I’d love any feedback that anyone has.
About me
I don’t want this post to be too long so I’ll give a quick background on me: I am a college graduate, I have an English Major and a Computer Science Minor. I know how to program in C++, which was a difficult language to learn but has helped me a ton in learning gamedev. I was unable to teach myself how to program, I had to learn it in school, and I was lucky to have a great teacher. I have heard stories of these fabled creatures who taught themselves how to program, which sounds amazing to me, but I had a lot of help getting where I am. The most important skill I learned in college surrounding programming was how to learn how to program. That meant figuring out how to Google things all over again, how to take notes on what I was doing, and how to properly ask for help. Although I know C++, I am bound to get things grossly wrong to people with greater knowledge than me, so feel free to correct me on any wild posts I make. I’ll try to avoid getting that technical in the first place. 
About the game
I started on this game a while ago. According to my twitter I have been working on it since the end of August, but I really haven’t locked myself into a regular schedule. I really want to start that, but here’s what I have done so far:
The engine (program for making video games) I am using is called Godot. I decided on Godot because after trying out Unity and Unreal Engine 4. I soon learned that I wouldn’t be able to make a 3D game with my current skills, and that Godot was a pretty advanced, free, open source engine that has an (apparently) amazing set of 2D game tools. I say apparently because I am still a novice, and I wouldn’t be able to tell you whether or not these tools are better than others, since I have so little experience with other tools. Regardless, I love it. I’ve managed to get a few things working.
First, I made a simple Pong (watch your volume) clone based off of the Godot documentation’s tutorial on it: http://docs.godotengine.org/en/stable/learning/step_by_step/simple_2d_game.html . This is a good starting point for people who know how to program, and want to use Godot. It taught me how the general structure of Godot worked, and how to get things to move around on a screen. Godot is like any other creation program-- think Microsoft Paint. You have a place where you view your creation, and a bunch of tools you can use to make things happen in that place where you view your screen. You can also pull in things from other programs, like pictures. I make all of my “art” in gimp, which is another free program. Gimp is basically Photoshop without the exorbitant price tag. 
After I finished with that I got started on a little game where you fly around and pollinate flowers as a bee. I figured out then that I wanted to make a game that was out of my skill level-- I hardly knew how animation worked and I really wanted my bee to look like it was flying in the wind. I tabled that game idea and backed down to the Pelican game, a comfortable little game where I could learn how to animate, and how to finish. This is my current milestone goal-- finish the pelican game. Once I finish it, I’ll be able to start a new chapter in this blog and in my game development career. 
Here’s what my Pelican game does:
It has a little Pelican guy that walks around in 8 directions.
He also has animations for 4 directions, and they all overlap in a logical way (if you have ever played top down 2D Legend of Zelda games, it’s almost exactly like those games). This has been the most difficult programming challenge for me.
It has a tileset, a set of squares that I can use to paint a background for my Pelican to walk around in.
My Pelican has an invisible box attached to it that touch invisible boxes in my tileset. When they overlap, my Pelican stops moving. This is so he can’t walk into the water. 
There is also some programming logic to stop my Pelican from stopping completely when he hits the water. He can slide along the edges of the water. It feels very natural when playing it. 
Here’s what I want my Pelican game to do (in no particular order):
Have the fishing rod in the Pelican’s... wings able to be cast into the water at different distances depending on how long they hold the ‘cast’ button.
Have the fishing rod be able to catch fish and display them, possibly on a score board of some kind.
Go into a separate minigame screen that the player can interact with to catch fish.
Have a start screen menu, and an options menu, and a pause button.
Possibly have some kind of structure or explanation for the game-- do I want it to have levels? Or a straight story like an RPG?
Anyway, I don’t yet know how to solve these problems, but I’m currently working on the animations for the fishing rod being cast. I hope to update every Sunday, so stay stay in the loop if you are interested! Also let me know if you have any suggestions or advice. I’m new to tumblr and blogging as well. Thanks for reading.
-Dwight
0 notes