-= NEWS ARCHIVE - From January to April 2003 =-

August 30, 2003

CVS Updates
The following CVS-updates have been done from 22-30th of August:

August 30

  • Updated InternalPoll for speech, which should solve some compatability issues, and solve delayed speech from not occurring.
  • Added some batch files for windows which should help with deployment in future. They are found in the root, in uox3
    • There are 3 predefined templates:
    • pureinstallcopy

    • copies data and built binaries
    • buildanddatacopy

    • builds a release executable and does same as pureinstallcopy
    • doall

    • same as buildanddatacopy, but copies source as well
      Each must be called like
      doall c:\app\uoxtest
      The batch files accept a parameter which dictates where the files are to be copied to. From there, simple zips can be made.
  • Work continues on resurrecting a win32 installer, and communication with Rynet will see a similar process created for Linux.

August 29

  • Warning and scope fixes only

August 22

  • Added Empty OnStartup/OnShutdown events( to be expanded upon later )
  • Added a JSE class wrapper around UOX3 Account instance to provide access to methods
  • Implemented CAccountClass wrapper
    Created .AddAccount(name,pass,email,flags) to add an account to the server
    Created .DelAccount(name) or .DelAccount(accountid);
    NOTE: These are pretty self explanitary.
  • Updated JS implementation of wrapper for cAccountClass. No longer var i = new CAccountClass syntax, it exposes a global object "Accounts"
  • With minor tweaks, managed to get Slasher's account editing stuff to work

Xuri Dabur

August 14, 2003

CVS Updated - UOX3
With the latest CVS updates the version number has changed to, and thus a good time to update the downloads =) Here follows the list of changes + the updated files.

August 13

  • Fixed a crash bug with multis and deeds - the deed property wasn't always being set correctly and could crash on worldsave
  • Updated deed property of cMultiObj to be a std::string rather than a const char *, to avoid pointer issues as it's used infrequently
  • Added ExecuteCommand as a character object method (Example: pUser.ExecuteCommand( "add 0x04a9" ); )
  • Minor whitespace fixes
  • Changed MethodError of CChar_ExecuteCommand to the right func name, was SysMessage
  • Removed old standalone ExecuteCommand function from JS engine, so only character method is available
  • Updated version number

UOX3 Release Version
UOX3 Debug Version
UOX3 Sourcecode
Latest DFN/Script-package(Updated 8/8/03)

Xuri Dabur

August 13, 2003

Design Document for UOX3
Maarc posted the following in this thread over at the UOX3Dev.net forums:

"I've started working on a document which is designed to mostly stimulate debate and bring in fresh ideas. The document can be found at http://darkangelab.freeservers.com/uox/UOX3Doc.html with a PDF version available as well at http://darkangelab.freeservers.com/uox/BringingOrderToChaosSlim.pdf. You may not be able to get the PDF directly, though should be able to also get it from the HTML link."

Looks pretty darn interesting to me, as it's something like this that has been missing in UOX3 over the years - clearly laid out plans for how UOX3 should progress, with the oppertunity for everyone to participate with their own thoughts and ideas on said plans :) So if you have anything to contribute with, go ahead!

Xuri Dabur

August 13, 2003

CVS Updates
No version change(still or executables available as of yet, sorry. Oh, and I seem to have overwritten one of my own news-updates recently, the one where I mentioned that I've added a Search feature to this website, and that the UOX3 Story has been moved to the History page. :P
The list of changes:

August 11

  • Fixed a bug where insufficient templates in the HTML template system would cause a crash at runtime
  • Added 'setspawnobj and 'setspawnobjlist commands
  • Fixed a bug with tweaking items where the text strings were incorrect at the end of the property list
  • Fixed a bug with tweaking items where there was no text string at the end of the property list
  • Added spawnobj/spawnobjlist property to tweaking of items
  • Whitespace updates
  • Fixed typo in debug print of CChar_UseResource
  • Updated dictionaries in the tree

Xuri Dabur

August 8, 2003

CVS Update - UOX3
The list of the change :) Remember to download the Required Files though, and place them in your DFNDATA\HTML folder replacing the files already there.

August 7

I've updated the downloads, and we're up to version now! whee! An interesting point might be that the release-exe has been compressed using UPX, reducing it in actual size from some 700-800kb to 500! :)

UOX3 Release Version
UOX3 Debug Version
UOX3 Sourcecode
Latest DFN/Script-package(Updated 8/8/03)

Xuri Dabur

August 6, 2003

CVS Updates
The list of changes:

August 5

  • Fixed PC dying issue, not changing to ghost and not turning to gray
  • Reinstated terminating NULL with regards to CPOpenBuyWindow, which should hopefully restore pricing in 3D client

August 3

  • Fixed issue with delete characters. Now characters should delete correctly, and not list unknown
  • values, and erroneous data.
  • Fixed an issue with CPIGumpMenuSelect, which was getting radio buttons wrong
  • Fixed an issue with BuyFrom, where the logic was backward... should be more like pUser.BuyFrom( NPC ) than NPC.BuyFrom( pUser )
  • Fixed similar issue with SellTo
  • Added "movable" to area commands on request of Xuri

Xuri Dabur

August 3, 2003

Other Stuff
A new section has been added to the site, for general interesting stuff that isn't necessarily related to UOX3 or even UO. The link in the menu is simply called Other :)

I'll add various links and stuff to that page as 4| passes, though it won't be mentioned on the news page here heh. The two first links (and the only mention of the page you'll ever see on the front page here..) are for Internet (applet former featured on this news page :P), and a different kind of emulator - DOSBox! It's a DOS emulator for Windows, Linux, BeOS, MacOS and more - and allows you to play those golden oldies like Ultima Underworld 1/2, and hundreds of other games on your brand new system :)

Xuri Dabur

August 2, 2003

CVS Updates
Numerous updates to the CVS today =) Note though, that the CVS server for anonymous users is running up to 24 hours behind the real CVS, so don't despair if you can't see the updated files at once.

I've updated the downloads, but note that the version number hasn't changed yet :P So it will still show .1j when you run it.

UOX3 Release Version
UOX3 Debug Version
UOX3 Sourcecode

The list of changes:

August 2

  • Updated CPItemsInContainer so that it will work faster and should work better with vendors
  • Updated CPOpenBuyWindow to work better with vendors, and go faster
  • Added AoS weapons and LBR-monster weapons (Xuri)
  • Vendors work fine in 3D client but not in 2D
  • Added a packet specific log routine to CPOpenBuyWindow
  • Updated cSocket and other routines to allow for packet specific logging on receive
  • Sideeffect of that is that non-packet classes save data already logged for variable length packet
  • Implemented Log() routine for CPIFirstLogin, CPISecondLogin, CPIServerSelect, CPIClientVersion and CPIUpdateRangeChange
  • Whitespace updates
  • setid now has character body restrictions, and is the same as 'poly, which has been upgraded to 0->0x7CF
  • Removed JS functions due to equivs
    VendorBuy -> BuyFrom method of Char/socket
    VendorSell -> SellTo method of char/socket
  • Added flag property to characters in JS (deals with criminal, murder and so on, read only property)
  • Migrated base JS functions to character/item methods
    FinishedItemInCont -> FinishedItems
    FirstItemInCont -> FirstItem
    NextItemInCont -> NextItem
  • Dismounting a creature will have the creature face the same way as you
  • onDropItemOnNpc event implemented First executes for item and if item doesn't bounce, executes for NPC (so item can override bouncing)
    scripts must return a value between 0 and 2
    0 == bounce
    1 == don't bounce, use code
    2 == don't bounce, don't use code
  • Updated mounts to support rest of LBR/AOS mounts

Xuri Dabur

August 1, 2003

CVS Updates
After getting WinCVS working properly, I could finally update my local copy of the UOX3 source properly - so here are some test-builds of UOX3 (includes the updates from 31st of July & 1st of August listed previously here today):

UOX3 Release Version
UOX3 Debug Version
UOX3 Sourcecode

Enjoy! :)

Xuri Dabur

August 1, 2003

CVS Updates
Here are the most recent additions to the UOX3 CVS. No compiled test-exe's available as of yet...

August 1

  • CChar's attacker property was a CHARACTER, not a CChar * - This lead to mixed ideas of what it's values are
    Changed attacker property to CChar *, which should provide some minor performance benefits
  • Fixed a bug with stealing which would flag an index error on failure when not in combat
  • OpenURL function on a socket is now enabled

July 31

  • DoStaticEffect (JS function) was both a standalone method (DoStaticEffect) and item/char method (StaticEffect)
  • Removed standalone implementation of DoStaticEffect, as it wasn't updated to current implementations and one impl should be used
  • Fixed a bug with JS StaticEffect method that would make it not work correctly with items
  • JS method table for chars updated to reflect that StaticEffect takes 3 parameters, not 4
  • Fixed a crash bug when items tried to talk (via JS or not)
  • Some more basic implementation (ifdef'd out) of using boost tokenisation
  • Whitespace cleanups
  • CPObjectInfo caused crash bug when firefield was cast, fixed
  • The criminal() function would cause a server crash if the thing going criminal was an NPC (symptom of EV's crashing server)
  • Removed JS onUsage event, and updated onUse in its place
  • onUse now requires a return value of either true or false in the script if return value true, then it continues on executing with hard coded implementation
    if return value false, then no hard code is executed
  • Fixed 'make so that 'make player would work again
  • Items can now use the third optional parameter of StartTimer in JS, which enables to call back into the currently executing script
  • Updated SetCont so that if it fails to equip, it prints out serial and layer, and resets contObj properly
  • Fixed crash with killing characters and corpse clothing
  • onUse event fires for a door when it is used, allowing for greater customisation of whether the door can be opened or not

Xuri Dabur

July 27, 2003

CVS Updates
Three days late posting about this update - but hey, better late than never :| Sorry.
No compiled executables available as of yet for this latest update - I'll try to put up some soon for those of you who don't know/want to know how to use a CVS or compiling the source yourselves.

July 24

  • cPBuffer now has an internal packed buffer, as well as an internal Pack() routine
  • cSocket::Send adjusted to use the cPBuffer packed buffer/unpacked where possible
  • cPBuffer's packed implementation means that if the packet is sent to multiple sockets, only one pack is needed And consequently, runtime performance should be slightly improved (only affects removeitem sort of packets)
  • Updated version number
  • getTileName updated to behave like in singleClick()
  • singleClick now calls getTileName for name lookups rather than basically reproducing the code
  • singleClick slightly optimized to only do a character lookup if required
  • whitespace cleanups

I've compiled some test-executables(win32) from the CVS update the 20th of July, both debug and release-versions - the difference being that the debug one is larger & slower, but at the same time more resistant to crashes. For those interested, I'll post the links to the downloads here - use them at your own risk though, this is NOT official distribution: Release Version Debug Version

Xuri Dabur

July 23, 2003

UOX3Dev.net Temporarily Down
Due to what seems to be technical problems http://www.uox3dev.net is temporarily down. There is however a mirror-site up at http://www.uox3.net until the problem has been fixed.

UPDATE: OOps UOX3Dev.net is back up again :) Soo...nevermind.

Xuri Dabur

July 22, 2003

More CVS Updates
Sorry for the delay in these updates from when they are added, but the anonymous CVS is running 24 hours behind the one the developers use :P

July 20

  • Fixed long packet problem
  • Fixed possible problem with create skill window
  • Converted more things to use CPSendGumpMenu
  • Fixed item refresh bug for items created after server load
  • Optimized code size for cGuild gumps a touch
  • SendVecsAsGump uses CPSendGumpMenu - note, we should be trying to get rid of all uses of SendVecsAsGump
  • Commented out a call to Gumps->Open() that locks up later clients (see cstatstarget in cTargets)
  • Optimization note for CPSendGumpMenu reuse - look at moving some of the processing from Finalize() to AddCommand()/AddText()

Xuri Dabur

July 21, 2003

DFN/JScript-Package Updated
I'm going to try to get some of the basic JScripts done in the time to come. As a start I've gone through and applied fixes/updates to most of the existing JScripts, hopefully making them work better than they did before =) Also added in a new script which deals with bottles, pitchers, jugs, mugs, glasses and goblets =) Can pour from one such "liquid" container to another if you want, meaning you could end up with a bottle of water and a jug of wine =) Entries have been added to jse_objectassociations.scp to match this new script, so any pitchers/bottles should be usable straight away.

The DFN/JScript-Package has received the following updates:


  • Replaced fthreadspools-6.js in favor of flaxtothread.js (jse_fileassociations.scp)
  • Added some more entires in jse_objectassociations.scp (for bottles/pitchers, knives, whatnot)
  • Fixed/rewrote all the cooking-scripts(They should now work with both dynamic and static heat-sources.)
  • Fixed the cutting of raw fish into fish steaks (using skinning/butcher knives), as well as grinding wheat on flour mills.
  • Replaced cookedbird-a.js and cookedbird-b.js with cookedbird.js, no need for a seperate script for the each version of a raw bird.
  • Fixed/rewrote all the tailoring scripts(Should now work with both dynamic and static looms/spinning wheels)
  • Fixed the SFX for all light-source igniting/dousing.
  • Replaced the obsolete SpawnItem methods with new CreateDFNItem ones
  • Removed "buy" and "sell" from the speech-keywords, so they wouldn't break the shopkeeper commands..but the uox3 sourcecode needs to be updated with a fix for SubStringSearch before this will work correctly.
  • Added pitchers.js to /js/server/resource/ - script for using bottles/pitchers/jars/glasses.


  • -Gave the Orc Scout a bow and some arrows so he can fight =)

Xuri Dabur

July 19, 2003

Some CVS Updates
There have been some updates to the CVS since arrived(30th of june), sorry for the long time in reporting some of these updates (though some were as recent as today..)..so here they are, newest first:

July 19

  • Fixed a problem with WhichLoginPacket, as it would ignore some valid packet IDs
  • Implemented CPSendGumpMenu, an attempt to write a packet class for 0xB0 outbound
  • CPSendGumpMenu works for part of wholist and is implemented for 'howto
  • However, the size of the packet is bigger than our largest buffer.... and that means that it tramples all over memory
  • A fragmenting version is implemented, but the client is more likely than not to lockup
  • Real answer? Crypt and send a buffer big enough to hold the entire packet

July 18

  • Created a WhichLoginPacket function, to deal specifically with logins only
  • WhichLoginPacket will throw an exception if it receives a request that it knows nothing about
  • This request is caught and swallowed, via new cSocket::FlushIncoming

July 17

  • Reduced a number of flush locations
  • Books updated to packet classes
  • Fixed a bug with reading predefined books
  • If cannot wear an item, returns failure (only prints in debug mode)
  • Removed some commented code
  • Updated spellbooks to use packet classes
  • Slight spellbook speed up
  • Removed some dead variables
  • Some messages now only print in debug mode
  • Packet 0x98 (allnames 3D) moved to packet class
  • Game server list moved to own packet class
  • Added Add() method to CPItemsInContainer
  • Turned outbound 0x66 into CPBookPage
  • Turned outbound 0x6F into CPSecureTrading
  • UseDoor SE function now supports objects not indexes
  • MAXLAYERS reduced to 30
  • Fixed crashes related to system speech and npcs
  • Edited changelog to explicitly mention the month, not using a numeric (not everyone is an American)
  • CPDrawContainer model changed from SI16 to UI16
  • Updated to version 1g
  • Replaced almost all instances of a++ and a-- code with ++a and --a, without breaking semantics
  • Implemented a basic boost tokenisation on account parsing of v3 files (ifdef'd out by default)
  • Saves approximately 100 lines of code and is more readable

July 15

  • Should fix deleting characters

Xuri Dabur

June 30, 2003

Another version out! And only one day after I predicted it would be out soon...*does a jig*
Ahem...Anyway, we're up to version (win32 exe - goto files page for source download), and the ChangeLog is longer than usual =)

Archiving News
As the news page seems to be getting a bit too long for it's own good, so I'll start archiving news in the History section of this site (as the news posts does after all contain tidbits & news about UOX3 history) every 4 months. (5 months for the first archive...just lumped all of 2002 news together).

Xuri Dabur

June 29, 2003

UOX3 + Site Updates
Since my last update there has actually been two new UOX3 versions avilable - first was released on the 19th, then was released the same day :P Both versions included fixes for the SpawnItem JS Method, btw. I'm only 10 days late reporting that bit of news, but hey - better late than never. To make up for it I'll spill the beans on the fact that another version will be out pretty soon - with some rather interesting changes, like some new object-based file-i/o stuff, many fixes/updates for stuff in newer clients (though not entirely compatible with latest client yet...), and other smallish fixes/cleanups...

JS-Docs Updated
I updated the JS Docs today, both cosmetic changes (easier to navigate) as well as some actual update of the contents... I'm actually a bit ahead of myself here, since some of the stuff I added to the docs won't be available until the next UOX3 version is out :) But that shouldn't be too long.

General Site Updates
The Docs have received a new category - JavaScripting and DFN-Writing, and all related content has been moved there (also added a link to Slasher's UOX3 FAQ, lots of nice info there). I re-added the link to Smithy's Anvil, as it's started to report UO/UOX-related news again. Removed a shard from the Shard List, as it seems to be gone for good.

Xuri Dabur

June 18, 2003

UOX3 + CVS updated
The UOX3 CVS has been updated with the most recent sourcecode for UOX3, which is also available for download as a stand-alone zip from this location(includes pre-compiled win32 executable).

Most spells should work correctly (or close) in this version, and a number of other small fixes are included. Note that if you're upgrading from an older UOX3 version (pre 0.97.00 for instance), you need a new set of DFNs/scripts for this UOX3 version to work correctly. You can get those in the DFN-package.

Files-page Updated
Seeing as there's a lot of confusion going around because of the different UOX3 versions available, I've removed the old downloads(last full release of UOX3, 0.97.00) from the files page and replaced them with the most current versions available, test-versions or not. They are in any case in a much better state than the downloads that were removed.

I've also updated the setup-guide for UOX3 contained in the Docs section of this website to match these changes.

Xuri Dabur

May 14, 2003

The most recent version of the source-code the Official UOX3 TestServer runs on is available for download over at UOX3Dev.net. (A compiled windows executable is included in the zip.)

Worth noting about this version is that most spells should now work, and some more crashes have been fixed. =)

Also note that you'll need an updated SPELLS.DFN file for the spells to work properly. It's included in the DFN-package - which also includes a lot of other DFN/script updates, especially if you're upgrading from an old version (0.97.00 or maintenance releases)!

Xuri Dabur

May 13, 2003

Shardlist Updated
Added a shard to the shard-list, UOX3 TestServ.

If anyone else are running(or constructing) UOX3 shards, feel free to forward links to their webpages to me so I can add them to my shard-list =)

Oh, and by the way - Rayonnant was only removed from the shardlist after the owner asked me to...Just thought I'd mention that in case anyone wondered why it was removed so fast...

Xuri Dabur

May 9, 2003

Shardlist Updated
Removed a shard from the shard-list, Rayonnant.

If anyone else are running(or constructing) UOX3 shards, feel free to forward links to their webpages to me so I can add them to my shard-list =)

Xuri Dabur

May 4, 2003

UOX3 TestServer Up and Running
I'd like to encourage everyone interested in UOX3 to sign up for an account on our new official UOX3 TestServer over at http://www.uox3dev.net/testserv.asp. It's running in debug-mode, and any server crash-bugs or other fatal errors will thus be found as they occur, and hopefully fixed as a result. Note that this will also mean the server will be "frozen" for a period of time everytime such a serious error is caught by the debugger. Please have patience :)

The test-server is currently running version, and I hope as many as possible will help us out - as things are looking good for UOX3 at the moment and a full public release may not be that far away if we get the most serious errors out of the way.

The source for is available at this location, but keep in mind that this is NOT a release-version, but work in progress. If you decide to try out this new version, you'll also most likely need new/updated DFNs(those are still work in progress for the next public release as well, btw) - which you'll find for now at http://www.uox3.org/uox3.zip.

Xuri Dabur

May 1, 2003

Shardlist Updated
Added a new shard to the shard-list, Rayonnant.

If anyone else are running(or constructing) UOX3 shards, feel free to forward links to their webpages to me so I can add them to my shard-list =)

Xuri Dabur

Website Designed by Xuri Dabur

(Website inspired by the old uox.stratics.com look :)
(Ultima Online is a registered trademark of Electronic Arts)