See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
MIRC scripting - Wikipedia

MIRC scripting

Da Wikipedia, l'enciclopedia libera.

Il titolo di questa voce non è corretto per via delle caratteristiche del software MediaWiki. Il titolo corretto è mIRC scripting.

Il mIRC scripting language è un linguaggio di scripting per alcuni versi simile ad alcuni linguaggi di programmazione e tramite questo linguaggio è possibile creare anche strumenti abbastanza avanzati. Bisogna però dire che non è potente come il c o il c++ quindi un antivirus scritto con mIRC si limiterà a controllare se le porte sono occupate o libere, quindi non funzionerebbe con i firewall, siccome alcuni di questi tengono occupate le porte non utilizzate. Gli script hanno estensione *.mrc o *.ini

Indice

[modifica] Usi principali

Il mIRC scripting viene utilizzato per

  • Fare in modo che i bot espellano automaticamente il nick che sta floodando il canale oppure che ad un certo comando, per esempio !tv, dia l'informazione richiesta
  • Comandi che permettono di risparmiare tempo, come l'auto-identificazione per l'utente o il correttore delle parole

[modifica] Altri usi

Si possono anche scrivere:

  • Lettori Mp3, Firewall o antivirus
  • Giochi
  • Sistemi di Update
  • Con buona esperienza, è anche possibile scrivere degli engine davvero impressionanti, per fare comunicare in modo avanzato ad esempio il proprio mIRC con il proprio sito.

[modifica] Caratteristiche del linguaggio

[modifica] Principali "categorie"

  • Aliases servono per abbreviare un comando lungo o complesso una stringa semplice scelta dall'utente
  • Popup invece si utilizzano per definire i menu, si può sostituire qualsiasi comando presente nei menu staus, comandi, lista dei nick, canale ed nel menu della finestra query
  • nei Remote si scrive lo script vero e proprio.

[modifica] Identificatori e variabili

Gli identificatori (sia personali che già presenti nel mIRC) sono preceduti da $, un identificatore è $replace che serve per sostituire il testo in una stringa con altro testo, un altro è $nick che intende il nick che esegue l'azione precendentemente specificata. Le variabili binarie sono precedute da & mentre le altre (sia locali che globali) da %.

[modifica] Limitazioni

  • Ogni riga di script può contenere al massimo 947 caratteri.
  • Le stringhe non sono sintatticamente chiuse, ciò comporta ambiguità nel codice dove i caratteri indicano sia stringhe sia parti della sintassi del linguaggio.

[modifica] Esempi di codice

Notare che questi codici funzionano solo nei remote, se si volessero mettere negli aliases andrebbe tolto l'alias iniziale

Questo codice serve per mostrare alla digitazione di /hello nella finestra attiva (come specifica -a) del mIRC la celeberrima frase Hello, world!.

alias hello {
echo -a hello world
}

Mostra, al comando /dieci, i primi dieci numeri, sempre nella finestra attiva

alias dieci {
  var %i = 1
  while (%i <= 10) {
    echo -a %i
    inc %i
  }
}

Il codice seguente va necessariamente messo nei remote in quanto contiene l'evento on 1:TEXT:, serve per ricambiare il saluto, funziona solo su #canale

on 1:TEXT:ciao:#canale {
    /msg #canale ciao $nick
}

Questo codice è l'inizio di un semplice antivirus, che controlla, al comando /virus se le porte utilizzate dal virus WinCrash sono occupate e quindi mostra nella finestra attiva un messaggio.

alias virus {
  var %pcvirus echo -a Il computer può essere infetto da WinCrash
    if (!$portfree(5742)) && (!$portfree(5741)) && (!$portfree(5714)) && (!$portfree(4090)) && (!$portfree(2583)) && (!$portfree(21)) { %pcvirus }
}

Qui di seguito un semplice script che fa uso dell'identificatore replace per sostituire le lettere con in numeri, in pieno stile leet. Questo script si attiva automaticamente ad ogni input, funziona solo se messo nei remote

on 1:INPUT:*: {  
  if (/* !iswm $1-) {    
    var %testo = $1-    
    if (l isin %testo) { 
    var %testo = $replace(%testo,l,1) }    
    if (e testo %testo) { var %testo = $replace(%testo,e,3) }    
    if (a testo %testo) {
    var %testo = $replace(%testo,a,4) }
    if (s isin %testo) {
    var %testo = $replace(%testo,s,5) }
    if (g isin %testo) {
    var %testo = $replace (%testo,g,9) }
}

I codici qui presentati non hanno la pretesa di essere i migliori, sono stati ideati solo per scopo illustrativo.

[modifica] Giochi

Un gioco per mIRC è un programma con fini ludici scritto nel linguaggio di mIRC, questi giochi sono sia di tipo grafico che di testo. I primi vengono mostrati in una finestra a parte detta "Picture Window", invece i giochi basati sul testo si svolgono di norma nella finestra di canale. I giochi scritti in questo linguaggio tendono a essere semplici, siccome lo stesso linguaggio possiede delle limitazioni, ma ci sono stati diversi tentativi di produrre dei giochi anche abbastanza complessi.

[modifica] Tanks

Tanks [1] è un gioco base, non molto complesso, in cui i giocatori (fino a 8) si sfidano con dei carri armati, tenendo conto delle caratteristiche meteorologiche, specialmente del vento.

[modifica] Dragonball Z

Dragonball Z, ispirato all'omonimo anime, creato in Belgio da Epsilon, questo gioco è il primo picchiaduro realizzato su mIRC.

[modifica] LindonRPG

LindonRPG è il primo gioco MMORPG per IRC. Permette di creare un persona e farla evolvere, come qualsiasi MMORPG, è uno dei giochi più completi in quanto offre circa quello che offrono gli altri MMORPG.

All-Out-War è simile a LindonRPG. L'obiettivo dei giocatori è quello di diventare il gangster più potente. È anche disponibile sul web tramite un client Java su www.all-out-war.net.

[modifica] Mario Beta Engine

Uno scripter Brasiliano, con nick DukeNuken nel 2001 ha creato una semplice versione di Mario Bros., per testare un nuovo motore grafico creato per mIRC da lui stesso. Il codice era efficiente e il gioco veloce, ciò lo fece diventare in poco tempo il primo piattaforma per mIRC. Il suo motore grafico guadagno popolarità tra gli altri scripters facendo fervere la produzione di giochi anche più complessi. L'espansione di questo motore uscì nel 2003, per la creazione di un gioco di ninja, chiamato "The Ninja Engine", che avrebbe dovuto supportare nuovi tipi di collisioni e anche sfondi animati. DukeNuken non finì mai questo gioco.

[modifica] Altri giochi

Sono stati creati diversi altri giochi, anche se molto più semplici, come:


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -