Trappola a punte
Disponibile a breveTrappola su regione con tiro salvezza, danni e pulsanti in chat per il master. Compatibile con gli hook di chat della V14.
Richiede: Midi-QOL, Sequencer, Foundry VTT 14
Home / Foundry VTT / Macro
Le macro che uso nelle mie campagne, una scheda per ognuna: cosa fa, cosa richiede, a che punto è.
Trappola su regione con tiro salvezza, danni e pulsanti in chat per il master. Compatibile con gli hook di chat della V14.
Richiede: Midi-QOL, Sequencer, Foundry VTT 14
La trappola del tutorial: tiro salvezza su Destrezza CD 15, 2d10 danni taglienti (metà se il tiro riesce), suono e animazione facoltativa. Funziona come comportamento di una regione o come macro sul token selezionato.
Richiede: Foundry VTT 14, sistema dnd5e. Facoltativi: Sequencer e JB2A.
// Trappola a lame scattanti - Foundry VTT 14, sistema dnd5e
// Uso: Regione > Aggiungi comportamento > "Esegui script" (evento: Token entra)
// Oppure come macro: seleziona un token e avviala.
// Opzionali: Sequencer + JB2A per l'animazione.
const CD = 15; // Classe Difficoltà del tiro salvezza
const DANNI = "2d10"; // danni da taglio (metà se supera il TS)
const SUONO = "sounds/lock.wav"; // sostituisci con il tuo file audio
// 1. Trova il token: dal comportamento della regione o dalla selezione
const tokenDoc = (typeof event !== "undefined" && event?.data?.token) || canvas.tokens.controlled[0]?.document;
if (!tokenDoc) return ui.notifications.warn("Nessun token: seleziona un token o usa la macro da una regione.");
const actor = tokenDoc.actor;
if (!actor) return ui.notifications.warn("Il token non ha un attore collegato.");
// 2. Suono (API V13+/V14)
foundry.audio.AudioHelper.play({ src: SUONO, volume: 0.8, autoplay: true, loop: false }, true);
// 3. Animazione, solo se Sequencer e JB2A sono attivi
if (game.modules.get("sequencer")?.active && Sequencer.Database.entryExists("jb2a.impact.004")) {
new Sequence().effect().file("jb2a.impact.004").atLocation(tokenDoc.object).scale(0.8).play();
}
// 4. Tiro salvezza su Destrezza (compatibile con dnd5e vecchio e nuovo)
let rolls;
if (typeof actor.rollSavingThrow === "function") {
rolls = await actor.rollSavingThrow({ ability: "dex", target: CD });
} else {
rolls = await actor.rollAbilitySave("dex");
}
const roll = Array.isArray(rolls) ? rolls[0] : rolls;
if (!roll) return; // tiro annullato dal giocatore
const salvato = roll.total >= CD;
// 5. Danni: pieni o dimezzati
const r = await new Roll(DANNI).evaluate();
const danno = salvato ? Math.floor(r.total / 2) : r.total;
await r.toMessage({ flavor: `Lame scattanti: ${salvato ? "metà danni" : "colpito in pieno"}` });
await actor.applyDamage(danno);
ChatMessage.create({
content: `<b>${tokenDoc.name}</b> ${salvato ? "schiva in parte le lame" : "viene colpito dalle lame"} e subisce <b>${danno}</b> danni taglienti.`,
speaker: ChatMessage.getSpeaker({ alias: "Trappola" })
});Rivela un ragno gigante con animazione e suono quando i giocatori entrano nell'area.
Richiede: Sequencer, JB2A, Foundry VTT 14
Trasforma un personaggio dopo un tiro salvezza su Saggezza: effetti attivi, cambio immagine del token e debolezza crescente al ritorno, azzerata dal riposo lungo.
Richiede: DAE, Midi-QOL, Foundry VTT 14
Teletrasporta il token del portatore in un punto scelto della scena, con effetto visivo di partenza e arrivo.
Richiede: Sequencer, JB2A, Foundry VTT 14
Genera al volo PNG e mostri completi di attacchi, incantesimi, reazioni, azioni leggendarie ed equipaggiamento presi dai compendi.
Richiede: dnd5e, Foundry VTT 14
Come usarle: in Foundry apri la barra delle macro, crea una nuova macro di tipo Script e incolla il codice. Prima della sessione provala sempre su un token di prova e controlla la console (F12) se qualcosa non parte.
Apri un sito e guadagna con Altervista - Disclaimer - Segnala abuso - Privacy Policy - Gestisci preferenze di tracciamento