PlayDrop logoPlayDrop Studio
CreaScambio di partiteGuadagnaImparaConnettoriAssetCommunityAssistenza
PlayDrop logoPlayDrop Studio
CreaScambio di partiteGuadagnaImparaConnettoriAssetCommunityAssistenza
Accedi
Gruppi locali e controller
Documentazione

Inizia da qui

PanoramicaIl tuo primo giocoGiochi PlayDropFAQ

Crea con Cloud

Creazione con CloudPiani e generazioni

Collega la tua app di IA

Tutti i connettoriClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Pubblica e condividi

Pubblica dalla tua app di IAGiochi in HTML semplicePacchetti e .playPubblica e importaFile di giocoVisibilità e pubblicoImmagini e video della schedaGeneri e tagLocalizzazioneGiochi Instant

Esperienza di gioco

Caricamento, pausa e audioSchermo intero e aree sicureSalvataggi cloudGruppi locali e controller

Gioca insieme

Condivisione, amici e invitiClassificheObiettiviGruppi online e voceServer in tempo reale

Guadagna

MonetizzazioneCrediti e ricompense

Asset

Asset di giocoAsset con l’IAFormati e creazioni

Riferimento

SDK clientSDK servercatalogue.jsonErrori e recuperoRisoluzione dei problemi
DocumentazioneGruppi locali e controller
Esperienza di gioco

Gruppi locali, gamepad e telefoni come controller nei giochi PlayDrop

Leggi i gamepad fisici e i telefoni usati come controller con sdk.device, segui i posti dei giocatori locali, dichiara controller e dimensioni dei gruppi locali.

Un gruppo locale è formato da più persone che giocano sullo stesso schermo, ognuna con un controller: un gamepad fisico o un telefono che PlayDrop trasforma in controller scansionando un codice. Il tuo gioco legge ogni controller allo stesso modo tramite l’SDK, sul sito e nelle app.

Dichiara controller e dimensioni dei gruppi

json
{
  "types": ["solo", "party"],
  "party": { "local": [1, 2, 3, 4] },
  "controller": { "support": "optional", "type": "simpler" }
}
  • controller.support vale off, optional o required. Dichiaralo per ogni gioco, compreso off.
  • controller.type indica i comandi minimi di cui il gioco ha bisogno: any (direzioni, Conferma e Annulla), simpler (una levetta, quattro pulsanti frontali e Menu; i telefoni usati come controller sono adatti) oppure standard (croce direzionale, due levette cliccabili, quattro pulsanti frontali, due dorsali, due grilletti e Menu).
  • party.local elenca i numeri esatti di giocatori sullo stesso schermo; un 1 richiede il tipo solo. Con il supporto ai controller attivo, ogni numero elencato deve essere giocabile con i controller.

Leggi i controller

js
await sdk.device.enableControllerInput().catch(() => { /* keep keyboard and touch */ });

const stop = sdk.device.onButton(({ playerIndex, button, pressed }) => {
  if (button === "south" && pressed) jump(playerIndex);
});

function update() {
  for (const slot of sdk.device.localPlayers) {
    const pad = sdk.device.gamepad(slot.playerIndex);
    if (pad?.connected) move(slot.playerIndex, pad.axes[0], pad.axes[1]);
  }
  requestAnimationFrame(update);
}
update();
  • Chiama enableControllerInput() una volta dopo init(). Viene rifiutata con controller_input_unavailable o controller_input_timeout quando l’host non può fornire l’input; il gioco continua a funzionare.
  • gamepad(playerIndex) restituisce un’istantanea nel layout standard del browser: axes (x/y sinistra e x/y destra da -1 a 1), diciassette buttons, source (physical o virtual) e id. playerIndex 0 è il giocatore 1.
  • I pulsanti hanno nomi legati alla posizione, come south ed east. pad.label("south") fornisce l’indicazione da mostrare: «A», «Croce» o «B» a seconda del controller. pad.has("dpad") indica se un comando esiste.
  • Menu e Home appartengono a PlayDrop e risultano sempre rilasciati.
  • Non chiamare mai navigator.getGamepads(): i telefoni usati come controller arrivano ai giochi solo tramite l’SDK, e PlayDrop registra un avviso.

Posti dei giocatori locali

sdk.device.localPlayers elenca i posti scelti dai giocatori, { playerIndex, gamepadKey }, e onLocalPlayersChange(callback) segnala le modifiche. Un controller disconnesso mantiene il suo posto. Quando l’elenco dei giocatori cambia o si svuota, torna a un menu sensato invece di andare in crash. Un solo controller è un normale input, non un gruppo.

Da un pulsante, sdk.social.openParty({ mode: "local" }) apre la finestra di abbinamento di PlayDrop con il codice QR per i telefoni e i gamepad collegati. Offri solo le modalità che hai dichiarato.

Locale oppure online, non entrambi

L’host avvia un gioco come gruppo locale oppure come gruppo online, mai entrambi: i giocatori locali non possono entrare nelle stanze online. Per giocare online con gli amici vedi gruppi online e voce.

Pensa al divano

Mostra il colore e l’indicazione del controller di ogni giocatore, permetti a chiunque di unirsi premendo un pulsante e mantieni l’HUD leggibile dal divano. Conserva i comandi touch e da tastiera per il gioco in solitaria.

Guide correlate

  • Gruppi online e voceFai giocare gli amici insieme online: dimensioni dei gruppi, finestra del gruppo di PlayDrop, stanze riservate con sdk.multiplayer.join e voce della stanza.
  • Schermo intero e aree sicureFai riempire lo schermo a un gioco PlayDrop e tieni l’HUD nelle aree sicure CSS e lontano dai comandi dell’host con i reservedCorners misurati dall’SDK.
  • catalogue.jsonCampi di catalogue.json usati dai giochi PlayDrop: identità, scheda, modalità, superfici, accesso, Instant, precarico, media, traduzioni, punteggi e server.
PrecedenteSalvataggi cloud per i giochi PlayDropSuccessivoCondivisione, amici e inviti nei giochi PlayDrop
Vedi il Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

In questa pagina

Dichiara controller e dimensioni dei gruppiLeggi i controllerPosti dei giocatori localiLocale oppure online, non entrambiPensa al divano
Vedi il Markdown