Yesterday I was awarded the
Talkative badge on the main site for one message being starred out of ten message posted in chat.
According to me, chat is same for main as well as meta site. So, why I didn't receive the badge here, on meta?
As you've noticed, badges are separate for the main and meta sites. Some badges just can't be obtained on meta (even though they appear in the list of badges), and the chat badges (Talkative and Outspoken) are part of those.
The chat server is shared with all other Stack Exchange sites (except Stack Overflow and Meta Stack Exchange which have their own server). You got a talkative badge on Physics Stack Exchange, but not on Mathematics Stack Exchange, even though it uses the same chat server. Why? Because the 10 messages were posted in chatrooms 'parented' to Physics Stack Exchange. It's not possible (except for some hacking or old cases/bug leftovers) to have a chatroom parented to Physics Meta Stack Exchange, therefore you can't earn the badge here.