-
Posts
899 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Posts posted by Alato
-
-
Mi accodo a ciò che già è stato detto: mi aspettavo molta più violenza, ma invece si è rivelato cruento "a tratti" e sempre in momenti in cui ci stava, non era mai violenza gratuita come si può vedere in altri film altrettanto "non vietati ai minori".
Bando alle polemiche in cui non voglio infilarmi, devo dire che mi è piaciuto moltissimo: dalla regia, ai personaggi, alla storia, alla violenza stessa. Tutto è ben calibrato e emozionante, e non era tutto sommato l'americanata che pensavo. La parte nella città poi è un piacere per gli occhi: scorci fantastici e, almeno per un profano della storia maya come me, molto realistici.
Mel Gibson in questo film ha colto nel segno più di quanto abbia fatto con The Passion, imho.
-
Sticazzi z4g0! Complimentoni, non c'è che dire, spero che presto posterai una demo (magari non criptata ^^). Quoto le domande di havah, e aggiungo: il porblema dello scattoso è dovuto dal modo in cui ha creato l'engine o a limiti del maker? Credo la seconda ma son comunque curioso.
-
Lo sto provando.
Un piccolo bacarozzoSe una volta che premi l'interruttore della luce lo spegni, il protagonista ripete il discorso che ha fatto appena entrato.
-
BASTA.
Non voglio più leggere i soliti commenti sulla panini-microsoft-mediaset-consolewar o chicchesia, non è questo il topic: qui si parla di Death Note.
Non costringetemi a ripeterlo.
Che palle, sempre gli stessi gli argomenti che vengono fuori...
-
Come è andato il meeting?
-
Qualcuno sa se è uscito il numero 2? Nella mia città non c'è fumetteria e a volte non li mandano alle normali edicole...per ora non si è visto.. ;O;
-
Mi sono scordato di dire che lo script va a sostituire alcuni metodi di update (precisamente quelli di Game_Character, Game_Map, Spriteset_Map) quindi se volete fare delle modifiche a quei metodi dovete farle nelle versioni che avete incollato. In pratica quelli vecchi vengono tagliati fuori da questo script.
Se vi vengono in mente cose da aggiungere avvisate, qualche aggiunta per la versione 2 la sto già facendo. :P
-
Mai giocato però ne avevo viste delle sessioni eoni fa..mi è sembrato sicuramente molto inquietante, e per questo molto bello visto il genere :D
C'è da dire che dipende sempre dal master per la qualità della giocata quindi bisognerebbe tastare con mano. ^^
P.s.
I Piccoli Brividi....ne ho ancora una ventina sul comodino...quanti ricordi XDDD
Insieme alle favolose avventure di Lupo Solitario hanno modellato la mia infanzia ;O;
-
Non mi è mai capitato di leggerlo ma sono certo che i suoi libri debbano essere davvero interessanti.
In compenso ho assistito a qualche sessione di Call of Chtulu (il gdr cartaceo ambientato nel mondo di sua creazione): è associabile alla droga per gli amanti dell'horror/mystery XD
-
Citizens Script v1.0
Descrizione
Questo script permette di rendere le grosse città/villaggi ricche di personaggi creando solo pochi eventi e senza pesare sul gioco.
Basterà scrivere all'interno di un commento dell'evento "begin passante" e l'evento otterrà delle caratteristiche particolari:
• Movimento Casuale Personalizzato: si muove spesso in avanti e ogni tanto cambia direzione
• Frequenza e Velocità: sono entrambe decise via script, la velocità è casuale
• Grafica: la grafica dell'evento è gestita dallo script, che ne sceglie una a caso tra i characters di default "Civilian"
• Posizionamento: se i cittadini si allontaneranno troppo dal personaggio, verranno riposizionati casualmente nelle vicinanze dell'eroe (ovviamente fuori dallo schermo)
Capite che in questo modo creando una decina di eventi Cittadino il personaggio incontrerà sempre persone diverse, qualunque sia la dimensione della città!Autore
Alato
Credits: questo script contiene l'XPML Script di Rataime e una versione modificata da me dell'Anti Event Lag Script di Near Fantastica
Allegati
Lo script in versione txt è in fondo alla pagina
Istruzioni per l'uso
Create una pagina sopra il main, e incollate al suo interno lo script.
Fatto ciò vi basterà creare un commento "begin passante" all'interno degli eventi che volete rendere Cittadini. Consiglio di provarlo in una mappa ampia.#============================================================================== # - Citizens Script ~ v1.0 # ( 13/12/06 ) #--------------------------#--------------------------------------------------- # by Alato ~ www.rpg2s.net # #--------------------------# # Contiene l'XPML Script di Rataime e una versione # modificata da me dell'Anti Event Lag Script di # Near Fantastica. #------------------------------------------------------------------------------ # Incollato questo script in una pagina sopra il Main # avrete a disposizione un nuovo comando per gli eventi. # Scrivendo "begin passante" in un commento dell'evento # questo verrà considerato come un passante, cioè sarà # sempre presente vicino allo schermo. # Grafica, velocità e frequenza sono gestiti dallo # script in maniera casuale (per la grafica utilizza # i character di default "Civilian"). # # In caso di domande o problemi chiedete nel forum # di www.rpg2s.net #============================================================================== ############################################ ######## Aggiunte a Game_Character ######### ############################################ class Game_Character #-------------------------------------------------------------------------- # - Aggiornamento #-------------------------------------------------------------------------- def update if passante? @move_type = 77 # Movimento Passanti @move_frequency = 6 end if jumping? update_jump elsif moving? update_move else update_stop end if @anime_count > 18 - @move_speed * 2 if not @step_anime and @stop_count > 0 @pattern = @original_pattern else @pattern = (@pattern + 1) % 4 end @anime_count = 0 end if @wait_count > 0 @wait_count -= 1 return end if @move_route_forcing move_type_custom return end if @starting or lock? return end if @stop_count > (40 - @move_frequency * 2) * (6 - @move_frequency) case @move_type when 1 move_type_random when 2 move_type_toward_player when 3 move_type_custom when 77 move_type_passante end end end #-------------------------------------------------------------------------- # - Riposiziona #-------------------------------------------------------------------------- def riposiziona case rand(3) when 0 r_x = $game_map.display_x + rand(21)*128 - 128*3 r_y = $game_map.display_y - 128*3 when 1 r_x = $game_map.display_x + rand(21)*128 - 128*3 r_y = $game_map.display_y + 2176 + 128*3 when 2 r_x = $game_map.display_x - 128*3 r_y = $game_map.display_y + rand(16)*128 - 128*3 when 3 r_x = $game_map.display_x + 2816 + 128*3 r_y = $game_map.display_y + rand(16)*128 - 128*3 end x = r_x / 128 y = r_y / 128 if $game_map.passable?(x, y, 0) @real_x = r_x @real_y = r_y @x = x @y = y else riposiziona end r = rand(23) + 1 if r < 10 name = "10" + r.to_s + "-Civilian0" + r.to_s else name = "1" + r.to_s + "-Civilian" + r.to_s end @character_name = name @move_speed = rand(2)+ 1 end #-------------------------------------------------------------------------- # - Movimento Passante #-------------------------------------------------------------------------- def move_type_passante case rand(19) when 0..16 move_forward when 17 move_random when 18 @stop_count = 0 end end end ############################################ ######### Aggiunte a GAme_Event ############ ############################################ class Game_Event < Game_Character #-------------------------------------------------------------------------- # - Controlla se è un passante #-------------------------------------------------------------------------- def passante? params = XPML_read("passante",@id,2) return (params != nil) end end ############################################ ######### Aggiunte a Game_Player ########### ############################################ class Game_Player < Game_Character #-------------------------------------------------------------------------- # - Il Player non è mai un passante #-------------------------------------------------------------------------- def passante? return false end end ################### ############ XPML Definition ############### # by Rataime # ################### def XPML_read(markup,event_id,max_param_number=0) parameter_list = nil event=$game_map.events[event_id] return if event.list==nil for i in 0...event.list.size if event.list[i].code == 108 and event.list[i].parameters[0].downcase == "begin "+markup.downcase parameter_list = [] if parameter_list == nil for j in i+1...event.list.size if event.list[j].code == 108 parts = event.list[j].parameters[0].split if parts.size!=1 and parts[0].downcase!="begin" if parts[1].to_i!=0 or parts[1]=="0" parameter_list.push(parts[1].to_i) else parameter_list.push(parts[1]) end else return parameter_list end else return parameter_list end return parameter_list if max_param_number!=0 and j==i+max_param_number end end end return parameter_list end ############################ ####### Anti Event Lag Script v3 ############### # by Near Fantastica # ############################ # ~ mod by Alato # ############################ #==== # ¦ Game_Map #==== class Game_Map #------ def in_range?(object) screne_x = $game_map.display_x screne_x -= 256 screne_y = $game_map.display_y screne_y -= 256 screne_width = $game_map.display_x screne_width += 2816 screne_height = $game_map.display_y screne_height += 2176 return false if object.real_x <= screne_x return false if object.real_x >= screne_width return false if object.real_y <= screne_y return false if object.real_y >= screne_height return true end #------ def in_big_range?(object) screne_x = $game_map.display_x screne_x -= 256*6 screne_y = $game_map.display_y screne_y -= 256*6 screne_width = $game_map.display_x screne_width += 2816 + 256*5 screne_height = $game_map.display_y screne_height += 2176 + 256*5 return false if object.real_x <= screne_x return false if object.real_x >= screne_width return false if object.real_y <= screne_y return false if object.real_y >= screne_height return true end #------ def update if $game_map.need_refresh refresh end if @scroll_rest > 0 distance = 2 ** @scroll_speed case @scroll_direction when 2 scroll_down(distance) when 4 scroll_left(distance) when 6 scroll_right(distance) when 8 scroll_up(distance) end @scroll_rest -= distance end for event in @events.values if in_range?(event) or event.trigger == 3 or event.trigger == 4 event.update elsif event.passante? # se è un passante riposizionalo event.update until in_big_range?(event) event.riposiziona end end end for common_event in @common_events.values common_event.update end @fog_ox -= @fog_sx / 8.0 @fog_oy -= @fog_sy / 8.0 if @fog_tone_duration >= 1 d = @fog_tone_duration target = @fog_tone_target @fog_tone.red = (@fog_tone.red * (d - 1) + target.red) / d @fog_tone.green = (@fog_tone.green * (d - 1) + target.green) / d @fog_tone.blue = (@fog_tone.blue * (d - 1) + target.blue) / d @fog_tone.gray = (@fog_tone.gray * (d - 1) + target.gray) / d @fog_tone_duration -= 1 end if @fog_opacity_duration >= 1 d = @fog_opacity_duration @fog_opacity = (@fog_opacity * (d - 1) + @fog_opacity_target) / d @fog_opacity_duration -= 1 end end end #==== # ¦ Spriteset_Map #==== class Spriteset_Map #------ def in_range?(object) screne_x = $game_map.display_x screne_x -= 256 screne_y = $game_map.display_y screne_y -= 256 screne_width = $game_map.display_x screne_width += 2816 screne_height = $game_map.display_y screne_height += 2176 return false if object.real_x <= screne_x return false if object.real_x >= screne_width return false if object.real_y <= screne_y return false if object.real_y >= screne_height return true end #------ def in_big_range?(object) screne_x = $game_map.display_x screne_x -= 256*6 screne_y = $game_map.display_y screne_y -= 256*6 screne_width = $game_map.display_x screne_width += 2816 + 256*5 screne_height = $game_map.display_y screne_height += 2176 + 256*5 return false if object.real_x <= screne_x return false if object.real_x >= screne_width return false if object.real_y <= screne_y return false if object.real_y >= screne_height return true end #------ def update if @panorama_name != $game_map.panorama_name or @panorama_hue != $game_map.panorama_hue @panorama_name = $game_map.panorama_name @panorama_hue = $game_map.panorama_hue if @panorama.bitmap != nil @panorama.bitmap.dispose @panorama.bitmap = nil end if @panorama_name != "" @panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue) end Graphics.frame_reset end if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue @fog_name = $game_map.fog_name @fog_hue = $game_map.fog_hue if @fog.bitmap != nil @fog.bitmap.dispose @fog.bitmap = nil end if @fog_name != "" @fog.bitmap = RPG::Cache.fog(@fog_name, @fog_hue) end Graphics.frame_reset end @tilemap.ox = $game_map.display_x / 4 @tilemap.oy = $game_map.display_y / 4 @tilemap.update @panorama.ox = $game_map.display_x / 8 @panorama.oy = $game_map.display_y / 8 @fog.zoom_x = $game_map.fog_zoom / 100.0 @fog.zoom_y = $game_map.fog_zoom / 100.0 @fog.opacity = $game_map.fog_opacity @fog.blend_type = $game_map.fog_blend_type @fog.ox = $game_map.display_x / 4 + $game_map.fog_ox @fog.oy = $game_map.display_y / 4 + $game_map.fog_oy @fog.tone = $game_map.fog_tone i=0 for sprite in @character_sprites if sprite.character.is_a?(Game_Event) if in_range?(sprite.character) or sprite.character.trigger == 3 or sprite.character.trigger == 4 or (sprite.character.passante? and in_big_range?(sprite.character)) sprite.update i+=1 end else sprite.update i+=1 end end @weather.type = $game_screen.weather_type @weather.max = $game_screen.weather_max @weather.ox = $game_map.display_x / 4 @weather.oy = $game_map.display_y / 4 @weather.update for sprite in @picture_sprites sprite.update end @timer_sprite.update @viewport1.tone = $game_screen.tone @viewport1.ox = $game_screen.shake @viewport3.color = $game_screen.flash_color @viewport1.update @viewport3.update end endPostate qui nel caso si riscontrino bug o problemi di sorta. :P
-
Quello che dice Keroro è una possibile formula per la curva di apprendimento (utilizzando le successioni), poi ovviamente anche quelle di Maverick sono possibili formule anche se un po' più lineari.
La mia idea era appunto di farvi partire da quegli array e tirar su qualche formula di battaglia, però volevo capire bene chi è che stava seguendo l'esercitazione.
Mi pare che comunque i dubbi siano venuti fuori lo stesso e hanno ottenuto pronta risposta. :nn:
Tra poco torno a proseguire l'esercitazione.
-
Vabbè, isoliamo casi come questo e i bambini che imitano Andy Bogard, è chiaro che il loro cervello
ha preso troppe ferie quest'anno......
Comunque, secondo me, come è già stato detto, è inutile mettere censure e divieti, se esistono EMule e altri mezzi per procurarseli, i giochi, io direi di aprire la vendita a tutti, perchè tanto, ad un certo punto è una questione di scelte, da bambino io, se un gioco mi scuoteva, lo lasciavo stare, (anche se poi, con la maggiore età li ho ripresi...) perchè OGNUNO POSSIEDE LA CAPACITA' DI CAPIRE QUELLO CHE STA FACENDO, di distinguere perfettamente quello che è giusto o sbagliato, (Fuori dai casi limite citati sopra), anche di spegnere la play ad un certo punto. Quoto quello che ha detto Baldo, sono cazzi di chi li compra, i software,
ma questo vale anche per la candeggina, ad esempio, dopo che l'hai comprata devi capire che non è una nuova salsa messicana, ma serve per la pulizia. Devi un pò capire quello che ca**o stai facendo....
O sbaglio??
PS: Alato, "Cugino", con una g sola....
Ero ironico..consiglio un ripasso della discografia di Elio e le storie tese.
In ogni caso se c'è gente spostata come Eneman che può leggere i libri di Chuck Palahniuk e poi infilarsi realmente delle penne nel culo, allora dovrebbero vietare anche i libri.
E i film.
E i pupazzetti.
Mah...secondo me quando fanno articoli di questo tipo, tentano semplicemente di fornire una spiegazione alla supposta ignoranza/demenzialità delle nuove generazioni: cercano delle scuse per dimenticare che sono stati loro a farla crescere in questo modo senza fare nulla.
Se dei ragazzi pestano a scuola coetanei handicappati , o si inchiappettano bambine delle elementari dovrebbero farsi un esame di coscienza i genitori, non bisognerebbe puntare il dito su qualche videogioco a caso.
-
Ben fatto: sia per lo script in sé che per l'uso del template. :°D
-
Oddio lev, non mi ricordavo più che avevi partecipato! ;O;
[OT]Il progetto era andato avanti ma ora come ora è fermo in attesa che mi venga voglia di continuare[/OT]
-
Sì, però l'esercitazione proseguiva, chi vuole partecipare lo faccia. ;O;
-
Aggiunto all'Elenco Script e applicato il Template.
-
Aggiunto all'Elenco Script e applicato il Template.
-
Per quanto riguarda i nomi: @array era un nome qualsiasi, potete metterci quello che vi pare.
@pippo = [] @pluto = [] ...
Non dovete assolutamente usare il '.' e per quanto riguarda le regole sui nomi utilizzabili sono le stesse relative alle variabili
Rispondendo a Zerathul, quel 10 * i significa "dieci moliplicato per i" quindi ad ogni giro cambiando i cambia anche il valore inserito nell'elemento dell'array.
Infatti nella versione "svolta" in ognuno ho messo il valore che ha i all'interno dell'indice.
-
Allora, vediamo.
Questo ? il primo abbozzo del Laboratorio, un posto in cui gli utenti possono lavorare su piccolli script proposti dall'insegnante di turno e in generale fare esercizio. Era un po' che pensavo di aprirlo ma mi mancava un argomento da cui partire: vista l'assenza, almeno per ora, di una lezione che spieghi l'utilizzo degli Array, proprio questi saranno il nostro primo argomento!
Il Grado 1 sta ad indicare il livello che bisogna avere per partecipare, poich? questo ? un servizio esclusivo per gli Studenti del Campus.
Laboratorio di RGSS - Array e Ciclo for
Ora cercher? di darvi una breve infarinatura dei concetti di base per poter metterci subito al lavoro.
Concetti di base
"Un array (o matrice) ? un gruppo di locazioni di memoria che hanno lo stesso nome e si distinguono le une dalle altre attraverso un indice" questa ? la sua definizione.
Ma andiamo ad analizzarne il significato: considerando che le variabili sono etichette associate a locazioni di memoria, si capisce che gli array in pratica sono un insieme di variabili con lo stesso nome.
Per poterle distinguere l'una dall'altra si utilizza un indice che viene inserito all'interno di due parentesi quadre subito dopo il nome. L'indice parte da 0 e va aumentando.
Vediamo questo esempio:@array[0] = 10
Che cosa abbiamo fatto? @array ? un array, e abbiamo inserito il valore 10 nella suo primo elemento. Ogni elemento funziona esattamente come una qualunque variabile.
Quindi:@array[0] @array[1] @array[2]
sono tutte considerabili come variabili differenti accomunate dallo stesso nome.
Probabilmente vi starete chiedendo perch? bisogna utilizzarli se funzionano esattamente come le variabili: ora non ? chiaro perch? abbiamo pochi elementi, ma immaginate di avvere un array con migliaia di elementi, la comodit? di poterli richiamare semplicemente tramite un indice ? enorme!
Per creare un array ci sono diversi modi:@array = [] @array = Array.new
Questi creano un array generico, insomma non sappiamo qual ? il numero di elementi e cosa contengono.
Possiamo invece scrivere:@array = [10, 15, 20]
per ottenere un array di tre elementi che contengono rispettivamente i valori 10, 15 e 20.
Continuando sulla falsariga di quest'ultimo esempio, immaginiamo di voler stampare il contenuto dei tre elementi dell'array.print @array[0] print @array[1] print @array[2]
Come vedete l'indice parte sempre da 0 e non da 1, quindi se volete richiamare il secondo elemento dell'array dovete mettere un 2 tra le quadre.
Ora pensate che ci sono comandi che permettono di fare la stessa azione 'n' volte: capirete che potrete in poche righe applicare un comando a centinaia di elementi di un array.
Uno di questi comandi, il pi? comodo per questo utilizzo, ? il for.@array = [] for i in 0..3 @array[i] = 10 * i end
Analizziamo questo pezzettino di codice: il for ? un ciclo che ripete l'azione contenuta tra for ed end e ad ogni giro aumenta la variabile i di 1, variabile che si pu? utilizzare per qualunque operazione. Questo lo fa partendo dal primo numero dopo l'in fino al numero dopo i puntini: in questo caso quindi parte da 0 e va fino a 3.
ATTENZIONE: non lasciatevi ingannare dallo zero, il ciclo viene ripetuto 4 volte e non 3 come sembrerebbe a prima vista; infatti i valori di i ad ogni giro saranno 0, 1, 2 e 3 quindi il ciclo far? 4 giri.
In questo caso ? possibile fare la stessa operazione senza utilizzare for:@array = [] @array[0] = 10 * 0 @array[1] = 10 * 1 @array[2] = 10 * 2 @array[3] = 10 * 3
In questo caso gli elementi erano solo quattro, ma se per esempio fosse stato for i in 0.. 2700 evidentemente sarebbe stato impossibile farlo senza l'utilizzo degli array e di for.
Un po' d'esercizio
Invito chi gi? conosceva l'argomento ad evitare di partecipare, per dare spazio a chi ha pi? bisogno di aiuto. Col passare del tempo baster? controllare il Grado ma per ora conto sul vostro buonsenso. ;P
Ora proviamo a fare qualcosa, cominciando da qualcosa di semplice:
Create 5 diversi array ognuno con un nome di un attributo: Forza, Destrezza, Agilita(non metteteci l'accento che non lo accetta), Intelligenza e Costituzione.
Ovviamente cercate nel limite del possibile di fare da soli, altrimenti ? tempo perso. ^^ -
Eh Ene...l'ultima volta stavo per venire ma poi i miei han capito che non stavo andando a un fantomatico Bologna Comics estivo. XD
Comunque io non dicevo di Bologna in sé, ma del motorshow: tutti i miei conoscenti truzzi ci vanno, quindi per ragionamento suppongo che avvenga lo stesso nelle altre città. Indi per cui, potremmo girare per Bologna e tralasciare il tristo motorshow. ;O;
-
Io posso venire, l'unica cosa: che posto da truzzi per un meeting...vi prego non andiamo al Motorshow, stiamo in giro per Bologna ;__;
-
Non è perché ti ficchi penne nel culo che diventi una gallina. (Tyler Durden)
-
Interrogazione B - Grado 1
Data di chiusura: Domenica 11 Marzo, Mezzanotte.
Prossima apertura: n/a
1) Appello
Crea una array che contenga tutti i numeri pari compresi tra 1 e 100, poi inserisci i valori 50 e 60 nelle variabili x e y prendendole dall'array. Inserisci infine il primo valore dell'array nella variabile z.
Verrà valutata la chiarezza del codice e la sua brevità, oltre al funzionamento.
Non è necessario che sia contenuto in una classe.
Dovete scrivere il vostro lavoro in un *.txt chiamato "Int._B_Grado_1,_NomeUtente" e allegarlo ad un MP che mi manderete, chiamato "Int.B, Grado 1, NomeUtente".
2) Appello
Verrà aggiunta in caso fosse necessaria.
Quando avete inviato postate un messaggio con scritto "Inviato" in questo topic.
Per domande sul contenuto dell'interrogazione potete chiedere qui.
Buon lavoro! -
Che dire: belle belle!
Tralasciando commenti su certi topic che mi hanno sinceramente preoccupato ( mah.. o_ ) le magliette sono ben fatte e il logo piazzato su un capo d'abbigliamento rulla. In ogni caso propongo di inserire altre versioni con un logo piccolino sul cuore ( :°D ) e qualcos'altro al centro, tanto per cambiare. ;O;
Le mutande le compro solo se sono zebrate.
Con la scritta dorata circondata di brillanti.
Al massimo maculate.
:°

[RICHIESTA GRAFICA] - Libri
in Richiesta risorse grafiche XP
Posted