Skip to main content

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

I wanted to make the player go back to the starting scene when they finish the game so they can find the "secrets" they missed the first time they play. I learned about the chaos of circular dependencies in Godot the confusing way. But hey, I got a good refresh on how to use git reset --hard

Oh! And I remember being hella confused with the dynamics of CanvasModulate and Light2D nodes. All other tutorials show it works, but mine did not.

.。・゚゚・(>_<)・゚゚・。.

And also I was so stressed on the last day that it felt like my heart was gonna explode!

I had this feeling, too! But the over-consumption of energy drinks might have played the biggest part.


Please do take time to play our game. Here's a synopsis:

Breath-taking Risktaking is an atmospheric, top-down 2d game. You need to maintain your light through breathing. As you breathe, find the exit. While you find the exit, you can trigger consequences (some can help, some can hurt, some can interrupt, some are duds). Look for notes, secrets, and maybe a biscuit!

Game page - https://pangwashere.itch.io/breath-taking-risktaking

Rating page - https://itch.io/jam/brackeys-14/rate/3846516

(+1)

I haven't personally run into circular dependencies in Godot yet, but in a way that makes me even more concerned because I know they've gotta hit someday 

And yes! Git! Git is my favorite thing in the world, Git is great, Git saves lives!

I *have* run into really weird 2D lighting issues in Godot though, I think that particular chunk of the engine has not received proper love over the year, it all felt kinda broken and backwards when I used it in the past. I think a lot of people completely disregard it and program their own 2D lighting because it's so bad.

When I was still in college I had a class where we had to make a game for a "client" aka another student with an idea. Our client wanted us to make a relaxation game, with breathing exercises and 6 different mini-games to help with different negative emotions. But the kicker is we had to program the whole thing from scratch in Java with no game framework! This game really reminded me of working on that project, but I'm just rambling lol.

Anyway, I really liked your game! I struggled a bit at first understanding what was going on because the mouse indicator didn't show up until screen 2, but it was fine from there!

I haven't personally run into circular dependencies in Godot yet, but in a way that makes me even more concerned because I know they've gotta hit someday

For your future reference:

If you have an exported custom property that accepts a PackedScene that represents the next scene of your game level and you wish to go back to the beginning scene when you finish the last scene, don't use your beginning scene for the custom property. That creates a circular dependency (Haha.. Writing this now, that should have been obvious!)


And yes! Git! Git is my favorite thing in the world, Git is great, Git saves lives!

When I taught my students Git, I told them it would save them a LOT of time to learn it now. But of course, I get zipped projects called "Final final project - Final" at the end of the year and I know those students won't be taking programming as a career.

(⇀‸↼‶)

I *have* run into really weird 2D lighting issues in Godot though, I think that particular chunk of the engine has not received proper love over the year, it all felt kinda broken and backwards when I used it in the past. I think a lot of people completely disregard it and program their own 2D lighting because it's so bad.

Imma be honest.. I am traumatised by Godot's 2D lighting that I am now gonna learn 3D just in case I need to make a game with lighting.

When I was still in college I had a class where we had to make a game for a "client" aka another student with an idea. Our client wanted us to make a relaxation game, with breathing exercises and 6 different mini-games to help with different negative emotions. But the kicker is we had to program the whole thing from scratch in Java with no game framework! This game really reminded me of working on that project, but I'm just rambling lol.

You saying "Java" made me guesstimate your age, because Java seems like an ancient language with other languages being the preferred choice. But then, when I was in college, we had to code using C.

(* ̄▽ ̄)b

And I am a rambler, too. So no worries!

Anyway, I really liked your game! I struggled a bit at first understanding what was going on because the mouse indicator didn't show up until screen 2, but it was fine from there!

Really appreciate you taking the time to be trolled play our game. And remember, breathe and take risks!

(2 edits)

Ah that explains why I haven't hit that issue yet! I avoid using @export for loading levels specifically!

exported custom property that accepts a PackedScene that represents the next scene of your game level

Behind the scenes the @export decorator functions similarly to a preload call. Meaning that when you load a scene that contains an @export anywhere in it, that exported property will be preloaded, aka loaded from disk into memory. If you have a Level1 scene, with an export to Level2 anywhere in it, and then Level2 has an export to Level3... you see where this is going. If you do it this way you load your entire game as soon as Level1 is loaded! This isn't necessarily that bad for a very small game, it even will reduce load times! But generally I prefer to use a system that will "lazy load" my levels only when they're being switched to! This preloading is also what causes the circular dependency!

You saying "Java" made me guesstimate your age

I'm only 25! lol. 

I worked with C a lot too for fundamental classes involving low level concepts like OS, Multithreading, etc, but one of my professors who focused more on the development of actual software was a Java guy! So when I would take classes with him he wanted us to work in Java! He usually allowed us, or even asked us to make video games for the class because they're just more fun! I ended up developing custom particle systems, video players for cutscenes, "shaders" (we couldn't access the GPU, so really just forcing the CPU to run processes on pixel arrays and then using the array as an image, which required a lot of optimization!) I could go on and on, but I really enjoyed hacking together a game "framework" from the ground up! I still find graphics programming my favorite!

Anyways, more rambling! Thanks for giving me a chance to reminisce!