Soul Blade B5 @ INSIDES Script Design
 Soul Blade B5
Below is a list of all the changes that followed Soul Blade during it's beta development. This list includes ALL documented bug fixes, code updates and feature additions. When reading these pages, (is you ever do), please note that the updates are listed from oldest to newest, meaning that the newest are located at the lowest part of the page. Also, you may find some features that have been updated, merged within others, or completely removed by the release date if the appropriate build.
I tried to keep the raw form of these pages as much as I could. The available version categories are UPDATE, FIX & ADDITION.
 Soul Blade B6 @ Not Released Yet
FIX : Fixed a message text parsing problem with /msg. Seemed to double echo the messages.
UPDATE : Modified the /run alias to handle nonexistent files. Checks for file existence, and informs if none found.
UPDATE : Updated the Network Services extensions, to do a proper check of the available commands. Moved to version 1.4.
ADDITION : Added a Command Browser, to reference ALL custom Soul Blade commands, and offer help with description and optional parameters. Also allows commands to be run directly from the dialog.
FIX : Fixed small oversight in Private Flood Protection activating on vast amounts of network service bots messages.
ADDITION : Added the $input identifier, to validate and return requested input in a standard space delimited token list. I have also updated the Network Services extension, adding masked input boxes to some features which needed them.
ADDITION : Added the /sb.wecho command, to support multiple windows, echoing info using the theme prefix and timestamp, if any.
ADDITION : Added the DALnet Services extension as a standard part of Soul Blade. Finally.
UPDATE : Redesigned Lag Meter dialog, to add Mini Mode function. (Paul)
UPDATE : Redesigned the Control Panel. It now looks more like the real Windows style control panel. It also allows dynamic applet customization.
UPDATE : Soul Blade now performs a routine script verification process on every startup. If problems occur, the script reports it.
ADDITION : Added a Profiles Manager. Profiles allow you to exchange ALL Soul Blade settings including themes and channel presets. Along with it, added the /profiles and /sb.pload commands.
UPDATE : Redesigned the Away System keyboard support, since some of the popups caused network related glitches. I have also removed the support for the /sb.saway command, and have expanded the /sb.away and /sb.back aliases. In addition to this, I have updated the menubar, status and channel Away popups with the new command support.
FIX : Fixed a small glitch in the Away System not saving the proper away nick.
UPDATE : Added channel statistics print out on own join. Also added /chan.stats and $chan.perc.
ADDITION : Added a Domain WhoIs search dialog. Accessed through the Tools menu or the /dwhois command.
UPDATE : Expanded the XPlayer applet to support channel wide song playback. it allows you to select playback channels.
ADDITION : Added a temporary folder (System\Temp\) to be referenced through the $tempdir identifier.
UPDATE : Updated the File Servers section (XDCC, MP3 & DCC) to offer text output preview to help you set the preview lines. I have also added preview functions to the XPlayer Channel PlayBack.
ADDITION : Added the Network Preferences applet in the Control Panel replacing the Nick Completer. Through here, you can set up various information regarding specific networks, such as network services, auto join channels, raised events, modes etc. I have also added major identifier support allowing maximum scripting usability, such as the $netfile and $netprop identifiers, and the /netperform and /networks commands.
ADDITION : Added the $listtok identifier to return a tokenized list of a listbox control contents.
UPDATE : Finally rebuilt the scanners and the reports. I have also updated the keyboard support for two new commands : /scanner and /report which now handle dialog based scans. I have thus also removed support for the older commands, such as : /sb.frlist, /sb.pglist, /sb.aplist, /sashow, / and /
FIX : Fixed a small oversight in the $inputbox and $minputbox identifiers. They now halt the script if cancelled, to avoid errors.
FIX : Fixed a small glitch in the away system, not showing the proper away message.
UPDATE : Updated some of the messages within Soul Blade, and removed excessive characters.
UPDATE : Redone the extensions help system. Now parsed through a custom dialog control with a [help] section in the extension. Moved extensions to version 1.5.
 Soul Blade B5 @ 20 November 2000
UPDATE : Added the new $amsgbox function to offer a Cancel button. I've also used it to check upon the receival of the Soul HTTP.
FIX : Fixed the DNS resolve problem with Austnet. WhoIs now shows the Virtual World address.
FIX : Fixed /msg, /amsg and /ame not checking whether you are connected to a server.
FIX : Fixed some blank bugs during loading Extensions.
UPDATE : Redesigned the Network Services extensions, now dialog based. I also masked the password fields, and added an Edit - Replace feature.
FIX : Fixed doubled event echoes (theme related) appearing in some cases.
ADDITION : Added Mass Modes (Message & Notice) to nicklist popup.
FIX : Fixed IP Search not displaying matches properly. Also added error messages.
ADDITION : Added Filter Actions /sb.filter to channel popups.
UPDATE : Redesigned the custom message boxes & input boxes.
ADDITION : Added a $mask.txt identifier to return masked strings.
FIX : Fixed custom color chooser not refocusing to the parent window. Also fixed it raising a $null bug if chosen cancel.
UPDATE : Updated User IRC Mode dialog to check whether you are on or off line, before setting modes. The dialog does not accept invalid modes anymore.
UPDATE : Updated the Server Properties. The recent servers can be accessed directly from there. 
UPDATE : Updated the Address Book and the Server Menu Compiler routines. (Trystan)
UPDATE : Updated the $away.msg identifier with the 0 switch. (Trystan)
UPDATE : Updated the text formatting identifiers to handle $null input. (Trystan)
ADDITION : Added a Tip Of The Day dialog. (Trystan)
UPDATE : Updated all dialogs to respond to the new DLL support.
UPDATE : Updated Server Menu Compiler to handle IRCnet server variations.
UPDATE : Updated /alarm feature. Alarm clock now supports HH:MM appointments as well as appointment in the form of <# minutes> or <# seconds>. Since version B5, the alarm sounds a beeping tone when activated.
UPDATE : Updated the SEEN system. It now also has :
- a redesigned SEEN configuration system,
- separate responses for own SEEN requests,
- also added /seencfg alias to open SEEN System Configuration dialog.
Note : Most of the SEEN System code modified and optimized by Trystan, who also developed the configuration dialog, which I only adapted to the looks of Soul Blade.
UPDATE : Updated Soul Blade theme with some new sounds.
ADDITION : Added a collection of default sounds to Soul Blade.
ADDITION : Added a /error.snd alias to play a wave file pronouncing ERROR. In addition to this new feature, I've also added a /emsgbox alias to update all the error message boxes with this new alias, including the extensions.
UPDATE : Updated the first-time start up routine to automatically set the main and altenative nickname to SoulBlade and SoulIRC respectively, if the user chose Cancel.
ADDITION : Added the $icons identifier to return the path the system icon library.
ADDITION : Added a POP3 Mail Client. It also has :
- fully configurable mail folders,
- ability to intercept attachments,
- ability to delete messages directly from server,
- DDE links towards the address book viewer.
Note : Most of the POP3 Mail Client code created and optimized by SpinoC. I only adapted it to the looks of Soul Blade, meaning I have fully redesigned the client dialogs using the DragonZap MDX dll pack, which by now is a standard part of Soul Blade. I have also fixed some minor glitches and added DDE linkups in between the Mail Client and the Soul Blade Address Book.
UPDATE : Rearranged the Tools subpopup in the menubar, status and channel popups.
ADDITION : Added an External Programs Configuration dialog. Also updated the menus with dynamic popups to easily access these programs.
UPDATE : Redesigned the Server Properties dialog. In fact, expanded it a bit, since reports came it was too small to serve it's purpose.
UPDATE : Redesigned the whole set of Soul Blade tools, and changed their location to within the System folder, hoping to achieve better disk space organization. I've also updated the calling routines.
UPDATE : Completely redone the variable handling system. It now consists of an INI file, thus making it virtually impossible to accidently alter some of the variables and cause Soul Blade to function improper. The file also contains the country codes, which means I removed the country.sbm file. In addition to this new feature, I have added the /sb.set, /sb.unset aliases, and the $sb.var identifier, in order to support this new feature.
UPDATE : Due to hash table support, Soul Blade is now ad least AS TWICE AS FASTER as before. When started, it loads up it's internal variables which are later on easily retrieved from it's own hash table.
UPDATE : Along with the new variable setting system, I have removed the Variable Recovery feature. Instead, added the Script Verification tool in the System Tools applet.
ADDITION : Added the /mail.send alias, to directly access the Compose window of the mail client.
FIX : Fixed a minor glitch in the $sb.var identifier retrieving the hash table items, that caused improper request processing.
FIX : Fixed some broken links in help file due to continuous script updates.
UPDATE : Redone some of the parts of the Theme support. Replaced the { } brackets causing glitches with the ( ) brackets.
ADDITION : Added a custom timestamping option. It is fully customisable and is up to you to decide what timestamping format to use.
ADDITION : Added the Custom Settings /custset applet in the Control Panel. Allows setting for custom nickname brackets, nick completer triggers, and also custom time stamping format.
ADDITION : Added a Save button in the play list editor of the Media Player. The play lists are saved in the System\PlayLists\ subfolder within Soul Blade's main folder, and can later be retrieved by using the Load button.
UPDATE : Activated the Shuffle command within the Media Player. Will pick random files from the entries in your play list(s), if any. In addition to this feature, I have also added access to the /mp3.shuffle alias to play a random selection from the supplied playlist, if any, and if the Media Player dialog is active.
FIX : Fixed an overseen $null checking bug in /sb.set causing improper variable setting.
FIX : Fixed some items in the nicklist popup allowing blanks.
UPDATE : Updated the File Servers section with the new $sb.lof identifier, to automatically calculate the packet size in KB or MB.
FIX : Fixed Away System which was causing non-idle auto aways in a 60 seconds interval in some cases.
FIX : Fixed Channel Properties dialog allowing to activate commands with no users selected.
UPDATE : Redone the Away properties dialog, to add some blank text warning error messages. I have also added a Save button, in order to save the changes without having to set Away.
FIX : Fixed theme part causing /background errors when joining a channel without a settings file in the theme folder.
FIX : Fixed the Channel Properties dialog accepting alphanumeric values for the Limit Users channel mode.
UPDATE : Redone the first time start up routine. Added a new dialog window, and planning to create a ShockWave walkthrough.
UPDATE : Redone the extensions dialog. Added two new functions : Config, and Info, to automatically call the extension's main configuration dialog, or the extension's main help file, if any. I have also updated the standard Network Services extensions that are supplied with Soul Blade to fit this new standard, and have written separate independent help files for each one.
ADDITION : Added a /mail.chk alias to do a background mail check for a set period of time. Time can be set via the POP3 Mail Client applet in the Control Panel.
FIX : Fixed message box function not closing in some cases. Also leaves space for multiple message boxes.
UPDATE : Soul Blade has now switched to newest mIRC 5.81, for the sole purpose of solving so many little, but significant problems. Soul Blade has suffered greatly, just for mIRC's inability to cope with some issues. Thankfully, those are now solved, and here is the list of fixes within Soul Blade derived by mIRC itself :
- Media Player doesn't enter into an infinite /splay loop anymore when repeat is on,
- most of the framed dialogs are back how they were, since Khaled fixed icon display insides boxes,
- MP3 length with VBR is now as it should be,
- the hash table support now works far better.
ADDITION : Added support for the new On EXIT event, since I found it was better to use it to clean up the temporary files.
FIX : Fixed mail checking routine causing $sock port errors. (Trystan)
FIX : Fixed nasty bug in DCC File Server causing it to freeze on particular requests.
ADDITION : Added a new control applet named XPlayer Options. Allows configuration of Media Player start up windows, and servers as a play list manager. Can be loaded via the /mp3.set command.
FIX : Fixed the /log.fill command, now supports wildcards.
FIX : Fixed Ignore Dialog not allowing different switch exchange.
UPDATE : Updated Server Properties with the server mode handling. Notes that not ALL modes are server-wide supported.
UPDATE : Updated mIRC's /did command to check if the dialog specified has been loaded.
FIX : Fixed theme loading process not affecting custom windows.
FIX : Fixed Auto Away not changing your nick to it's away form.
UPDATE : Updated the DCC File Server GUI, and have also added support for some custom FSERVE commands, such as FILEPROP, to obtain information about a specified file, and USERS, to list the current file server users.
ADDITION : Added a script-wide message text parser. Greatly speeds up message display, and adds to script customization.
UPDATE : Activated the Update Manager. Access it through the Control Panel, or by typing /update.
ADDITION : Added a news server. Activated via menu items or using /news.
 Soul Blade B4 @ 14 October 2000
Note : Since version B4, I had the pleasure of having Trystan test my beta scripts. I must say he did a great job, so here you can see a lot of fixes to bugs that involved erroneous user input, and something I didn't pay much attention to. Anyway, I listed them all here, just for the reason of continuity.
ADDITION : Finally added dialog based Theme Editor, allowing you to easily create your own fully featured custom themes.
FIX : Fixed /background bug appearing as a theme part on queries.
UPDATE : Redone the about box dialog.
FIX : Fixed the nicklist popup Voice entry not working.
UPDATE : Redone the default Soul Blade theme (changed the logo and the events).
UPDATE : Redone the theme support :
- updated the font changing routine, now it does not require restarting Soul Blade,
- added dynamic "Themes" popups for quick theme changes,
- added a "font fixing" alias to quickly repair fonts in all windows as seen in P&P,
usage : /fonts.fix (make sure the status window has the appropriate font).
UPDATE : Updated dcc send commands with the new -c switch to automatically close upon completion.
UPDATE : Added a @Find/@Locator to work along with the MP3 file servers.
FIX : Fixed bug in Log Dialog, occurred if log exporting was cancelled.
FIX : Fixed on quit event not triggering the theme part designated to it.
FIX : Fixed bug in nick coloring occuring when participating in mass joins or mass partings.
FIX : Fixed main & alternative nick dialog.
FIX : Fixed Secure Chat presenting a WinSock error.
FIX : Address Book now works even without the path.
UPDATE : Redesigned the Servers Menu Compiler. 
FIX : Fixed some $null bugs in the Media Player. Occured on file entries :
- fixed File - Cancel bug,
- fixed Media Player not refocusing on folder entries,
- fixed the player timers slowing mIRC down,
- redesigned ID3 tag window, which now shows the ID3 tag, even when the song is over,
- fixed player windows not closing automatically.
FIX : Fixed User Central which accepted blank values.
UPDATE : Redesigned the Away System. I've also :
- fixed adding blank values for away messages,
- fixed /amsg not checking wheter you are on a channel,
- fixed Silent Away presenting doubled echoes.
FIX : Fixed user properties dialog creating invalid entries & color selections.
UPDATE : Redone the IRC Operator search within the Server Properties, and got rid of the echoes.
FIX : Fixed blank text bugs in Log Viewer, conserning Export & Search.
ADDITION : Added a double click feature in the network Links to connect you to the server.
FIX : Fixed blank text bugs in Ignore Control.
FIX : Fixed XDCC, MP3 & DCC dialogs not clearing description text on remove.
FIX : Fixed blank text bugs with remove in Auto Format.
FIX : Fixed alarm clock not understanding isnum. Also updated alarm documentation.
FIX : Fixed Nick Completer accepting blank entries.
FIX : Fixed User Mode accepting numbers.
FIX : Fixed XNotify deleting first user if none selected.
FIX : Fixed Media Player not refocusing. Now consists of Player, Mixer, PlayList & ID3 window.
UPDATE : Partly redesigned the Theme Manager. I've also :
- fixed support for incomplete theme files to ignore empty image entries,
- fixed support for theme folders with names containing spaces,
- fixed theme uploading process which now does not require restarting Soul Blade,
- fixed some invalid theme files.
FIX : Fixed blank text bug in Country Code resolver.
FIX : Fixed mode changes showing along with custom echo.
FIX : Fixed blank text entries in the searches (Modem Users, IP etc ...).
ADDITION : Added the $minputbox identifier to open up a masked input box.
FIX : Fixed parent windows not closing their child windows.
ADDITION : Added some new RAW replies which were reported missing.
FIX : Fixed blank text entries in the XNotify commands (MSG, NOTICE etc ...).
FIX : Fixed blank text bugs in Soul Message system.
FIX : Fixed Soul Message system gap allowing it's use for a DoS attack.
FIX : CTCP replies driven by file servers are now silent to the user.
FIX : Fixed Control Panel applets losing focus if clicked too fast.
FIX : Fixed blank text bugs in Channel Actions & File Servers.
 Soul Blade B3 @ 01 October 2000
FIX : Added a close button in the User Properties dialog, as requested.
FIX : Expanded the help file :
- added alias names and explanations ( full command & identifier list ).
- added support for the Contents button to show a full display of help topics sorted by type.
- added theme creation guide lines.
- added extension creation guide lines.
FIX : Fixed minor bug in seen system generating an error if a user quits with no quit message.
FIX : Redone the lag meter :
- it now is a dialog with a custom progress bar.
- added lag min and lag max statistics.
FIX : Rearranged the raw events replies & added some new that were missing.
ADDITION : Added XNotify feature :
- allows support for the standard mIRC notify list.
- allows sound configuration for every user.
- allows access to basic user commands from the XNotify list.
FIX : Modified address book viewer to function even without addrbk.ini file.
FIX : Modified themes manager :
- changed theme previews.
- added new theme : FlameBolt.
FIX : Redone the MP3 Media Player :
- it is now totally dialog based.
- added mixer window.
- added playlist window with add/remove/load capabilities.
- expanded ID3 information.
- also fixed minor bug in MP3END event occasionally playing last song.
ADDITION : Added Variable Recovery feature :
- allows variable recovery & synchronizing.
- optimizes the script in total.
FIX : Repaired Auto Format dialog.
FIX : Redone the Log Viewer :
- it is now dialog based.
- fastened log loading.
- added standard Open, Search & Export capabilities.
ADDITION : Added Sound Options feature.
- added splay alias expansion.
- added separate sound type configuration.
FIX : Refreshed the Control Panel.
- changed some of the icons to more appropriate ones.
- removed the XDCC Options applet, now part of the File Servers.
- added 4 new applets : Sound Options, System Tools, Update Manager & XNotify.
ADDITION : Added Soul Message feature :
- allows message exchange in between Soul Blade users with popup message boxes.
- allows automatic HTTP exchange & activation.
ADDITION : Completed the File Servers section.
XDCC Server :
- completely redone the XDCC server.
- added output & channel configuration.
- added statistics recording.
MP3 Server :
- added as a completely new feature.
- standard file server options as XDCC.
- allows folder configuration.
- allows automatic list generating.
DCC Server :
- added as a completely new feature.
- standard file server options as other file servers.
- allows configuration of a custom number or file servers, each server working independently.
ADDITION : Created the Update Manager, but I haven't activated it yet, cause I haven't found quality web space to host the update files.
 Soul Blade B2 - First Public Release @ 14 September 2000
WEB 2000 INSIDES. All Rights Reserved.