Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

eL-Falso's DevLog

A topic by eL-Falso created Sep 30, 2022 Views: 2,018 Replies: 33
Viewing posts 1 to 33
Submitted (30 edits) (+1)

Latest Devlog post over here: Day 30, Post Mortem

Hey all,

it’s my fourth #devtober this time. Last year I used for the first time Godot in a devtober. Since I’m currently still working on the Pixelart pinball game from last year, I thought that this devtober, I need a bit of a change. So I decided to port my project from Devtober ’19 from GameMaker Studio 2 to Godot 4. My goal is to get a playable demo/stable release running by the end of devtober. After Devtober, I’ll be back to work on my actual project.

About me:

  • I’m from Germany
  • Studied computer science at university until I abandoned it
  • started with game development in 2017, before: mapping and modding stuff for some games
  • Solo dev over here doing coding, art and sound
  • Took part in 1 game jam and 3 devtober so far

Please follow my twitter for latest updates: https://twitter.com/TackRadGames

Other useful links:

So now a bit about the game:

  • Puzzle game
  • Grid based movement
  • Player has to find the way to the goal with the help of collision objects

Day 0:

Currently the idea stands and I still have all the assets from 2019. Here you can find the last work on the project.

Day 1 ToDo:

  • Grid based movement of the player
Submitted

Day 1:

Since I never used TileMaps in Godot 4 before, I needed to get a short introduction how they are working now. So I created a basic world and added a player to it which has grid based movement. As a little extra I also added a game over effect, which does in the moment nothing than spawning some particles and deleting the player afterwards.

So far, it’s really something to be proud of:

Day 2 ToDo:

  • add some collision for the puzzle
  • add a goal for the player
Submitted (1 edit)

Day 2:

Today my day started pretty late and I was really tired. Nevertheless I worked on the game. I implemented all the stuff I wanted to do, even if it was not completely to my satisfaction. I understand the basic concept of TileMaps in Godot 4, but I noticed that I couldn’t check for collisions / objectives the way it used to be the way I did in GMS2. So I have to think about all the stuff again.

This is what I came up with:

Day 3 ToDo:

Since I wasn’t satisfied with the code I wrote today, I’m going to refactor all the code to come up with a better system.

Submitted

Day 3:

Today the game hasn’t changed this much, I refactored the code and changed some under the hood stuff. For example the game has now and underlaying grid with all the things you can see in the game, be it the tiles, game elements like the player, goals, obstacles and so on. This grid can be used later for different other things to determine where everything is located.

Day 4 ToDo:

  • import more assets
  • create quest system
Submitted (1 edit)

Day 4:

Today I created the quest system for the game to the player knows what do to and where to go. I don’t think it’s the best what I’m doing in the backend, maybe I’ll rework it at some point when I add more stuff during Devtober, but at the moment it works fine. I also added some environmental assets from past projects of mine. I’m also thinking about grass moving in the wind, moving clouds, maybe a day & night cycle and more, but I’ll leave that for a later date.

So far I’m happy about todays work. 😊

Day 5 ToDo:

Since I don’t have this much time, just something small:

  • pause menu (assets + code)
Submitted

Day 5:

Today I was working on the pause menu in the game. Usually in my past games in Godot 3 I did this using a popup, but since popups act weird in Godot 4 I scrapped this idea. Now I’m using simply a node where I toggle the visibility. This took me quite some time since I really wanted to use popups like in Godot 3.

I also had different ideas for the background image, how it should look like. Then I decided for one and created in Aseprite a nine sliced image.

So far everything works fine.

Day 6 ToDo:

Again something small:

  • Main menu + Options menu
Submitted (1 edit)

Day 6:

The first thing I did today, was installing all the programs and VSTs I need, to open all the song files I made years ago for the old version of the game. This was quite a hassle, because it seems at least one VST became quite “unresponsive” which makes the DAW to crash from time to time. But at least I could open the project sometimes, so I can remake it in the new DAW I’m using. But this will be worked on pretty soon.

Second I worked on the main & options menu. The layout of the options menu will maybe remind you of my pinball game, so yeah it’s true. But it took a lot of time, because I couldn’t just take all the old code I wrote. So far I’m happy with all the stuff today even though the theming isn’t final because I ran out of time.

Day 7 ToDo:

  • day off (breaks are a MUST!) I also have many other things to do IRL
Submitted (4 edits)

Day 7:

This is not the devlog you're looking for.
Move along...
Move along...

Today I took the day off, because every good developer needs a break, but also because I had a lot to do IRL 😊

Day 8 ToDo:

Tomorrow I’ll try to recreate the song I made for the past version of the game in den new DAW I’m using.

Submitted

Day 8:

Today I recreated the music in Cubase, I also rearranged some parts in the new one, replaced some instruments or parts completely. Please notice I’m not this familiar with the creation of music, so I did the best I could.

Put on your headphones and off you go:

Day 9 ToDo:

Since I also want to have some more variations in the song I’ll take one more day to complete this one and remove obsolete stuff which isn’t used anymore.

Submitted

Day 9:

Today I added two more parts to the song, and also changed the velocity of specific notes. I think both of those add a lot to the variety of the song. None the less I also deleted obsolete parts which are not used anymore, because I just took them over from the old song and I think they don’t fit anymore.

I’m not quite sure what others think about panning in songs, but I think it’s quite okey when you use this technique correctly.

Put on your headphones and off you go:

Day 10 ToDo:

  • put the song in the game and some other effects which I created for the old version of it
  • connect everything audio related correctly using Audio Buses
  • implement a level transition
Submitted

Day 10:

Today I put the music I finished yesterday in game and also added some effects from the previous version of the game. I also connected everything to Audio Buses so that the sliders in the Options Menu are working now.

The most trouble I had today with the Transitions from Level to Level/Scene, because there’s some weird bug in Godot 4 that the Shader transition wasn’t working. This took me a lot of time to figure this out and fix it by simply skipping this second type of transition. So I think I won’t work on this again until it’s fixed in a newer version of Godot 4.

So far I have now everything included from the previous version of the game which was made in GameMaker Studio 2, because of that everything I’m creating from now on will be completely new.

I’m really happy about today’s work:

Day 11 ToDo:

  • I’ll add some dialog boxes (assets + code)
Submitted

Day 11:

Today I added a dialog box to the game, so the player get’s a small introduction what he/she/they has to do. Later on this can be also used for a tutorial and more.

Also tried out some other stuff, which I mentioned in another post of this devlog (grass which is moving in the wind). But there I wasn’t this successful, mainly with the looks of it. So I’ll move this to another day where I can fully concentrate on this one task.

Day 12 ToDo:

Since I don’t have this much time, just something small:

  • add more Animations for the Player to the AnimationPlayer, so the movement is triggered by this one
  • fix some bugs
Submitted

Day 12:

Today I didn’t work on something special since I don’t have this much time. The direction of the animation of the player will now be triggered by an AnimationPlayer. I also fixed some bugs in the player controller and in the state machine of the player. I also added two more sounds to the player when specific actions are performed.

Day 13 ToDo:

  • add grass which is moving in the wind
Submitted

Day 13:

Did you know that the cosine winds blow very gently in my game? 😅

So today was I was working on the grass which will be moved by the wind. I decided for that to check the TileMap for grass tiles and divide these tiles into 16 subtiles to randomly place the grass on, this will also be done perfectly for corners and edges.

I also had to create a plain tileset for this, because the old one had already grass on it.

You may ask: why do I call the winds, cosine winds? Because the grass will be moved via shader by the cosine function 😊

Best watch it fullscreen:

Day 14 ToDo:

  • day off (breaks are a MUST!)
Submitted (10 edits)

Day 14:

This is not the devlog you're looking for.
Move along...
Move along...

Today I took the day off, because every good developer needs a break. 😊

Day 15 ToDo:

Since I never worked on translations in Godot I’ll do that tomorrow:

  • Get a short introduction how translations are working in Godot 4
  • Create the Assets needed for it
  • Implement everything into the game
Submitted

Day 15:

Sadly due to sudden changes of my working hours IRL, I have no time to work on something today. 😭 So I’ll simply move the tasks over to tomorrow.

Day 16 ToDo:

  • Get a short introduction how translations are working in Godot 4
  • Create the Assets needed for it
  • Implement everything into the game
Submitted

Day 16:

Today I created the language files for the translations and added an options menu in the Options to select the language you want to play the game in.

It’s so easy. ❤️

I also created flags which I appended to the selections, but I’m not quite sure about letting them stay in game, because flags can change, others may be offended by them because they may not be this accurate in PixelArt and so on. So what do you think?

Day 17 ToDo:

  • First planning on tutorial level(s) and the first level
Submitted (1 edit)

Day 17:

Today I was planning the tutorial levels and the first level of the game.

For the tutorial levels I thought that I will go for now with four ones, which will lead the player through the mechanics of the game. Sure I will add more tutorials though the development of the game, when I add more mechanics, but for now everything is explained for the current state.

The first actual level was a bit difficult to plan, since you also have to take into account most other routes the player could go in the movement puzzle game. But I think I did pretty well in planning it.

Day 18 ToDo:

Since it feels that the world is quite empty, I’m going to create more assets.

Submitted

Day 18:

Today I created more environmental assets, like mushrooms, rocks and bushes. I also corrected one tree, which had the wrong perspective. After I created everything I moved everything on a Sprite Sheet, so I can use it later as an atlas. On this Sprite Sheet you can also find the trees this time, in the past these ones have been separate objects in the game. Since the player can’t interact with the trees in any way, having them as an object is obsolete.

Day 19 ToDo:

  • Start the work on the tutorial levels (day 1/x)
Submitted (1 edit)

Day 19:

Today I started working on the first tutorial level, so far I think it looks pretty neat with all the environmental stuff. I had only one problem: My quest- and text box system is/was not versatile enough to handle different levels, because of that there is currently no goal in the tutorial which I can trigger.

Thus, I move working on the other tutorial levels to another day and fix this first. Some stuff I made already a bit more versatile.

Also I have to create level selection screen at some day.

Day 20 ToDo:

  • Make the quest- and text box system more versatile

Can't wait to see the finished game!

And i really like your game music.

Submitted

Thank you really much ❤️

The finished game will take some more years, since it’s just a side project. After Devtober I’m going to finish my actual project first.

Submitted

Day 20:

Today the game hasn’t changed visually at all, everything I did today was internally. I created a base template for the levels which holds all the base nodes and scripts. In addition to that I also added an additional node to the base structure of a level, which doesn’t have a script attached to in the template, but you can attach one in the level itself, this script handles now all the quest related stuff in a level.

Also I changed the structure of the quest data, which are nested dictionaries now.

I really hope I didn’t forget anything to adjust, so the work on the tutorial levels can continue.

Day 21 ToDo:

  • day off (breaks are a MUST!)
Submitted

Day 21:

This is not the devlog you're looking for.
Move along...
Move along...

Today I took the day off, because every good developer needs a break. 😊

Day 22 ToDo:

Something small again the next days, since I have don’t much time:

  • Finish the first level of the tutorial
Submitted

Day 22:

Today I finished working on the first level of the tutorial, you can complete it now since I added some triggers. Also added a text to the transition scene which you can customize or just use the default one. Sadly, in this transition scene I found a bug which changes some positions and sizes of nodes, really have to take a look at this at some point.

Day 23 ToDo:

  • Work on the second level of the tutorial
Submitted

Day 23:

Today I was again working on something small, the second level of the tutorial. Actually it was quite easy, since it’s just a variation of the first one. Now you also know what the “blank” space on the right side was for in this first level.

Day 24 ToDo:

Since I have much more time in the coming days I really hope that I can achieve more, let’s start with:

  • Complete the tutorial levels
Submitted

Day 24:

Today I finished implementing all tutorial levels I want to have in the game. I also created an overlay for the “current objective tile” which is at the moment just a placeholder so the player knows where to go. So far I’m really happy about the tutorial levels, since they work really nicely.

In the video you see the fourth tutorial:

Day 25 ToDo:

  • Level select scene
Submitted

Day 25:

Today task was quite quickly done, since I decided to provide just a really simple level selection. At some point in the far future, when the story is written, this level selection scene will get an overhaul with a world map and so on. Thus a simple selection this time for the game.

Since I had much more time left to work on the game today, I also decided to add the first level to the game and I think it looks really nice with all the new assets which I created days ago.

Day 26 ToDo:

  • Planning and creating of second level
Submitted

Day 26:

Today I was planning and creating the second puzzle for the game. This time tried to plan this one from the end to the start. Sometimes it’s better to do it this way around with such kinds of puzzles, BUT it turned out not being better, since the player is moving to obstacles the other way around.

In the end I got it!

I will also feature freeze the demo here, since the end of devtober is near and I really want to continue with my actual project soon again.

Day 27 ToDo:

  • bugfixing
Submitted

Day 27:

Today I was just fixing bugs in my game, some have been critical others not this much. Besides of these tasks I also added my regular “Init”-Scene to the game for the splash screen and compiled custom export templates for Windows via the Godot sources.

I also tried whether the game runs via HTML out-of-the-box but sadly this wasn’t working. Thus I will then only export to Windows.

Day 28 ToDo:

  • day off (breaks are a MUST!)
Submitted

Day 28:

This is not the devlog you're looking for.
Move along...
Move along...

Today I took the day off, because every good developer needs a break. 😊

Day 29 ToDo:

  • Tomorrow I’m going to create all the pictures, other assets and give the old game page an overhaul
Submitted (1 edit)

Day 29:

On this day I was taking some screenshots of the game and was working on the small trailer in DaVinci Resolve, I’ve never used that program before. But I think it will turned out really well. This was the first task on my todo list today, but I also had to create more updated assets for the game pages on various sites.

Besides of that I wanted to be more present on GameJolt, thus I also created a page over there for the game.

Day 30 ToDo:

  • Write the Post Mortem
  • Upload the game
  • Make some game pages public
  • Submit the game
Submitted

Day 30 1/2: (last day)

Today I was writing the Post Mortem and worked a bit more on the project page to give it the final touch. I made the game page public and submitted to devtober, you can find this submission page over here: https://itch.io/jam/devtober-2022/rate/507192

Submitted (2 edits)

Day 30 2/2: (last day)

Devtober ‘22 – Post Mortem

This years Devtober was quite relaxed at the beginning but also a bit more stressful to the end of it, not just because of my real job but also because of myself. More about it below in the Post Mortem.

State of the project:

I started almost with an almost completely plain project. What I mean by this is that the idea how things are working already existed, I also created most of the assets which are needed to achieve my goal. I worked already on the ‘same’ game before for Devtober 2019 but in GameMaker. So my goal this year was to port it over to Godot 4 and maybe extend it by some more features and other stuff.

What went wrong?

Even though I had a lot of assets for the game ready, even the idea how to implement specific things, I have struggled to find tasks to work on, especially within the second half of Devtober. I thought: ‘You have already a lot of the game set, so why need to plan tasks to work on, when you already know what needs to be done.’ This was maybe right for the first half, but not for the second one. Nevertheless, I continued to work with this mindset. Maybe this was also the reason for loosing interest in continuing the work in the last seven days or so. Usually I plan my tasks or the project in general with ‘Codecks’ but not this time and was absolutely wrong. ALWAYS plan your project!

What went right?

Before even starting with Devtober, I had some thoughts in my head that a lot of tasks which needed to be done will be a lot easier in Godot 4 than in GameMaker, be it the player controller by using signals or some other task. During the development of the game it turned out that I was right with my thoughts. The interaction between nodes or objects is working quite smoothly by using signals, much better than I could have done it in GameMaker where not such a system exists. I was also right about my rough plan about when I would have ported the game which was at two weeks and I made it in a bit under two weeks. So I could spend more time on adding other features. All in all I think I achieved my goal in this Devtober, which was: porting the game over to Godot 4 and adding some more features and other stuff. I’m more than happy about it.

What’s next?

I will freeze the current state of this game and I will continue with my actual project which is a Pixel Art pinball game. Not just because of that I achieved my goal of porting the game over to Godot 4 but also because I still miss some knowledge about Gamedev related things be it about ‘story telling’ or other stuff. These skills are needed to continue the work on this game. That’s the reason why I freeze it.

In case you want to be up-to-date about my actual project or this project in the future you can follow me on twitter or mastodon.

The End!