I see - well maybe there would be a way to have an effective karma rating without involving negative points, and even without something like "revocable" commendations...
Here are some ideas for a commendation-driven visible karma system...
1) When a player receives a commendation, this fact should NOT be announced to them. Players shouldn't feel pressured to give a commendation to a player simply because they received one from them. Likewise, a player shouldn't be made aware that they did NOT receive a commendation from a crewmate since that could potentially be a source of ill will. In order to fully obscure whether or not a particular player awarded you a commendation, your karma value should only update at fixed time intervals, for instance, at midnight or 3 AM, so that you will only see the effects of ALL of the matches played that day and not the effect any single match had on your karma.
2) Instead of player A commending player B being a one-time event, player A can commend player B once each day. (Keep reading.)
3) The karma from a commendation is not permanent and gradually erodes as a function of matches played. (Eroding as a function of time could be unfair to high-quality players who do not play often.) As an example if Alice commends Bob, Bob's karma would increase by 100 points at midnight (per number 1 above), but the value of that commendation would decrease by 1 for each match that Bob plays, until after 100 matches at which point that commendation no longer carries any weight at all. However if Alice and Bob play another match the next day and Alice commends Bob again the karmic value of Alice's commendation of Bob would be restored to the full 100 point value and would proceed to erode as before.
4) Instead of seeing a raw karma score, karma scores would fall into a handful of "buckets", with the topmost bucket being open-ended. For instance the buckets could be something like "Swabbie" (0-999), "Deckhand" (1,000-4,999), "Officer" (5,000-9,999), "Captain" (10,000+). These numbers are PDOMA, the idea is that even though karma gradually evaporates, as long as you continue to receive commendations at a reasonable rate, you should stay in the best bucket.
A system like this appeals to me since if I give a commendation to someone I later discover is a jerk, I'd know that any benefit their karma score gets from that commendation will eventually vanish. On the other hand if there is a player I like playing with, I can commend them each day that we play together so my commendation will have an ongoing positive impact on their karma.
The most obvious flaw (I'm sure there are more) is that if you have 3 friends and you only ever play with them, your karma would max out at 300 and you'd always be a Swabbie, so if you went to play with randoms they might think you weren't a good team player.
So perhaps instead of the karma value of commendations eroding by one with each match played, they would only erode in matches where you're on a crew with someone who hasn't commended you that day (or maybe it would still erode when playing with your clan, just at a greatly reduced rate). That way someone who plays with the same 3 clan members 99% of the time would be able to retain any karma they earn playing with other people for longer (possibly indefinitely), so they could build it up to the "Captain" bucket and keep it there.
Anyway, just some ideas.