The flocking object is great. IIRC SolarB did an extension-less version of it somewhere, which you could potentially modify to include obstacle avoidance (if it doesn't have it already)
The flocking object is great. IIRC SolarB did an extension-less version of it somewhere, which you could potentially modify to include obstacle avoidance (if it doesn't have it already)
This was recently released, and might be of use: https://clickstore.clickteam.com/simple_tactics EDIT: seems broken at the moment - maybe wait till they update it
That is really cool. It does seem like it does use obstacle avoidance also? At least in the example file they seem to move around that big Bubble? https://www.andersriggelsen.dk/files...s/flocking.mfa
Do you have idea where I could find it? I do like to use as little extensions as possible. About that ISO project on the store, it looks very interesting, but how is it broken?
I played around a little bit in the flocking example, but it seems to me like the obstacle avoidance is calculated as a radious around a sphere ?
I tried to change the bubble to a couple of blocks to see how it would handle walls etc and decrese the radius, but they seem they "slip though" the blocks. Not sure if I am using it wrongly ?
What is wrong with it? This engine interests me.
Currently, once you click out of the intro frame, it just ends. There are a bunch of frames that have "do not include at buildtime" checked. When you check them (or run them individually) then you can see other parts of the MFA. But it's poorly commented so it's hard (for me at least) to figure out which frames are supposed to be included, and where to start (let alone how it actually works).
I mentioned it on the Patreon page and they said they were fixing it. Though to be honest even once the frames run correctly it will probably still be too poorly commented for most beginner/intermediate users to get much out of it, IMO.
If you choose set boid attributes, you can select avoid obstacles. I'm assuming if you use backdrops instead of actives and set the backdrop to obstacle, the boids would avoid / go around them.
That flocking example is interesting (and aenever is right about the obstacles btw).
The problem is that while the fish / zombies will avoid walking *through* obstacles, there's nothing to make them try to find a way *around* the obstacle instead. They certainly wouldn't have a hope of walking around a concave obstacle.
I modified my previous example to make it so that zombies repel other nearby zombies. It's only a lazy and buggy example, but I think the concept has promise.
https://1drv.ms/u/s!Atq7cUIJ7uexnzfF...oNQVj?e=zERwbn
Ideally, I'd probably try to simplify it all a bit using a bunch of 2d unit vectors - get a vector from the zombie to the player; get a vector to the zombie from each nearby zombie; get a vector perpendicular to the direction of travel if about to hit a wall (either left or right, depending on which detector is overlapping the wall) - then multiply them by various coefficients, and add them all together to get a new vector which is in the direction of travel. And then use a fastloop movement just to make absolutely certain that zombies don't end up waking through walls if something goes wrong.
That actually works quite nice with the repel of other zombies! It might work even better in a straight iso view where Zombies can overlap each other a bit without it looking too strange?
I have actually decided that I want to do a straight on ISO view. I tried to modify the example to make the zombies from this angle, but how it is working now they rotate like from top down. Is it possible to have them still move at the player but without adjusting their angle visually?
Use an alterable value called MoveAngle_ or similar and replace every instance of the Zombie's actual angle in the code. Then you could select your iso animation directions using MoveAngle_/11.25 so the zombies look in the direction they're moving.
Keep in mind that a circle will probably make the movement look best, so consider leaving the zombie's collision as a circle without changing how the code works, and adding the graphic as a sprite pinned to it.