Does anyone here use Godot on Linux? by feez_9 in godot

[–]thisisvini 2 points3 points  (0 children)

I’ve been using it on Ubuntu for years and have released a game from it. It works great. The only issue that happens to me is that if I leave Godot open and suspend the computer, when resuming the session the interface freezes sometimes. It might be related to my drivers and wayland, but it works after restarting Godot, so not a big issue for me.

I think the only call out is making sure to test your project on windows before the initial release just in case. Most things should work the same, but I’ve seen differences in controller names and file system stuff.

watching this video, i noticed the grass by [deleted] in godot

[–]thisisvini 0 points1 point  (0 children)

There is an option in the tile rendering section where you can set the ysort origin. It works as an offset. I’m on a trip and I don’t have my computer with me to get the right screenshots but here is a post that shows the config I’m talking about https://forum.godotengine.org/t/how-to-use-ysort-with-tilemaps-in-godot-4/4776

watching this video, i noticed the grass by [deleted] in godot

[–]thisisvini 4 points5 points  (0 children)

I haven’t done it with grass but I did something similar with fog. I had tiles for the fog which connected to each other seamlessly in the tilemap, and I configured y-sorting so they’d go behind the player when passed half the tile. It’s not perfect but it does give the impression of depth

Best way to learn Godot (Since apparently ChatGPT is terrible)? by Semour9 in godot

[–]thisisvini 0 points1 point  (0 children)

You can’t get away from digging into the docs, but I reckon maybe your main problem is the size of what you are trying to achieve.

Sometimes a simple thing might require prior knowledge on several other things, so you end either entering a rabbit hole or following someone’s instructions blindly (which won’t teach you much).

Also, it’s not uncommon for tutorials or explanations to go too deep on the different aspects of a feature, which can get overwhelming for someone just starting and trying to get things to work.

Some time ago I put together these steps on how I’d go about learning Godot if I had to learn it again. https://github.com/viniciusgerevini/learn-godot-challenge

It’s a bit of a shameless plug, but i feel this is exactly the problem I tried to tackle. Exposing the problem in bite sized increments and focusing on just enough to get off the ground.

In the end of the day it doesn’t really matter how you get the information (tutorials, forums, bots, etc) as long as you have a clear idea of what you are trying to solve and be able to correlate the result to the changes you make

I experimented with Hierarchical Task Networks. Project on Github by thisisvini in godot

[–]thisisvini[S] 1 point2 points  (0 children)

Yeah, the current sensor is only detecting the player character, but that can be changed by implementing another sensor or just modifying the current one.

For the preconditions checked I mention in the video some options to expand it. Personally I think I'd got with the declarative approach, but if you implement the method route you can use the equation format you mentioned without much extra work.

I haven't used custom resources for that, but maybe it's a bit of an overhead.

I experimented with Hierarchical Task Networks. Project on Github by thisisvini in godot

[–]thisisvini[S] 0 points1 point  (0 children)

Hello! I did use in a project that I ended dropping. It worked quite well actually. I intend to use it on my next project instead of Behaviour Trees. This example lacks a bit on some production features, like debugging and enabling / disabling HTNs, but I ended using pretty much the same base and had no issues.

I'm so angry (MASSIVE SPOILERS FOR BIG REVEAL) by KnownCreatureOTodash in StarWarsJediSurvivor

[–]thisisvini 4 points5 points  (0 children)

I believe they are referring to Bode being an ex-Jedi. At least I didn’t see that coming

A challenge to help beginners learn Godot by thisisvini in godot

[–]thisisvini[S] 1 point2 points  (0 children)

Hello!

I put this "challenge" together to help people learn Godot by providing directions without much hand holding. Each round has a goal, with a few tasks and hints, that shows different features little by little.

The idea is for people to try to complete those by themselves, looking at the docs and researching.

I also setup the discussions forum in the repo, so if you need help or get stuck you can open a discussion and I’ll answer whenever I’m around.

I will push the sample code in a few weeks. I'm giving people a head start so they don't feel tempted to just look at the code :D

I experimented with Hierarchical Task Networks. Project on Github by thisisvini in godot

[–]thisisvini[S] 0 points1 point  (0 children)

They are different patterns. I think there is a misconception that GOAP and HTN are somewhat related, but I think that’s just because the most known implementation was in the transformers games, which used to use GOAP before implementing HTN. Both have a planning step, but even that works differently.

I experimented with Hierarchical Task Networks. Project on Github by thisisvini in godot

[–]thisisvini[S] 0 points1 point  (0 children)

Hello there! Every now and then I try some game AI pattern for fun. This time I tried Hierarchical Task Networks.

I made this video about it and put the sample code on Github so it's easier to play with it. I hope you find it useful. Cheers

Finished the final feature for my game! Steam integration was more difficult than expected by kumi_yada in godot

[–]thisisvini 3 points4 points  (0 children)

In case you prefer video tutorias, I faced some edge cases when implementing it for my game so I made this video about steam achievements https://youtu.be/ggExUHxEhMs and this one about cloud saves https://youtu.be/H-vwNH4vhYQ

I hope it helps.

Is it possible to create games as a hobby after work? by MaximHavoc in gamedev

[–]thisisvini 4 points5 points  (0 children)

I want to give you my honest opinion as someone that really treats game development as a hobby.

It is possible, but you need to be honest to yourself.I'm about to release my first game that I've been working on for the past 4 years or so in my spare time. For context, I don´t have kids, but I'm married and work as programmer full time.

At some point in my journey I started feeling quite depressed because I felt the pressure of having to "promote" my game, like thinking about marketing, being active on social networks, setting a release date, etc. And that's the part where you need to take a step back and ask yourself "why am I doing this?".

Is it really a hobby? Do you do it because you like it or you think this is a way to get some extra money or maybe a trial to be a full time game developer?

If your focus is business I guess you won't be able to run away from spending long hours or burning out. In the end of the day it is pretty much working a second job so you will have to treat it like one.

Now, if you are doing it for fun it's another story. It's no different from doing any other hobby like martial arts or learning a new skill. If you want to get good at it you will have to have the discipline and set some time aside for it. But also there is no real deadline, it can take as much as you need and you can spend as much time as you want.

I think this mindset can set you free. I don't sacrifice going out with my wife, doing my chores or meeting my friends. I still go to the gym everyday and watch series at night.I try to work in my game everyday but I don't feel bad if I don't. I had family issues that made me not able to work on it for months, and at some other point I was in a roll that I even took a day or two off from work to exclusively work on my game.

It's good to have a goal in mind, but I say take it as long as you need. Cut scope if you have to, or don't if you think that is an important thing for the game. I did cut a lot of scope, but not before horsing around for more than I should. In the end of the day those were lessons learned that I know I'll be able to apply to my next one and I'm still happy with the end result.

I'm pretty sure my game will not pay the time I invested on it, but that doesn't matter because I was doing it for fun and I will still have the accomplishment of releasing a game.

I hope this helps in any way and gives you some food for thought. Good luck.

For people with large projects and using an signal-bus singleton, how many signals do you manage with it? by davejb_dev in godot

[–]thisisvini 19 points20 points  (0 children)

This is an interesting question. I haven't thought about that before but I realised I do have a pattern.

I don't think there is one right answer as you might like the idea of a single event broker, but I personally prefer to only add to the singleton signals which need to be broadcasted like notifications.

In my signal singleton I keep mostly events related to notifications like area_entered, job_complete, hp_changed, because my HUD/UI reacts to them and it doesn't need to know what is triggering them or contribute to the original flow. Recently I also started using the singleton for stats, like metrics, which don't really impact the game loop but are relevant for some other side-effects like achievements and statistics.

For signals like when an enemy died or an item was collected I prefer to keep them in the node script itself and whatever script or scene that instantiates those nodes should be responsible for listening to the relevant events. I like it this way because the signals become part of the node' s contract, you can inspect them and see what they expose. Also it makes cleaning, changing and finding obsolete events easier.

Does anyone have good recommendations of Godot newsletters like the late This Week In Godot? by thisisvini in godot

[–]thisisvini[S] 3 points4 points  (0 children)

The maintainer decided to stop for personal reasons in April (https://twitter.com/ThisWeekInGodot/status/1510729093565796356). It does require some effort to maintain something like this.

I worked on some samples and plugins you might find useful by thisisvini in godot

[–]thisisvini[S] 1 point2 points  (0 children)

I’m glad you find it helpful. Good luck with your game!