freifunk / freifunk/meshviewer

Add badges/achievements for node owners, with victory points (Catan style)

Open
#129 2 comments 2 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
20
Forks
34
Avg merge
22h 28m
Merged PRs (30d)
29

Description

I just stumbled over the following sticker / card designs from/in @mwarning's [chaos sticker collection](https://github.com/mwarning/chaos-sticker-collection), which I believe is inspired by the board game (Die Siedler von) Catan:

![longest radio link distance](https://mwarning.github.io/chaos-sticker-collection/images/freifunk_l%C3%A4ngste_funkstrecke/freifunk_l%C3%A4ngste_funkstrecke.svg)
![biggest radio network cluster](https://mwarning.github.io/chaos-sticker-collection/images/freifunk_gr%C3%B6%C3%9Ftes_funknetz/freifunk_gr%C3%B6%C3%9Ftes_funknetz.svg)
![longest multihop path](https://mwarning.github.io/chaos-sticker-collection/images/freifunk_l%C3%A4ngste_wlan_verbindung/freifunk_l%C3%A4ngste_wlan_verbindung.svg)

And I love the idea! I think it would be nice if the map could determine which node owner, determined by the contact info, would get which achievement. An achievement icon/badge should then be displayed on a node's details page. Or on an extra tab (or on the statistics tab?).

More exclusive card ideas would be:
* Longest multihop ring
* (Oldest node in the network - would like to reward people who are longtime supporters of Freifunk, but maybe controversial, would encourage keeping outdated/deprecated devices, which would be harmful for the network. Though maybe the "part of the network" age could be inherited by a new node with the same name as the old one for this particular achievement?)
* (Oldest accumulated age of a cluster - same concerns as above.)
* Longest radio link: add bronze, silver and gold, bronze for a bad link quality, gold for a green/good link quality etc.)
* Highest [k-Zusammenhang](https://de.wikipedia.org/wiki/K-Zusammenhang)
* Highest k-Zusammenhang times "sum of all link distances of this cluster" (to encourage not only putting many devices in the same room for a high k-Zusammenhang, but to also spread them)
* Highest sum of all link distances of a cluster
* Node with the most clients, averaged per week
* Cluster with the most clients, averaged per week
* A device closest to the townhall / parliament, the democratic decision making center of a city or region
* Longest link distance to the device closest to the townhall
* Longest multihop path to the device closest to the townhall
* Node with the longest uptime since last firmware release
* Node with the longest accumulated uptimes, which were each with the latest firmware release at that time
* Device with the most antennas / highest MIMO count

The number of victory points should be proportional to its usefulness for the network overall

There should also be non-exclusive achievements, like for example:
* Being part of the network for x months/years
* For a node having/providing an uplink
* For a node providing a geo location
* For a node providing contact information
* A device that uses the latest WiFi standard
* A device that uses the beta or even experimental autoupdater branch
* A device that provides an uplink and is x86? - offloader? Or specific other devices with a fast CPU + uplink?

There might also be negative achievements, "bane points", which reduce the number of victory points. Examples:

* A device deprecated in Gluon
* Outdated firmware (the older the more bane points?)
* Oldest firmware (many bane points)
* Node with the longest uptime that is larger than the last firmware release date
* (Disabled autoupdater? Only if firmware is actually outdated?)
* Most dense cluster (if >2 devices, number of devices times 1/(sum of link distances in cluster)? - Edit, or: "amount of nodes in cluster"*log_2("mean link distance between nodes in cluster")), for positive and negative victory points combined?
* Outside of the community's boundaries

## Is your feature request related to a problem? Please describe.

No, just for fun :-). And some small gamification to encourage people to set up nodes and to enhance the overall network.

## Describe the solution you'd like

See above

## Describe alternatives you've considered

n/a

## Additional context

n/a

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.