So I want to make a penalty on all the transfers (with a const value). Can this be implemented, or if not what does prevent it?
Yes, you could implement a fee on transfer of each sub token type, and you could set that value to constant or variable. Also, you could have different token fees for each sub token type inside of an erc1155.
This does require though that you are using the sub token types as fungible tokens, as you cannot take a fee on a non-fungible token transfer (as there is only one of it).