https://blog.breathingworld.com/research-on-a-new-method-of-pathfinding-algorithm-for-performance-improvement/ Breathing World - Blog * Home * About * News * DevLog Sign in Subscribe DevLog Research on a new method of pathfinding algorithm for performance improvement Farer Farer Jan 5, 2025 -- 1 min read Research on a new method of pathfinding algorithm for performance improvement Researching... Recently, after adding wolves, I set the wolves' field of view to be wider than that of rabbits and conducted tests, during which I confirmed that the A* algorithm was not performing well. This is because, in the current Breathing World, it uses coordinates that are subdivided into a width and height 16 times larger than the 1920 x 1080 terrain and plant coordinates. So, the wolf server is actually currently stopped. The wolves visible on the screen right now can just be considered cached data. The existing A* algorithm is very well-known and has already been proven to deliver sufficiently good performance. However, despite my limited skills and knowledge, I am challenging myself in this project to implement a pathfinding algorithm that performs far better than this. The basic approach is as follows: 1. Determine the straight path from the starting point to the destination. (Utilizing Bresenham's Line Algorithm) 2. While calculating the path, if an obstacle is encountered, immediately stop and recognize the obstacle. 3. Retrieve the outline information of the obstacle. 4. Among the outline information, select the optimal point for bypassing the obstacle. (This part is the core) 5. Combine the starting point and the bypass point to create a kind of waypoint coordinate. 6. Subsequently, repeat the same process from the bypass point to the destination. 7. Ultimately, the path is constructed like this: (starting point, waypoint1, waypoint2, ..., waypointN, destination). This is fundamentally the same concept as the ray concept used in 3D engines. However, since I am working in a 2D context and diagonal movement is not allowed, I only made slight adjustments. I would appreciate it if you could wish me success so that I can soon share the good news of my achievement. Read more Developing Rabbits... Developing Rabbits... 0:00 /0:08 1x 0:00 /1:17 1x 0:00 /0:19 1x 0:00 /0:49 1x 0:00 /0:25 1x 0:00 /0:25 1x 0:00 /0:09 1x To be continued... By Farer Nov 10, 2024 Concept Meeting for Wolf Development with GPT Concept Meeting for Wolf Development with GPT Suggested Settings for Wolf Behavior Predation Behavior Since rabbits are the primary food source for wolves, a wolf will begin searching for the nearest rabbit once its hunger level reaches a certain threshold. If there aren't enough rabbits nearby or if hunting attempts fail, the wolf can be set By Farer Nov 5, 2024 Rendering the map dynamically 0:00 /0:10 1x Initially, I developed the map to be draggable. I also added restrictions to prevent it from going beyond the edges. 0:00 / 0:20 1x This time, I made adjustments so that it works properly on larger screens as well. 0:00 /0:16 1x By Farer Nov 4, 2024 Weeds and Rabbits Weeds and Rabbits Weeds Weeds are the very first living organisms in the current ecosystem. Starting on barren ground, weeds emerge and go through a life cycle of sprouting, growing, reproducing, and dying. If left unchecked, the entire island will eventually be covered in weeds. Rabbits When weeds reach a certain density, a By Farer Oct 27, 2024 Breathing World - Blog * Alpha Test/ * GitHub/ * Discord/ (c) 2024 Breathing World. All rights reserved. Breathing World A persistent virtual ecosystem [ ] Subscribe