2024Boolean / Game logic

Sistema RPG basato su carte

Tecnologie

Vue.jsPiniaGame logicTurn-based state

Funzionalita

Sistema di combattimento a turni con stato centralizzato e probabilità controllata

Panoramica

Sviluppo di un gioco RPG arena turn-based basato su carte, progettato per combinare semplicità di utilizzo e profondità strategica. Il giocatore costruisce la propria build selezionando eroe, arma e poteri, e affronta un sistema di combattimento a turni contro il PC, basato su gestione delle risorse, probabilità e stato del gioco. L'obiettivo era progettare un sistema coerente e prevedibile, introducendo variabilità senza compromettere il bilanciamento.

Ruolo

Progettazione delle meccaniche di gioco e sviluppo dell'applicazione, con focus su game design e bilanciamento, gestione dello stato applicativo, logiche di combattimento a turni e implementazione del sistema probabilistico.

Cosa ho fatto

Implementazione del sistema di build del personaggio tramite combinazione di eroe, arma e poteri, con calcolo dinamico delle statistiche complessive. Progettazione e sviluppo del combat system con turni alternati giocatore/PC, carte per attacco, difesa e potenziamenti, e gestione di HP e condizioni di vittoria o sconfitta. Introduzione di una componente di variabilità controllata con eventi casuali calibrati, come critici, schivate e bonus o malus. Implementazione di una logica decisionale di base per il PC, basata su priorità e azioni disponibili durante il turno. Strutturazione dello stato del gioco come single source of truth, con gestione di turno corrente, cooldown abilità, effetti attivi e log degli eventi.

Problemi risolti

Gestione stato in sistemi a turni

I giochi a turni sono soggetti a bug come turni duplicati, azioni ripetute e stati incoerenti. Lo stato è stato centralizzato e gestito tramite transizioni definite tra selezione azione, risoluzione, aggiornamento dello stato e cambio turno.

Bilanciamento della casualità

Un'eccessiva componente random rende il sistema imprevedibile e poco strategico. La probabilità è stata introdotta in modo controllato per mantenere la centralità delle build, aggiungere varietà alle partite e garantire leggibilità del sistema.

Gestione combinazioni e edge case

La combinazione di eroe, arma e poteri può generare inconsistenze, stack non previsti o valori fuori range. Sono stati definiti limiti e regole di validazione per mantenere il sistema stabile e prevedibile.