Board Thread:Fan Projects/@comment-5518179-20140911215405

'''No download yet! I will attempt to get a working release on the 14th or 15th!'''

Hello there! I am Akrivus, your dim class-based Gamedezyner (cookies if you got the dim joke!) Because of the issues going on with the chat, people keep forgetting they are in chat, and because I'm bored, I have decided to make an actual chat desktop program. The only issue that this chat will have is that it is independent from the current chat because there is no existing framework for me to work off of.

Now, with the complex explanations aside, I'm going to give you a list of features, the change log, and future releases. Feel free to leave suggestions in the comments. If you support a suggestion, give it a vote on the poll! Every suggestion I put up will have a poll beneath it. I want this place to provide plenty of information, so this blog might get a bit large, thankfully, we have our table of contents below!

Features
This chat program will be feature-packed, it won't be so heavily feature-packed, but it will have a lot of utilities for our admins and stuff like that. Once again, I am encouraging you to give me/support the suggestions! Admins, moderators, step in here, I want to know if you guys would want a utility for this chat room, assuming you'd use it or not.

Implemented
These are for features that are in or will be in the chat program. If it hasn't been implemented yet, I'll add a little message that says when it'll be added. When a suggestion get's added here, that's a good thing.

Lidgren.Network
Lidgren is a networking library that will be used by both the client and the server. I personally find it better than System.Net because it reduces the amount of work needed to do something.

DotNetWikiBot
DotNetWikiBot is a MediaWiki library that allows programs running on the .NET framework to easily use the API that MediaWiki uses. Since the automatic logins use the bot login process and things like that, it will help out a lot.

Newtonsoft.Json
This library allows me to use JSON, a JavaScript object notation that I'd prefer to use over Microsoft's disgusting alternative; XML.

MediaWiki Login
This feature has yet to be implemented. Basically, this means you don't have to individually get onto the login page and stuff like that, it'll mean that the program will log in for you. The only issue with it is that you are limited to a certain amount of logins per minute or so. I might do an extended session system of some kind so you don't have to deal with that throttling mechanism.

MediaWiki API
This feature has yet to be implemented. This feature allows the chat server to view the amount of edits one has, if they are banned, and more. This can be used to limit a newcomer's priviledges (suggestion by Akrivus), or determine new administrators, it can even transfer bans on the chat onto the Wiki (should we do that?). By far, I'm going to add this, but not put in all the restrictions unless it is needed.

Themes/Style Creation
This feature has yet to be implemented. Style creation means you can change the chat windows colors and stuff like that. Themes will mean that you can redistribute those themes you create. Both of them will support background images, new fonts, colors, new ping noises (suggestion by TheDarkMantis15), and other stuff like that. The feature's purpose is to add some personalization to your chats, rather than that pale blue screen.

Emoticons
This feature has yet to be implemented. Every chat is going to need these, it will simply change the standard emote symbols into an image. These can be customized by your themes/styles. I will be using the default emotes that the chat room on this wiki uses.

Pings
This feature has yet to be implemented. Pings can be customized to make a sound when someone says something, a message appears, and more. Not only are pings accompanied by a noise to your choosing (by default, it is the ring noise), but a notification bubble will appear.

Kick/Ban Votes
This feature has yet to be implemented. Adds onto the MediaWiki API feature. This will need the MediaWiki API feature present, so users don't flood that chat with sockpuppet accounts in order to kick or ban multiple people. Basically, this would work off of commands/buttons and such, that allow others to vote for kicks and bans. Bans will probably not be supported, if they are, they will always be for two hours.

Private Messages
This feature has yet to be implemented. I consider this a core feature, but I had a couple suggestions to add it, so I'm adding this to the list to prevent future confusion. This will be using group and single user messages, and will use the MediaWiki API to prevent people from hacking in. Censors may not be implemented on private messages, and if it is needed, a social spy feature for moderators can be added.

Swear Filter
'''This feature has yet to be implemented. '''This would automatically prevent users from posting profane messages or accessing the chat with a profane username. Since swearing is not allowed on chat, it would make perfect sense. When a user attempts to send a message with profane language, the server will notify moderators on chat and a message for the user sending the message will be given three chances that last for the whole session. After that, it will result in a two hour ban which grows for every three chances.

Suggested
Wanted or needed features in the comments will be moved the the Suggested category. When you want to add something, please provide a description so I can know what your talking about and so I can explain it, I'll add a poll to the list and see if people would like it.

Restricted Privileges
This suggested uses the MediaWiki API to determine if a user is autoconfirmed (less than three days old) or not. It can also be used to restrict users without the proper amount of edits, but such a feature impedes on the community. I'd rather restrict banvote permissions on the non-autoconfirmed users. Restricted Privileges Yes No

Voice Chat
Using a file stream, and the use of a microphone, I am capable of allowing users to talk to each other with their voice. This feature would be push to talk, and configurable. It would also use the MediaWiki API to prevent new users from spamming/annoying other users. Voice Chat Yes No

Social Spy
This will be an admin tool allowing them to access other user's private messages to see what they are up to. It can prevent pre-meditated attacks, but also open you up to something you may not want to be reading. Social Spy Yes No

Updates
This is where the current updates go, so that if you want a legacy version (don't know why you'd want one, but okay.) you can just go here and get one. It also adds a description to the updates.

0.0
This version adds basic Lidgren.Network and DotNetWikiBot methods. No download will be provided for this update.

0.1
This version finishes the basic connections and puts the server online. It should be released on September 15th.

Conclusion
Thank you for reading! Remember to place your own suggestions, I greatly appreciate them! 