Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Redo which rooms gets connected to other rooms #71

Closed
JackAshwell11 opened this issue Oct 16, 2022 · 1 comment
Closed

Redo which rooms gets connected to other rooms #71

JackAshwell11 opened this issue Oct 16, 2022 · 1 comment

Comments

@JackAshwell11
Copy link
Owner

JackAshwell11 commented Oct 16, 2022

Possible ideas:

  • Create a complete graph and construct a minimum spanning tree. This is probably the best idea, but when adding some edges back in, we need a way to make sure long connections aren't added back in
  • Use stored containers and get their neighbours constructing a graph
  • Use a Delaunay triangulation to create a graph between all the different rooms with no intersections
  • Randomly pick rooms to connect making sure every room is reachable
  • Use the bsp tree generated to connect each room with its neighbour (this is probably identical to the sequential version)
@JackAshwell11 JackAshwell11 changed the title Redo which rooms gets connected to other rooms. Could use a minimum spanning tree for this Redo which rooms gets connected to other rooms Oct 16, 2022
@JackAshwell11 JackAshwell11 self-assigned this Oct 16, 2022
@JackAshwell11
Copy link
Owner Author

The final idea was to construct a complete graph as an adjacency list then create a minimum spanning tree from that graph. Then the biggest distance from the mst was multiplied by 1.5 and all extra connections which were less than or equal to that value were saved. Finally, 20% of the saved connections were then added back into the graph and A* would draw them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant