Well, one can say it’s both selfish and selfless for either party in the end.
It’s selfish if a developer perma-device-bans because it renders the device unable to be passed down to others, whether fairly, maliciously, or more.
Additionally, you need to think about edge case scenarios.
What if that same bad actor trades in their phone in good condition? Like, Apple has an Apple Refurbished store, and they do all the checks to get it up to date, but in the end it’s a reused phone. What if a device-banned phone gets into the system, and a genuine purchaser (from Apple, mind) has to carry on the ban even though they really shouldn’t at all.
Apple, Back Market, and other refurbished stores don’t exactly check whether a player is banned off of a specific Roblox game and ask for them to unban them, no?
Then again, it’s also selfless if a developer bans a device, because it renders that particular device unable to be used in future for malicious actors, requiring the bad actor to purchase a new device to continue, causing quite a few headaches.
It indeed isn’t the fault of the developer here, but arguably, one could say it relies on Roblox themselves to accurately ban devices.
Like, if a device is permanently banned, that has some pretty big repercussions down the line. Nobody is exactly going to replace the insides of, say, an iPhone, just so someone else can play Roblox.
Device bans should be, at most, temporary.
That way, bad actors are punished well, while at the same time avoiding maximum collateral damage, avoiding regular users inheriting the ban.
Yes, temporary device bans in the end aren’t very practical for developers, but it’s something in between selfish with “ha! you can’t pass this device down now” and selfless with “nice try, but your hacks are no more”.
Roblox should also add something in their ToS’s to prevent developers from banning (and rebanning) a device for an extended period of time (after all, there’s a high likelihood they’ll move on, and a bad actor really won’t wait 30 days to try again).
If Developers automatically re-ban a device once their ban expires, the collateral begins and it’s on the developer who should be punished too by disregarding edge cases on where someone else could genuinely unknowingly take the ban themselves.
Of course, the ideal method here would be a portal to automatically unregister the device from device bans on proof that a new, legitimate, owner is indeed in possession of the phone, but as I mentioned before, temporary bans also work fine.