Posts

Showing posts from April, 2022

Day 12: Gamedev.js Jam 2022

Image
I submitted my game!!!!!!!  Today is the final day to submit the game and I did it! All I had to do today is to add some sound effects and some minor tweaks. I added a particle emitter object to appear when the boy dies. I tried to add a particle effect for the "You Won" text to appear as confetti but it didn't work. Then I watched a tutorial on how to export the game and upload it to itch.io . I followed the steps and uploaded my game. At first, the resolution was not right, so I had to change it. I need to learn about different resolutions for games to avoid such kinds of problems. I also created a GitHub repository for my game. Even though this is not a fun game to play (at least for me), I feel proud for creating this game and participating in this game jam. I might write another blog post on my experience with this game jam. 

Day 11: Gamedev.js Jam 2022

Image
Today I built the Credits screen! I don't know whether this is the correct way to build the Credits screen but somehow I did it. I also use the grid for the first time. It is a useful tool to align objects. Then I built the logic to blink the texts that appear at the top of the screen. It took so much time to build the logic for the "Play Again" text. I will need to review the docs for the event system of GDevelop later.

Day 10: Gamedev.js Jam 2022

Image
Today I made some small changes to my game.  I added a game title using a pixel font. I also changed the background of the Main Menu to as same as the Play scene and added some apples. I decided to add instructions and tutorial texts at the top of the screen. And I also added a back button when in the Play scene. I installed the Blink behavior to make the boy and the health blink when the snake bites.

Day 09: Gamedev.js Jam 2022

Image
Today I did a lot of work! As you can see, I added a nice background. I imported it from GDevelop Asset Store. Then I implemented the health of the player. Last night I figured out how to do that. I just had to add the "Trigger once" condition. The way I figured it out is by making a test project. It is a good trick to test some functionality. Then I changed the snake image. I also added 2 new pixel fonts.  One cool thing I built today is flipping the snake facing the boy. First I tried to use the action "Flip horizontally". It didn't work properly so I added another animation and changed the animation according to the X position of the boy and the snake.

Day 08: Gamedev.js Jam 2022

Image
Today I tried to implement the health of the player but it didn't work. I couldn't figure out why. So I couldn't make much progress.  But... I learned a cool feature in GDevelop. I haven't used the GDevelop asset store yet because the assets are too small. When I resize them, they are blurred. I asked about that from someone I met on Instagram (who uses GDevelop). He sent me a link to a YouTube tutorial explaining how to resize without being blurred. Then I searched the asset store and found a character for the farmer and a red apple. Both of them are pixel art. The character has 4 animations (Up, Down, Left, Right). So it is better because I previously had only 2 animations for Left and Right. 

Day 07: Gamedev.js Jam 2022

Image
Today I created the Main Menu of my game! This is definitely not the final version of the Main Menu. I just added a text object for the game title and a sprite created using GDevelop's built-in pixel editor for the play button. I also created 2 more buttons for "Play Again" and "Main Menu" to appear after winning or losing a game. Now the remaining tasks are adding the player's health, making a small tutorial to play the game, and finally polishing the game. Less than 5 days left!

Day 06: Gamedev.js Jam 2022

Image
Today I completed the core game mechanic of my game! First I created a Snake object using a free image downloaded from the internet. I wanted to appear the snake at random positions. So instead of deleting and creating the object, I used the clever trick of changing the position of the object. Then I created 2 texts for losing ("Game Over!") and winning ("You Won!") the game. Then I added the events to hide and show these texts along with other actions. I haven't decided yet the number of apples the farmer should collect to win and whether the farmer has more than 1 life.

Day 05: Gamedev.js Jam 2022

Image
Today I first tried to build the logic to delete apples. But still, I couldn't figure it out. So I decided to work on something else because I have limited time to finish the game. I built the logic to increase the score when the farmer hits an apple. It was very easy. I used a "For Each" event for this because if the farmer hits 2 apples at the exact time it would only increase the score once.

Day 04: Gamedev.js Jam 2022

Image
Today I started working on apples. They should be created on the scene endlessly and they should be deleted after a certain amount of time.  To create apples, a timer should be used. I added a condition to reset a timer every 3 seconds and an action to create an apple at a random position. Then I previewed the game. The apples filled the screen in seconds!! 😂 The problem was I didn't restart the timer after creating an apple.  Today I couldn't figure out the way to delete the apples the way I want. 

Day 03: Gamedev.js Jam 2022

Image
Today I added another game object to the scene. It is an apple. 🍎 I downloaded that image from the internet and I resized that. Then I created the farmer movement to make it available to move up and down.

Day 02: Gamedev.js Jam 2022

Image
Today I started to create my game with GDevelop. I started with a blank project. Then I changed the resolution of my game to 1920x1080. I set the background color to green. The next task was to find a game asset for the farmer. I searched on the internet and downloaded an asset pack that includes a character similar to a farmer. (not exactly a farmer) I added the farmer game object to the scene. Then I worked on the farmer movement. After some experimenting, I could figure out the way to build the logic. I only created the left and right movement of the farmer today.

Day 01: Gamedev.js Jam 2022

Image
Today I started to create my game for Gamedev.js Jam 2022 !  The first step to creating any game is thinking about an idea. The theme of this game jam is RAW. So I should come out with an idea that implements this theme. They have mentioned some possible meanings of the word;  uncooked, pure, naked, inexperienced, untrained, green, immature, unripe, hard, rough . It can be part of the core game mechanic, the story, or the visuals. I chose "uncooked" as the meaning of this word. Therefore, I decided to create a game based on a farm. The player's role is the farmer. The goal is to collect fruits while avoiding snakes. I sketched a scene as my starting point. 👇 Then I posted this sketch on Twitter using #gamedevjs and #gdevelop hashtags. Both @Gamedevjs and @GDevelopApp replied to my tweet wishing me good luck! 😍🥰

I Started My Game Dev Journey

Image
I've been passionate about Game Development for a long time. But I couldn't learn because of 2 reasons. Learning game development is time-consuming.  There are not many game studios in Sri Lanka. I'm very busy with my studies because I'm following a degree. Learning a game engine like Unity or Unreal (those are the only game engines I knew at that time) is a time-consuming process. The second reason is also related to the first one. So even after learning a game engine, what's the point if I won't be able to find a job?  But my passion for game development didn't disappear. Discovering GDevelop About 2 months ago, I saw freeCodeCamp published a crash course on YouTube about something called " GDevelop ". It is a 2D cross-platform free and open-source game engine. I was curious to know about GDevelop. So I researched this by first visiting their official website . I was impressed because it seemed like this is a beginner-friendly game engine that i...

About Me and My Blog

Today is 14th April 2022,  New Year's Day  in Sri Lanka, a good day to create a new blog .  So I created one. Welcome to my brand new blog; dev-tharinda ! About Me I'm Tharinda, a developer from Sri Lanka. I'm following an IT degree and am currently in my final year. Since my childhood, I love computers. So I started following a degree in Information Technology after finishing school. I love programming. Java is my first programming language. I also know HTML, CSS, JavaScript, and a little bit of Android/Kotlin. I'm proficient in relational database concepts and SQL. I'm also passionate about game development. I'll talk more about that topic in my next blog post. About My Blog I decided to create this blog because I want to share my developer journey. I'm planning to share with you what technologies I'm learning, what are the projects I'm working on, and other related stuff. I'm also going to share my knowledge with some tutorial blog posts. Beca...