Pueblo is an evolving product. Here is a list of features that we've included in each version. Remember that if you really want a feature added, you can send us mail at firstname.lastname@example.org, and we'll see what we can do. You can also use the Submit Feedback item from the Help menu in Pueblo.
We've shifted primary compilers, mostly in order to get the new crash logging feature to work nicely. The release version is now compiled using Microsoft Visual Studio 7.0. But don't worry - it still compiles with Borland C++.
When the window was hidden or minimised and new text was received, the window flashes. But if text was received rather quickly, it flashed quite strangely, and occasionally got confused and wouldn't stop flashing. We've fixed up something relating to this, so it should be improved, but may not be entirely fixed yet.
Fixed a bug specific to 2.60 where using an <EMBED> tag for an unsupported media type would cause Pueblo to crash. This was caused by an error in the image-placeholder code added in 2.60.
Made the "No Sound" button in the alert-sound selection dialog move appropriately if the dialog is resized. While you cannot resize the dialog on a standard Windows system, there are a number of third-party extensions that provide this capability.
If Pueblo/UE crashes, you should now get a slightly friendlier dialog box explaining the problem, and more importantly logging it to a file so that it's easier to send a bug report to us. More comprehensive documentation will be provided with the forthcoming helpfile makeover; however since it's fairly self-explanatory and still subject to change there's not much point in providing more detailed info now :-)
The ANSI reset code ([0m) no longer gets treated as a <body> tag. It will still cancel out the effects of the other ANSI codes, but will no longer mess up other HTML containers (such as <pre>). This should dramatically improve the behaviour when HTML and ANSI are mixed, though that is still not recommended.
If a large chunk of MCCP compressed data was received all at once, it got truncated (meaning that some incoming text would never be displayed). This would only have been noticeable on very fast Internet connections or on worlds where the server caches up a large amount of text, to be displayed all at once.
A new TinTin command (#playsoundbg) has been added. This is identical to #playsound in every respect, except that it plays the sound asynchronously - meaning that the next line of the script or trigger will run before the sound finishes playing.
Since Pueblo is a non-Unicode application anyway, we've disabled the script selection combobox in the font dialogs. It's possible that this might cause odd behaviour on non-English systems, but we hope not.
The "next in history" and "previous in history" keys for the Windows keymap (Ctrl-N and Ctrl-P respectively) have been reassigned, since they conflicted with the shortcut for New Window. The new keys are Alt-Up (previous) and Alt-Down (next).
Ctrl-Up and Ctrl-Down have been added to the Windows keymap. They behave exactly like Up and Down, but will stay within the current command, rather than scrolling backwards or forwards through the command history.
Added several MIME types to the list natively recognised by Pueblo; this should fix some issues where sounds would not play off certain servers.
A new TinTin command (#showmehtml) has been added. This is identical to #showme in every respect, except that the given text is parsed and rendered as HTML. This allows your triggers to display images or styled text.
Added a new option on the Apps preferences page, "Use default browser". This will open the chosen link with whatever program has been associated with that protocol, whether that's a web browser, FTP client, media player, or mail program. For security reasons, you cannot open file:// URLs with this option. This option is selected by default for new installations, but for upgrades you'll need to manually choose it from the Apps tab.
Locked the toolbar in place (it was previously redockable, which always struck me as weird).
Enabled XP styles across the board, both in Pueblo/UE's dialogs and in forms created by the worlds.
The URL of a hyperlink to a website will now always be shown, even if the link specifies some hint text. This should avoid some potential spoofing attacks - at least as long as you pay attention to what you're clicking on! :-)
You might have noticed the jump in the version numbers. That's because this version has been designated a minor release (the last two were patch releases). We decided to call this a minor release because it's got so much extra stuff (both bugfixes and extra features) over the previous release, including a significant new feature --- MNG support.
On to the new features. Support for MCCP (Mud Client Compression Protocol) has been added, and will be negotiated automatically.
Pueblo/UE now supports PNG and MNG images!
Pueblo/UE no longer inserts line breaks for word-wrapping when it is writing to log files. Almost all text editors and printers can perform 'soft' word-wrapping themselves, and the line breaks caused problems when logging code listings, for example.
A minor bug with the telnet:// URL handling has been corrected; if the URL did not specify a port number Pueblo would try to connect to port 80. Now it correctly tries port 23 instead. Since most worlds don't use the default port number anyway this shouldn't have affected most people.
Pueblo/UE now supports Telnet terminal type negotiation as an additional method of determining if a Pueblo client is being used.
When text is received, Pueblo can now flash the Pueblo/UE bar on the taskbar and/or play the alert sound when the window is simply hidden behind another window, not only when the window is minimised.
Several bugs in the behaviour of TEXTAREA form fields have been corrected; they should now be more reliable when they are intended to hold some initial data.
The problems preventing the software from being compiled under Microsoft Visual Studio .NET have now been corrected; the software compiles and runs fine now. We're now using Visual Studio for most of the debugging, but still releasing using Borland C++.
Since the library we are using to support MNG also contains JPEG handling code, the existing code in Pueblo has been removed in favour of that. Since the new code is more recent, this may fix some outstanding problems with progressive and other JPEG files.
A visible placeholder is now drawn where images will be displayed once they are loaded; this isn't of much use unless the world author has specified WIDTH and HEIGHT values for the image, however. While the image is loading it will display a little image icon in the top-left corner; if the load failed for some reason the icon will have a tear through it.
Default values for the ANSI sequences are now parsed correctly; specifically ESC[m is now recognised as identical to ESC[0m. In addition, ESC[;1m is now recognised as ESC[0;1m, ESC[1;;7m as ESC[1;0;7m, and so forth. Not all these sequences are especially helpful, of course, but now they work. :-)
There were inoperative stubs in the code to handle the ANSI Erase code; however they were never completed and were checking the wrong code anyway. Now they work: code ESC[2J will be treated exactly the same as <xch_page clear=text>. Note that you must use a capital 'J', since ANSI codes are case-sensitive.
You can now use the mouse-wheel (if you have one) to scroll most of the Pueblo windows. Some may require you to left-click on them before they will scroll. Pressing the middle mouse button will allow you to use the auto-scroll feature.
Due to changes required for MNG animations to operate correctly, the frame timer is now set to operate at 0.1-second intervals. This means that you cannot have a frame shown for less than a tenth of a second, and each frame will be shown for a multiple of tenths of a second, even if you specified finer resolution when creating the animation.
A bug in the parsing of '&' symbols after encountering an 'h' has been corrected. This was accidentally introduced by my earlier fix in the previous release.
Note that the prior bugfix causes one outstanding issue: if a line is echoed back to you containing an URL that contains '&' characters, they will be erroneously shown as '&'s. This does not affect any text that is sent to the world or received from the world. We will probably never bother to correct this issue, as it doesn't adversely affect anything much.
The problem some people have been having with Pueblo apparently 'freezing' on startup finally appeared on my test platform, and I was able to nail the sucker. Hopefully it should now be resolved. Turns out it was trying to find a web browser through DDE, presumably either for a really old version of Netscape or for when Pueblo is run as a plugin (a mode never completely implemented and which Pueblo/UE doesn't support). So my removal of that should make no difference to standard running, except hopefully preventing lockups!
When typing in a command, pressing the down arrow would clear the command, and you wouldn't be able to recover it by pressing the up arrow. Now the down arrow only works if you have previously pressed the up arrow to have a look at the command history; you should always be able to return to your 'current' line. If you intentionally want to clear your current line, press the ESC key.
Problems with displaying standard GIF images (in particular, crashing quite often when a particular one is displayed) should now be resolved. (This was the "Virtual Writing Center MOO bug" mentioned in the 2.52 notes.)
Several users who previously experienced the not-saving-window-positions bug reported that they have had no problems with 2.52. No further reports of this have been brought to my attention, so I'm declaring this one resolved as well.
Changed link-matching code for the plain-text mode so that '&' is no longer considered to terminate an http:// URL, but '>' is. For the record, at present '<', '>', ')', '}', spaces, and single/double quotes will terminate an URL. A comma or period will not terminate the URL, but if either is found at the very end of the URL they will be excluded - otherwise it would make natural punctuation quite difficult… :)
Added support for the 39m and 49m ANSI codes (default foreground and default background). They reset the colours to white and black respectively, same as the reset code (0m).
Fixed a bug that caused Pueblo to crash if you clicked on a link that sent a command to the world after you had disconnected. 2.50 disabled all links in the main window but missed out any other panes that were open. Now all the links are left active, but if you click on a link that tries to send a world command you will get an error message. They're left active now, incidentally, because we didn't want to close the panes (in case you were working in one of them at the time the world disconnected), and some links may be web addresses that are still perfectly okay to click on.
Pueblo will now correctly parse a telnet:// URL passed to it on the command line, which means that it can be made the default telnet handler. The installation program will now offer to set this up for you; if you elect not to do so and later change your mind, you will have to change it manually through the File Types tab in the Folder Options control panel (or reinstall Pueblo/UE).
Discovered several places in the code that had been missed out during the upgrade from 2.02; for the most part, this just involved some confusion between BOOL and bool types (yep, that's right, they are not quite the same thing, though they are usually compatible!) Fixed up now, but it almost certainly wasn't causing any significant issues.
There's definitely some strange memory leaking or something going on (or possibly it's just Visual Studio being weird - I can't see any problems when I compile it with Borland C++…), which could explain some of the more bizarre problems reported by users. Unfortunately, there's almost no way for me to track the friggin' things, so they'll be extremely difficult to sort out. Hopefully they won't cause too many problems in the interim.
The bug causing Pueblo/UE to crash when a window is closed should be resolved now.
Pueblo/UE now automatically checks for updated versions of the software and notifies the user if a more recent version has been found. This is based on some dormant (ie. no longer used) code I found left over from version 1 of Pueblo. Of course, you won't see any difference until the release of 2.53 or later :)
At the suggestion of a couple of users, the notice displayed on disconnection (leaving the world log open) also includes a clickable link to reconnect to the same world. If that connection fails, you will be returned to the world list.
For some strange reason, the code that I added to 2.50 to customise the fonts in the About dialog mysteriously didn't work properly in 2.51. I've rewritten the code to use a different scheme now, which appears to work better.
Corrected the code that handles HTTP redirections; it was losing the data associated with a POST request.
Fixed a few bugs with the registration dialog. Unfortunately, partly because of these and partly because of the POST bug, no registrations made with earlier versions of Pueblo/UE got through. So I'd appreciate it if everyone re-registers their copies of Pueblo/UE. It's free, after all :)
Possible Issue: I have a strong suspicion that the not-saving-window-position bug was a result of the closing-window bug, particularly in light of its intermittent nature. So there's a good chance that it has also been fixed. On the other hand, there's also the chance that something else was causing this. I'm not going to label it as resolved until I get some reports from users.
Known Issue: This bug has not yet been corrected. A couple of users have reported crashes when trying to use the "Virtual Writing Center MOO". The problem appears to be related to the GIF images used on that world, but the cause has not been nailed down yet. Thus far the problem has not been reported with any other worlds.
Corrected some minor bugs discovered in the Pueblo/UE 2.50 release.
Some debugging code was accidentally left in, causing Pueblo/UE to try and write to E:\Unload.log (or display an error message if E: did not exist). If you were using version 2.50 and did not see an error concerning E:\Unload.log when closing Pueblo windows, chances are the program created that file. After installing version 2.51, that file can safely be deleted.
Changed the layout of a few dialogs (in particular the About tabs) to look a bit better. Also changed the window background colour displayed while starting up or displaying the License – previously it displayed the standard window colour (typically white), which looked rather silly. Now it displays the standard MDI background colour (typically dark grey).
Corrected a bug with the "Edit your Personal World List" link at the top of the Personal World List. When clicked, the edit dialog would be displayed but not focused, meaning that you could click another link (possibly bringing up a second dialog).
Known Issue: This bug has not yet been corrected. On my Windows XP test system, the size and position of the Pueblo/UE window is not being saved correctly. On my Windows 98 test system, everything saves properly. I’m not sure what happens on Windows NT/2000 systems. I’m investigating this one further, but I didn’t want to hold up the release for something that may only affect users with Windows XP.
The shell icons were slightly messed up; under Windows XP (and I suspect under NT/2000 as well) the wrong application icon was being displayed. Also, no icon was being associated with the Pueblo Shortcut (.PBL) files, though this is only noticeable on Windows 95 without a prior installation of Pueblo 2.01. An icon will now be associated with the shortcut files during installation.
The first release of the Pueblo/UE client, from Ultra Enterprises, naturally. This was based on the source code released for version 2.02 (which was never released in executable form), but has undergone a few bugfixes and other changes. We’ve tried to keep the number of significant changes in this release to a minimum. You should remember, however, that due to the change in maintainers and compilers this release should be considered of beta quality, and may still contain memory leaks and other bugs, though we hope not! :)
The help files in the original source archive were corrupted somehow. It may not look like it, but we’ve actually recreated this entire help system (a whole lotta typing, let me tell you!). Actually, we discovered what the problem was and how to correct it, but only after we’d already done 98% of the conversion. So we’ll just let it stand. :)
HTTP connections (most noticeably the Pueblo/UE World List) now use HTTP/1.1 Host and Connection headers. This allows Pueblo/UE to connect to virtual hosted servers, which are quite commonplace these days.
A new feature has been added, and is enabled by default. It can be configured as "Leave world log open" in the World tab in the Preferences. When enabled, this feature modifies the standard "Pause on disconnect" behaviour, so that you can scroll back through the world log. Instead of displaying a message box and then immediately returning to the world list, the disconnection message will be displayed directly in the world log window after you have been disconnected. You can then scroll back, copy text, etc. This is handy if you are disconnected from a world while you are away from your computer.
The "feature" that removed all whitespace received at the start of the connection to the world has been removed. This was causing some rather annoying alignment problems with worlds that display textual logos and the like.
When you send multiple lines of text to the world, they are now properly split up in the echoed display, rather than all being run together.
The default display colours have been changed to white on black, since most worlds provide colour through ANSI codes, and they assume that scheme. Also fixed quite a few colour problems (such as a grey background in several dialogs even when the foreground is also grey).
Improved ANSI colour sequence handling (see ANSI color codes for more details):
Pueblo incorrectly interpreted the ‘[2m’ sequence as unbold, when the actual unbold code is ‘[22m’. Pueblo/UE recognises both sequences as unbold now, for compatibility (and because [2m has no official assignment, so it isn’t likely to cause any conflicts).
The inverse codes are now recognised – ‘[7m’ activates inverse and ‘[27m’ deactivates it. While inverse is on, foreground colour codes received by Pueblo/UE will be interpreted as if they were background colours, and vice versa. This reversal will continue until either the deactivation or reset (‘[0m’) codes are received. Note: this doesn’t affect direct HTML colours sent by the world, only ANSI colour codes. Mixing the two types is not recommended.
The strikethrough codes are now recognised – ‘[9m’ activates and ‘[29m’ deactivates.
The interpretation of the bold/unbold codes has been changed to be more in line with traditional ANSI clients. The bold code now switches the foreground colour to high-intensity, rather than a bold font style. This allows the construct ‘[1;30m’ (bold, black), which will be drawn as dark grey (in previous versions, it was drawn in black). If you want the old behaviour (bold font style), you should use the <b> and </b> HTML codes.
The ANSI standard codes for italics off (‘[23m’) and underline off (‘[24m’) are now recognised. Previously, you had to use the reset code (‘[0m’) to get rid of these styles.
The ASCII BEL character (value 7) is now recognised and produces an audible alert (as if it was <img xch_alert>). While this isn’t actually an ANSI sequence, world authors often group it with them.
The Pueblo/UE client was compiled using the Borland C++ compiler, instead of the Visual C++ compiler (which was used in prior versions). Because of this, there could be a few minor cosmetic changes, and any custom-designed modules for Pueblo will no longer work. However, as far as we know there never were any custom modules, so that shouldn’t be a problem.
The VRML commands aren’t supported in this release of Pueblo/UE; if you try to open a VRML frame you will just get a missing plugin box. You can still install a VRML plugin, but it will not be able to interact with the MU* world. Again, we don’t know of any current worlds that actually use VRML, so we don’t think this will be too much of a problem. If this bothers you, then send us some feedback using the Submit Feedback item in the Help menu.
The WebTracker internal web browser is no longer supported. When Pueblo/UE needs to display an external web page, it will automatically prompt you for your preferred web browser (unless you have already set that up in the Preferences). Pueblo/UE retains internal HTML support, however, and it will use this to display HTML content from worlds, your Personal World List, and the Pueblo/UE World List. The version of HTML supported for use in worlds remains the same, and is documented in this help file.
Assorted minor code changes in order to convert the client from Visual C++ 2.0 to Borland C++ 5.5, and from MFC 3.0 to BFC 4.2. Not a single source file has gone untouched! :)
We’re not calling this a Release because it was never released. This is the source version that the Pueblo/UE release was based on, and contained a few new features. Again, Chaco didn’t update this file so we’re not sure exactly what those changes were. Those we do know about are listed below.
Support for xch_sound was extended; the world can now specify volumes, be notified when a sound finishes playing, and interrupt loops "nicely" – the sound stops at the end rather than abruptly in the middle.
Support for xch_speech, which allows two users with Pueblo clients to talk to each other, as if through a telephone. [This feature was never fully implemented, and has not been included in Pueblo/UE 2.50.]
Enhancements to the PUEBLOCLIENT command, allowing the client to provide additional information (such as optional features that it supports).
This was the final release of Pueblo by Chaco Communications. Unfortunately, we (at Ultra Enterprises) cannot really tell you what changes had been made, since Chaco didn’t update this help file. Version numbers aside, however, we don’t think there was too much difference between this version and version 1.10, except for updating several notices to use "Andromedia Incorporated" instead of "Chaco Communications".
We've gotten rid of the Pueblo server, so that you no longer need to log in to Pueblo before you can do anything else. We've also eliminated the need for a Pueblo username and password.
Pueblo now has almost complete TinTin++ compatibility, with some enhancements especially for Pueblo. Using TinTin commands, you can define macros, set triggers that do things when specified text arrives, and much more.
When you start Pueblo now, the first thing you see is your personal world list. You can still jump to the Chaco world list, but you don't need to do this every time Pueblo starts. (This speeds things up quite a bit.)
Pueblo now supports "EMACS" key bindings for history list manipulation, so Unix users will feel right at home with Pueblo. In addition, the old control-arrow history interface now just uses the arrow keys, and the input window is now sizable. (See the 'Text Input' preferences tab for more info.)
Pueblo now allows you to have multiple sessions without having to launch a new copy. Use the "New Pueblo window" command in the file menu to create a new session.
Pueblo now supports firewall proxy servers, including SOCKS.
Pueblo can now function as your 'telnet' client for Netscape.
Pueblo now supports the Netscape cookie extension for HTTP. You can learn more about this HTTP extension from the following web page:
Our installer is now easier to use. Not only that, but it's cleaner, and won't leave lots of stuff in your TEMP directory like it would before!
Pueblo now supports a trace window for debugging your Pueblo server code. You can look at raw HTML, and see warnings and errors from the Pueblo client.
WebTracker, Pueblo's internal web browser, now has a full user interface including a tool bar. (You can still use Netscape or another external web browser, too!)
Pueblo now supports your Netscape 2.0 plugins. If you've installed the appropriate plugins, you can now play sound using Progressive Networks RealAudio(tm), animation using Macromedia Shockwave(tm), etc. Pueblo will support any plugins that you have installed in your Netscape Navigator plugins directory, automatically.
Pueblo's "panes" can now contain much more dynamic information, using the Pueblo HTML redirect feature. You can redirect output from the MUD into a pane, then redirect it back to the main output window when you're done writing to the pane.
The <H1>-<H6>, <P> tags now support attribute break=all, left or right to control right and left margins. The base= attribute is processed for the <Head> tag.
New tags : <nobr>, <base>
Improved handling of the 'text/plain' MIME type, and 'audio/x-mid'.
HTTP errors (like 404 -- document not found), are now reported to the user, so they know why that pane that just popped up doesn't contain anything.
Improved file logging. You can log either the unformatted HTML as it came from the MUD (handy for debugging your Pueblo MUD objects), or the text you saw on your screen.
Pueblo now uses Microsoft's Reality Lab engine, so VRML should be many times faster than Pueblo 1.0!
Based on your feedback, we've completely reimplemented our 3D navigation, and added many cool features, like control-clicking on 3d polygons to move towards them.
There's now a right-click menu in the VRML window for manipulating 3D preferences and settings.
Collision detection is now supported.
Many rendering improvements have been made, resulting in better-looking 3D scenes.
Pueblo 1.1 is continuing to adapt the "Moving Worlds" VRML 2.0 specification, and provides an HTML interface to some aspects of "Moving Worlds".
Pueblo now supports 3d position notification, so MUD servers can implement avatar support!
VRML background images are now supported, so you can have stars surrounding your VRML worlds.
New user registration is now done using a Registration Wizard, which leads the new user through a series of questions necessary to register.
Pueblo now supports the creation of 'shortcut' files in the Start menu (on Windows 95) or in the Program Manager (on Windows NT). Once a shortcut is created, you can select it to immediately log into that world.
In the personal world list, you can now enter your username and password for the world. If you've entered a username and password, Pueblo will automatically log you into the world (when you connect from your personal world list.)
Pueblo now supports simple logging of output to a file. Output can be logged in either raw text or HTML format.
A new 'Notification' preference page allows you to get notified when the application is iconic and new text arrives. You can select to either play a sound, or blink the Pueblo icon, or both. In addition, you can only notify if incoming text matches text you specify.
Pueblo now supports a 'stop' button on the toolbar. Pressing the stop button aborts connecting to a world and file downloads.
Users can generate bug reports with a form in Pueblo. You can display this form by selecting 'Submit Bug Report' from the 'Help' menu.
The world list has been redesigned with a multi-level hierarchy and graphics.
The current world is now displayed in the caption.
The status bar now displays better information on download status.
The help system now supports the Windows 95 look and feel.
Pueblo now supports image maps, with the click coordinates being sent to the world server with a author-specified command.
Pueblo allows web pages to be loaded using normal HTML (<a href=...>load</a>). When a web page is loaded, Pueblo allows you to either use an external browser (such as Netscape Navigator(tm)) or Web Tracker, the internal Pueblo web browser, which displays in a separate window.
Pueblo now includes full support for HTML forms.
Pueblo now supports displaying HTML pages (including graphics) in multiple, arbitrary windows, called panes. Using HTML forms, this allows a world programmer to present the user with dialog boxes. Other uses of panes are for displaying graphics (such as maps) or side text (such as when reading a book.)
When URLs are displayed in the output window, they are automatically translated into clickable anchors. Clicking on the anchor causes that web page to be loaded.
This help system now includes a full description of all of the HTML supported by Pueblo.
Image anchors can now specify a border width of 0.
Pueblo now supports the full HTML 3.0 standard, with the exception of tables.
You can now select and copy text from the HTML output window.
Pueblo now uses the faster and better Intel 3DR 2.1 rendering engine.
Many rendering improvements have been made, resulting in better-looking 3D scenes.
Pueblo now supports collision detection when moving forward through 3D spaces.
Anchors in VRML scenes are now more accurate.
Some worlds used to have double-spaced output. This has been fixed.
On high-color displays, display of 2D graphic files would sometimes cause Pueblo to crash. This has been fixed.
Actually, everything in this release was new, as it is our first public release.