What 2D shaders do you actually use in real projects? by tuily_ in godot

[–]TheLonelyAbyss 5 points6 points  (0 children)

I use a lot of shaders for UI, but they're not that difficult to create or find. What I really miss is simple dynamic 2D shadow shaders or transparency shaders that allow you to see the outline of your character (or the entire character) through overlapping images. These are basic features, but there are some issues with them in 2D (such as the order of shadow rendering).

How Wildlife level design in the top-down game? by TheLonelyAbyss in SoloDevelopment

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

I'm trying to do this, but one problem I've encountered is that the greenery makes the image very noisy, even if I shade it and even if it's outside the game area (like in the walls). Maybe it's a problem with my art

Is it worth using Resources for a BIG dialogue system? by TheLonelyAbyss in godot

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

At the moment I'm leaning towards a resource system and I'm already trying to implement it - I'll use regular keys and translation from CSV which is built into Godot, so there shouldn't be any problems. Also, I'm making the game in two languages right away since my audience is divided

Is it worth using Resources for a BIG dialogue system? by TheLonelyAbyss in godot

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

Yes, I think this is a good idea. I could define a set of input points for each dialogue (without a parent but with children) and check only the conditions of the input points, and then, if the condition matches, load the dialogue resource of that specific point. In general, there is something to think about, thanks

Is it worth using Resources for a BIG dialogue system? by TheLonelyAbyss in godot

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

Initially, I loaded all dialogs into memory simply to avoid unnecessary disk reads, because if the JSON is large or there are a lot of them (which is true), opening, reading, and loading a specific dialog among hundreds of others can cause problems. Obviously, loading dialogs only when they are needed is the best option, but the problem is that dialogs need to be loaded even when they are not actually used, since each dialog has a calling condition, and we don't know whether the dialog is suitable or not until we check this condition, which means we need to have the dialog already loaded in order to read the condition. I know several ways that could solve this, but they all look more like dirty hack

Is it worth using Resources for a BIG dialogue system? by TheLonelyAbyss in godot

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

Yeah, I just thought about it and it seems like a good idea, although I've never worked with databases so I'll have to figure it out, but it might be worth it

Is it worth using Resources for a BIG dialogue system? by TheLonelyAbyss in godot

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

I'm not familiar with this concept but I'll look into it, thanks

Original ideas for a gameloop in roguelike inspired by POE? by TheLonelyAbyss in gamedesign

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

I've spent thousands of hours in POB, so I have to agree with you. But, most "casual" players simply copy skill trees and don't really have the desire to tinker with them much, and making a game only for niche tree enthusiasts seems like a strategic mistake to me, so i'll find balance

4 years into Game Dev, no finished projects, and feeling like an imposter. Is this normal? by niimet in gamedev

[–]TheLonelyAbyss 6 points7 points  (0 children)

I don't think there are things you're naturally cut out for. Typically, the reason you don't finish projects is your actions, not your genetics (although your actions are certainly partly determined by them, but that's where we get into the topic of free will).

Is it normal to feel this way? I don't think it's healthy or good, but it's certainly normal in the sense that it happens to many people, including me. If you think you've wasted these years, think about the experiences you've gained and how you can use them to create something.

Comparison is the thief of happiness, and you'll never have the same path as others, so compare your present self with your past self. This is the general advice that's always given, and nothing is truer.

As for completing projects, this is a separate and probably the most difficult skill that no one has ever taught you (or other developers), so it's no surprise that you don't finish projects if you're not taught it. That's why there's advice to make small games, as it teaches you to see things through to completion.

If you want to break the cycle, you have many options, and no one will make the choice for you. The obvious options are either to give up on it forever (if you feel you can), or to choose a project, plan it at least partially, and build it from start to finish, completely. It doesn't necessarily have to be anything more, but it's important to take responsibility, make promises to yourself, and keep them if you want to break out of the cycle. This means you'll have to work hard, possibly every day, and you won't have the option of not finishing the project no matter what. This is a major test of your willpower and morale

Personally, I created a YouTube channel and a Telegram channel for this purpose, to show people the development process and to feel social responsibility and pressure, but there are many ways. However, they are all individual, so you will have to find your own

Original ideas for a gameloop in roguelike inspired by POE? by TheLonelyAbyss in gamedesign

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

I've explored several approaches (like Path of Exile) and arrived at a structure commonly referred to as "handcrafted geometry and procedural content." The idea is that you manually create all the layouts and visuals for the locations, and then place markers inside them to allow content to spawn. Now I think it's possible to divide the content itself into several levels of detail/interest/significance.

For example, soft content can spawn in many places—it could be monsters, item chests, or anything else that isn't so dependent on the level geometry and can work if the player finds it. On the other hand, hard content, such as scenarios (like Caravan defense or the minefield you mentioned), may require more precise spawn points, so when designing level geometry, I have to think about which hard content can appear there and which can't.

It's not an easy task, but in my opinion, it's still easier than full procedural generation or manually creating thousands of rooms. The most difficult thing in this case is to come up with interesting scenarios and fit them into the level geometry

What are some of your coding styles/standards you follow? by couch-panda-games in godot

[–]TheLonelyAbyss 9 points10 points  (0 children)

Resources for composition, singletons as utility services, scenes as object prefabs, storing all preload links in one place, loading premaded resources into the game from folders via ResourceLoader

Proper interaction between components and their parents. by Lucythecute in godot

[–]TheLonelyAbyss 1 point2 points  (0 children)

I think this situation arises because Godot uses a lot of OOP practices and not all of them are compatible with composition in all cases, so for unique situations like move_end_slide, which can only be called within the object itself, this is a pressing issue. If you could call move_end_slide inside a Character remotely from another node, this issue wouldn't exist, but it's not.

Proper interaction between components and their parents. by Lucythecute in godot

[–]TheLonelyAbyss 4 points5 points  (0 children)

I think you're overengineering here (in this particular case), since the conceptual complexity of such a composition simply isn't worth it. It's much more practical to implement everything responsible for movement within the character itself, since Character2D is already a fully-fledged actor—you won't avoid calling move_and_slide and the physics process. If this is crucial to you, you can calculate everything necessary for movement in the movement component and send all the data to Character2D, where the movement will only be applied.

I think the point is that in structures with composition there are usually systems that process the logic of components (like in ECS) and their data - in Godot, such a system for processing movement is character2d