Injection 
Forum where you may learn more: http://yoko.calpha.com/forum
The Injection is a satisfactory analogue of UO Assist - a client-side
helper programm. Improper or villianous use of it may exploit some bugs, but
the good craft macro may only be done with Injection.
My site:http://yoko.calpha.com
Official site: http://injection.sourceforge.net
The most possible cases of launch error described here: http://yoko.calpha.com/forum/index.php?t=msg&th=206
Specially for client 3.0.0c with YA MUU you can use my
ilpatch.cfg

At first you need an original and setted up Injection from here:
http://sourceforge.net/project/showfiles.php?group_id=30523
You need Injection 0.3.30.4 as base (try to download from
this site or from
official page)
Then, if you wish of course, download this addon. Old version
of Injection.dll reccomended to bakup, just in case.
Download last version
of Yoko Injection.dll (zip)
Download script.dll with autoload (zip)
Download a sources 303.22
Build 303.22
- New script commands:
object - string describes object (serial or name), by default - player character
linenumber - number of line in server messages journal, 0 is most recent
pattern - string pattern like "weak from starvation"
* warning1: coordinates now calculated not accurate; each time you turns running
they do mistake. i hope i'll fix error soon.
* warning2: Journal keeped one and the same for all running scripts, so if
you clear it in one scripts it become empty in all.
- UO.GetX([object]), UO.GetY([object]), UO.GetZ([object])
- returns X Y Z coordinates integer (*)
- UO.GetLayer([object]) - returns layer of object string
- UO.GetGraphic([object]) - returns graphic of object string
- UO.GetColor([object]) - returns color of object string
- UO.GetName([object]) - returns name of object (if known; try
use click first to get name) string
- UO.GetQuantity([object]) - returns quantity in stack of object
integer
- UO.GetDistance([object]) - calculates distance in cells (longest
cathet) integer (*)
- UO.LastMessage() - returns last message server sent (same as
Journal(0)) string
- UO.GetDir([object]) - returns directon of object integer
- UO.GetRun([object]) - returns run status of object integer
(i don't think it really may need for other object then player, or
even did it work for others)
- UO.Poisoned() - is player poisoned integer
- UO.Hidden() - is player hidden integer
- UO.Dead() - is player dead :) integer
- UO.StealthCnt() - current stealth steps counter value
integer
- UO.Journal([linenumber]) - returns line in server messages journal,
0 is same as LastMessage. Journal keeps 100 last messages. It may be cleared
by DeleteJournal command. string
- UO.DeleteJournal() - clears journal (no return value)
- UO.InJournal(pattern) - seeks for specified part of string in
journal messages. integer
- UO.ObjAtLayer(layer) - returns object serial at specified layer
string
possible layers:
- Rhand, Lhand, Shoes, Pants, Shirt, Hat, Gloves, Ring, Neck, Hair,
Waist, Torso, Brace, Beard, TorsoH, Ear, Arms, Cloak, Bpack, Robe,
Eggs, Legs, Horse, Bank
- Now custom encryption is stored end retrieved properly
- Fixed 2 bugs in stealth counting
- Relay server IP now prints properly in log file
- Command cast now works with partially spell names and with any kind
of objects
- Command useskill now works with partially skill names and with any
kind of objects
- New object describer lastequip - points to last object equiped or
unequiped by commands equip, equipt, unequip
- New object describer lastequipgraphic - points to last object graphic
equiped or unequiped by commands equip, equipt, unequip
- New object describer lasthorse- points to last object, you doubleclick
then got on mount. In most cases it is a horse :)
- New object describer self - points to self
- Commands addtype and addobject are correctly use all kind
of object and graphic describers now
- New command forget object - removes object from Injection memory
- New command opendoor - seek for a door nearby and try to open it
(warning: player position calculated not precisily so inject sometimes don't
know where player exactly)
- New command set variable value
list of possible variables:
- distance - range in which waittargetground seeks for items value=number
- lasttarget - sets value of lasttarget manually value=object
- prefix - set prefix char (default is , ) value=character
- bankhack - enables bankhack value=0 or 1
- safeequip - disables safety checks in equip value=0 or 1
- New command equip layer [object] - equips specified object (default
- by target prompt) to specified layer
- New command equipt layer graphic - equips object of specified type
to specified layer
- New command unequip layer - removes objects from specified layer
- Command getname renamed to click.
- Commands now awailable from scripts: set forget equip unequip equipt
opendoor
Build 302.14
- Added terminate all | script_name
Use all to terminate all running functions, or name of one you wish
to cancel.
- Added support of external UO Keys file, supported uoinjection format. Thou
added about 30 new encryptions. New encrytion now may be added easy
- just new line in UOKeys.cfg.
- Now Injection may use EasyUO literals as serials and graphics!
Example: ,usetype HND eats some fishsteak
Example: msg $,grab 1 #findid $ grabs 1 item of object you find using
EasyUO (EasyUO macro syntax)
- Now you may use many commands at once, if they delimeted with ;
Example: ,waittargetself;useobject bandage
- grab now fixed, it properly grabs stockpiled items from ground
- Saved new variables: TargXYZ, PoisonRevert, TrackWorld, ConColor, UnsetSet
for respective items in Main tab.
- Fixed error causing exception in log file each start
- Added button to URL of Yoko Injection forum at Main tab (http://yoko.calpha.com/forum)
- Added text field to display all obect info at Objects tab. It displays
info on highlighted object or info from ,info and ,infotile.
Tip: use it to copy tile values into scripts.
- Added ,massmove delay [maxquantity] command. Use it then drag&drop
some item. All items in container of dragged item of this graphic will be
moved the same way. It is cool to sort items in container by graphic or to
get out items of some type from container, or to fill bag with exact number
of potions from another bag.
- New checkbox Track world on Main tab fixes problem with unknown
parameters of many world items. I reccomend to keep it On.
- Last target on static now stored in lasttile and may be used in infotile
and waittargettile
- New object describer lastattack - points to char, whom you attacked
last
- New object describer laststatus - points to char, whom status you
got last
- New object describer backpack - points to your backpack (use with
caution - i can not guarantee this)
- Countdown in caption added for emptycontainer and massmove
- New command infocolor [object] - it returns only a color of object
(may be used for EasyUO scrips)
- New command easyobject object - it returns a EasyUO literal representation
of object's serial (may be used for EasyUO scrips)
- New command getstatus object - gets status of player with such serial.
Some shards allow this whatever distance and even through offline.
- New command getname object - it just clicks once on object to get
it's name.
- New command concolor color - it set up console text color of Injection.
- New command infotile [lasttile] analog of info command for
statics like tree, mine floor or aqua cell.
It output parameter exactly in form waittargettile wants :) It also
output info in text field at Objects tab so you may copy it directly
to script.
- New command waittargettile (lasttile)|(tile [x] [y] [z]) points target
on static, like tree, mine floor or aqua
cell. Use infotile to get it.
- New command attack object - commits attack on object
- Your password now NOT showing in logs. This done to prevent theft of them
in public places like game clubs.
- Now distance to char displayed in < > when status obtained (e.g. when
Target Next activated in client)
- Fixed few minor issues in targeting
- (Status bars fix at Main tab: there was try to keep healthbars from closing,
but it seems not working, alas)
- In-line help alternatives delimeter changed from | to /, it
seems client ignores | making in-line help less readable
- New checkbox Unset before set at Main tab. Using this chances
to hang client are much lower, cause using this checkbox armor and dress sets
are stored properly.
- grab now don't try to pick up something on canceling target
- New checkbox Poison: bottle then obj at Main tab. Check it
if your shard wait for bottle with poison first under process of using Poisoning,
and uncheck it otherwise
- Fixed corpse tracking when Undead turned on
- Fixed bug in drop, when negative relative values was not working
properly.
Example: ,drop 1 -1 -1 0 will drop 1 item targeted stock a tile upper
then char stands (-1 and -1 means myX-1 and myY-1)
- Items count delimeter was decreased from 50 to 40 in buy and sell
Build 212.08
- Fixed waittargettype
- Special Target XYZ fix option at Main tab to make Injection targets
absolutelly identical to client output
- New command fontcolor dye/color/graphic_name, with dye parameter
it displays color dialog
- New checkbox Font color on Main tab and Dye button. This is
GUI to command fontcolor - now your colour may be set up from Main
tab. Button dye pop ups in-game dyetube menu which you may use
to set color of font.
- Properly reading some variables from config
- Fixed (at least partially) VarsLoopback but better don't use it.. for now
Build 212.05
- Encryption 2.0.3 added!
- By the many requests of population script.dll was
uploaded :) use it fur er plezher :)
- Injection-EasyUO serials-literals conversion added! (Sanx going
to ncuomo)
- lastobject and lastcontainer inner support added!
- Added window to monitor layered items (accessed by Layers button
on Objects tab)
- Shorter UO caption string (now A/B displaying only if A not equal B; armor
displaying only when more than 4)
- Light checkbox working properly
- Player coordinates now working properly (Skills tab)
- Many command interfaces changed and programmed in a much more compact and
versatile way:
- command requiring object now accepts: serial, or name in list,
or lasttarget, or lastobject, or lastcontainer
- command requiring graphic accepts: graphic, or name in list,
or lasttarget, or lastobject
- command requiring color accepts: color number or name in types
list (so you may add colors as item types)
- usetype type|lasttarget|lastobject [color]
- usefromground type|lasttarget|lastobject [color]
- useobject object|lastobject|lasttarget|lastcontainer
- waittargetground type|lastobject|lasttarget [color]
- waittargettype type|lastobject|lasttarget [color]
- waittargetobject object [object2]
- setreceivingcontainer [name|serial|lastobject|lasttarget|lastcontainer]
- setcatchbag [name|serial|lastobject|lasttarget|lastcontainer]
- Commands remaked:
- grab [quantity] [name|serial|lastobject|lasttarget]
- snoop [name|serial|lastobject|lasttarget|lastcontainer]
- info [name|serial|lastobject|lasttarget|lastcontainer]
- hide [name|serial|lastobject|lasttarget|lastcontainer]
- drop [quantity] [X Y Z] [object] now accepts relative targeting.
Exapmple: drop 1 1 0 0 will drop targetet object one cell west.
- poison object|it now use tragets in reverse way and parameter
it targets a bottle itself
- setdressspeed delay_ms now also affects arm/disarm
- New commands added
- track [0|1] [X Y] example: track 1 1328 2203 example2:
track 0
- repbuy (testing now... seems it don't work at POL and some Spheres)
- exec myfunction
- addtype type_name [graphic|lasttarget|lastobject]
- addobject object_name [serial|lastobject|lasttarget|lastcontainer]
- boxhack (it may help to hold next opening container opened)
- Added possibility to change way to display opponent stats at Display
tab
- New parameters now available at Main tab:
- FilterSpeech (analogical to ,filterspeech on|off)
- Undead (removes death delay and B/W colors)
- Verbose menu (when disabled much less injection generated text
of automenu, grab and some more commands)
- Tracker (enables auto tracking of last your dead body :])
- Stealth counter (enables stealth steps counter)
- Corpses autoopen
- Smooth walk (much less lags with movement on low ping but incorrect
positioning is possible)
- SocksCap relay fix (relaying packets to localhost; use this
with programs like HTTPport)
- No client hung message
- Permit vars loopback (with this, inner targeting accepts inner
commands e.g. waittarget will accept info,hide... Also commands will update
variables lastobject, lasttarget)
- setcatchbag fixed (maybe? needs testing) and delays removed (temporary?)
- Commands filterspeech, track, repbuy, addtype, addobject, boxhack are exported
to scripts
- Fixed some errors in double targeting. More testing is required.
- Now saving variables: CharStat, FilterSpeech, Undead, MenuTalk, Tracker,
StlthCnt, CorpsesAutoOpen, SmoothWalk, SocksCap, VarsLoopback, NoHungMessage
- Still config not saving under exit, sorry :(
- Dead (character status variable) added but not used yet
- Link to http://injection.sourceforge.net
added
- slightly decreased (actually by once cycle) lags from dressspeed
Build 210.26
- Uprgaded Objects tab. Buttons added: receivingcontainer, setcatchbag
and unset. Double clik on object uses it. (Button Target not working
yet, use Wait&Target instead)
- Button added: Reset on Skills tab.
- Added posibility to set more than one command on hotkey at Hotkeys tab.
Semicolon ";" is commands delimiter.
- Main tab now has checkbox Light
- Main tab now has checkbox Undead, enabled it cuts off "You are
dead." screen.
- Main tab now has checkbox Verbose Menu, disabled it prevents waitmenu
and automenu from flooding.
- Main tab now has checkbox Filterspeech
- Player coordinates now (temporary) observed at tab Skills. The procedure
of calculating it seems not well working now.
- Almost all inner trgeting procedures now usimg models. One of results -
usetype now works with Bowcraft correctly (AoP).
- Few minor changes. Alas somewere at start there is exception now happends.
I'll find it and fix in futher versions.
Build 210.14
- Rebuilded tab Objects. Functionality was extended and size enlarged.
New buttons aplying actions, that are described in captions, to selected object
in list. (Button Target not working yet)
- At menu system waitmenu and automenu universal choices were
added:
- (last) last choice in menu
- (random) random choice in menu
- (¹) choice in menu with specified number
- (cancelmenu) to cancel menu at all
- Added stealth steps counter
- A massive fix of items info laying ground. The right parameters and coordinates
observed now, at last.
- Extended target sending. Now inject appends tile info to target info prepared
to server. (For AoP players this means we can use last target in bowcraft!)
- Extended opponent info. If server sends such info, INT, DEX, Mana, Stamina
and Armor Class now displayed.
- New command filterspeech [on|off|info|clear|add] [text] were added,
wich filters server sended text through user stamps. Use option add
to add a filter to set. Filters are saved with other settings.
- on/off enebles/disables filters
- info displays list of filters
- clear removes all filters
- add appends a new filter
- remove are exist, but not works yet
- Corpses info like [1 items 0 stones] now coloured by info in caption.
- Fixed sound filter numbers for music instruments
- Preparations started to named menues for dress and arm. Now names of items
stored and can be observed in Objects tab or in world dump.
Build 210.06
- A new extended menu system - new command automenu prompt choice
- not needed to define menu choice each time - it works till command waitmenu
or cancelmenu
- each new menu choice added by automenu
- maximum 10 (of course I can increase if you want) awaited menus
- all menu choices are awaited simultaneously
- menu from different sources (e.g. Polymorph, Tracking, Blacksmith) doesn't
interfiere each other
- Command buy returned to original state (I hope)
- At skills tab added checknox Show Real, now skills displayed correctly
- Added command setdressspeed delay_ms, now it works weak, multithreading
will be added in future
- Patched command setcatchbag - no more 3 transfers at second now,
to avoid unexpected looping
- The shard customization started - added command shard (do a little
now)
- Sound filter extedned on music instruments
Due to large size of script.dll next changes published only in sources now
and can be downloaded here.
- Added script autoloading.
- Edit box for entering a function name to run changed to combo-box, with
autoloading list of all functions in a script.
Build 209.27
- Skillcap, statcap added at skills tab
- Clipboard skill report dumper at skills tab
Build 209.23
- Added skills tab
- Auto show corpses name (like auto show corpse name at UO Assist)
- Added sound filter (horse only now, a simple managing mechanism coming soon)
Build 209.16
- No more bankloss
- Fixed counters deactivation
- Partially fixed buy for AoP
- Annoying menus (AoP pay menu) can be hidden
- New command drop [quantity] [X] [Y] [Z] [object serial/name]
There may be some other changes I forgot.