With 20-30 people talking in city chat, it would be nice to check messages that may be from hours ago. I suggest one or both of the following:
1. Either allow the Mayor to make a "Message of the day" which anyone can read, or make a "City Announcement" tab controlled by the mayor (if they can allow others to post or be blocked, it would be best), or a way for Mayors to "sticky" messages in their city chat, possibly with a time when they will remain, so un-stickies won't be a chore.
My preference would be a "City Announcement" tab, controlled by the mayor but potentially writable by anyone. I think this would be easiest to write as well, just copy the City tab.
2. Allow any player to "Filter" the city and maybe global tabs for a specific person, so they can have a longer-term conversation without being overwritten. You would always be able to pull up what a person said to you (if it fit on the screen) because of the filter.
Both a way to keep city announcements and to filter chat would be awesome.