speedcontrol / nodecg-speedcontrol

NodeCG bundle to help facilitate the running of speedrunning marathons, including overlays.
MIT License
45 stars 34 forks source link

Add simple relay support #28

Closed zoton2 closed 3 years ago

zoton2 commented 6 years ago

I did something similar to this for SpeedSouls 2017; make it so a (co-op?) run can be specified as a relay and another panel (or an existing panel modified to include this stuff) can be used to control which person in the team is currently playing. Would also want this to work for races too, so multiple teams. We plan on having a SM64 70 Star relay at ESA Summer 2018, so it would be nice if the list of people was somehow in a good format so if there's a lot of people it doesn't just stretch off the bottom of the window.

zoton2 commented 6 years ago

For the only run we need this for in ESA Summer 2018 (SM64 70 Star) I think I am going to code something custom; we're still not sure if that will be 1 team or 2 and need to figure stuff out nearer the time.

zoton2 commented 3 years ago

Bumping this back from the dead, I'd like to implement something simple in this bundle for a small relay we have at ESA Summer 2021 that could at least be tested.

zoton2 commented 3 years ago

I have added simple support for marking a run as a relay (with the run data relay property), which will then allow you to set which player on a team is currently active, inside the team data as the relayPlayerID property. Have made it so the relay property can be toggled in the run modification dialog, and also added a simple NodeCG/event message to help change the relay player, and added a dashboard for that too.

Still needs some more testing, and will need documentation and some checking to make sure it's not got any breaking changes in it.

zoton2 commented 3 years ago

Have updated the documentation, implementation was tested a few times at an event and seems to be functional.