Gå til innhold

Introduksjon til mIRC scripting - Aliaser.


Anbefalte innlegg

Introduksjon til mIRC scripting - Aliaser.

 

 

Fant ut at det var litt vell tomt i det nye forumet så noen må vell begynne.

mIRC scripting var den første formen for programmering jeg begynte med, men har selv ikke brukt det på noen år nå.

Så jeg fant ut at jeg kunne lage en liten introduksjon, for min egen, og for andre sin del.

Jeg går ut i fra at du som leser dette har kjennskap til mIRC og kan bruke programmet.

Jeg går ut i fra at du kan bruke kommandoer(/join /msg /quit). Helt standard kommandoer med andre ord.

All mIRC script kode er markert med grønn skrift.

Da setter vi i gang.

 

 

Del 1: Aliaser.

 

 

Det første man begynner med i mIRC scripting er aliaser. Dette er forenklinger av kommandoer.

Sjansen er stor for at du bruker aliaser ofte uten selv å vite det.

For å få opp vinduet hvor man skriver inn aliaser kan du enten trykke på den grønne knappen med tegnet "/a" i.

Eller trykk alt+d.

Der vil det fra før av stå en rekke aliaser.

La oss se på et enkelt alias:

 

/j /join #$$1 $2-

 

Som du kanskje kan se er dette aliaset som lar deg skrive /j kanal istedenfor å skrive /join #kanal.

Et godt eksempel på et alias, det forenkler prossessen med å gå til en kanal.

Som du ser brukes her dollartegn($).

Et dollartegn representerer en parameter, i mIRC finnes det flere typer parameter.

 

$ - Indikerer at vi snakker om et parameter.

$1 - Refererer til det første ordet når det brukes i /j aliaset.

$$1 - Refererer til det første ordet og siden det brukes dobbel $$ betyr det at du må skrive et ord etter /j for at aliaset skal kjøre.

$2- - Dette refererer til ord 2 og videre. Streken, eller minustegnet er det som sier at vi skal ta med alt etter ord 2.

 

Med disse forklaringene burde du klare og lese /j aliaset.

/j kan leses slik: Om brukeren skriver inn /j utfør /join kommandoen, men bare om det er minimum et ord etter aliaset. Sett første ord som kanalnavn, og andre ord og utover

som passord.

 

Nå vil jeg introdusere en komando som er veldig kjekk når du prøver og feiler.

/echo.

Denne kommandoen gjør at det du skriver etter den vises i den delen av mIRC du skriver den i. Men det vises bare lokalt for deg. Ingen ting blir send til eventuell kanal eller person.

Nå som du vet om denne kommandoen kan du prøve å lage et alias som gir følgende resultat:

Om jeg skriver /e Hei på meg så skal jeg se "Hei på meg" i det skjerm bilde jeg skrev det i.

Om du ikke klarer det prøv å les igjennom starten igjen.

 

Når du har klart det er det bare og fortsette videre.

 

 

Del 2: Mer aliaser.

 

 

Heldigvis har vi flere muligheter en bare de vi så på i del 1 med aliaser.

Her vil vi se litt mere på flere typer parametere og hvordan vi kan lage litt mer avanserte aliaser.

Jeg vil bruke samme eksempel som i del 1. Nemlig /j aliaset.

Et interesant parameter er $?.

Istedenfor å bruke $$1 i /j aliaset kan vi bytte det ut med $$? parameteret.

Bare prøv så ser du hva som skjer.

$? parameteret lager automatisk en liten tekstboks der vi kan skrive inn kanalen istedenfor å skrive det samtidig som du skriver kommandoen.

Nå trenger du ikke skrive mer enn /j før boksen dukker opp, alt etter det vil faktisk bli ignorert.

Det er jo ikke noe særlig vits i og måtte bruke denne tekst boksen til dette. Men det blir litt mer fornuftig når du blir bedre i mIRC scripting.

Så et siste parameter: $+.

Normalt når du bruker flere parameter vil de bli delt opp med mellomrom

Så om vi har aliaset /e /echo $1 $2 og skriver /e He i! Vil dette vises som, ja, "He i!".

Men om vi skriver aliaset om til /e /echo $1 $+ $2 så vil det vise "Hei!".

Bruk fantasien og prøv og lag et alias der du benytter deg av flere av disse før vi går videre.

 

 

Del 3: Multi linje aliaser.

 

 

I mIRC scripting brukes {} til å lage multi linje aliaser.

Det er lite hokus pokus rundt dette. { starter et alias. Og } ender det.

Et enkelt og greit eksempel:

/test {

/echo $$1

/echo $$2-

}

 

Test ut eksemplet ovefor for å se hva som skjer.

Det er ganske selv forklarende. Som du ser skrives det første ordet du skrev på en linje. Så kjøres en ny echo for resten.

Vi kan også skrive dette på en linje, men det vil bli verre og lese det da.

Måten det gjøres på er som følger:

/test /echo $$1 | /echo $$2-Som du ser blir resultatet akkurat det samme. Tegnet som er brukt i mellom de to echo'ene finner du under Esc tasten på norske tastatur, det er bare en rett strek!

 

 

Del 4: Smarte kommandoer.

 

 

Tenkte jeg skulle nevne noen veldig greie kommandoer og ting som jeg har brukt.

Normalt må du skrive inn aliaset med prefikset / når du vil kjøre det.

Men du kan også ta i bruk for eksempel F-tastene (F1, F2, F3...).

Det gjøres så enkelt som:

/F1 /join #norge

/F2 /server irc.homelien.no

To veldig praktiske eksempler.

Dette med og legge servere på F-tastene er praktisk og det bruker jeg faktisk selv. My lettere enn å bruke options dialogen eller skrive /server kommandoen.

En annen ting som er genialt for en mIRC "avhengig" er muligheten til å starte opp andre programmer fra mIRC.

Da er kommandoen /run der.

To eksempler fra min egen alias liste:

/calc /run calc.exe

/np /run notepad.exe

Her må du derimot huske at i de fleste tilfeller må du skrive in filbanen til programmet. Dette gjelder da ikke for ting som windows komponenter.

 

 

Del 5: Oppsummering.

 

 

Håper denne kjappe lille guiden har vært til hjelp, jeg har ikke gått innom mye, men en grei liten start.

Noen ideer til hva du kan bruke den nyervervede kunnskapen til:

Aliaser for forskjellige nick, f.eks afk/zzz/mat og sånner greie snarveier.

Legg inn et par programmer som du bruker ofte.

Jeg kommer kanskje tilbake med en liten innføring i bruk av "remote" delen senere, som har vært den mest nyttige delen for meg personlig.

Håper du likte den, og har du noen kommentarer eller spørsmål kan du altids prøve å sende meg en pm.

 

 

Skrevet av Findus aka Raymond Julin.

Lenke til kommentar
Videoannonse
Annonse

hmm, dette var jo veldig veldig basic :yes:

 

Selv skal jeg lage et lite mirc script til en webside jeg lager.

Vi har 2 personer her, person1 (nå kalt p1) er en fyr som sitter på irc. Person2 (nå kalt p2) skal skrive msg til p1.

p2 skal skrive f.eks asl

dermed skal p1 linke til en ekstern side, samt ignorere den personen i 1 sek (slik at msg vinduet i mirc forsvinner)

 

Har du noen peiling ang. dette?

 

ellers, en slik guide var jo fin, kunne bare vært litt mer enn basic stuff :thumbup:

Endret av LoS
Lenke til kommentar

Som sagt så var det ment å være simpelt for de som kan absolutt ingen ting.

Ville ikke lage noe som ble for langt.

Som sagt så skal jeg prøve å lage en intro på remote og.

Men det du spørr om kan ordnes slik:

on *:TEXT:*asl*:?: {
 /msg $nick http://webside.web
 / close -m $nick
}

Og hvis det bare skal gjelde for en spesifikk person:
on *:TEXT:*asl*:?: {
 if ($nick == p1) {
   /msg $nick http://webside.web
   /close -m $nick
 }
}

 

For eksempel.

Endret av Findus
Lenke til kommentar

Den er grei Findus :thumbup:

 

Tror tråden hadde blitt veldig lang hvis du skulle tatt med alt på en gang.

Så du skal dele den opp i flere poster da? som avansert og middels osv?

 

Uansett, dette var nytt. finner lite hjelp til scripts i mirc, bra du tar initiativet til å starte en slik fin tråd.

 

Takk for hjelpen og foresten :thumbup:

Lenke til kommentar

Følgende kode bruker jeg for å legge ut på en side hvem som er online på #the-shire:

alias checkOnline {

 var %path = "C:\Programfiler\Apache Group\Apache2\htdocs\annet\irc\active.txt"
 var %i = 1

 write -c %path <p><strong>At $time $+ , $date $+ , these were online at $chan $+ @undernet:</strong></p><p>

 while (%i <= $nick(#The-Shire,0)) {
   {
     write %path $nick(#The-Shire,%i).pnick <br>
     inc %i
   }
 }
 write %path </p>
}


on *:part:#The-Shire: {
 timer9 1 1 checkOnline
}
on *:join:#The-Shire: {
 timer9 1 1 checkOnline
}

deretter inkluderer jeg den filen i en php-fil ved

<?php include("active.txt"); ?>

 

Laget scriptet ganske kjapt, så det er sikkert noen små-bugs.

 

Siden kan du se her: http://irc.drange.net

Lenke til kommentar

her kommer enda mer grunleggende, her er noe som kan hjelpe folk som ikke har scriptet før...

noen nyttige kommandoer i remote

$nick det nicket som aktiviserer kommandoen, altså ikke ditt nick

$me ditt eget nick

$chan kanalen som aktiviserer kommandoen

/mode hvis du ikke har scriptet, så har du sikkert bare brukt /ban eller /voice og slikt,

men dette funker ikke her, her må man skrive det slik som dette:

/mode #kanal +o nick for å gi op det er bare å skifte ut + med - for å fjerne op

 

 

noen simple script

on *:text:hei:?:/msg $nick hei

 

alt dette enkle scriptet gjør er å gi en enkel hei tilbake når noen sier hei

forklaringen: on * man kan sette forskjellige nivåer i mirc, hvis man setter on * så går den på alle, setter man on 1 så funker den bare på nivå 1

 

:text: betyr at det er teksten den ser på, denne kan man forandre til nick, deop, eller nesten hva du vil(les help for å finne komandoene)

hei sier ganske enkelt hvilke ord scriptet skal reagere på, sier noen "halla" til deg, så reagerer det ikke, det reagerer heller ikke hvis noen sier "hei på deg"

? betyr at det er i private msg den aktiveres, hvis du vil ha den på en kanal, så skifter du den bare ut med kanalnagnet, så den blir slik:

on *:text:hei:#kanalen:/msg $nick hei

/msg $nick hei denne sier bare hva den skal gjøre når alt forran stemmer.

 

dette kan man lage veldig mye ut av, men husk at det er ganske liten sikkerhet rundt slike script, TENK SIKKERHET!

 

 

edit: er det noe du lurer på, spør her eller gi meg en PM

edit2:

rEaliTY: nyttige script er ikke det første man starter med, lek deg litt med dette først

man kan lage nyttige script med dette, jeg lagde mitt første fjernstyrings script med dette...

edit3: alt dette går kun på remote, ikke aliases

Endret av aklla
Lenke til kommentar

Ang. away :)

 

$away er din status. Vanligvis satt til "false". Hvis du derimot skriver "/away ute", blir $away satt til true, og $awaymsg satt til "ute".

 

Derfor kan du bruke $away, $awaymsg og on text til å lage et veldig enkelt awayscript...

on *:text:*$me*:#hw.no:{
if ( $away == $true ) {
msg $nick $awaymsg
}
}

Der snapper du opp alle som sier nicket ditt ($me) i kanalen #hw.no, og du svarer de (som privat msg) din awaymessage.

 

Ps: Har ikke brukt mIRC på år, så det kan være det er en liten syntax-feil. Vennligst gi meg beskjed da, så skal jeg rette på det. :)

Edit: Takk, aklla

Endret av Toolshed
Lenke til kommentar

Away i popup. Til min forrige post.

 

Hvis du vil sette away i popup-meny, så trykker du på knappen med tekstbokser på verktøylinjen, den mellom alias definition og remote scripts.

Der trykker du view -> 2. channel

 

Legg til denne teksten (den første linjen står der fra før)

Channel Modes:/channel
.Away
..Away ute: /away Jeg er ute en tur
..Away dusj: /away Jeg er i dusjen
..Away av: /away

Lenke til kommentar

Lim inn følgende kode i et nytt vindu i remote (ps: jeg har blitt bannet fra hw.no ca. 10 ganger for det, men :) )

; ON !TAB
on *:text:!tab*:*: {
 var %band = $replace($2-,$chr(34),$chr(37) $+ 22)
 var %band2 = $replace(%band,$chr(32),$chr(43))
 notice $nick Olgas tablaturdatabase: http://olga.net/dynamic/search.php?search= $+ %band2
}

; on !ORD
on *:text:!ord*:*: {
 var %ord = $replace($2-,$chr(34),$chr(37) $+ 22)
 var %ord2 = $replace(%ord,$chr(32),$chr(43))
 notice $nick Norsk spr�r�: http://www.dokpro.uio.no/perl/ordboksoek/ordbok.cgi?OPP= $+ %ord2 $+ &begge=S%F8k+i+begge+ordb%F8kene&ordbok=bokmaal&alfabet=n&renset=j
}

; ON !TLF
on *:text:!tlf*:*: {
 notice $nick Telefonnummer skrives med 3, 4, 5 eller 8 siffer. Navn m�skrives med etternavn frst, deretter fornavn og eventuelt mellomnavn.
 if ( $2 isnum ) {
   var %tlf = $2
   notice $nick Telefonkatalogen: http://www.gulesider.no/gsi/numberSearch.do?drill=&spraak=1&tel= $+ %tlf $+ &submit.x=0&submit.y=0
 }
 else {
   var %etternavn = $2
   var %fornavn = $3
   if ( $4) {
     var %fornavn2 = $4
     notice $nick http://www.gulesider.no/gsi/whiteSearch.do?mode=&linje=1&sort=2&spraak=1&kommune=&etter= $+ %etternavn $+ &for= $+ %fornavn $+ + $+ %fornavn2 $+ &fylke=00&geodisp=Hele+landet
     halt
   }
   notice $nick http://www.gulesider.no/gsi/whiteSearch.do?mode=&linje=1&sort=2&spraak=1&kommune=&etter= $+ %etternavn $+ &for= $+ %fornavn $+ &fylke=00&geodisp=Hele+landet

 }
}

; ON !IMDB
on *:text:!imdb*:* {
 var %imdb = $replace($2-,$chr(32),$chr(37) $+ 20)
 notice $nick http://imdb.com/find?tt=on;nm=on;mx=20;q= $+ %imdb
}

; ON !CSS
on *:text:!css*:*: {
 var %css = $replace($2-,$chr(34),$chr(37) $+ 22)
 var %css2 = $replace(%css,$chr(32),$chr(43))
 notice $nick Google search: http://www.google.com/search?as_sitesearch=www.w3schools.com&as_q= $+ %css2
}

; ON Google -> Search

on *:text:!g*:*: {


 var %skinke = $replace($2-,$chr(34),$chr(37) $+ 22)
 var %skinke2 = $replace(%skinke,$chr(32),$chr(43))

 notice $nick Google search: http://www.google.com/search?q= $+ %skinke2
 notice $nick Google images: http://images.google.com/images?q= $+ %skinke2
 notice $nick Google groups: http://groups.google.com/groups?q= $+ %skinke2
 notice $nick Feeling lucky? http://www.google.com/search?q= $+ %skinke2 $+ &btnI=I%27m+Feeling+Lucky


 clear #hw.no
 clear #the-shire
 clear #tolkien-quiz

}

Det er en kode som når noen skriver følgende syntaks, søker for deg og gir deg linker:

!g (google, viser link til feeling lucky, vanlig, images, groups), !tlf (søker på telefonnummer eller navn og gir link til gule sider), !tab (søker på gitartablaturer og gir link til olga.net), !ord (søker i norsk språkråd etter ordet), !css (søker i w3schools.com sine sider) og !imdb som søker i IMDB sin database.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...