Scegliere l’API corretta

L’API del mod opera in Minecraft con Java 21 e aggiunge macchine, risorse e integrazioni. L’API HTTP del sito offre solo documentazione e release: non legge reti dei giocatori e non avvia craft.

Un addon dipende da Nebula e compila contro dev.nebulastorage.api. Isola gli adattatori opzionali per non caricare classi di mod assenti. API 1.0.0 è distinta dalla versione alpha. Questi esempi di addon riguardano Nebula Storage alpha.7 e i suoi nuovi package. I file pubblicati fino ad alpha.6 usano ancora dev.nexusstorage. Ricompila gli addon durante l’aggiornamento; gli identificatori Minecraft e i mondi salvati non cambiano.

Registrare un’estensione

Implementa NebulaExtension pubblicamente e inserisci il nome completo in META-INF/services/dev.nebulastorage.api.NebulaExtension, risorsa del JAR senza .txt.

L’esempio dichiara example:pressing, ma non crea blocchi o ricette. Registra un adattatore per l’oggetto reale e una fonte con ingressi e uscite esatti. Non accedere al mondo durante la registrazione.

Registrare un’estensione
package example.nexus

import dev.nebulastorage.api.NebulaExtension
import dev.nebulastorage.api.NebulaRegistrar
import dev.nebulastorage.api.production.ProductionCapabilityId

class ExampleExtension : NebulaExtension {
    override fun register(registrar: NebulaRegistrar) {
        registrar.capability(ProductionCapabilityId("example:pressing"))
    }
}

Pubblicare ricette senza scandire il mondo

NebulaRecipeSource.discover riceve le capacità disponibili. Restituisci offerte applicabili con ID stabili, uscite garantite e costi reali. Includi sottoprodotti, non medie casuali.

Incrementa revision quando cambia la fonte o si ricaricano datapack. L’inventario cambia la disponibilità, non l’intero catalogo. Scoperta e risoluzione sono pure, limitate e senza trasferimenti.

Collegare una macchina reale in sicurezza

NebulaPlatformExtension collega blocchi reali con processo proprio. Risolvi solo macchine caricate, identificando proprietario persistente e tutti gli ingressi e uscite. Energia e pressione restano native.

Testa inserimenti parziali, uscita bloccata, annullamento dopo consumo, unload, salvataggio e sostituzione. Ogni risorsa mantiene un solo proprietario. Una simulazione riuscita non garantisce il trasferimento successivo.

  1. ScoprireLeggere capacità e ricette
  2. PianificareRiservare risorse esatte
  3. EseguireTrasferire al vero proprietario
  4. RiprendereLeggere la ricevuta salvata
Scoprire non modifica dati. Solo l’esecuzione trasferisce proprietà; il recupero non ricrea ingressi consumati.

Leggere la rete di un giocatore

Ottieni query in serverStarted e usa forPlayer con UUID autenticato. Ogni lettura verifica i permessi; un UUID arbitrario del client non prova identità.

Gli snapshot sono osservazioni, non riserve. Rivalida le azioni e libera riferimenti in serverStopped. Osservatori senza attore ricevono solo cronologia pubblica.

Fonte

docs/api.md; editorial/it.json

43b4d12d69e6033c24fa8c39dac383ef2429b446