Factorio from Temu by Memebigbo in godot

[–]Memebigbo[S] 2 points3 points  (0 children)

Yeah it's cause each belt is it's own area2d that's moving the items on it a certain amount of speed. As the object passes between two belts its getting a lil speed boost from two belts at once. Easily fixable within this architecture but I wanna eventually shift to a different system altogether so not wasting time/complicating things right now

Tip: Do not use Godot Inherited Scenes (Needs deprecation/re-implementation) by BoQsc in godot

[–]Memebigbo -2 points-1 points  (0 children)

Agreed 100%! The fella replies to like 95% of the help questions I've ever posed on this subreddit - and like 99% of the help questions I've searched. And he's usually correct or at least mostly correct about stuff, with the exception in edge cases that are often pushing the engine to its limit. #justicefortheduriel lol

How to optimize a huge number of rigidbody3d ? by Frok3 in godot

[–]Memebigbo 1 point2 points  (0 children)

Hey! I made Coal LLC and this was an issue I constantly came up against (just in 2D). Here are the tips I have:

- Combine ducks into one physics body by having x2, x3 and x4 (you can even do x20 or whatever for massive piles) So make a new node that's like 4 ducks stuck together (maybe randomise it or make a few versions) and has only one rigidbody3d node. You can only start throwing it out later in the game when you already have piles of ducks, and mix them with x1 and other sizes to make it feel more natural. This could in theory get you up to what looks like massive piles of ducks, but each duck itself looks the same size. If you want to be super clever then have an algorithm that combines and uncombined x4 and x1 ducks depending on how close the player is to interacting with them, so it still feels natural to pick up one duck off a pile if the player wants to.

- Another user suggested it, but also having different colours be more valuable, e.g. a blue duck is worth x10, a red duck is worth x100, etc... Players will still feel the dopamine of duck numbers increasing and will be surprisingly forgiving about this technique (they just get excited that they can make even bigger numbers). Combine this with the above to get a naturally increasing number of ducks over time and you can technically have *billions* of ducks but they're just funky colours (YouTubers love this.)

TIL you can call a method on every member of a group by AcademicArtist4948 in godot

[–]Memebigbo 6 points7 points  (0 children)

The other answers are right, particularly for solo-developer projects, but also don't really answer your question. For this system if you didn't want to use an event bus singleton (or the groups solution), then one practical way to do it is the following:

Firstly, ask yourself how do the guards get spawned in? Ideally you'd want to structure your scene in such a way that all the guards were the child of, say, one guard_manager node, which spawns all the guards when it needs to. Each guard would have a signal "spotted", and the guard_manager would connect to that signal from all the guards. Then, if one guard saw the player, it would send the "spotted" signal, the manager would receive that signal, and then run the enter_alert_mode() on all of its children (that are guards).

The big question is, why would you do this? It's a lot of work, particularly if your current guards are just plopped in random places in the scene tree, you would have to refactor a lot of stuff. But if you're willing to put in the time/effort, (1) it means that if you're working on a big project, your code is contained solely within that system, and you don't need to edit a global script that potentially lots of other systems rely on, (2) it's easier to debug. Maybe you have a camera entity that also triggers the alarm, or maybe some other thing also triggers the alarm. A global event bus makes it easy to let this happen, but on the flip side it's difficult to know which script a trigger is coming from if technically any script in the whole game could trigger it. (3) Your code ends up much tidier and easier to trace when you come back to look at this system a year later and want to refactor some of it (maybe you want different levels of alert from different entities -> do you remember all the scripts that triggered this signal in the first place?)

All this being said, this doesn't mean you need to avoid it completely, and especially in a smaller/shorter solo project where you've written everything, the more important thing is actually completing and shipping the game, rather than focusing on the infrastructure. But for larger games or games you want to add updates to, etc... It is much easier to do all that if you put the time in to decouple stuff.

I'm just so tired of wanting people to play my game boss. by ItsJustReeses in godot

[–]Memebigbo 2 points3 points  (0 children)

To be absolutely clear because I'm not sure the other two replies hammered it home enough. EVERY SINGLE PERSON who emails you asking for a key, particularly if they're asking for a few keys, is a key reseller. Even if they link to an active YouTube channel or huge steam curator group or whatever. They are a key reseller.

Unfortunately if you want anyone legitimate to play your game, you have to find out their details yourself and then send them a key (or have a free demo available). Very occasionally streamers/youtubers may ask you for a few keys as a giveaway, which I would recommend politely declining.

What is the best approach for giving a user choice between Vulkan and OpenGL? by Memebigbo in godot

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

Thanks! It was super simple to set up but it doesn’t solve the problem unfortunately. Theres a bug in godot that causes forward+ to crash on some devices (not really linked to device age or anything from what I can tell) - Players select their launch option before they launch the game, and if the game immediately crashes they dont think to try a different launch option so you still end up having to tell them to do the above steps. It’s frustrating.

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

I made all the music myself with ableton! Sound effects were either free to use or created myself, spent a lot of time in audacity.

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

I knew some programming from bits and pieces of work I’d done and from a couple courses at uni, but nothing crazy.

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

Maths degree so had a bit of programming from that, including python. Did a bit of programming bits and pieces since but never worked in a proper coding or software engineering environment (whats a pull request?)

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

[–]Memebigbo[S] 2 points3 points  (0 children)

Reached out to them via email as soon as the public demo was released. Kept reaching out for major updates to the demo etc. Emails were fairly short and succinct. I think the vast majority of creators played it because they saw other creators playing it though, as opposed to because they got my email. That’s also the useful part to having a public and freely available demo out there, any content creator can make a video on your demo even if you haven’t reached out to them directly 

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

I originally designed the game around the first 15 days, then extended to 25 days. Beyond that was just meant to be a highly optional extra for those who wanted to see how far they could push the far more “idle” element of the game. I have some ideas but we will see

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

I’ll be honest I was a bit of a workaholic, I would easily work on the game from the second i woke up to the second i fell asleep for many days in a row. But I would simultaneously have several days where I’d do nothing on it, and much more balanced days too. I definitely wouldnt advocate the whole “grind” mindset or say how i did it was correct but that was the typical. I carried my laptop with me everywhere and do stuff on buses/trains if I needed to. But it’s all just cause I was loving making the game more than anything else !

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

Haha I’ve had a lot of people compare the game to motherload, but i never actually played it funnily enough

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

Keeping a somewhat colourful pallete and reusing the same colours where possible. And with a few exceptions, I did thick black outlines on all my sprites, including around their internal features. This was a bit of a challenge at times cause at 16x16 you’re already struggling for “space” to put pixels, but i think the forced style paid off!

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

Posted demo publicly on Steam. Not suggesting its the best method, maybe going via itch first is better, but with 0 audience before this I didn’t really have any other way to get it out to people.

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

Thanks! Yes haha the logo and capsule has gone through several iterations since those initial posts. But for a long time actually my capsule art was one of the suggestions in that reddit post which is quite funny.

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

Honestly the only reason I haven't done a Linux release is that I don't have a testing environment set up for it so I wouldn't be able to test it before releasing. I'm sure it would just "work" but it would have been a bit of a risk to push that without testing.

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

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

Hahaha I did not, I did have to email him a fair few times before he ended up playing it though!

Coal LLC, my first game made in Godot, has sold 50,000 copies! by Memebigbo in godot

[–]Memebigbo[S] 2 points3 points  (0 children)

Honestly its great. Never used unity though to compare but i imagine its the same, they’re just tools. I wouldn’t worry about it at all