trippsc2 / OpenTracker

An open-source cross-platform tracking application for A Link to the Past Randomizer.
MIT License
35 stars 9 forks source link

Feature Request: Support for Other Games #75

Closed studkid closed 11 months ago

studkid commented 3 years ago

Is there any plans on trying to add tracking for other games other than alttp at this point? I presume alttp tracking will be the priority for a while until tracking is finished for the remaining modes, but seeing that this seems to be one of the few trackers available cross platform and actively developed, it would be great to see this add compatibility with more games in the future (especially if auto tracking is available still).

I'm not sure how feasible it will be to do this (and I suppose this suggestion ties a bit into #61, but I think a good step towards this would be to add some functionality allowing someone to create or import a custom layout. I would presume creating this layout should allow you to import custom icons to be used for buttons and ability to swap out the map and put markers down for item locations. The obvious issues I see is that the map wouldn't have the logic in place to accurately determine what is currently open and the ability to step autotracking. That said, I feel it would be worthwhile to have this as an option to create some basic trackers out for different games to drive more interest from other communities and later update the basic trackers with proper tracking when doing so is possible.

trippsc2 commented 3 years ago

This has come up a few times in the past.

TL;DR - I'm open to changing this project to facilitate other games, but not to develop for other games myself. There are many technical changes that would need to be made. I'm happy to collaborate with others to make it happen.

The rough idea I have had is to convert the existing codebase to be more modular. That way other developers can reference the libraries, implement the necessary interfaces, and their app will work like OpenTracker without having to reinvent the wheel.

That would split this project into four projects:

Another option would be to do something similar to Emotracker and allow for pack development and changing on-the-fly. It isn't my preferred option, because it adds a lot of hidden complexity. That option would still require splitting the project up for modularity, but the structure would be a bit different.

trippsc2 commented 11 months ago

A rewrite is in the works that will open up OpenTracker to 3rd party trackers.