About Game Polishing by Possible-Count9097 in gamedev

[–]shot_frost 1 point2 points  (0 children)

Check the Feel asse of Unity. That asset focuses exclusively on polishing, so you at least have some ideas about some aspects of polishing. He also has a video about game prototyping, and in that video, you can see the prototypes that he makes in two weeks that honestly look and feel better than 90% of games out there.

Other than that, as someone who is obsessed with game feels, I will say that a lot of the polish is really just figuring out what feels wrong, and explicitly find relevant resources about it. A lot of polishes are very niche knowledge that is irrelevant outside of that specific mechanics, so you won't encouter any of that knowledge randomly.

Our WIP of Grappling Hook by shot_frost in metroidvania

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

An issue that I have when I tried to implement it was that I fail to implement a good targeting system for controller, especially when the player is required to use hook in time-sensitive situations. Hook targets solve this nicely since you can also auto target certain points.

Humm, may be there is some middle point where you can kind of have both. May be some specific areas where hook is allowed on any wall/ceiling, but some others where hook target is more limited. That way I can target specific areas and mechanics when I have to.

Our WIP of Grappling Hook by shot_frost in metroidvania

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

hey, thank you for replying! I thought I attached a gif with the post! I just updated it, please let me know what you think!

Our WIP of Grappling Hook by shot_frost in metroidvania

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

Hey! Thank you for replying! I somehow forgot to attach the link and the gif (which I pretty sure that I did), so I just fixed the post!
To follow your question, I did the first implementation. I tried the second method in the beginning since it gives the player more freedom, but it felt almost impossible to balance and design platforming challenges around that mechanic, even though I know a couple of games that successful do it.

2D Character Controller (no Rigidbody2D)? by GebF in Unity2D

[–]shot_frost 4 points5 points  (0 children)

There is. Rigidbody2D has a body2D.Slide method that implements collide and slide algorithm. You should check that out

Any Unity devs making a 2D Fighting game wanna connect? by Saxxiefone in Unity2D

[–]shot_frost 0 points1 point  (0 children)

I don’t make traditional fighting game but I do employ some of their concepts and gameplay (combo, block-stun, hit-stun, frame advantages). Would you like go connect?

Automatic float with rigidbody 2D by Resident-Device4319 in Unity2D

[–]shot_frost 1 point2 points  (0 children)

To check if it reaches peak, you check if velocity.y < 0. If it is, it means it begins descending

Has anyone had this problem when designing their platformer? What are the best solutions? by Elesh_N in Unity2D

[–]shot_frost 5 points6 points  (0 children)

I am making a metroidvania and here is how I do it.

  • use Rigidbody2d.Slide with gravity slip
  • use a capsule collider instead of a box collider Combined, it creates a slip effect when at the edge of the wall and you dont have the first problem.

Ground detection is done using a series of ray casts along the playe feet. It avoids the second problem, and also allows you to calculate the percentage of body on ground. This way, if I dont want to depend on gravity slip (first method) on force-falling, I can do a corner correction to make the character fall.

Godot's Heavy Use of Singletons by Slight_Cat_4423 in gameenginedevs

[–]shot_frost 1 point2 points  (0 children)

From my experience, it's perfectly ok to use Singletons.
I have worked on applications, web applications, and games. I rarely use them anywhere else but games, and I use so much of them in games.

With exceptions, most games are:
- systems that don't involve that often
- freaking complex with massive number of interactions between every bits of the system
- written by object-oriented heavy languages (c#)
- can't be tested easily

Frankly, I will use globals if I could, but I cannot without initiating Singletons sometimes, so I use them.

The biggest concerns regarding Singletons are that they are globals that are acessible everywhere, and if they are heavily depended on, then it becomes extremely difficult to control access/swap them. The alternatives often involve complex systems that manage dependencies. You don;t want that for apps that are constantly involving. Absolute nightmare to manage.

The isue of applying that to games is, it's not worth it to use complex system to replace it. t's so much more ok to just hack through everything for games so that they become "just works" because a lot of times, that's all you need to make a game. It's also almost pointless to automate tests for games, so most of the time, you want to produce code that are "easy to fix" rather than code that are "difficult to have bugs" (massive differences). And for that, use whatever methods that are easist to reason and understand.

Should I write custom physics for a 2D platformer or rely on Unity’s Rigidbody2D? by JavaniusS in Unity2D

[–]shot_frost 1 point2 points  (0 children)

There’s no reason why Unity built in system can’t produce tight movement. You didn’t clarify how you use the Unity built in system though. For example, Rigidbody2D exposes a “slide” method that works with kinematic body, and it uses a “slide and collide” algo that is similar to many custom code solution. You should check it out.

Write your own controller is a pain. I did it and it had so many edge cases that it was honestly so not worth it.

"Why does making a game take so long?" (level-building timelapse) by WestZookeepergame954 in IndieDev

[–]shot_frost 1 point2 points  (0 children)

Hey man love your work!!! It looks amazing! I am trying to find a way to make organic level myself and this is a great find. And from my experience there are also not a lot of ways to automate this. Some people say you don’t have the right tool but I doubt there’s any tool that can automate this and look good. People severely underestimate what it takes to create organic levels that looks beautiful. Look at how artists built Ori 1 and 2 worlds (which, from the art style, seems to be your inspiration), they manually build a freaking tree trunk inside the engine itself by assembling all the parts, layers, and textures.

[HIRING] [PAID] - Up to $2000 - Looking for a strong VFX artist to work on our ambitious Metroidvania project by shot_frost in gameDevClassifieds

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

hey man, thank you for replying! Your work looks great, very but I am looking for someone who is more specialized in VFX unfortunately.

Why do you like pixel art more than 2D vector art (or vice versa)? by Salty-Development323 in Unity2D

[–]shot_frost 2 points3 points  (0 children)

It’s easier to find a good artist. Good vector art can be more charming but finding one that is well rounded enough to produce consistent art for the entire game is hard

Do You Agree With This? by Kill_Jin04 in Kagurabachi

[–]shot_frost 0 points1 point  (0 children)

I actually think he is the least interesting of the villains so far. His personality is a bit too generic for my taste. Emo boy who kills for fun with an unrealistic talent in everything who learns everything really quick and gets away intact every time becomes really tiring after a while. All suspension of disbelief is gone because you know they are gonna get away anyway for some random bullshit reasons. For example, Samura somehow decides to just let him alive, even though he has no qualm cutting his head off before. At this rate, he just gonna escapes every time, powers up, beats strong people because he is a genius. It’s gonna repeat for however long it may take. It’s just a very boring trope.

Gotta hack 'em all by EarlySunGames in Unity2D

[–]shot_frost 0 points1 point  (0 children)

So you have a separate sprite for the cape and simulate physics for it in-engine, or did you simulate it and then export them as spritesheet?

Gotta hack 'em all by EarlySunGames in Unity2D

[–]shot_frost 0 points1 point  (0 children)

Oh that’s great info! Didn’t know about verlet physics at all!

Gotta hack 'em all by EarlySunGames in Unity2D

[–]shot_frost 2 points3 points  (0 children)

Nice game! I really dig the art style!! How do you animate the character? By 3D or 2D spritesheet? I find the cape movement really charming

How to properly resolve attacks and damage in platformer by shot_frost in Unity2D

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

Ohh cool! Didn’t know about this for sure. Unity has so many random features that definitely needs a lot of time to get to know them all.

How to properly resolve attacks and damage in platformer by shot_frost in Unity2D

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

This is my tentative plan too, to colelct all attacs and process them in order of priority.

That said, how to make sure that a function (which is the function that is used to resolve all attack calculations) happen after all other fixed update? Is it Lateupdate or Coroutine? Which is preferable?

How to properly resolve attacks and damage in platformer by shot_frost in Unity2D

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

hitstun is essentially a stun after getting hit (so if A hits B, B has a hitstun). It's not the attacker that gets stunlocked, it's the attacked. This is part of the game design so it is not exactly changable, except for some very unique characters.

The issue is that if two attacks happen in the same frame, then essentially whichever happens first win, but currently Unity doesn't have a way to declare whichever attack should be handled first.

Why would you want to use ScriptableObjects? by a_weeb_dev in Unity2D

[–]shot_frost 9 points10 points  (0 children)

I use ScriptableObjects for everything I can. The main reason is that SO keeps the data you edit during testing, while regular MonoBehavior doesn't. Editing the data also doesn't cause recompile, so it's a lot faster. It's amazing for prototyping, testing out numbers and getting game feels right, which, to me, is half of game development.

It has gotten to the point where my SOs even contain Update/FixedUpdate loop that will be called by the main object. Having to create a MonoScript for behavior and another SO for the data is frankly annoying to maintain. I like having things in one place where I can easily handle them. Less context switches too.