Prima di tutto senza schermo
Non c’è una vista 3D e non viene disegnato nulla. Quello che un viewer spende in scheda grafica, NeuraCore lo spende nel poter tenere aperte una dozzina di sessioni insieme su una macchina qualsiasi.
Second Life, senza il viewer
Un client Second Life per chi guida più di un avatar.
Applicazione desktop per Linux, Windows e macOS. Un processo, tutti gli avatar.
L’idea
Non c’è una vista 3D e non viene disegnato nulla. Quello che un viewer spende in scheda grafica, NeuraCore lo spende nel poter tenere aperte una dozzina di sessioni insieme su una macchina qualsiasi.
Ogni avatar è una sessione dentro la stessa applicazione, con la propria finestra, il proprio inventario, la propria chat. Passare dall’uno all’altro è un clic, non un accesso.
Ogni capacità dell’interfaccia è registrata come azione di Automation ed esposta al Python integrato e al controller IA. Nulla di ciò che fanno i pulsanti è fuori dalla portata di uno script.
Capacità
Collega, ricollega e avvia in sequenza interi gruppi di avatar, su Second Life o su una griglia OpenSimulator. Ognuno torna da solo dopo una caduta, risponde al codice a due fattori quando la griglia lo chiede, e dice nella sua barra di stato con quale licenza sta girando.
Il profilo pubblico, i picks, gli annunci, le note e la forma indossata, più tutto ciò che manda la griglia: inviti, avvisi di pagamento, richieste di permesso e messaggi di sistema, contati finché aspettano ancora una risposta.
Il saldo in dollari Linden e tutto lo storico dei pagamenti, ricevuti e inviati. Pagare è disattivato finché non lo attivi, ed è l’unica impostazione predefinita che vale la pena dire.
Sfogliare, cercare, creare, spostare, copiare, visualizzare, condividere ed eliminare. Un filtro per data trova ciò che è appena arrivato, e Fetch All carica tutto quando una ricerca deve coprire l’intero inventario.
Indossare e togliere outfit, sostituire un intero aspetto o aggiungerne uno sopra, vedere che cosa è allegato e dove, e modificare la forma indossata cursore per cursore quando è modificabile.
Chat locale, messaggi istantanei e sessioni di gruppo, tenuti separati per avatar con il conteggio del non letto, e inoltrati al tuo avatar quando lo chiedi.
Teletrasportarsi a casa, in una regione con nome o su coordinate, rispondere alle offerte di teletrasporto, vedere chi è vicino e chi è già stato visto, ed elencare gli oggetti che la regione ha inviato.
Camminare, volare, sedersi, teletrasportarsi e seguire un altro avatar da una regione all’altra, alla distanza e nella direzione che scegli, con chi segue che dice chiaramente quando davvero non riesce a raggiungerlo.
Percorri un tragitto una volta tu stesso e l’avatar lo rifà da solo: in avanti, in ciclo, al contrario o in ordine casuale, sedendosi dove ti sei seduto e riprendendolo dopo una disconnessione.
Un registro di ogni azione che il client sa fare, un interruttore di permesso per ciascuna, una cronologia di ogni tentativo con il suo esito, e Python integrato per concatenarle. È una regola di progetto a tenerlo al passo con l’interfaccia, non la memoria di qualcuno.
Scegli il servizio, il modello e la personalità, decidi chi può parlargli, e guarda arrivare ogni richiesta, ogni risposta e ogni azione scelta. Quello che ricorda di sé e di ogni residente è tuo: da leggere, modificare o cancellare.
Racconta all’avatar della tua attività in Second Life e risponderà ai clienti con quello che hai scritto invece che a intuito, prendendo solo la parte che serve alla domanda. Arriva con una licenza Business.
Architettura
Il client desktop è il prodotto. Tutto il resto esiste per rispondere a una sola domanda su di lui, con quale licenza sta girando, e per dirlo onestamente quando non ci riesce.
Esegue gli avatar e chiede all’avvio, e poi regolarmente, che cosa gli è consentito. Non decide nulla sulle licenze da solo.
L’unico posto in cui si decide una questione di licenza. Ogni chiamante dimostra chi è con un segreto condiviso, e a una richiesta che non ci riesce si risponde 403 senza spiegazioni.
L’altra metà dell’acquisto. Un HUD indossato iscrive l’avatar che lo porta, e quell’unico uso lo consuma.
Ogni lettura e ogni scrittura passa da una procedura memorizzata. L’account applicativo ha EXECUTE e nient’altro: nessun privilegio sulle tabelle.
Licenze
Le licenze sono vendute come HUD di Second Life sul marketplace. Indossarne uno e attivarlo accredita il tuo avatar; il client se ne accorge al controllo successivo.
Un avatar principale e un posto, in modo permanente. Nessun acquisto, e niente scade.
L’acquisto d’ingresso, e il prerequisito di ogni licenza a tempo. Dà sei mesi Individual o tre mesi Business, e quale dei due lo scegli nell’HUD.
Una settimana, un mese o un anno di tempo su un posto. Sospesa anziché persa mentre scorre il tempo Business.
Le stesse tre durate al livello Business. Ha la precedenza su un posto e mette in attesa il tempo Individual finché non si esaurisce.
Il tempo vive su un posto, non su un calendario: una licenza in attesa non viene consumata.
Che cosa porta ogni licenza in corso. La Licenza iniziale non è una colonna: è l’acquisto che trasforma Gratuita in una delle altre due.
| Gratuita | Individual | Business | |
|---|---|---|---|
| Avatar controllabili | Uno | Uno per posto, altri posti acquistabili | Uno per posto, altri posti acquistabili |
| Connessione, riconnessione automatica, Master, residenti autorizzati | Incluso | Incluso | Incluso |
| Profilo, inventario, aspetto, amici, gruppi, chat, mappa, radar | Incluso | Incluso | Incluso |
| Follow Me | Mezzo metro fisso | Distanza e direzione a scelta | Distanza e direzione a scelta |
| Denaro | Non incluso | Incluso | Incluso |
| Oggetti del mondo | Non incluso | Incluso | Incluso |
| Automation e Python integrato | Non incluso | Incluso | Incluso |
| Controller IA e memoria | Non incluso | Incluso | Incluso |
| Servizi di IA | Nessuno | Quattro servizi cloud | Quattro servizi cloud, più Ollama e LM Studio sulla tua macchina |
| Conoscenza del negozio per i clienti | Non incluso | Non incluso | Incluso |
| Personalità Formal Business | Non incluso | Non incluso | Incluso |
| Lasciare che l’IA risponda a tutti i residenti | Non incluso | Non incluso | Incluso |
| Registrazione dei percorsi di pattuglia | Nessuno | Un percorso per avatar | Cento percorsi per avatar |
Com’è costruito
Ogni operazione sul database della soluzione è una procedura memorizzata chiamata con parametri associati. Le applicazioni web si autenticano con un account che ha permessi EXECUTE e nessun diritto sulle tabelle, così la compromissione totale di un processo PHP può solo chiamare le procedure che già esistono.
Nessun componente è fidato per il luogo da cui sono arrivati i suoi pacchetti. Ogni richiesta fra parti di questa soluzione si dimostra con un segreto condiviso, è legata al proprio contenuto e al proprio momento, ed è accettata esattamente una volta.
I nomi visualizzati non vengono conservati. La telemetria del client scade da sola quando un client smette di segnalare. Si conserva ciò che serve a una decisione di licenza e il registro da cui verrebbe indagato un incidente.