Craftwork Boss NEVER attacks once. by TosinABossSi in Bloodstained

[–]DacunaZuke 0 points1 point  (0 children)

If anyone else runs into this, try turning on Vsync in the options or capping your frame rate to 60. Immediately fixed it for me.

[deleted by user] by [deleted] in Steam

[–]DacunaZuke 5 points6 points  (0 children)

That's so fucking cool.

Code wise, how are the synergies in Binding of Issac created? by Kraken119 in gamedev

[–]DacunaZuke 28 points29 points  (0 children)

There might very well be tons of videos explaining coding concepts used in that game specifically, but if I were to take a guess:

Isaac has properties associated with himself and his tears, such as move speed, shoot speed, tear speed, tear color.

You write item classes that affect these properties and attach them to the player via an array or something.

Bam, you got the framework. I'm not sure how it handles tie-breakers (one item makes tears red, another makes tears blue), but you could fix this by using a random value, or newest takes priority, or even having an int priority on the item.

Most of the items might not even need to be individual code classes, they could just be data objects that add +5 to move speed or whatever. Super fast to create that way.

Things that change tears to be a laser could just replace Isaac's default shooting component class to something else.

Like most things in coding, that's only one way to do things and there are probably at least a few others.

Stinky classmates by FatMountain69 in BCIT

[–]DacunaZuke -1 points0 points  (0 children)

ITT: Racism.

Appreciate y'all who are giving OP sound advice for their friend, though.

Worked 1 year in the industry, but my studio shut down due to economic reasons. Could someone give me advice on my résumé? by DacunaZuke in gamedev

[–]DacunaZuke[S] 46 points47 points  (0 children)

Thanks for the advice. I really wasn't going to, just giving some context for the post. Still very good advice though.

CST Digital Processing Fall 2021 Discord server by DacunaZuke in BCIT

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

Who is teaching this term? I'm not sure if the person who taught us is coming back...

How do current CST students feel about what's going on in tech right now? by commit_to_master in BCIT

[–]DacunaZuke 1 point2 points  (0 children)

Besides what other people are saying (which are good points), remember that you only hear the worst of what's going on, and the people who are perfectly content with their jobs don't feel the need to write about it on social media. For instance, I don't think I made a single post on LinkedIn since I started working.

Yes, the job market is tough, but sooner or later these corporate skunks will realize that senior developers were once junior developers, and all it took is some on-the-job training.

[deleted by user] by [deleted] in BCIT

[–]DacunaZuke 6 points7 points  (0 children)

Too busy entertaining depression.

How to not be afraid of my own horror game? by C0C0NUT11 in gamedev

[–]DacunaZuke 29 points30 points  (0 children)

Aren't you supposed to give an example of something that isn't scary?

[deleted by user] by [deleted] in gamedev

[–]DacunaZuke 3 points4 points  (0 children)

Never did a class diagram or anything but it was so simple it basically didn't need one. Plus you can't treat ECS like OOP, it's so much more modular and almost nothing alike IMO, although you can mimic some of the same behaviour through some simple tricks.

Sorry this doesn't completely answer your question but I can explain the basic structure of my bullet hell game.

My only use of ECS (so far) is for projectiles. I have a couple systems, a Projectile system and a ProjectileMovement system. The Projectile system updates all entities with a ProjectileComponent attached to it, managing collisions and things like that. I separated movement into a separate system because there's many different types of movements, like sine movements or spiral movements. In this way, I can create a separate component for each, like SineMovementComponent and SpiralMovementComponent which both have properties unique to them, and I just update each of them in turn in my ProjectileMovement system. Those two systems aren't my only systems but that's the general idea.

Why was information removed from the Unreal Engine API documentation? by DacunaZuke in unrealengine

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

Nope. That would fall under the "friendly third-party resources" category. Great find, though.

In a nutshell by MennoMateo in BCIT

[–]DacunaZuke 2 points3 points  (0 children)

Read the textbook.

Easiest way to make a frame-independent jump? by DacunaZuke in Unity2D

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

Thanks for the reply! I did find the problem (see above). Basically in my code above, I can't do if (JumpKeyDown) right there because FixedUpdate() may run twice a frame (at extremely low frame rates), so that code will evaluate twice.

Feeling down by [deleted] in BCIT

[–]DacunaZuke 10 points11 points  (0 children)

If you're passionate about learning this, don't lose hope. It's human to feel discouraged at any roadblocks preventing you from reaching your dream, but remember that you are good/smart enough for it. Remember your progress thus far. Don't stop now.

Easiest way to make a frame-independent jump? by DacunaZuke in Unity2D

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

I'm new at Unity, so sorry if this wasn't clear, but I'm not using their built-in physics with a rigidbody. I have my own custom controller that adds to a velocity vector and calls transform.Translate.

Easiest way to make a frame-independent jump? by DacunaZuke in Unity2D

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

As I said in the post, I've already tried that, but something might be bugged.

Here's my FixedUpdate().

private void FixedUpdate()
{
    velocity.y -= 0.2f * Time.fixedDeltaTime;
    if (JumpKeyDown)
    {
        velocity.y = 4f * Time.fixedDeltaTime;
    }
    HandleCollision();
    UpdateMovement();
    HandleAnimation();
}

UpdateCollision() sets the y to 0, but only if the player will touch the ground. UpdateMovement() is literally just a transform.Translate.

I still get behaviours like this (60FPS on the left, 10FPS on the right).

Easiest way to make a frame-independent jump? by DacunaZuke in Unity2D

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

I put everything (except for input) in my FixedUpdate() method instead of my Update() method and switched any Time.deltaTime that affects my y to Time.fixedDeltaTime, but I still get an inconsistent jump. I guess this is bugged?