wenas veo que ay muxas macro queda problemas yo tengo la macro de minera y herreria que ba muy bien ace dos dias que los estuve usando y tambien dejo fundir para completar lo de un minero completo :P jeje
Macro de minar:
Aver ay ke modificar una cosa donde pone runacasa runamina poned el numero donde teneis la runa solo eso
;Minar con recall nuevo emulador.
; Macro by Alex (Ultima Alianza) ||| Modificación por LuCHaDoRe para sphere 0.56b-Nightly
; Para Minar en Minas preestablecidas de forma sencilla, moviendose solo.
; Esta macro no guarda, ni funde el mineral.
; Para usar la macro debemos dirigirnos a una de las minas preestablecidas
; y cambiar el valor lugar en el script segun la Mina escogida.
; Debes configurar las posiciones de las minas de tu libro de runas (más abajo), el runebook y la posicion del contenedor donde dejar los minerales (cuando inicies la macro).
; Recuerda llevar muchos regs de Recall (Mandrake Root, Blood Moss, Black Pearl)
; Las Minas actuales son:
; 0- Ninguna (Mina solo igual, pero si se sale de dentro de la mina no se volverá a meter, deberás moverlo tu)
; 1- Shame (Norte de la entrada Shame (Trabajos Forzados))
; 2- Covetous 1 (Primera Mina a la derecha de la Dungeon Covetous)
; 3- Covetous 2 (Segunda Mina a la derecha de la Dungeon Covetous)
; 4- Covetous 3 (De las dos minas juntas en Covetous Norte, la de arriba)
; 5- Covetous 4 (De las dos minas juntas en Covetous Norte, la de abajo, meterse bien adentro antes de iniciar la macro)
; 6- Minoc Ciudad 1 (La mina que hay al Este de Minoc, pasando el puente)
; 7- Minoc Ciudad 2 (La mina al lado de la que hay pasando el puente de Minoc)
; 8- Minoc Mina 1 (De las Minas del Norte de Minoc, la primera de la izquierda abajo)
; 9- Minoc Mina 2 (De las Minas del Norte de Minoc, la de la izquierda donde hay dos (Haven))
; 10- Minoc Mina 3 (De las Minas del Norte de Minoc, la de la derecha donde hay dos (Haven))
; 11- Destard 1 (Un poco a la izquierda de La Dungeon Destard)
; 12- Destard 2 (Desde la entrada de Destard Dungeon bajando bordeando, la primera mina que encuentras)
; 13- Destard 3 (Desde la entrada de Destard Dungeon bajando bordeando, la segunda mina que encuentras)
; 14- Destard 4 (Desde la entrada de Destard Dungeon bajando bordeando, la terera mina que encuentras, en la de la parte derecha de la montaña)
; 15- Wrong 1 (Junto a la entrada de la Dungeon de Wrong)
; 16- Wrong 2 (Bordendo la montaña desde la entrada de Wrong hacia la izquierda, la primera que encuentras)
; 17- Wrong 3 (Bordendo la montaña desde la entrada de Wrong hacia la izquierda, la segunda que encuentras)
; 18- Hythloth 1 (Bordeando la montaña, hacia arriba desde Hythloth, la primera que encuentras)
; 19- Hythloth 2 (Bordeando la montaña, hacia abajo derecha de Hythloth, la primera Mina que encuentras)
; 20- Hythloth 3 (Bordeando la montaña, hacia abajo derecha de Hythloth, la segunda Mina que encuentras)
; 22- Avatar Norte 1 (De la montaña del Norte de Avatar, la primera que encuentas)
; 23- Avatar Norte 2 (De la montaña del Norte de Avatar, desde la primera, a la derecha bordeando, la primera que encuentras)
; 24- Desierto (En el cruce de caminos)
; 25- Shame Sur
; -------------------
set %lugar 0
; -------------------
; Ahora configura las posiciones de las runas del libro de runas:
; Pon en el valor de %runacasa el hueco donde tengas la runa que te llevara al cofre para guardar los minerales (1-16)
; Pon en el valor de %runamina el hueco donde tengas la runa que te llevara dentro de la mina (1-16)
;--------------------
set %runacasa 1
set %runamina 4
;--------------------
initevents
chooseskill mini
set %skillini #skill
set %locs LOCATIONS_PISADAS
set %borrado 0
event sysmessage Iniciando Macro
gosub lugares
configurar:
if %confp = 1 || %confp = N/A
{
event sysmessage Vas a minar gracias a la modificacion de LuCHaDoRe .Porfavor, no me mates a mi minero ( El ConQuiSTaS ) Gracias .
event sysmessage Debes estar en el punto donde apareces cuando haces recall a tu casa, manten el cursor encima de la bolsa/contendor donde dejar los minerales y presiona ESC.
event sysmessage Y presiona la tecla ESC
setuotitle Manten el cursor encima del contenedor donde dejar los minerales y presiona ESC
set %conf 1
set %confp 2
goto TESC
}
if %confp = 2
{
setuotitle Abre el Runebook donde tengas las runas a tu casa y a la mina y presiona ESC
event sysmessage Abre el runebook donde tengas las runas y presiona ESC
event sysmessage Y presiona la tecla ESC
set %conf 2
goto TESC
}
TESC:
onHotKey ESC
{
if %conf = 1
{
set %cofrex #CURSORX
set %cofrey #CURSORY
set %dondecasax #CHARPOSX
set %dondecasay #CHARPOSY
set %dondeminax 0
goto configurar
}
if %conf = 2
{
set %runebook #LOBJECTID
goto recallmina
}
}
goto TESC
comienzo:
findItem NPF
if #FINDSTACK = 0
{
findItem QPF
}
set #LOBJECTID #FINDID
set %cmsg #jIndex
event macro 17
wait 10
set %fmsg #jIndex
for %i %cmsg %fmsg
{
scanJournal %i
if Donde_quieres_utilizar_el in #journal
{
set %seguridad 0
goto acabapicar
}
}
goto comienzo
acabapicar:
set %cmsg #jIndex
set #LTARGETX #CHARPOSX + 1
set #LTARGETY #CHARPOSY - 1
event macro 22
wait 10
set %fmsg #jIndex
for %i %cmsg %fmsg
{
scanJournal %i
if Pones_el in #journal || No_encuentras in #journal
{
set %skillinc #SKILL - %skillini
setuotitle Skill de Mining | Inicial: %skillini | Actual: #SKILL | Incremento: %skillinc | Peso: #WEIGHT
gosub compruebapeso
goto comienzo
}
if Aqui_no_hay_nada_por in #journal || Prueba_a in #journal
{
gosub compruebapeso
goto moverse
}
if no_puedes_ver in #journal ||
{
gosub compruebapeso
goto moverse
}
}
gosub seguridad
goto acabapicar
moverse:
if %lugar > 0
{
if #CHARPOSX , _ , #CHARPOSY notIn %locs
{
set %borrado %borrado + 1
if %borrado > 100
{
set %locs LOCATIONS_PISADAS
set %borrado 0
}
set %locs %locs , _ , #CHARPOSX , _ , #CHARPOSY
}
if %lugar = 5
{
if %lugaro > #CHARPOSX
{
for %i 1 6
{
event macro 5 3
wait 10
}
}
}
if %lugarp = X
{
if %lugaro < #CHARPOSX
{
for %i 1 6
{
event macro 5 7
wait 10
}
}
}
if %lugarp = Y
{
if %lugaro < #CHARPOSY
{
for %i 1 6
{
event macro 5 1
wait 10
}
}
}
}
set %mover #random % 7
event macro 5 %mover
wait 20
event macro 5 %mover
wait 20
if #CHARPOSX , _ , #CHARPOSY in %locs
{
goto moverse
}
goto comienzo
recallcasa:
set %posruna %runacasa
gosub librecall
set #LOBJECTID %runebook
event macro 17
wait 20
click %runex %runey f
event macro 13 46
wait 10s
event macro 13 46
msg .resend $
wait 10
if #CHARPOSX = %dondecasax && #CHARPOSY = %dondecasay
{
goto dejarminerales
}
else
{
event macro 13 46
goto recallcasa
}
recallmina:
set %posruna %runamina
gosub librecall
set #LOBJECTID %runebook
event macro 17
wait 20
click %runex %runey f
event macro 13 46
wait 10s
event macro 13 46
msg .resend $
wait 10
if %dondeminax = 0
{
if #CHARPOSX <> %dodnecasax && #CHARPOSY <> %dondecasay
{
set %dondeminax #CHARPOSX
set %dondeminay #CHARPOSY
}
}
if #CHARPOSX = %dondeminax && #CHARPOSY = %dondeminay
{
event macro 13 46
goto comienzo
}
else
{
goto recallmina
}
dejarminerales:
set %v1 %v1 + 1
if %v1 > 12
{
set %v1 0
goto recallmina
}
finditem TVJ c_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem GWJ C_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem EWJ C_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem DWJ C_ , #BACKPACKID
if #FINDSTACK = 0
{
goto recallmina
}
}
}
}
event drag #FINDID
wait 20
KEY ENTER
wait 10
click %cofrex %cofrey p
goto dejarminerales
sub librecall
{
if %posruna < 9
{
set %runex 130
if %posruna = 1
{
set %y 0
}
else
{
set %runea %posruna - 1
set %y 15 * %runea
}
set %runey 70 + %y
}
if %posruna > 8
{
set %runex 290
if %posruna = 9
{
set %y 0
}
else
{
set %runea %posruna - 9
set %y 15 * %runea
}
set %runey 70 + %y
}
return
}
sub seguridad
{
set %seguridad %seguridad + 1
if %seguridad > 15
{
set %seguridad 0
goto comienzo
}
return
}
sub lugares
{
if %lugar = 1
{
set %lugaro 1238
set %lugarp Y
}
if %lugar = 2
{
set %lugaro 2454
set %lugarp X
}
if %lugar = 3
{
set %lugaro 914
set %lugarp Y
}
if %lugar = 4
{
set %lugaro 828
set %lugarp Y
}
if %lugar = 5
{
set %lugaro 2355
set %lugarp X
}
if %lugar = 6
{
set %lugaro 499
set %lugarp Y
}
if %lugar = 7
{
set %lugaro 2602
set %lugarp X
}
if %lugar = 8
{
set %lugaro 2426
set %lugarp X
}
if %lugar = 9
{
set %lugaro 2440
set %lugarp X
}
if %lugar = 10
{
set %lugaro 66
set %lugarp Y
}
if %lugar = 11
{
set %lugaro 266
set %lugarp Y
}
if %lugar = 12
{
set %lugaro 1259
set %lugarp X
}
if %lugar = 13
{
set %lugaro 2729
set %lugarp Y
}
if %lugar = 14
{
set %lugaro 2895
set %lugarp Y
}
if %lugar = 15
{
set %lugaro 1991
set %lugarp X
}
if %lugar = 16
{
set %lugaro 1499
set %lugarp X
}
if %lugar = 17
{
set %lugaro 1941
set %lugarpX
}
if %lugar = 18
{
set %lugaro 1918
set %lugarp X
}
if %lugar = 19
{
set %lugaro 3822
set %lugarp Y
}
if %lugar = 20
{
set %lugaro 4766
set %lugarp X
}
if %lugar = 21
{
set %lugaro 4817
set %lugarp X
}
if %lugar = 22
{
set %lugaro 3302
set %lugarp Y
}
if %lugar = 23
{
set %lugaro 4554
set %lugarp X
}
if %lugar = 24
{
set %lugaro 1812
set %lugarp X
}
if %lugar = 25
{
set %lugaro 1695
set %lugarp Y
}
return
}
sub compruebapeso
{
if #WEIGHT > 380
{
goto recallcasa
}
return
}
Macro de herrero :
Macro crafted by SirRasel & Glacius [BdK]
; Retocada por Alex y BoXeR (BoXeR añadió un contador
; de lingotes del cofre un contador de dagas en la mochila
; y que dependiendo del nivel de herrería
; usara una coordenada para la daga u otra automáticamente)
; Macro de Herrero que fabrica martillos.
;------------------------------------------
; Quieres hacer tiquets el lote de dagas? escribe aquí si o no.
;--------------------------
set %tiquets no
:--------------------------
init events
;================================================= ================================================== ===========
;=========== VARIABLES ================================================== ======================================
;================================================= ================================================== ===========
chooseskill blac real
set %skillini #skill
set %martillo TLH
set %daga TSF
set %lingotes RMK
set %lotex 113
set %lotey 62
set %idlote CKF
set %pap BKF
set %gumpx1 94
set %gumpy1 172
set %gumpx2 305
set %gumpy2 343
set %dagax1 271
set %dagay1 67
set %dagax2 250
set %dagay2 67
set %dagax3 66
set %dagay3 67
set %martillox1 271
set %martilloy1 67
set %martillox2 250
set %martilloy2 67
set %martillox3 150
set %martilloy3 67
;================================================= ================================================== ===========
;================================================= ================================================== ===========
;=========== OPCIONES PREVIAS ================================================== ===============================
display Ok abre el cofre donde esten los materiales
wait 3s
set %cofre #lobjectid
set %cofrex #cursorx
set %cofrey #cursory
display Ok pon el cursor en la mochila de la foto del personaje
wait 3s
set %backpackx #cursorx
set %backpacky #cursory
;================================================= ================================================== ===========
;=========== INICIO DE LA MACRO ================================================== =============================
;================================================= ================================================== ===========
finditem %martillo c_ , #BACKPACKID
if #findKind = -1
{
HALT
}
set #LOBJECTID #FINDID
event macro 17 0
target
key ESC
inicio:
finditem %martillo c_ , #BACKPACKID
if #findcnt <= 1
{
GoSub FabricarMartillo
}
finditem %lingotes c_ , #BACKPACKID
if #findStack <= 20
{
goSub CojerLingotes
finditem %lingotes c_ , #BACKPACKID
}
set #LOBJECTID #FINDID
event macro 17 0
wait 40
click %dagax1 %dagay1 f
wait 20
click %dagax2 %dagay2 d
wait 20
click %dagax3 %dagay3 d
wait 20
if #SKILL <= 500
{
set %dagax4 100
set %dagay4 67
click %dagax4 %dagay4 d
}
if #SKILL > 500
{
set %dagax4b 135
set %dagay4b 67
click %dagax4b %dagay4b d
}
wait 3s
set %skillinc #SKILL - %skillini
finditem %lingotes C_ , %cofre
set %lingotescofre #FINDSTACK
finditem %daga c_ , #BACKPACKID
set %dagamochila #findCnt
{
setuotitle ------------< | Macro de Herrero | S.Inicial: %skillini | S. Actual: #SKILL | S. Inc: %skillinc | Lingotes que te quedan: %lingotescofre | Dagas mochila: %dagamochila | >------------
}
finditem %daga c_ , #BACKPACKID
if #findCnt >= 15
{
goSub PackDagas
gosub Guardarlote
}
goto inicio:
;================================================= ================================================== ===========
;=========== SUB COJER LINGOTES========================================== ======================================
;================================================= ================================================== ===========
Sub CojerLingotes
finditem %lingotes c_ , %cofre
if #findkind = -1
{
ignoreitem reset
HALT
}
set %carga #maxweight - #weight
set %carga %carga / 2
set %carga %carga + 1
if %carga <= 1
{
if %carga < 0
{
return
}
else
{
set %carga 2
}
}
event drag #findid
wait 10
msg %carga
msg $
wait 10
click %backpackx %backpacky p
return
;================================================= ================================================== ===========
;=========== SUB FABRICAR MARTILLO ================================================== ==========================
;================================================= ================================================== ===========
Sub FabricarMartillo
martillo:
finditem %lingotes c_ , #BACKPACKID
if #findStack <= 20
{
goSub CojerLingotes
finditem %lingotes c_ , #BACKPACKID
}
set #LOBJECTID #FINDID
event macro 17 0
wait 40
click %martillox1 %martilloy1 f
wait 30
click %martillox2 %martilloy2 d
wait 30
click %martillox3 %martilloy3 d
wait 30
if #SKILL <= 500
{
set %martillox4 100
set %martilloy4 67
click %martillox4 %martillo4 d
}
if #SKILL > 500
{
set %martillox4b 135
set %martilloy4b 67
click %martillox4b %martilloy4b d
}
wait 4s
finditem %martillo c_ , #BACKPACKID
if #findCnt >= 3
{
return
}
goto martillo
;================================================= ================================================== ===========
;=========== SUB PACK DE DAGAS ================================================== ==============================
;================================================= ================================================== ===========
Sub PackDagas
findItem %martillo C_ , #BACKPACKID
if #findCnt <= 3
{
gosub FabricarMartillo
findItem %martillo C_ , #BACKPACKID
}
set #LOBJECTID #FINDID
event macro 17 0
target
key ESC
finditem %lingotes c_ , #BACKPACKID
if #findStack <= 20
{
goSub CojerLingotes
finditem %lingotes c_ , #BACKPACKID
}
set #LOBJECTID #FINDID
event macro 17 0
click %lotex %lotey d
wait 10
return
;================================================= ================================================== ===========
;=========== SUB DEJAR PACK DE DAGAS ================================================== ========================
;================================================= ================================================== ===========
sub Guardarlote
if %tiquets = no
{
dejar:
findItem %idlote C_ , #BACKPACKID
if #findkind <> -1
{
event drag #FINDID
wait 10
click %cofrex %cofrey p
gosub Guardarlote
}
return
}
if %tiquets = si
{
lote:
findItem %idlote C_ , #BACKPACKID
if #FINDCNT > 0
{
findItem %pap G_3
if #FINDSTACK = 0
{
goto dejar
}
else
{
set #LOBJECTID #FINDID
event macro 17
wait 20
click %gumpx1 %gumpy1 1
wait 20
click %gumpx2 %gumpy2 1
target
findItem %idlote C_ , #BACKPACKID
set #LTARGETID #FINDID
wait 20
event macro 22 0
wait 20
goto guardarlote
wait 10
key ESC
click %gumpx2 %gumpx2 r
goto lote
}
}
return
}
return
;================================================= ================================================== ===========
;======================================== FIN ================================================== ===============
;================================================= ================================================== ===========
macro para separar y fundir :
; Macro by Alex (Ultima Alianza)
; Para Separar ores y fundirlos.
; Necesitamos un cofre donde tengamos los ores a separar y poder dejar los lingotes,
; junto a una forja, vigilad que tengamos linea de visión con ambos.
; Primero tenemos que poner cuantos ores debe separar y fundir
; es recomendable poner de 50 a 100 para que no tengamos sobrepeso
; Al empezar deberemos configurar el Cofre y un punto de nuestra mochila.
; Los pasos se explican en el UO al darle a empezar, fijaros en la barra superior del UO.
; Una vez configurado la macro empezará sola a separar, fundir y guardar.
; Macro para funcionar en Ultima Alianza
; IMPORTANTE: Haced paquetes de 200 en 200 de los minerales, no superiores (dentro del baúl).
; Poner aquí el número de ores que irá separando y fundiendo cada vez. (10, 20, 30,...)
;--------------------------
set %sep 50
:--------------------------
initevents
set %confp 1
chooseskill mini
set %skillini #skill
configurar:
if %confp = 1
{
Event sysmessage Abre el cofre en el que tienes los ores a separar y manten el cursor en el.
event sysmessage Y presiona la tecla ESC
setuotitle Abre el contenedor que contiene los ores y luego manten el cursor en el y presiona ESC
set %conf 1
set %confp 2
goto TESC
}
if %confp = 2
{
setuotitle Pon el cursor donde quieras llevar el objeto a separar de tu mochila y presiona ESC
event sysmessage Pon el cursor donde desees dejar el objeto a separar
event sysmessage Y presiona la tecla ESC
set %conf 2
goto TESC
}
TESC:
onHotKey ESC
{
if %conf = 1
{
set %cofre #LOBJECTID
set %cofrex #CURSORX
set %cofrey #CURSORY
goto configurar
}
if %conf = 2
{
set %dejarx #CURSORX
set %dejary #CURSORY
set %tot 0
set %vez 0
set %fin 0
goto separar
}
}
goto TESC
separar:
set %skillinc #SKILL - %skillini
for %vecesS 1 %sep
{
finditem TVJ c_ , %cofre
if #FINDSTACK = 0
{
findItem GWJ C_ , %cofre
if #FINDSTACK = 0
{
findItem EWJ C_ , %cofre
if #FINDSTACK = 0
{
findItem DWJ C_ , %cofre
if #FINDSTACK = 0
{
set %fin 1
}
}
}
}
event drag #FINDID
wait 10
msg 1 $
click %dejarx %dejary p
wait 10
setuotitle Accion: Separando | Cantidad: ( %vecesS / %sep ) | Veces: %vez | Guardado: %tot | S. Inicial: %skillini | S. Actual: #SKILL | S. Inc: %skillinc
}
fundir:
findItem TVJ C_ , #BACKPACKID
if #FINDSTACK > 0
{
set #LOBJECTID #FINDID
event macro 17
set %vecesF %vecesF + 1
setuotitle Accion: Fundiendo | Cantidad: ( %vecesF / %sep ) | Veces: %vez | Guardado: %tot | S. Inicial: %skillini | S. Actual: #SKILL | S. Inc: %skillinc
wait 10
goto fundir
}
if %fin = 1
{
set %fin 2
}
set %vecesF 0
guardar:
setuotitle Accion: Guardando | Veces: %vez | Guardado: %tot | Inicial: %skillini | Actual: #SKILL | Inc: %skillinc
findItem RMK C_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem NMK C_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem XMK C_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem TMK C_ , #BACKPACKID
}
}
}
event drag #findid
wait 10
KEY ENTER
wait 10
click %cofrex %cofrey p
set %tot %tot + #FINDSTACK
findItem RMK C_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem NMK C_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem XMK C_ , #BACKPACKID
if #FINDSTACK = 0
{
findItem TMK C_ , #BACKPACKID
if #FINDSTACK = 0
{
if %fin = 2
{
gosub finalizar
}
}
}
}
}
if #FINDSTACK > 0
{
goto guardar
}
set %vez %vez + 1
goto separar
sub finalizar
{
display OK Se ha finalizado la macro!$No se ha encontrado más mineral que fundir.
halt
}
espero que con estas tres macros tengais un gran maestro minero como le tengo yop :P jeej
salu2