Straight up. Add hats using steam inventory.
I know that sounds ridiculous, but honestly i think it would be a good way to tie everything together once server side match making is added
Since you'll need internet to play multiplayer anyway, just run an online check in singleplayer, do some verifications to ensure that the game is not tampered with. If it does so, your connected to steams item server, and single player matches have a chance to grant you a hat
At the start of every round in single player, you have a chance to pull a hat when you pull an item out of the item box. The call to give an item is given out by the server and stored, similar to tf2 randomly awarding items
The game keeps track of this, and awards it during your next item pull
You pull a hat out of the item box instead of an item, maybe the dealer says a funny line, you still pull the amount of items your supposed to and then you continue playing
The hat is awarded automatically even if you end up in a situation where you do not pull from the box. pulling it from the box is entirely for show. So no amount of tampering or spamming the item pull through hacking the game would really result in getting more hats
Hats are used in multiplayer, you can equip them to your multiplayer head, just for fun
Now heres the kicker. If multiplayer gets server side verification and match making. add a seperate multiplayer mode where you bet a hat. 4 people go in, and winner takes the pool of hats. Maybe have a leaderboard for the most hats taken but 9/10 those leader boards get filled with jerks who just find a way to cheese their numbers
Similar to tf2 items, its marked that it was owned by someone else. The more a hat is traded around, the more names on it. Maybe have a special tag applied like tf2s strange
Maybe have steam trading for hats and such, but the baseline idea is that:
You get hats.
you can bet hats
you can take other peoples betted hats by winning hat matches.
