SFTtech / openage

Free (as in freedom) open source clone of the Age of Empires II engine 🚀
http://openage.dev
Other
12.78k stars 1.12k forks source link

Record history of cost changes in pathfinder #1680

Open heinezen opened 2 months ago

heinezen commented 2 months ago

Required Skills: C++

Difficulty: Hard

At the moment, changes to the movement cost of cells in the openage pathfinder always overwrite the old values. The old values are not saved anywhere, so going back to a previous state of the grid is currently not possible. Ideally, the grid should support going back in time, so we can roll back changes e.g. for multiplayer matches.

openage already provides the curve data types for storing values over time, so changes could be recorded using the same methods. An array curve (see https://github.com/SFTtech/openage/issues/1678) would probably be the best option for storing values for a grid.

To try out the current pathfinder, check out pathfinding demo 1 by running the following command:

./run test -d pathfinding.tests.path_demo 1

Tasks:

Further Reading

HmbleCreator commented 1 month ago

I would love to work on this issue, can you assign it to me?

heinezen commented 1 month ago

@HmbleCreator Sure. go ahead :)