• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Chat Client (Yeah, I was bored)

Status
Not open for further replies.
Level 40
Joined
Dec 14, 2005
Messages
10,532
For the Hive chat, that is. Tested on Mac OS X Leopard, Windows XP Pro SP2, Windows Vista SP2, Windows 7.

--

Taking requests of what to add. One goal would be Linux support (from what I hear, images don't load on Linux), but I'd need a Linux user to debug with me to do so.

--

If you are encountering problems, check errorlog.txt and attach it to this thread if it has anything relevant in it, along with a description of what went wrong. This may help me fix those problems.

--

Requires Java SE 6.

Mac users: Your JRE defaults to 1.5.0 (even if you installed 1.6.0), so go to Applications -> Utilities -> Java -> Java Preferences and drag 1.6.0 to the top of the list for Applications.

--

Features lacking compared to the real chat:
  • Clicking a user's icon will not load their profile (I may add this if anyone cares).
  • Being kicked (don't abuse this, as you can be banned).

Features added compared to the real chat:
  • [CURRENTLY DISABLED] "Private channels" that allow you to mass-whisper everyone else inside them when you type a message.
  • Changing user and rank colour and icons.
  • Enabling/disabling colour, icons, self-highlight, dings, and announcements.
  • Fast whispering.
  • Modifiable cutoff.
  • Logging.
  • Ignorelist.
  • Sound notification if someone says your name and you are in another window (off by default).
  • Turn off emoticons.

Warning: Do not give away logininfo.txt--it contains an md5 of your password. While people cannot use this to get your password, they can use it to log in to your account in the chat (or on the site if they hack their browser).

Note: all multi-word (space-containing) input should be surrounded in "". Input should not contain "s unless for the aforementioned purpose.

No commands (nor their parameters) are case sensitive.


/ignorelist
Adds a user to the ignorelist (or removes them if they were already on it).

Example:
JoeUser: BLAHBLAHBLAH
/ignorelist JoeUser


/staff
Opens the staff channel. If you do not have priveleges to enter the staff channel, it will not send or receive text or members (so don't bother).

/c
Standing for channel, /c handles all channel-related operations.
Subcommands:
  • new (alias create).
    Parameters: <channel name>, <user name> (, <another user name>, ...)
    Creates a new channel containing the users listed as well as yourself (this is only a "channel" on your side). Any whispers from them to you will display in this channel, as well as any whispers from you to them. If you type a message in this channel which is not explicitly directed at someone via /w, /s, or /r, it will be mass-whispered to everyone in the channel.

    Example: /c create TestChannel JoeUser BobUser "Matt User"​

  • inv (alias invite, add)
    Parameters: <channel name>, <user name> (, <another user name>, ...)
    Invites the users listed to an already existing channel. Will do nothing if no channel by that name exists.

    Example: /c invite TestChannel TestUser​

  • rem (alias remove)
    Parameters: <channel name>, <user name> (, <another user name>, ...)
    Removes the users listed from the specified channel.

    Example: /c remove TestChannel JoeUser​

  • del (alias delete)
    Parameters: <channel name>
    Deletes the specified channel.

    Example: /c delete TestChannel​


/set
Set handles all operations which change user and rank properties.
Note: The <type> field always can either be r (rank) or u (user), and determines whether the <field> field is a user name or a rank name.
Subcommands:
  • icon
    Parameters: <type> <field> <value>
    Changes <field> of type <type>'s icon to <value>. If <type> is u and <value> is "none" (without the quotes), then the icon will be reset to the chat's default icon for that user. <value> should otherwise be the icon file's path from the <Bot path>/ccfiles/ folder. User icons override rank icons.

    Appending w to <type> will cause the change to be written to the correct file.

    Example: /set icon u JoeUser WindRider.png​

  • colour (alias color)
    Parameters: <type> <field> <value>
    Exactly like icon, but takes a 6-digit hex colour string or HTML colour string for <value>. "none" also works on ranks here. (Custom) user colours override rank colours. An invalid colour string will cause the display to default to black.

    Appending w to <type> will cause the change to be written to the correct file.

    Example: /set colour rw Users FFFFFF​

A full list of ranks is:

Users
Chatmods
Respected
Forummod
Admins
Webmaster


/s
Whispers the last user you whispered.

Example:
/w JoeUser: Hi!
/s How are you?


/r
Whispers the last whisper who whispered you.

Example:
JoeUser whispers: Hi!
/r Hi!


/cutoff
Sets the maximum amount of messages in the box before they start being removed (once removed, they cannot be retrieved in any way).

Example:
/cutoff 200


/reload
Reloads userinfo.txt and rankinfo.txt. Useful if you're customizing things and don't want to have to restart the whole client.


You can modify default rank and user icons by editing the rankinfo.txt and userinfo.txt files. Be sure not to screw anything up too bad though (and leave the rank fields the same, just change the values), because the client uses them too.

You can also set user and rank colours in these files by adding a third field which contains the hex colour string. For example:

Users:peon.png:FF0000

Later, there'll be a way to edit these files safely from within the client, but that hasn't been coded yet.


EDIT: Fixed a bug where different messages could be interpreted as the same.

EDIT: Fixed the nasty display bug mentioned below, meaning the repaint feature is now enabled again.

EDIT: Now the error messages if login fails should give you a bit more info. Tell me which "Failed to" message you get, please.

EDIT: Highlight now looks the same as in the chat.

EDIT: Members list no longer grows horizontally when you scale the window.

EDIT: Login problems are officially thinked! Major thanks to wereguy2 for providing me with the faulty data I needed for debugging.

EDIT: Now with UTF-8!

EDIT: May not cooperate with custom OS themes.

EDIT: Icon button backgrounds are now invisible.

EDIT: Fixed some more reasons why login may fail. Also added dings and some more options ("Display"). Note: You should re-download the full package for this version, as it adds a new icon (HiveIcon.png) for the program. Also fixed the colouring of the UI to look like the chat.

EDIT: Now notifies you of bans.

EDIT: Now with logging, a modifiable cutoff, and some bugfixes.

EDIT: A lot.

EDIT: Fixed a bug to do with the cutoff under weird circumstances.

EDIT: Emotes can now be turned off.

EDIT: Bugfixes.

EDIT: Now works with the new cookies.

EDIT: Fixed a bug with the emote disabling code.

EDIT: Bugfixes and you can now write to userinfo/rankinfo from the client.

EDIT: Now keeps track of config changes.
 

Attachments

  • HWCC.zip
    258.4 KB · Views: 223
Last edited:
No. You have to press "Connect" and enter your username and password.

I figured that was obvious, but meh.

It is pretty obvious. However, some sort of "remember me" selection would be nice.

One thing I noticed with my computer is that the window can't be enlarged and, at normal size, only takes up two thirds of the screen.
 
Level 13
Joined
Oct 27, 2008
Messages
1,176
i typed both my acc n PW in right firewall is down and notifies me if it does block something
so idk i'm out of words
 
I think there is no need for discussing about AJAX vs JAVA. I program with both, and both have their ad- and disadvantages. I do think that AJAX is good at stateless online programs, but sometimes java is just better. Check out the windows 7 download. You need java, because its faster and does actually disallow of hacking the link and a few more things.
 
Status
Not open for further replies.
Top