(devlog 2.5) how to PLATFORMER AI and pathfinding
#devlog
If you want to follow the project and me you can subscribe my chanal. ^-^
If you have any questions about the technical implementation you can ask me in the comments.
Devlog 0: • Showing My Game "Down ...
Devlog 2: • IMPROVING and converti...
#gamedev #gamedevelopment #gamedeveloper #gamedesign #games
#developer #development #unity
Пікірлер: 58
The art style looks very cool! Great job with the enemies btw :)
@Atrejooo
2 жыл бұрын
thank u very much! Soon I'll make a video where I show many many enemies and how I made them.
@OldTires
2 жыл бұрын
@@Atrejooo Cool looking forward to it!
This is great man I'm currently making a 2D platformer Roguelike and I thought this method would be best but I couldn't properly visualize it in my head, this helps a lot with proof of function and I will use this method and expand on it, great work!
@Atrejooo
Жыл бұрын
Nice 👍✨
Your game looks great and this video is helping us with our pathfinding issues. Thanks!
@Atrejooo
Жыл бұрын
Glad to help!
This game looks really cool specially because I am trying to learn game dev and stuff so I know how hard it is keep up the good work
@Atrejooo
2 жыл бұрын
Ty. Wish you the best of luck with game dev. (One of the coolest things u can do) ^^
Well done! I wish you good luck
@Atrejooo
9 ай бұрын
Thank you!
I actually really like your method a lot, its quite creative in my opinion
@Atrejooo
Жыл бұрын
Thanks a lot. Only works on grid based games. Or u create a graph with box colliders.
@ctct9418
Жыл бұрын
@@Atrejooo you should make a package with this method! It would be really useful for a lot of devs :D
@leonidaszatchbell2122
3 ай бұрын
@@Atrejooo Sorry if im asking dumb question, but what do u mean grid based? Can't i use this with the tilemap node simply?
Thank you! I'm going to try and implement this in my game.
@Atrejooo
Жыл бұрын
gl
@rileylearns
Жыл бұрын
@@Atrejooo Probably not as advanced as yours yet but I did just finish it! Thanks for the inspiration!
@Atrejooo
Жыл бұрын
@@rileylearns np
so weird that this video is so popular lol.
Extremely creative
@Atrejooo
Жыл бұрын
Thank you!
nice
how can u made the vector go up then right then down from the begin to the end, i really have no idea how to make the vector toward the end point . reakkt appreciate ur answer.
Your counting system confuses me. 0, 2, 2.5… is 2.73 next or will it be video 5? Who knows, but I’m here to find out.
@Atrejooo
Жыл бұрын
Idk. But thanks for sticking around!
my man just dropped the knowledge bomb out of nowere and leaved
im making a platformer with pathfinding, while Im using a diffrent engine id like it if you explains how this works fully
Hi great solution I creating a side scroller platformer as well and I was wondering how did you implement this?
Hey ! Great video, I'm subscribing right now! May I ask how you overcame the middle knot path? Let me explain, I'm trying to implement your "all in one path" and I tried to start at the terminal nodes, but there are some nodes in the middle that are not on the best path depending on where the player starts. Did you run a* on all nodes in the grid? If you start with the terminals too, how did you solve this problem in the middle?
@Atrejooo
10 ай бұрын
I can’t really help you with that because I don’t understand it. The video is very old and not well explained. It’s not A*. You can imagine the path go from everywhere to a specific goal. If you imagine the nodes as a maze on the ground. You can get the path by spilling water on the goal and write down the direction the water goes.
@GabrielFontenelle
10 ай бұрын
@@Atrejooo Ah, now I understand! This is very creative! Good job and thanks for the clarification!
First: Your videos are underrated. Second: Your game looks very cool :D Third: Can you pls make a video on how exactly did you make the enemy AI like in your video step by step, I tried to make a pathfinder but it didn't go well XD Forth: Liked and subscribed :D
@Atrejooo
Жыл бұрын
Wow, thank u very much. Although the script for the pathfinder and ai is about 2000 lines and a step by step tutorial would be a bit overboard. Also it is very specific for my game and isn’t very versatile. I am sry ^^
@m.a.s3591
Жыл бұрын
@@Atrejooo Oh ok then I will do my best to improve my game, and I actually have a couple of ideas after watching your video :D + Thanks for responding ^^.
@Atrejooo
Жыл бұрын
@@m.a.s3591 no problem ^-^
hey I have a bit of experience in Unity, but never messed with AI. Do you mind joining a discord vc one day and show me in depth how to program a system like you did? Best regards, Brandon
@Atrejooo
Жыл бұрын
Possibly yes. I mean it isn’t really an ai. It’s more of an algorithm. But if you want
Hello, I'm a gamedev currently developing/playing around with a platformer idea. I love to make interesting AI for my games, however although I've never touched A* pathfinding I've developed other kinds of AI such as steering behaviours, etc. The thing is, when I got to implement it, I was surprised by the great tank in performance a SINGLE unit in my game produced by calling the algorith on every Update. Since you are one of the few that has implemented it on a platformer game in a flexible manner I wanted to discuss with you some fix I can make to boost the performance on my game. Since it appears that you feature MULTIPLE enemies at once on screen with their own brain. How can I get to tell you further details? Discord? Thank you for reading my comment btw.
@Atrejooo
Жыл бұрын
discord.gg/8ZvNgApG
@Atrejooo
Жыл бұрын
I sent you a link to our sever. if you want we can talk over discod. But basically the performance can be improved by only calling the pathfinder everey few seconds. My techique is so fast becasue it just needs one path per target and not one per agent (if you know what I mean).
I assume enemies don't have infinite vertical movement, they can just jump and maybe double jump So why not close off paths that ask for too much vertical movement? Like with the diagram at 1:50 say a trail of red nodes that's more than some threshhold gets deleted because no enemy will be able to jump that high That would force enemies to take longer paths that are actually accessible
@Atrejooo
10 ай бұрын
Good question. Each vertical waypoint which is directly above the ground stores the required Hight for the jump. Each agent the checks if there jump Hight parameter (its just a manual approximation) is enough. If not the agent doest jump. 👍✨
smart, I don't think this would extend super well to a level where you have 1 way platforms though or where multiple paths exist to get to the same place. Which is a shame... because I really don't like the typical enemies in most platformer games. Have you ever played sundered? I feel like figuring out what they did for their enemies that can climb walls would be a pretty useful thing for your game if you plan to add one way platforms.
@Atrejooo
Жыл бұрын
Nope no one way platforms. The system is best for my game in specific and can’t be expanded hugely.
so you loop through all the path node every frame or is there another way of it ?
@Atrejooo
6 ай бұрын
Well, no it’s just using the ongizmosdraw() Methode to draw each vector
how did you set the nodes for the graph?
@Atrejooo
Жыл бұрын
What do you mean exactly?
how can u visualize the vector at 2:34, really appreciate ur answer
@Atrejooo
6 ай бұрын
Oh, it’s just a gizmos. It’s a sphere and line put together
I see many problems with this design, the enemies cant even jump over 1 block gap.
@Atrejooo
11 ай бұрын
Yep. I actually have to design the rooms in a specific way so these problems don’t occur
@ronthedragon5704
11 ай бұрын
@@Atrejooo I actually am trying to build a grid from this video: kzread.info/dash/bejne/oJydqNpraMiderw.html&ab_channel=SebastianLague and after that I'll try to convert it into a platformer path finding
Down Down San Unertal gencide route
@Atrejooo
Жыл бұрын
I like Undertale!
john
Hey, i did it more symple, i just use navmesh plus and rigid body 2D, rb.velocity.x = agent. desiredVelocity.x; if(agent.desiredVelocity.y > 0 && isGrounded) Jump()