UOS scripting language is a "command based" language, it is easy to use and requires very basic programming knowledge, its power and flexibility is given by its commands, which can be found in this Wiki.
When you first launch UOS, you will be presented with a window allowing you to specify your client directories and server information. Selecting the Auto Detect option usually works, if it doesn't, navigate to the directory with the browse button and specify it.
In the Shard section, you specify the server ip and port number. In this case we will use the following:
We can also search for updates but this is not required. Simply click start to launch your client.
You will be presented with the main UOS window and your usual client. If you are creating an account for the first time, simply enter the desired username and password in the appropriate locations inside of the client.
Options are changed by selecting the tabs at the top of the UOS window. There is General, Options, Hotkeys, Skills, Snapshots, Agents and About. Below will be a list of these with descriptions.
- Always on Top: This option will cause UOS to stay on top of the Ultima Online window.
- Negotiate Features with Server: This option is required to play on this server. It sends packets to the server when performing certain actions to check if they :are valid. This prevents people from using certain illegal scripts or features.
- Minimize to Tray: Minimizes UOS to the tray instead of the task bar.
- Loot System: Changes between what you see when you open a corpse.
- Save Passwords: If enabled, you will not need to enter your password when logging in.
- Profiles: Allows you to switch between profiles, so that you can use different hotkeys or macros.
- Filters: Filters are things in the game that can be prevented from happening such as Light Levels or certain Sounds. Checking the "Filter" in the filters menu will block it.
- MapUO:Turning on the map will create a mini map overlay that is capable of tracking you, your party members and even your guild mates. This can be bound to a key for easier access and interacted with by right clicking the actual map.
- Command Prefix: Allows you to change the command prefix used before entering a command.
- Delay Between Actions: The amount of time that the client will use to delay the next action.
- Use Objects Queue: Queues objects and movement of objects.
- Always Accept Party Invitations: Automatically always accepts party invites when sent.
- Display New Corpses Names: Shows the name of a dead corpse above it's head when it has recently died or is approached.
- Count Stealth Steps: Shows messages for how many steps you have taken while stealthed.
- Show Coordinates on Title: Shows your coordinates in the title bar.
- Turn spell fields into: Changes between static or tile spell fields.
- Search new containers: Changes the exemptions for when the client should automatically check a new container.
- Open Doors: Enables automatically opening doors and when it should do so.
- Open Corpses: Enables automatically opening corpses and when it should do so.
- Game Window: Forces the client to use the resolution specified here.
- Display Spell Mode: Whether spell names or power words should be displayed when casting.
- Share Spell Target on: Allows friends to share the same target.
- Color Spell Text: Colors the spell text above heads to show the type of spell.
- Clear Hands Before Casting: Clears any weapons or items in your hands when casting a spell.
- Check hands before potions: Clears any weapons or items in your hands when drinking a potion (Feature disabled)
- Health above people and creatures: Shows the health in text above players and creatures heads.
- Flags above people and creatures: Shows the notoriety in text above players and creatures heads.
- Paralyze and poison highlight: Highlights a target with the appropriate color when they have these effects.
- Smart last target: Automatically targets enemies or friends based on the spell casted.
- Share enemy target on: Shares enemy targets with your friends.
- Highlight current target: Highlights your target in color.
- Limit target range to: Will disallow targeting at this range.
- Block heal if poisoned or yellow hits: Prevents casting heal on a poisoned or invincible target so not to waste it.
- Dismount: Prevents dismounting in warmode and automatically remounts specified mounts.
FriendsAdding and removing friends effects targeting, attacking, healing and more. You can add or remove friends from this sub tab.
- Include party members: Includes party members as friends automatically.
- Consider only this as valid friends: Uses only this list as valid friend targets.
- Prevent attacking friends in warmode: When in warmode, this will prevent you from attacking your friends or party members (If specified)
- Healing: Enables automated healing of self, friends or pets based on these options.
The title bar allows you to insert counters with graphics in it. It can display whatever object that you insert.
- Custom title bar mode: Chooses whether or not to display and with or without graphic icons.
- Shortcuts: Using this menu will insert these shortcuts into the display bar at the bottom of this window.
- Warn amount below: Warns you with client text when you're below this amount.
- Highlight spell reagents on cast: Highlights the reagents in the title bar with red when casting a spell that uses those reagents.
- Display counter name before amount: Shows the name of the counter before the amount you have left in the title bar.
- Display image with counters: Displays graphical images of the counters in the title bar.
- Draw status bar outline: Creates an outline around your health bar in the title bar.
The bottom portion of this Options > Title Bar section in UOS is what is displayed in your title bar in a coded format. You can insert default items in it by using the Shortcuts menu above. Simply scroll through the list to the code you want to insert (What you want to be displayed) and click insert.
For example, Clicking the Weight in the menu and clicking insert the code " $weight " into the box below. Navigating through and selecting Max Weight and clicking insert will insert the code " $maxweight ". You can add titles, dashes or lines as you see fit. In this case I'm going to add the word Weight with a colon and a / in between the weight and max wight so that my final result is Weight: $weight / $maxweight
Now in my title bar, it will show " Weight: 102/250 " and I can watch it carefully when looting to know how close I'm getting before I need to drop my loot.
This is often used for reagents, bandages, statuses, etc. If you would like to copy and paste this one into your code area of the title bar tab, you can use:
- UO - $name $statusbar - $hits/$mana/$stam $bandagetimer%cntr / %cntr-2 / %cntr-3 / %cntr-4 / %cntr-5 / %cntr-6 / %cntr-7 / %cntr-9/ %cntr-8 $weight / $maxweight
This tab allows you to define hotkeys within the client. Setting hotkeys is simple and macros are not required to use them. On the left there is a whole expandable list of potential actions and spells. Simply select the action, skill, etc you wish to perform, click the empty "Hotkey:" field, press the desired button, and click "Save".
I recommend adding a "Toggle Hotkeys" hotkey, this will allow you to turn off and on hotkeys so that you do not accidentally cast spells or perform actions while typing a regular sentence.
This tab allows you to write, record and use macros. Macros are repeatable actions that are written in a script format. These are legal as long as the actions being performed are within the rules of the server.
On the left you will see a list of Macros followed by a remove, new and save button. Clicking remove will delete the currently selected macro from the list, clicking new will create a new macro which you can name, clicking save will save any changes you have made to that macro.
In the middle of this tab there is an empty box. This is where you macro or script will go. You can use the "Commands" button to choose those actions, so you do not need any coding knowledge to create a macro.
For example. If I go to Commands a menu will appear. I could go to Actions > Bandage > Self and click insert. The resulting code is just "bandageself". Playing this script or macro will then use a bandage on myself. It's as simple as that.
Off to the right of this window there is a play and record button. Clicking record will record your actions in game and converted to a script. Clicking play will play that macro or any macro you have inserted manually.
The loop checkbox will cause the macro to repeat itself once it's reached the end of the script. The Do not auto interrupt checkbox will prevent the macro from interrupting itself.
In the "Hotkey" area, there is an empty field. Pressing a the desired hotkey with that field focused will give the macro a default hotkey. Don't forget to "save" the macro with the save button after this is done.
The skills tab allows you to view your skills, their values, their total cap and their status (up, down or locked). This is very useful for setting all of your skills up or down at once. This can be done on the right side of this window by selecting the drop down menu under "All Skills", selecting up or down, and clicking set.
This tab is for controlling screenshots. The client can be set to automatically take screenshots and crop them based on death events.
- Pictures: On the left side there is a picturing viewer that allows you to delete or open images, as well as manually take a snapshot.
- Image output format: Allows you to change the generated extension for snapshots. (Jpg, png or bmp)
- Delay before snapshot: How many milliseconds before the snapshot should be taken.
- Include date and time: Includes the date and time in a stamp on the screenshot.
- Snap my own death: Automatically takes a screenshot when you die.
- Snap other players death: Automatically takes a screenshot when another player dies within your view.
- Automatically crop pixels: Automatically crop images.
This feature is disabled.
This area under Agents > Counters allows you to add counters to your title bar manually. Click the insert button and target the desired item you wish to be displayed in the title bar. Make sure it is checked in the Counters menu. Now take note of the Format code, such as "cntr-2", this will be used inside the Options > Titlebar tab we talked about earlier. You would paste the code "%cntr-2" to show that item.
Some of these items are preset and you do not need to re-add them. Check the Options > Title bar area prior to adding any custom items to this Agents > Counters menu.
The dress tab lets you create outfits and equip / un-equip them. Click the New button, click new item, target the piece of armor or clothing you wish to be part of this outfit and optionally set the undress container. All of this is done by pressing the button in UOS and targeting the object (Clothing, Armor or Container).
Now when you click Dress or Undress, you will equip or un-equip the listed items. You can make multiple outfits and you can also bind these to hotkeys in the Hotkeys tab of UOS.
The organizer tab under the agents tab is used to create automated organizing tasks as well as restocking tasks. You can set the items you wish to move and set containers for where you want to move them from and to.
This can be achieved by creating a new organizer by clicking the New button in the bottom left, clicking "insert" on the right, and selecting the objects in game. You can then set the amounts you wish to move in the organizer window. Then select the "Select Containers" button and set your containers as prompted in game.
The scavenger tab under agents allows you to enable and disable scavenger. Scavenger is a setting that allows you to automatically pick up objects as you pass them. Simply click the "Enable" check box, click "Insert" and select the item.
Now when you pass the object, it will grab it and bring it to your backpack.
The vendors tab allows you to automate the buying and selling process at shops, to allow bulk transactions. Many people use this to buy all of the reagents at once. This is done by clicking "New" with "Buy" selected, Click the insert button and target the item you wish to buy, edit the amount in UOS and check "Enabled" for that agent.
Now when you visit the shop keeper, clicking him and clicking buy from the context menu will automatically purchase the desired amount of items if you have enough gold. Be warned that as long as that agent is enabled it will always attempt to purchase the item from the shop.
Visit the Script Repository for scripts that can be pasted into the Macros area.