Jump to content
Rpg²S Forum
  • 0

Day System e Ciclo Giorno/Notte


Shindol
 Share

Question

Ciao a tutti!

 

Spero di aver beccato la sezione giusta, ma soprattutto

spero che non ci siano già topic attivi simili al mio. Se così fosse chiedo venia. =(

 

Dunque è da pochi giorni che ho iniziato a usare VX-Ace. Tutto bene, molto intuitivo

ho capito fin da subito come modificare i tileset, importarli, fare le varie cosine base,

mi sono letto 700 mila guide, ho compreso le meccaniche degli eventi semplici ecc ecc ecc.

Però, c'è un però, alle variabili c'ho avuto un potente blocco.

 

Ovvero, non c'ho capito una mazza. O per meglio dire, comprendo il meccanismo

ma molto probabilmente per capirlo a fondo mi servirebbe un esempio pratico.

Cioè un esempio pratico di una variabile complessa. E non un semplice switch.

 

Allora sul mio progettino avevo in mente di creare un ciclo "Giorno/Pomeriggio/Notte"

compresi i giorni della settimana. Quindi il protagonista si alza dal letto, fa delle cose,

(tipo va a scuola), finisce la scuola (quindi arriva il pomeriggio) fa delle cose il pomeriggio,

poi arriva la sera e via dicendo. Poi la notte va a letto e da Lunedì si va a Martedì (ecc).

 

Questo meccanismo l'ho già visto su un altro gioco sempre creato con VX-Ace.

Inizialmente pensavo fosse più semplice gestire questo genere di cicli. Invece non è poi così intuitiva come cosa. xD

Almeno per me che sono alle prime armi. Diciamo che al ciclo "Giorno/Notte" ci sono quasi arrivato a comprendere il meccanismo.

Ma il sistema dei giorni proprio non ci arrivo mentalmente. Il brutto è che non ho trovato niente neppure sul web.

(Forse ho googlato male io).

 

Detto ciò, qualche esperto del settore potrebbe darmi una mano a comprendere per bene questo meccanismo

e come gestirlo inserendoci altri eventi nel mezzo?

 

Esempio: Il protagonista vive Martedì pomeriggio [il martedì pomeriggio la sorella sta tutto il giorno davanti alla tv]

oppure il protagonista vive Sabato mattina [sabato mattina la mamma va a casa dei vicini].

 

Questo intendo io.

 

 

 

 

Link to comment
Share on other sites

12 answers to this question

Recommended Posts

  • 0

dammi 2 minuti e ti faccio degli screenshot

EDIT:

La sezione in rosso è un orologio con un ciclo di 24ore per 365 giorni.. se tu vuoi le settimane ti basta sostituire tutti i "365" con "7"

Il ciclo non dura 24 ore reali, un giorno cosi impostato dura circa 5 minuti reali per aumentare la durata puoi aumentare il tempo di attesa iniziale (quello impostato a 35 frame)

Ho usato 240 come valore delle ore perchè è un multiplo di 24 e quindi è più facile da calcolare, ma senza dover aggiungere anche un ciclo per i minuti

Esempio: fingi che un ora sia di 10 minuti a 125 sarebbero le 12:30

 

C'è da tener presente un dettaglio fondamentale il sole sorge alle 000 e tramonta e tramonta alle 140..

..tanto tu queste variabili non le vedi direttamente.. quando sei in gioco tu vedi il giorno e la notte.. ma volendo calcolare l'ora esatta, per ipotesi se il sole sorge alle 7:00, fai ORE+70 e ottieni l'ora esatta

 

La parte inferiore invece gestisce la luminosità dello schermo in base al momento della giornata

In più ho aggiunto lo switch "chiuso" che devi mettere tu in on o in off quando fai un teleport in un altra mappa

..per esempio di notte se entri un una casa la casa avrà luci indipendenti

http://i67.tinypic.com/wlzw4h.png

Edited by HROT

http://i.imgur.com/JvoTKKj.png


Link to comment
Share on other sites

  • 0

Vabbè, innanzitutto: Ti amo.

Mi hai perfino fatto gli screen, se questo non è amore. =P

 

Scherzi a parte, per... "facilitare" alcuni eventi, avrei preferito escludere un ciclo a tempo.

Praticamente il giorno e la notte pensavo di farli gestire tipo dal letto.

Il protagonista clicca sul letto ed esce il messaggio "Vuoi dormire fino alle 19?"

Se clicchi sì, parte la dissolvenza e il protagonista si risveglia che è sera/notte.

Poi clicca nuovamente sul letto ed esce "Vuoi dormire fino a domani mattina?"

Fondamentalmente così pensavo di gestire il ciclo notte/giorno.

Link to comment
Share on other sites

  • 0

allora tieni presente che questa cosa è stata già prevista dal mio evento

 

Se tu sul'evento del letto aggiungi ORE+80 dormi esattamente 8 ore solo che non sei costretto a farlo per forza di notte..

 

Infatti, se noti, quando il ciclo arriva al termine non azzera il contatore ma sottrae un numero di ore pari quelle della giorna..

 

Questo significa che tu potresti mandare in coma il tuo personaggio per 1000.0 ore e al tuo risveglio sarebbero passati 41 giorni e qualcosa

 

EDIT:

questo è un esempio

http://i67.tinypic.com/jzcnbk.png

 

Aggiungo qualche dettaglio

L'orologio è un evento comune in parallelo

Gli eventi comuni funzionano su TUTTE le mappe del tuo gioco

In parallelo significa che funziona senza bloccare il gioco o senza essere chiamato da un altro evento specifico

 

Quando un evento comune è un parallelo richiede uno switch per essere attivato in questo caso lo switch lo ho chiamato "orologio"

Una volta attivato sarà sempre attivo in tutte le mappe fino a quando non sarai tu a disattivarlo

Quando disattivi l'orologio l'orario non si resetta, semplicemente si ferma

Quando lo riattivi riprendere a scorrere da dove si era fermato

 

Puoi attivarlo nella prima mappa e non toccarlo mai più, molti fanno cosi ma non è una cosa corretta

..si potrebbero creare dei bug

Provo a farti un esempio:

Se un personaggio che scambia con te un oggetto è presente solo di notte

e le sue istruzioni sono di cancellarti un oggetto dall'inventario e poi aggiungertene uno nuovo

potrebbe succedere che ti cancella un oggetto poi in parallelo scatta il giorno il personaggio sparisce e non ti da l'oggetto nuovo (è un caso RARISSIMO)

Se questo era un oggetto unico di una quest tu sei bloccato e il gioco è finito

Per questo prima di alcuni eventi importanti blocco l'orologio mettendo in off lo switch "orologio" e poi lo rimetto in on subito dopo

 

Dura mendo di una frazione di secondo l'interruzione ma ti garantisce che l'evento non incorra in bug strani

Edited by HROT

http://i.imgur.com/JvoTKKj.png


Link to comment
Share on other sites

  • 0

Sostituisci "365" con "7"

Invece di avere un ciclo di un anno hai un ciclo di 7 giorni

Poi quando la variabile giorni è uguale a 1 sarà lunedì.. 2=martedì.. 3=mercoledì ecc

 

Per quanto riguarda la scritta è facile ma un pò noioso perchè il sistema a eventi ha dei limiti

Purtroppo le variabili possono assumere solo valori interi (numeri), non puoi creare un vettore ne tanto meno mettere in una variabile "lunedì"

..quindi devi farti 7 condizioni e verificare per ognuna se il giorno è uguale a un numero preciso e cambiare di conseguenza il messaggio

 

Non ho un evento pronto per fare screen shot.. vedi se sono stato abbastanza chiaro, fai qualche prova se poi vedi che non riesci ti scrivo l'evento e faccio screen ma mi ci vorrà un pò più di tempo rispetto agli altri (che erano già pronti)

 

EDIT:

anzi no, mentivo

un trucchetto c'è ma potrebbe non essere facile da capire se sei alle prime armi

 

se guardi nei messaggi passando passando sopra il mouse ti dice dei codici speciali

pui scrivere il valore contenuto in una variabile \V[n] n è il numero identificativo della variabile

puoi mettere il nome eroe dentro a un messaggio \N[n] n è il numero identificativo dell'eroe

 

il numero degli eroi può essere aumentato fino a 999 (è difficile che ne usi 999)

 

Diciamo che l'eroe 91 lo chiami lunedì il 92 martedì e cosi via

Poi prendi una variabile che chiami come vuoi (NOME GIORNO) la imposti con =90

NOME GIORNO+giorni

e stampi in un messaggio

\N[\V[XXX]]

dovrebbe uscirti il nome del giorno della settimana

 

Al posto di XXX metti il numero identificativo della variabile di NOME GIORNO

Edited by HROT

http://i.imgur.com/JvoTKKj.png


Link to comment
Share on other sites

  • 0

Bella l'idea di mettere i giorni al posto degli eroi... okay allora mi metto subito all'opera e vedo cosa

riesco a fare. Se ho qualche problema eventualmente posto qui ^^

 

Per ora ti ringrazio del tuo aiuto, sei stato gentilissimo!

Link to comment
Share on other sites

  • 0

Allora, due domande nabbe.

Prima domanda:

 

Perchè il controllo variabile ORE+=1 è fuori
dal Ciclo? Non dovrebbe essere dentro, proprio
come il controllo viariabile GIORNI+=1
?
Seconda domanda:
Ma abbiamo differenti versioni di VX-Ace,
oppure sbaglio qualcosa io.
A me non escono le voci "Controllo variabili"
o "Altrimenti" (questa proprio non mi esce) o " Condizione".
Ma bensì mi esce questo:
http://dumpshare.net/images/6713873test.PNG
Link to comment
Share on other sites

  • 0

La traduzione italiana di rpgmaker non è ufficiale.. ne abbiamo due diverse (il motivo io lo so, tu lo sai.. non diciamolo ad alta voce)

 

Passiamo alle cose serie

Il tuo dubbio è legittimo infatti DEVE essere dentro a un loop

però devi tenere presente una cosa, gli eventi a inizio automatico e gli eventi paralleli quando arrivano all'ultima istruzione riinizioano dalla prima

..in pratica sono già in un loro loop perpetuo e l'unico modo per interromperli è spegnere il loro switch

 

Per questo è molto importante non abusare di eventi paralleli e quando li si crea devono essere estremamente efficienti, altrimenti appesantiscono il gioco e lo fanno laggare

 

Se ti ricordi qualche post fa ti ho spiegato che l'alba parte alle 00:00 e che per calcolare l'ora reale devi aggiungere 7 ore

in teoria questo calcolo lo avrei potuto mettere direttamente dentro a questo evento cosi quando voglio leggere le ore non devo ogni volta fare la conversione

 

Però questo è un evento parallelo che viene eseguito 2 volte al secondo per TUTTO il gioco quindi meno calcoli fa meglio è

mentre invece l'evento per guardare l'ora (per esempio un orologio attaccato al muro) è un evento ad attivazione che viene svolto una volta ogni morte di papa

quindi è meglio spostare i calcoli superflui nel secondo evento

 

In altri tutorial potresti trovare anche il ciclo minuti (e addirittura i secondi spacciati per una "miglioria") dentro all'orologio e il tempo di attesa ridotto al minimo.. perchè alla fine un giorno di gioco non può durare come un giorno reale.. quegli eventi funzionano ma non sono efficienti perchè vengono eseguiti più di 60 volte al secondo inutilmente

 

A te la cosa che importa è che l'ora sia precisa (e questa lo è fino ai quarti d'ora) e che quando passi da una stanza illuminata a un esterno buio il cambiamento di tonalità dello schermo non sia troppo lento

 

Questo evento è studiato per bilanciare queste 2 cose

Edited by HROT

http://i.imgur.com/JvoTKKj.png


Link to comment
Share on other sites

  • 0

Se hai risolto con uno dei post del topic, come HROT ti ha detto dillà, puoi segnarlo come migliore risposta col tasto Segna Risolto in basso a destra. Altrimenti se hai risolto da te posta pure la soluzione, così tutti possono vederla! ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...