ID:2230168
 
I'm currently working on a top-down strategy game, and need to include a professional-looking chat system.

My current idea is a chat window with a small dropdown box beneath (with each player's name in, for whispers, and "all" for public chat) next to an input for the text, akin to Civ V's (the blue box in the top right):



However, I'm not sure of the best way to create this in BYOND.

My current idea is to use a small Browser element with an HTML dropdown box, but the borders automatically put in around the dropdown box make it look pretty clunky, and leaves little room for the input.

I'd greatly appreciate any ideas/advice: nothing's too wacky!
I couldn't get the dropdown-box-in-browser to be small enough to look okay, so I've abandoned it in favour of just a text input, into which the users can type "@playername" to direct their text to one person, or write without the "@playername" prefix to write to everyone.

Planning on adding autocomplete to it at some point, so that only the first letter or two of a player's name is necessary, if possible.

Ideas for a better solution still welcome ^_^
Take a stab at this:
http://www.byond.com/developer/Bandock/SByIoLibrary

I vaguely remember using this library many years ago, when Bandock was first writing it, and it seemed to perform fairly well. I'm sure you can get a pretty slick result with just some minor tinkering.

Plus, Bandock is a pretty accessible guy -- I'm sure he'll be glad to help you if you send him a message.
Have you given interfaces a shot? You can make some very nice looking styles in the same way CiV V does theirs. I'm not sure how well it would work out on the technical side of things, though.
You should keep in mind putting any Windows UI element over a map control will basically destroy client-side performance. Visible or not.
In response to Nadrew
Nadrew is right. Anything that is dependent on GDI (even GDI+) is bound to be slower than a more dedicated graphics API like Direct2D/3D or OpenGL. Windows UI usually operates on GDI-based objects.