0 Members and 1 Guest are viewing this topic.
WCS 1.8b1 is availiable for testing,If you are just looking to get WCS for your room then DO NOT GET THIS, this is a BETA VERSION and I can almost guarantee bugs!Right now that I only have you beta testers here to check for bugs, changes to this version:+ changed format of /who (apparently it is now bot friendly whatever that means...) + fixed a bug where it would drop everyone from the room as the system hits 49.7 days of uptime (oops) + changed version numbering system to include OS in the version number + removed update check, this will no longer auto update, meaning keep checking here for updates to the beta - I'm not sure if i will put the update check back in once it is stable or just leave it out, we'll see...
Latest NewsWCS 1.8b2 is availiable for testing,If you are just looking to get WCS for your room then DO NOT GET THIS, go to the WinMX Section and download the latest WCS Version from there as this is a BETA VERSION and I can almost guarantee bugs!The only feedback I got from beta 1 was a small issue of random closing with the linux version, I have made a few changes - see if beta 2 is any better ****UPDATE**** About 10 minutes after uploading b2 I was just reading something unrelated and I think I may have found the problem, so I quickly applied a fix and here is b3 for testing.I also got feedback about the use of a zip file on the Linux version so I have gzipped it instead this time.
the only real change between b1 and b3 are a few fixes for bugs in the linux version - ***
WCS 1.8b4 is availiable for testing,If you are just looking to get WCS for your room then DO NOT GET THIS, go to the WinMX Section and download the latest WCS Version from there as this is a BETA VERSION and I can almost guarantee bugs!OK, here is beta 4, changes since beta 3?+ a few more attempts at fixing that crashing bug (let's see shall we... lol) + added cacheless running (contains an internal cache, so instead of constantly checking with the caches every 10 primary connections it uses an internal cache) - still needs a cache to connect of course + added connection cycling - after a while it will disconnect primary connections (even if they are operational) just in case of unknown errors + added the date to the output in the win32 version, and added the time/date to the unix versions output + added licence agrement
WCS 1.8b6 is now avaliable, This appears to be running well and with luck may be the last beta before final... we'll seeIf you are just looking to get WCS for your room then DO NOT GET THIS, go to the WinMX Section and download the latest WCS Version from there as this is a BETA VERSION and I can almost guarantee bugs!Changes since b5:+ fixed bug with system uptime stats + added an alias to use /<space><text> for opmsg (eg / hello is the same as /opmsg hello) + added Logging= option to log to file, see below + Fixed users dropping bug (is that every beta so far i've fixed that bug? well this time i think i actually have) Logging=0 for no loggingLogging=1 to log to a single fileLogging=2 to log to a dated file (different log each day - with the date in the filename)
btw, useful bash script for restarting the room automatically (just add to the crontab - i use every minute but however often you want):Code: [Select]#!/bin/shcd /wcs/directoryif `test -r wcs.pid`then pid=`cat wcs.pid` if `kill -CHLD $pid >/dev/null 2>&1 ` then exit 0 fifi./wcs-linux > /dev/null &echo $! > wcs.pidno doubt someone will point out some "better" way to do it, but it's simple and works perfectly so who cares?
#!/bin/shcd /wcs/directoryif `test -r wcs.pid`then pid=`cat wcs.pid` if `kill -CHLD $pid >/dev/null 2>&1 ` then exit 0 fifi./wcs-linux > /dev/null &echo $! > wcs.pid
I have released another beta of WCS 1.8, this one is b7 if i'm counting correctly.+ Changed text format to take $NAME$ and $TEXT$ (the old %s %s still works though) + Added per-login text formats + Added optional login announcement + Added minimize to tray for win32 version The text formats can now be in the form #c5#<#c1#$NAME$#c5#> #c1#$TEXT$Old text formats with %s will still work as before, the use of $NAME$ and $TEXT$ instead of the %s and %s is mainly because thisgives extra flexibility for those who either want them in a different order, or may not want a name at all (which may be the case with per-user logins and per-login text formats)To accommodate the per-login text format and the login announcements the Password= entry in the config file needs to have the added options put on it, you can leave these out and it will simply not use them (no text format on the login and it will use the old system of picking from the 10, no announcement and it won't announce it) - The username can be placed in the announcement using %s.The format is now: Password=Access=Password=Format=AnnouncementExample:Password=*@=YourPassword=#c5#<#c1#$NAME%#c5#> #c1#$TEXT$=%s has logged in!that would make a password of "YourPassword" with access *@ as before, but also when the user logs in would set their text format to "#c5#<#c1#$NAME$#c5#> #c1#$TEXT$", and announce "<Username> has logged in!" to the channel
UpdateI have just released b8, this fixes a bug in b7 with per-login text formats, and also adds an extra option to the config file.Place RCMSCompat=1 in the config file to enable RCMS Compatibility mode.When enabled it will take some commands in RCMS Format, basically this allows you to prefix a command with #admincmd or #usercmd, it is not meant to try and emulate RCMS commands but merely make it simpler for those used to using #usercmd /kick or whatever to use it. It also adds #adminmessage to work like /opmsg. Just as with RCMS you can place anything before the commands and it will be ignored.RCMS Compatibility is disabled by default.
Changes since b8 are:+ Added #c0# for "previous colour" (may be used multiple times) + Added #c1,2,3# syntax for selected random colours + Added /hide command to hide from the user list (h access required) + added RestrictColours=0/1 option to the config, this makes it only accept "valid" colour codes + Added IPSend Support (for compatible clients to get IP Addresses when logged in) Explanations:#c0# will return to a previous colour, for example if you use #c4#Something#c5#Something Else#c0#Something, then the first and last Something will both be colour 4 (as the previous colour is 4). You can use this multiple times (to go back several colours). Most useful for Replace=, but I'm sure you'll find other uses.#c1,2# will randomly select one of the listed colours, that example will randomly select between colour 1 or 2. #c7,8,56# will randomly select between 7 8 or 56.RestrictColours=1 in the config will make it block all colour codes between 9 and 52, and above 76 (except 253), this eliminates the mostly blank colour codes.
a few examples from the winmxworld config file:Password=*@2=PASSWORD==#c1#%s#c4# has logged in as Quicksilveruses text format 2 (no custom format there - it's empty), and a login message on the endPassword=*@2=PASSWORD=#c1#«l|#c2#%s#c1#|l»#c1# %s=#c1#%s#c4# has logged in as Lady Rayshe has her own text format (so the 2 in the access is redundant, purely left there so the config can be used on an old WCS still), with a login message on the endPassword=AaCSsITMKBULlNnFfOem@=PASSWORD=#c8#¤l|#c2#[V\//¥\\/V]%s#c8#|l¤#c1# %s=#c1#%s#c4# has logged in as Iceagain his own text format and a login message on the end...although i will admit it gets a little hard to read once you start using all of the parameters, but it was much easier than trying to do it a different way with text formats separate, the cases where you need more than 10 formats are the ones where a room is using per-login text formats, so it makes sense to stick it on the login itself, even if it is annoyingly hard to read
WCS 1.8b10 has been released.There are several major changes since b9:+ Added /hidecmd command to hide a command from other users with w access.+ Added /privnotice command for private notice.+ Added ability to /hide another user.+ Updated Windows GUI a bit - now has a right click menu for the user list and a text box for typing commands in to.+ Added Topic2 and Topic3.+ Added a P Access level to Protect from kicks by users with K access.+ Added ability for other programs to send commands through the server.Also a few small things:+ Fixed a bug with hidden users not seeing when someone else unhides.+ Allowed colour 252 when RestrictColours is enabled.+ Fixed memory leak with selective random colours.+ Fixed bug with selective random colours above colour 10 (it would only read the last digit of the number).+ Changed /who output to show hidden users in grey.Explainations:/hidecmd <command> will perform the command, but just won't show it to users who have watchcmds access.Example: /hidecmd /notice Hello will do the same as /notice Hello, just without admins with w access seeing who typed it first. Requires H access./privnotice <username> <notice> does the same as a /notice, just only to a specific user, similar to a /message, but without displaying the senders name. Requires m and n access./hide <username> can be used to hide or unhide other users. /hide can still be used to hide or unhide yourself. Requires h access.When using ChannelName2= or ChannelName3= in the config file, you can also use Topic2= and Topic3= to set different topics for those listings, or users with T access can use /topic2 or /topic3 to set those additional topics.P Access behaves similarly to an @ for kicking purposes, so only users with k access can kick and not those with K.Other programs can send text to the room, Just add the commands to a file called exec.txt and it will execute them then delete the file (text file, one command per line). I can think of a few immediate uses for it, such as allowing monitoring programs etc to send text to the room without having to be a full chat client. There are plenty of other uses though - leave it for the imagination
WCS 1.8b11 has been released. This has a few bug fixes from b10 (those bugs are like busses, none for ages than 3 all at once) and a few other things.Note: Anyone using previous betas is strongly recommended to update as one of the bugs is potentially critical (depending on your rooms configuration).+ Fixed bug with kicking users on linux when sending commands from outside the server+ Added 0x9908 packet (see below)+ Fixed weird bug randomly giving users red at the start of it+ Login announcements can now use $NAME$ and $RAWNAME$ instead of %s for users name+ Text formats can now use $RAWNAME$ as well as $NAME$+ Increased security blocks a little to protect from mass connection attacks, and also name spoofing+ Added option to strip colours from usernames (BlockColourNames=0/1)+ Fixed minor little bug that would let anyone crash the room in some room configurations0x9908 Packet just contains a 4 byte IP Address, this can be sent by programs before join request to give different IP. This can be used for proxy type programs to give the users real IP Address for use in the room. For security reasons only accepted from localhost, the NIC Interface= is set to, or the IP Address detected a run time. Only really useful for programmers.If BlockColourNames=1 is set in the config then colour codes will be removed from a users name when they type, useful for cases where you want the users to be able to us colours in their text, but don't want the coloured usernames.I also forgot to mention but as of 1.8b8 the ColourCode= and RandomColour= options no longer work, because of this it now accepts both #c?# and #cx# for random colour codes.
WCS 1.8b12 has been released. Quite a few changes since b11+ Reload button on windows version now doesn't show for watchcmds+ 221 and 237 added as allowed colours when restricted+ changed layout of /colour output+ fixed bug with 1 char long notices, setmotd and topic+ increased notice length limit+ fixed bug with invalid name notification+ added users Hostname, ISP, the room name they joined, and if they are hidden to /stats+ login announcements can now contain commands+ bot mode outputs for just about everything sent from servers name, should be easier for bots to read+ added ServerName= config option to change the servers name+ added #\n# for new line everywhere #NEWLINE# can be used+ added #\r\n# when RCMS Compatibility is enabled+ added FancyEntryMessage= things (see below)+ variables for fancy message and for MOTD (see below)+ MaxMessageFlood= to adjust flood amount for non-F access+ DNSServer= and DNSServer2= (see below)+ Added MOTDLine= to make long multi-line MOTDs easier to do (see below)+ added custom commands (see below)+ added /setformat command to set a users text format (z access)+ added BlockedName= to block usernames+ blocked words checking ignores colour codes (for blocked names or words)+ added LogPath= to change the path WCS logs to, include a trailing \ or / (depending on OS) on the end of the path+ /kick and /kickban can take an IP Address instead of name+ made uptime reporting more accurate for long uptimes on linux...and i'm pretty sure I missed a few things from that listFancy EntryFancyEntryMessage= and FancyEntryMessageIP= can be used to customise the user has entered message in the room.Note: Needs FancyEntry=1 to be set to have any effect.Example:FancyEntry=1FancyEntryMessage=#c4#$RAWNAME$ ($FILES$ files) has entered #c63#$ISP$ $LINE$FancyEntryMessageIP=#c4#$RAWNAME$ ($FILES$ files) has entered #c5#$IP$#c9#/#c63#$ISP$ $LINE$The following variables can be used for the MOTD or the FancyEntryMessage options:+ $LINE$ connection type+ $FILES$ file count+ $PRIMIP$ IP Address of the primary the user is connected through+ $PRIMUDPPORT$ UDP Port of the primary the user is connected through+ $PRIMIPHEX$ same but in hex+ $PRIMUDPPORTHEX$ same in hex+ $IP$ users IP Address+ $HOSTNAME$ users hostname+ $ISP$ users ISP+ $NAME$ users name+ $COLNAME$ users name coloured in+ $RAWNAME$ users full name+ $COLRAWNAME$ users full name coloured in+ $HOSTUPTIME$ uptime of the hosts computer+ $ROOMUPTIME$ uptime of the roomThe ISP is based off of the end of the hostname so may not be 100% but should be good enough.For reverse DNS lookups (to get the hostname) it uses your systems DNS servers, in some cases these might be too low, or you might just want to use different DNS servers for some reason. use DNSServer= and DNSServer2= to set 2 additional DNS servers to use.MOTDLineto make large MOTDs easier to manage you can use MOTDLine= for each line.MOTDLine=Welcome to my room $NAME$.MOTDLine=It's such a nice room.MOTDLine=Please have some cake.would show to me entering as:Welcome to my room KM.It's such a nice room.Please have some cake.Custom CommandsThese can be used to direct a command to a bot for example (or to a user, but it's probably most useful for bots)CustomCommand=/COMMAND=Passwordthis will direct /command (note: must be in CAPS in the config file, but will be case insensitive in the room) to any users logged in with the password Passwordyou can override *any* built in commands (including /login), in the event that no users are logged in with the password set then it will simply continue on and use the built in command (if there).Also if only 1 user is logged in with that password and that user uses the command then it will use the built in command. This allows you to safely override commands such as /login, as the override will only be in effect as long as your bot is in the room (so the bot can still log in itself).Example:Password=*=mybotCustomCommand=/LOGIN=mybotWhen your bot isn't in the room/isn't logged in the /login command would act as normal and use normal WCS commands.Once your bot logs in WCS will disable the built in /login command, and whenever anyone typed /login it would be sent directly to the bot, for it to deal with however it wishes.If your bot then left the room (or logged out) the built in /login command would once again start working.You can use this to override any built in commands, or to create your own commands.If you use the same entry twice:CustomCommand=/COMMAND=password1CustomCommand=/COMMAND=password2then it will act as directing /command to users logged in with either password1 or password2.
Update: beta 13Shortly after b12 release A bug was found with with RoboMX when fancy entry was enabled. Although this is fundamentally a flaw in RoboMX, many rooms use RoboMX as their bot, and it was causing Metis on RoboMX to not enable itself properly, so I have done an update with a workaround for when it detects a RoboMX client.I also added a couple of variables for the MOTD/Entry Messages:$ROOMNAME$ the room name the user entered with$ROOMIP$ the rooms IP Address (hosts external IP)and I have no idea why you'd need these, but:$ROOMPORT$ the port the room is running on$CHANNELNAME$ $CHANNELNAME2$ and $CHANNELNAME3$, the channel name settings from the config
I forgot to mention on the original announcement that I also changed duplicate name detection so if a duplicate user joins from the same IP Address, the old one is kicked, instead of the new one being blocked from joining. This should solve issues with ghost users.
WCS 1.8rc1 has been released. This should mean the last of features being added to 1.8 (any left will go in later versions) and it should now just be any bug fixes until 1.8 goes final. This means your help files shouldn't be long now...Changes since b13:+ fixed bug with #c10# doing new lines + fixed bug with login announcements that don't contain the users name + robomx workaround added for shareguard as well + clears MOTD on config loading, to change undocumented behaviour that some find undesireable with MOTDLine= + setaccess now can't set %s in formats (must use $NAME$ $TEXT$ style), this is a security improvement + fixed issue with restarting and port staying in use on windows + added timed bans (add a time in minutes to the end of existing ban commands) + added support for ouka colour codes (colours below 37 are interpreted using the ouka conversions, as those colour codes are generally useless in their normal form anyway) + fixed small bug with /banip command in previous versions + changed peer cache lookups to UDP queries (also uses the same query to get the rooms IP Address) + added update check (checks on startup, also every 6 hours and announces in opmsg if update avaliable) + fiddled with DNS code to see if it fixes an ocasional crashing issue in b12/13 For ban durations simply add the time in minutes to the end of a command, examples:/banip 18.104.22.168 5 - bans 22.214.171.124 for 5 minutes/kickban Idiot 60 - kicks and bans Idiot for 60 minutesIf no time is specified or you specify 0 minutes then the ban is forever. Add an entry to the config file to change this.DefaultBanDuration=5would set the default ban duration to 5 minutes (then you'd have to do 0 minutes on the end of a command to ban forever)
WCS 1.8rc2 has been released. This has a few cleanups from rc1, I also added a few minor things but I am trying to keep the changes minimal to avoid introducing bugs so there aren't too many major changes.Changes since rc1:+ Changed robomx/shareguard workaround to a different slightly different method that should work better + Fixed bug with /topic3 not working (which nobody seems to have noticed at all...) + Removed [WCS] from topic + Custom commands now don't have to start / + You can now use * on the end of a custom command as a wildcard + setaccess and setformat now don't show to target user when using then with /hidecmd + MOTD doesn't show when using setmotd/addmotd with /hidecmd + Text format always shows in stats (even if user is using a general format not a specific one) + Format in stats also always uses $NAME$ $TEXT$ style (even if the real format is %s %s) + Added Transfer Status to stats (taken from whois) + Automatically gets shared file count from whois (overides the file count sent by the client if different)
WCS 1.8rc3 has been released.Just a few minor changes since rc2:+ Added server ident before robox hack (damn robomx POS) + Fixed bug with hidden users and whois updating file count from rc2 + Added WCS version to /stats + Added user status to end of /who output for bot mode
WCS 1.8rc4 has been released.Changes since rc3:+ Another couple of little changes to fix potential bugs with hostname lookup code + Fixed multiple bugs with RTF protection for 3.31 clients that was causing a few issues + Added RealFileCounts= option (see below) + Added WPNCaches= config option (see below) + Added some buffer overflow checks for config file loading (should prevent it crashing on invalid config files) + Updated windows GUI a little to add primary details (simplest explanation of the change: run it and have a look) In rc2 I added whois lookups to it to get transfer status and to get the true shared file count where clients reported it incorrectly. I have now added an option to set RealFileCounts=0/1 for if you want the real file count, or the old behaviour of just using whatever the client says. Due to there being several complaints about this behaviour the default is 0 (old behaviour) if not specified.As a result of the winmxgroup shutdown you can now specify which cache to use in the form of WPNCaches=whatever, you can either use an IP Address or a hostname, if using a hostname that resolves to multiple IP Addresses it will query them all and use whichever answers first. The default value for this is a kingmacro.net hostname that contains a mix of caches so you shouldn't need to change this, but the option is there anyway