The points for different rarities are unbalanced. Common = 100, uncommon = 200, rare = 300, very rare = 400, extremely rare = 500, chase = 1000 and variant = 1000. First it’s linear and then it suddenly doubles for chases and variants, even though those cards are not even always that rare as explained in the next paragraph.
Variants and chases give 1000 points, even though they are not always rarer than extremely rares. For example chases from The Light are as rare as rares and variants from Kingdom Animalia have cards of different rarities (same amount of cards as core set and every card has a variant of equal print count). This means you can discard common variants and get 10 times what you would get for discarding a common.
Every rarity should give double points, just like the trading system works. Common = 100, uncommon = 200, rare = 400, very rare = 800, extremely rare = 1600, chase = 3200 and variant = 3200 if those chases and variants are actually rare enough. Check the print number for old sets and if it’s the same as another rarity, give the same points as that rarity.
I have an idea for bringing back discarded cards. After a card is discarded, make it available for purchase (craftable) with points. Just like Hearthstone. If would cost 4 times more points to buy a card than what you get for discarding it, so it’s best to discard cards that you can’t trade, because trading is 4 times more effective (you lose no value). At least with that system, discarding extremely rares does not matter, because other people can still buy them. Eventually all lower rarities might as well be discarded, because if a set has X prints per extremely rare, only X people can complete the set. All duplicates of lower rarities will become untradable because other people either have completed the set already (many people already for many sets) or people have incomplete sets without duplicates to trade with. The points from those discarded cards can be used to buy the extremely rares to complete sets.