Ciao a tutti. Sono KeroSlifer ed è la prima volta che scrivo su questo forum.
Sto creando un gioco di Super Mario con Game Maker ed è quasi finito ma ho un problema che mi impedisce di completarlo.
In questo gioco ho deciso di inserire i Koopalings ma il problema è che Larry Koopa non da problemi mentre Morton affonda nel terreno quando si racchiude nel suo guscio e una volta fatto ciò rimane a camminare in mezzo al pavimento.
Vi metto anche le immagini di ciò che succede
Intanto questo è il codice di Morton:
Information about object: obj_morton
Sprite: spr_morton
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent: obj_parboss
Mask: <same as sprite>
Create Event:
execute code:
gravity = 0.25
image_speed = 0
hitpoints = 5
ready = 0
canjump = 0
direct = 1
bugfix = 0
moving = 0
direct = -1
Alarm Event for alarm 0:
execute code:
canjump = 0
alarm[10] = 100
image_speed = 0.15
hspeed = 0
sprite_index = spr_morton_jump
y-=1
vspeed = -6
if obj_mario.x < x
hspeed = -1
else
hspeed = 1
Alarm Event for alarm 1:
execute code:
bugfix += 1
alarm[1] = 7
Alarm Event for alarm 2:
execute code:
if sprite_index = spr_morton
and canjump = 1
{
y-=1
vspeed = -3
image_single = 1
}
alarm[2] = 150
Alarm Event for alarm 3:
execute code:
if sprite_index = spr_morton
{
sprite_index = spr_morton_attack
image_single = 0
image_speed = 0.3
}
alarm[3] = 200
Alarm Event for alarm 4:
execute code:
ID2 = instance_create(shx,shy,obj_magiccircle)
ID2.direction = ID.direction
alarm[5] = 4
Alarm Event for alarm 5:
execute code:
ID2 = instance_create(shx,shy,obj_magiccircle)
ID2.direction = ID.direction
Alarm Event for alarm 10:
execute code:
if sprite_index = spr_morton_attack
exit
image_speed = 0.3
canjump = 1
sprite_index = spr_morton
ready = 0
alarm[1] = 7
moving = 1
alarm[2] = 75
alarm[3] = 100
Step Event:
execute code:
if hspeed > 0
and collision_rectangle(self.x+hspeed+15,self.y,self.x+hspeed+15,self.y+44,obj_solid
,1,1)
hspeed = -1
if hspeed < 0
and collision_rectangle(self.x+hspeed-16,self.y,self.x+hspeed-16,self.y+44,obj_solid,1,1)
hspeed = 1
if collision_rectangle(x-16,y+45,x+15,y+45,obj_solidtop,1,1)
or collision_rectangle(x-16,y+45,x+15,y+45,obj_slopeparent,1,1)
{
gravity = 0
vspeed = 0
if sprite_index = spr_morton_jump
sprite_index = spr_morton_shell
}
else
gravity = 0.25
if vspeed > 4
vspeed = 4
while collision_rectangle(bbox_left,bbox_top,bbox_right,bbox_bottom,obj_slopeparent,1,
1)
y-=1
if moving = 1
and ready = 0
{
if obj_mario.x > x
{
hspeed += 0.05
direct = 1
}
if obj_mario.x < x
{
hspeed += -0.05
direct = -1
}
if hspeed > 1.5
hspeed = 1.5
if hspeed < -1.5
hspeed = -1.5
}
if vspeed < 0
and collision_rectangle(x-16,y-1,x+15,y-1,obj_solid,1,1)
vspeed = 1
Collision Event with object obj_solidtop:
execute code:
if y < other.y-27 and vspeed > 0
{
y = other.y-32
vspeed = 0
gravity = 0
}
Collision Event with object obj_mario:
execute code:
if moving = 0
exit
if ready = 1
{
if other.y < y-11
and obj_mario.stompstyle = 1
{
if keyboard_check(vk_shift)
obj_mario.vspeed = -8
else
obj_mario.vspeed = -4
sound_play(snd_stomp)
exit
}
//Begin Hurt Code
if other.y > y-26
and other.invincible = 0
{
hurtmario()
}
//End Hurt Code
exit
}
if instance_exists(obj_invincibility)
exit
if other.y < y-27
and obj_mario.stompstyle = 1
{
if keyboard_check(vk_shift)
obj_mario.vspeed = -8
else
obj_mario.vspeed = -4
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
hspeed = 0
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
image_single = 0
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
instance_destroy()
}
exit
}
if other.y < y-27
{
hspeed = 0
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
image_single = 0
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
}
if other.hitpoint = 0
{
sound_play(snd_kick)
instance_create(x-8,y,obj_100pts)
}
if other.hitpoint = 1
{
sound_play(snd_kick2)
instance_create(x-8,y,obj_200pts)
}
if other.hitpoint = 2
{
sound_play(snd_kick3)
instance_create(x-8,y,obj_400pts)
}
if other.hitpoint = 3
{
sound_play(snd_kick4)
instance_create(x-8,y,obj_800pts)
}
if other.hitpoint = 4
{
sound_play(snd_kick5)
instance_create(x-8,y,obj_1000pts)
}
if other.hitpoint = 5
{
sound_play(snd_kick6)
instance_create(x-8,y,obj_2000pts)
}
if other.hitpoint = 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_4000pts)
}
if other.hitpoint > 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_1uppts)
}
other.hitpoint += 1
if keyboard_check(vk_shift)
other.vspeed = -8
else
other.vspeed = -4
other.jumpnow = 2
if hitpoints = 0
instance_destroy()
}
//Begin Hurt Code
else if other.invincible = 0
{
hurtmario()
}
//End Hurt Code
Collision Event with object obj_parcarry:
execute code:
if moving = 0
exit
if ready = 1
exit
if other.held = 1
{
other.vspeed = -3
if other.hitpoint = 0
{
sound_play(snd_kick)
instance_create(x-8,y,obj_100pts)
}
if other.hitpoint = 1
{
sound_play(snd_kick2)
instance_create(x-8,y,obj_200pts)
}
if other.hitpoint = 2
{
sound_play(snd_kick3)
instance_create(x-8,y,obj_400pts)
}
if other.hitpoint = 3
{
sound_play(snd_kick4)
instance_create(x-8,y,obj_800pts)
}
if other.hitpoint = 4
{
sound_play(snd_kick5)
instance_create(x-8,y,obj_1000pts)
}
if other.hitpoint = 5
{
sound_play(snd_kick6)
instance_create(x-8,y,obj_2000pts)
}
if other.hitpoint = 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_4000pts)
}
if other.hitpoint > 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_1uppts)
}
other.hitpoint += 1
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
hspeed = 0
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
instance_destroy()
}
}
Collision Event with object obj_hammer:
execute code:
if moving = 0
exit
if ready = 1
{
instance_create(other.x-8,other.y,obj_smoke)
sound_play(snd_bump)
with (other) instance_destroy()
exit
}
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
hspeed = 0
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
sound_play(snd_kick)
sound_play(snd_bump)
instance_destroy()
}
instance_create(x-8,y,obj_100pts)
with (other) instance_destroy()
Collision Event with object obj_fireball:
execute code:
if moving = 0
exit
if ready = 1
{
instance_create(other.x-8,other.y,obj_smoke)
sound_play(snd_bump)
with (other) instance_destroy()
exit
}
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
hspeed = 0
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
sound_play(snd_kick)
sound_play(snd_bump)
instance_destroy()
}
instance_create(x-8,y,obj_100pts)
with (other) instance_destroy()
Collision Event with object obj_spinner:
execute code:
if moving = 0
exit
if ready = 1
exit
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
hspeed = 0
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
instance_destroy()
}
if other.hitpoint = 0
{
sound_play(snd_kick)
instance_create(x-8,y,obj_100pts)
}
if other.hitpoint = 1
{
sound_play(snd_kick2)
instance_create(x-8,y,obj_200pts)
}
if other.hitpoint = 2
{
sound_play(snd_kick3)
instance_create(x-8,y,obj_400pts)
}
if other.hitpoint = 3
{
sound_play(snd_kick4)
instance_create(x-8,y,obj_800pts)
}
if other.hitpoint = 4
{
sound_play(snd_kick5)
instance_create(x-8,y,obj_1000pts)
}
if other.hitpoint = 5
{
sound_play(snd_kick6)
instance_create(x-8,y,obj_2000pts)
}
if other.hitpoint = 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_4000pts)
}
if other.hitpoint > 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_1uppts)
}
other.hitpoint += 1
Collision Event with object obj_explosion:
execute code:
if moving = 0
exit
if ready = 1
exit
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
hspeed = 0
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
instance_destroy()
}
if other.hitpoint = 0
{
sound_play(snd_kick)
instance_create(x-8,y,obj_100pts)
}
if other.hitpoint = 1
{
sound_play(snd_kick2)
instance_create(x-8,y,obj_200pts)
}
if other.hitpoint = 2
{
sound_play(snd_kick3)
instance_create(x-8,y,obj_400pts)
}
if other.hitpoint = 3
{
sound_play(snd_kick4)
instance_create(x-8,y,obj_800pts)
}
if other.hitpoint = 4
{
sound_play(snd_kick5)
instance_create(x-8,y,obj_1000pts)
}
if other.hitpoint = 5
{
sound_play(snd_kick6)
instance_create(x-8,y,obj_2000pts)
}
if other.hitpoint = 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_4000pts)
}
if other.hitpoint > 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_1uppts)
}
other.hitpoint += 1
Collision Event with object obj_thrownbrick:
execute code:
if moving = 0
exit
if ready = 1
exit
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
hspeed = 0
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
instance_destroy()
}
if other.hitpoint = 0
{
sound_play(snd_kick)
instance_create(x-8,y,obj_100pts)
}
if other.hitpoint = 1
{
sound_play(snd_kick2)
instance_create(x-8,y,obj_200pts)
}
if other.hitpoint = 2
{
sound_play(snd_kick3)
instance_create(x-8,y,obj_400pts)
}
if other.hitpoint = 3
{
sound_play(snd_kick4)
instance_create(x-8,y,obj_800pts)
}
if other.hitpoint = 4
{
sound_play(snd_kick5)
instance_create(x-8,y,obj_1000pts)
}
if other.hitpoint = 5
{
sound_play(snd_kick6)
instance_create(x-8,y,obj_2000pts)
}
if other.hitpoint = 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_4000pts)
}
if other.hitpoint > 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_1uppts)
}
other.hitpoint += 1
Collision Event with object obj_shell:
execute code:
if moving = 0
exit
if ready = 1
exit
if hitpoints > 0
{
sound_play(snd_hurt)
hitpoints -=1
ready = 1
alarm[0] = 60
hspeed = 0
sprite_index = spr_morton_shell
image_speed = 0.15
}
if hitpoints = 0
{
sprite_index = spr_morton_jump
imdead = instance_create(x,y+16,obj_enemy_dead)
imdead.sprite_index = sprite_index
imdead.image_xscale = image_xscale
instance_destroy()
}
if other.hitpoint = 0
{
sound_play(snd_kick)
instance_create(x-8,y,obj_100pts)
}
if other.hitpoint = 1
{
sound_play(snd_kick2)
instance_create(x-8,y,obj_200pts)
}
if other.hitpoint = 2
{
sound_play(snd_kick3)
instance_create(x-8,y,obj_400pts)
}
if other.hitpoint = 3
{
sound_play(snd_kick4)
instance_create(x-8,y,obj_800pts)
}
if other.hitpoint = 4
{
sound_play(snd_kick5)
instance_create(x-8,y,obj_1000pts)
}
if other.hitpoint = 5
{
sound_play(snd_kick6)
instance_create(x-8,y,obj_2000pts)
}
if other.hitpoint = 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_4000pts)
}
if other.hitpoint > 6
{
sound_play(snd_kick7)
instance_create(x-8,y,obj_1uppts)
}
other.hitpoint += 1
Other Event: Animation End:
execute code:
if sprite_index = spr_morton_attack
{
sprite_index = spr_morton
ID = instance_create(x,y,obj_magiccircle)
ID.first = 1
shx = x
shy = y
sound_play(snd_magic)
alarm[4] = 4
}
Draw Event:
execute code:
if sprite_index = spr_morton
draw_sprite_ext(sprite_index,bugfix,round(x),y,direct,1,0,c_white,1)
else
draw_sprite_ext(sprite_index,-1,round(x),y,direct,1,0,c_white,1)
Spero di aver inserito tutto correttamente.
Making
-Giochi in sviluppo: (Tutto in sospeso)
Super Mario Bros.: The Koopa World =>Qui la discussione e la DEMO del gioco
Sonic Adventure 3: Chaos Collapse =>Non ancora presentabile
-Progetti futuri:
Keroro Gunsou: Pekopon Shinryaku Kansei!...Tabun. De Arimasu!
Tutorial password Game Maker 8 CLICCA QUI Tutorial scelta Game Maker 8 CLICCA QUI
Recensioni - Caratteristiche e mie recensioni
Caratteristiche delle mie recensioni
Nel titolo della recensione scrivo sempre quale versione ho giocato (questo discorso non vale ovviamente per le esclusive), di conseguenza la mia recensione si basa solo su quella/e console. Quindi potrei non essere al corrente di eventuali differenze fra le varie versioni, a parte nel caso di problemi particolarmente gravi che si vengono quindi a sapere dai siti internet. Nel caso io sia al corrente di diversità fra le versioni, lo specificherò sempre sotto la recensione.
Quando in un gioco è presente il multiplayer o features di questo tipo, se nella recensione non ne parlo significa che non ho le ho potute provare.
Le recensioni che faccio si basano su cinque aspetti, fondamentali elementi presenti in un videogioco
-Storia: In questo aspetto viene analizzata la trama del videogioco e il modo in cui essa viene sviluppata durante l'intera esperienza videoludica. Essa non viene valutata solo in base alla sua semplicità o alla sua complessità , ma anche in base alla sua originalità , alla sua consistenza e alla sua adeguatezza. Trame complesse sviluppate male e inadeguate verranno valutate con un punteggio più basso rispetto ad una trama che, seppure semplice, risulta essere scorrevole al punto giusto e adeguata al contesto del gioco.
-Grafica: In questo aspetto viene analizzata la parte visiva del videogioco. Si valuteranno quindi in primis l'ispirazione, il design, le scelte cromatiche, l'atmosfera, la coerenza, la fisica, il framerate, animazioni e caratterizzazione di personaggi e ambientazioni. Solo poi, se necessario e se il genere di gioco che sto recensendo lo permette, verrà valutato quanto la grafica è al passo con i tempi. Un gioco senz'anima verrà valutato con un punteggio molto basso anche se la grafica utilizzata è di ultima generazione.
-Gameplay: L'aspetto più complesso. Del gameplay fanno parte le meccaniche di gioco, l'originalità , assenza di bug evidenti, la precisione dei comandi e come il tutto viene sviluppato e amalgamato. Sul gameplay vanno anche ad influire aspetti della parte grafica. Un gameplay teoricamente ottimo ma non utile ai fini del gioco in un level design non ispirato potrebbe ricevere una valutazione più bassa di un gameplay con qualche lacuna ma completo sotto altri punti di vista. L'assenza del multiplayer verrà valutata negativamente solo in un gioco con un gameplay che potrebbe essere orientato ad essere giocato anche con più persone, mentre la sua presenza verrà valutata positivamente in caso di un ottimo sviluppo.
-Sonoro: In questo aspetto viene analizzata la componente audio del videogioco. Verranno valutate la coerenza con l'atmosfera in-game e la qualità della composizione. Verranno anche analizzati il doppiaggio e la bontà degli effetti sonori. Solitamente questo campo è quello che influenza meno il voto complessivo ma, se si presentasse di qualità scadente e troppo spesso inadeguato, influirà negativamente, arrivando a scalare anche di un voto. Un doppiaggio mediocre in lingua italiana non influirà negativamente se presente l'opzione per selezionare in alternativa la lingua originale del gioco. Se anche il doppiaggio originale si rivela scadente, ciò abbasserà la valutazione complessiva.
-Longevità : In questo aspetto viene analizzata la longevità del gioco sia per quanto riguarda la storia principale, sia per la presenza di quest o missioni secondarie. Essa verrà valutata sulla base del genere di gioco che sto recensendo. Un platform di 8 ore, per esempio, verrà valutato bene; un rpg con lo stesso quantitativo di ore verrà considerato insufficiente sotto questo aspetto. Se il materiale secondario si rivelerà essere sviluppato male non influirà troppo negativamente. La presenza di un multiplayer ben fatto contribuirà ad aumentare la valutazione di questo aspetto. ---------------------------------------
La scala dei voti I voti partono da 1 e salgono di 0.1 fino ad arrivare a 10. Il voto finale non è necessariamente la media matematica dei voti parziali, ma un voto che li racchiude in modo omogeneo. 1 - 1.9: Un gioco che rientra in questo range di voti è un disastro sotto tutti i punti di vista, nulla funziona e nulla riesce ad integrarsi. 2 - 2.9: Un gioco che poteva avere qualche buono spunto per essere migliore, ma che semplicemente non c'è e si rivela fallimentare 3 - 3.9: Un gioco che ha di buono almeno l'idea con cui è stato concepito, ma si rivela tutto insufficiente 4 - 4.9: Un gioco afflitto da numerosi problemi sotto tutti gli aspetti, ma con qualcosa di appena sufficiente 5 - 5.9: Un gioco ancora troppo povero per arrivare ad essere considerato sufficiente. Qualche buon aspetto che però non basta a renderlo un gioco piacevole 6 - 6.9: Un gioco sufficiente, carino e magari anche piacevole, che meritava di essere sviluppato meglio e di essere reso più profondo 7 - 7.9: Un buon gioco, con alcuni problemi e qualche mancanza, ma che per la maggior parte degli aspetti è ben sviluppato 8 - 8.9: Un gioco molto valido e ben sviluppato sotto tutti i punti di vista, ma dove ancora si poteva fare un po' di più 9 - 9.9: Un ottimo gioco, realizzato sotto ogni punto di vista in maniera eccellente, che non pecca in nulla, apparte qualche dettaglio di minore importanza 10: Non rappresenta la perfezione, in quanto essa non esiste, ma un gioco che prende questo voto significa che è un capolavoro assoluto, che non pecca in nulla e le cui poche sbavature sono così lievi da non meritare di influire sul voto
Alcuni decimali però solitamente non li utilizzo, in quanto ritengo che essi non abbiano alcun significato reale e sono i seguenti: .1 .4 .6 .9 Quindi, ad esempio un gioco da 8.1 verrà valutato con un 8, così come un 8.9 verrà valutato con un 9.
Il 10 non lo dò solamente se un gioco prende 10 in tutti i campi, ma anche in casi dove tutto sommato un 9 ad esempio nel sonoro è un punteggio comunque eccellente. Già se il sonoro fosse stato 8.8 il voto complessivo non sarebbe più stato 10. Punto fisso per poter arrivare a 10 è ottenere 10 in grafica e gameplay. Già se uno dei due è 9.8 il 10 non c'è più anche se tutto il resto è 10. Per gli altri campi varia un po', ma in ogni caso solo uno può permettersi di stare sul 9.
Le mie recensioni (AGGIORNATO 30/11/2014 - Sonic Boom: L'Ascesa di Lyric)
Question
keroslifer
Ciao a tutti. Sono KeroSlifer ed è la prima volta che scrivo su questo forum.
Sto creando un gioco di Super Mario con Game Maker ed è quasi finito ma ho un problema che mi impedisce di completarlo.
In questo gioco ho deciso di inserire i Koopalings ma il problema è che Larry Koopa non da problemi mentre Morton affonda nel terreno quando si racchiude nel suo guscio e una volta fatto ciò rimane a camminare in mezzo al pavimento.
Vi metto anche le immagini di ciò che succede
Intanto questo è il codice di Morton:
Information about object: obj_morton Sprite: spr_morton Solid: false Visible: true Depth: 0 Persistent: false Parent: obj_parboss Mask: <same as sprite> Create Event: execute code: gravity = 0.25 image_speed = 0 hitpoints = 5 ready = 0 canjump = 0 direct = 1 bugfix = 0 moving = 0 direct = -1 Alarm Event for alarm 0: execute code: canjump = 0 alarm[10] = 100 image_speed = 0.15 hspeed = 0 sprite_index = spr_morton_jump y-=1 vspeed = -6 if obj_mario.x < x hspeed = -1 else hspeed = 1 Alarm Event for alarm 1: execute code: bugfix += 1 alarm[1] = 7 Alarm Event for alarm 2: execute code: if sprite_index = spr_morton and canjump = 1 { y-=1 vspeed = -3 image_single = 1 } alarm[2] = 150 Alarm Event for alarm 3: execute code: if sprite_index = spr_morton { sprite_index = spr_morton_attack image_single = 0 image_speed = 0.3 } alarm[3] = 200 Alarm Event for alarm 4: execute code: ID2 = instance_create(shx,shy,obj_magiccircle) ID2.direction = ID.direction alarm[5] = 4 Alarm Event for alarm 5: execute code: ID2 = instance_create(shx,shy,obj_magiccircle) ID2.direction = ID.direction Alarm Event for alarm 10: execute code: if sprite_index = spr_morton_attack exit image_speed = 0.3 canjump = 1 sprite_index = spr_morton ready = 0 alarm[1] = 7 moving = 1 alarm[2] = 75 alarm[3] = 100 Step Event: execute code: if hspeed > 0 and collision_rectangle(self.x+hspeed+15,self.y,self.x+hspeed+15,self.y+44,obj_solid ,1,1) hspeed = -1 if hspeed < 0 and collision_rectangle(self.x+hspeed-16,self.y,self.x+hspeed-16,self.y+44,obj_solid,1,1) hspeed = 1 if collision_rectangle(x-16,y+45,x+15,y+45,obj_solidtop,1,1) or collision_rectangle(x-16,y+45,x+15,y+45,obj_slopeparent,1,1) { gravity = 0 vspeed = 0 if sprite_index = spr_morton_jump sprite_index = spr_morton_shell } else gravity = 0.25 if vspeed > 4 vspeed = 4 while collision_rectangle(bbox_left,bbox_top,bbox_right,bbox_bottom,obj_slopeparent,1, 1) y-=1 if moving = 1 and ready = 0 { if obj_mario.x > x { hspeed += 0.05 direct = 1 } if obj_mario.x < x { hspeed += -0.05 direct = -1 } if hspeed > 1.5 hspeed = 1.5 if hspeed < -1.5 hspeed = -1.5 } if vspeed < 0 and collision_rectangle(x-16,y-1,x+15,y-1,obj_solid,1,1) vspeed = 1 Collision Event with object obj_solidtop: execute code: if y < other.y-27 and vspeed > 0 { y = other.y-32 vspeed = 0 gravity = 0 } Collision Event with object obj_mario: execute code: if moving = 0 exit if ready = 1 { if other.y < y-11 and obj_mario.stompstyle = 1 { if keyboard_check(vk_shift) obj_mario.vspeed = -8 else obj_mario.vspeed = -4 sound_play(snd_stomp) exit } //Begin Hurt Code if other.y > y-26 and other.invincible = 0 { hurtmario() } //End Hurt Code exit } if instance_exists(obj_invincibility) exit if other.y < y-27 and obj_mario.stompstyle = 1 { if keyboard_check(vk_shift) obj_mario.vspeed = -8 else obj_mario.vspeed = -4 if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 hspeed = 0 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump image_single = 0 imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale instance_destroy() } exit } if other.y < y-27 { hspeed = 0 if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump image_single = 0 imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale } if other.hitpoint = 0 { sound_play(snd_kick) instance_create(x-8,y,obj_100pts) } if other.hitpoint = 1 { sound_play(snd_kick2) instance_create(x-8,y,obj_200pts) } if other.hitpoint = 2 { sound_play(snd_kick3) instance_create(x-8,y,obj_400pts) } if other.hitpoint = 3 { sound_play(snd_kick4) instance_create(x-8,y,obj_800pts) } if other.hitpoint = 4 { sound_play(snd_kick5) instance_create(x-8,y,obj_1000pts) } if other.hitpoint = 5 { sound_play(snd_kick6) instance_create(x-8,y,obj_2000pts) } if other.hitpoint = 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_4000pts) } if other.hitpoint > 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_1uppts) } other.hitpoint += 1 if keyboard_check(vk_shift) other.vspeed = -8 else other.vspeed = -4 other.jumpnow = 2 if hitpoints = 0 instance_destroy() } //Begin Hurt Code else if other.invincible = 0 { hurtmario() } //End Hurt Code Collision Event with object obj_parcarry: execute code: if moving = 0 exit if ready = 1 exit if other.held = 1 { other.vspeed = -3 if other.hitpoint = 0 { sound_play(snd_kick) instance_create(x-8,y,obj_100pts) } if other.hitpoint = 1 { sound_play(snd_kick2) instance_create(x-8,y,obj_200pts) } if other.hitpoint = 2 { sound_play(snd_kick3) instance_create(x-8,y,obj_400pts) } if other.hitpoint = 3 { sound_play(snd_kick4) instance_create(x-8,y,obj_800pts) } if other.hitpoint = 4 { sound_play(snd_kick5) instance_create(x-8,y,obj_1000pts) } if other.hitpoint = 5 { sound_play(snd_kick6) instance_create(x-8,y,obj_2000pts) } if other.hitpoint = 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_4000pts) } if other.hitpoint > 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_1uppts) } other.hitpoint += 1 if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 hspeed = 0 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale instance_destroy() } } Collision Event with object obj_hammer: execute code: if moving = 0 exit if ready = 1 { instance_create(other.x-8,other.y,obj_smoke) sound_play(snd_bump) with (other) instance_destroy() exit } if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 hspeed = 0 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale sound_play(snd_kick) sound_play(snd_bump) instance_destroy() } instance_create(x-8,y,obj_100pts) with (other) instance_destroy() Collision Event with object obj_fireball: execute code: if moving = 0 exit if ready = 1 { instance_create(other.x-8,other.y,obj_smoke) sound_play(snd_bump) with (other) instance_destroy() exit } if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 hspeed = 0 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale sound_play(snd_kick) sound_play(snd_bump) instance_destroy() } instance_create(x-8,y,obj_100pts) with (other) instance_destroy() Collision Event with object obj_spinner: execute code: if moving = 0 exit if ready = 1 exit if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 hspeed = 0 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale instance_destroy() } if other.hitpoint = 0 { sound_play(snd_kick) instance_create(x-8,y,obj_100pts) } if other.hitpoint = 1 { sound_play(snd_kick2) instance_create(x-8,y,obj_200pts) } if other.hitpoint = 2 { sound_play(snd_kick3) instance_create(x-8,y,obj_400pts) } if other.hitpoint = 3 { sound_play(snd_kick4) instance_create(x-8,y,obj_800pts) } if other.hitpoint = 4 { sound_play(snd_kick5) instance_create(x-8,y,obj_1000pts) } if other.hitpoint = 5 { sound_play(snd_kick6) instance_create(x-8,y,obj_2000pts) } if other.hitpoint = 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_4000pts) } if other.hitpoint > 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_1uppts) } other.hitpoint += 1 Collision Event with object obj_explosion: execute code: if moving = 0 exit if ready = 1 exit if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 hspeed = 0 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale instance_destroy() } if other.hitpoint = 0 { sound_play(snd_kick) instance_create(x-8,y,obj_100pts) } if other.hitpoint = 1 { sound_play(snd_kick2) instance_create(x-8,y,obj_200pts) } if other.hitpoint = 2 { sound_play(snd_kick3) instance_create(x-8,y,obj_400pts) } if other.hitpoint = 3 { sound_play(snd_kick4) instance_create(x-8,y,obj_800pts) } if other.hitpoint = 4 { sound_play(snd_kick5) instance_create(x-8,y,obj_1000pts) } if other.hitpoint = 5 { sound_play(snd_kick6) instance_create(x-8,y,obj_2000pts) } if other.hitpoint = 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_4000pts) } if other.hitpoint > 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_1uppts) } other.hitpoint += 1 Collision Event with object obj_thrownbrick: execute code: if moving = 0 exit if ready = 1 exit if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 hspeed = 0 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale instance_destroy() } if other.hitpoint = 0 { sound_play(snd_kick) instance_create(x-8,y,obj_100pts) } if other.hitpoint = 1 { sound_play(snd_kick2) instance_create(x-8,y,obj_200pts) } if other.hitpoint = 2 { sound_play(snd_kick3) instance_create(x-8,y,obj_400pts) } if other.hitpoint = 3 { sound_play(snd_kick4) instance_create(x-8,y,obj_800pts) } if other.hitpoint = 4 { sound_play(snd_kick5) instance_create(x-8,y,obj_1000pts) } if other.hitpoint = 5 { sound_play(snd_kick6) instance_create(x-8,y,obj_2000pts) } if other.hitpoint = 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_4000pts) } if other.hitpoint > 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_1uppts) } other.hitpoint += 1 Collision Event with object obj_shell: execute code: if moving = 0 exit if ready = 1 exit if hitpoints > 0 { sound_play(snd_hurt) hitpoints -=1 ready = 1 alarm[0] = 60 hspeed = 0 sprite_index = spr_morton_shell image_speed = 0.15 } if hitpoints = 0 { sprite_index = spr_morton_jump imdead = instance_create(x,y+16,obj_enemy_dead) imdead.sprite_index = sprite_index imdead.image_xscale = image_xscale instance_destroy() } if other.hitpoint = 0 { sound_play(snd_kick) instance_create(x-8,y,obj_100pts) } if other.hitpoint = 1 { sound_play(snd_kick2) instance_create(x-8,y,obj_200pts) } if other.hitpoint = 2 { sound_play(snd_kick3) instance_create(x-8,y,obj_400pts) } if other.hitpoint = 3 { sound_play(snd_kick4) instance_create(x-8,y,obj_800pts) } if other.hitpoint = 4 { sound_play(snd_kick5) instance_create(x-8,y,obj_1000pts) } if other.hitpoint = 5 { sound_play(snd_kick6) instance_create(x-8,y,obj_2000pts) } if other.hitpoint = 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_4000pts) } if other.hitpoint > 6 { sound_play(snd_kick7) instance_create(x-8,y,obj_1uppts) } other.hitpoint += 1 Other Event: Animation End: execute code: if sprite_index = spr_morton_attack { sprite_index = spr_morton ID = instance_create(x,y,obj_magiccircle) ID.first = 1 shx = x shy = y sound_play(snd_magic) alarm[4] = 4 } Draw Event: execute code: if sprite_index = spr_morton draw_sprite_ext(sprite_index,bugfix,round(x),y,direct,1,0,c_white,1) else draw_sprite_ext(sprite_index,-1,round(x),y,direct,1,0,c_white,1)Spero di aver inserito tutto correttamente.
Making
-Giochi in sviluppo: (Tutto in sospeso)
Super Mario Bros.: The Koopa World =>Qui la discussione e la DEMO del gioco
Sonic Adventure 3: Chaos Collapse =>Non ancora presentabile
-Progetti futuri:
Keroro Gunsou: Pekopon Shinryaku Kansei!...Tabun. De Arimasu!
Risorse grafiche
Chara VX fatti da me QUI
Faceset Generator QUI
I miei tutorial
Tutorial password Game Maker 8 CLICCA QUI
Tutorial scelta Game Maker 8 CLICCA QUI
Recensioni - Caratteristiche e mie recensioni
Caratteristiche delle mie recensioni
Nel titolo della recensione scrivo sempre quale versione ho giocato (questo discorso non vale ovviamente per le esclusive), di conseguenza la mia recensione si basa solo su quella/e console. Quindi potrei non essere al corrente di eventuali differenze fra le varie versioni, a parte nel caso di problemi particolarmente gravi che si vengono quindi a sapere dai siti internet. Nel caso io sia al corrente di diversità fra le versioni, lo specificherò sempre sotto la recensione.
Quando in un gioco è presente il multiplayer o features di questo tipo, se nella recensione non ne parlo significa che non ho le ho potute provare.
Le recensioni che faccio si basano su cinque aspetti, fondamentali elementi presenti in un videogioco
-Storia: In questo aspetto viene analizzata la trama del videogioco e il modo in cui essa viene sviluppata durante l'intera esperienza videoludica. Essa non viene valutata solo in base alla sua semplicità o alla sua complessità , ma anche in base alla sua originalità , alla sua consistenza e alla sua adeguatezza. Trame complesse sviluppate male e inadeguate verranno valutate con un punteggio più basso rispetto ad una trama che, seppure semplice, risulta essere scorrevole al punto giusto e adeguata al contesto del gioco.
-Grafica: In questo aspetto viene analizzata la parte visiva del videogioco. Si valuteranno quindi in primis l'ispirazione, il design, le scelte cromatiche, l'atmosfera, la coerenza, la fisica, il framerate, animazioni e caratterizzazione di personaggi e ambientazioni. Solo poi, se necessario e se il genere di gioco che sto recensendo lo permette, verrà valutato quanto la grafica è al passo con i tempi. Un gioco senz'anima verrà valutato con un punteggio molto basso anche se la grafica utilizzata è di ultima generazione.
-Gameplay: L'aspetto più complesso. Del gameplay fanno parte le meccaniche di gioco, l'originalità , assenza di bug evidenti, la precisione dei comandi e come il tutto viene sviluppato e amalgamato. Sul gameplay vanno anche ad influire aspetti della parte grafica. Un gameplay teoricamente ottimo ma non utile ai fini del gioco in un level design non ispirato potrebbe ricevere una valutazione più bassa di un gameplay con qualche lacuna ma completo sotto altri punti di vista.
L'assenza del multiplayer verrà valutata negativamente solo in un gioco con un gameplay che potrebbe essere orientato ad essere giocato anche con più persone, mentre la sua presenza verrà valutata positivamente in caso di un ottimo sviluppo.
-Sonoro: In questo aspetto viene analizzata la componente audio del videogioco. Verranno valutate la coerenza con l'atmosfera in-game e la qualità della composizione. Verranno anche analizzati il doppiaggio e la bontà degli effetti sonori. Solitamente questo campo è quello che influenza meno il voto complessivo ma, se si presentasse di qualità scadente e troppo spesso inadeguato, influirà negativamente, arrivando a scalare anche di un voto.
Un doppiaggio mediocre in lingua italiana non influirà negativamente se presente l'opzione per selezionare in alternativa la lingua originale del gioco. Se anche il doppiaggio originale si rivela scadente, ciò abbasserà la valutazione complessiva.
-Longevità : In questo aspetto viene analizzata la longevità del gioco sia per quanto riguarda la storia principale, sia per la presenza di quest o missioni secondarie.
Essa verrà valutata sulla base del genere di gioco che sto recensendo. Un platform di 8 ore, per esempio, verrà valutato bene; un rpg con lo stesso quantitativo di ore verrà considerato insufficiente sotto questo aspetto.
Se il materiale secondario si rivelerà essere sviluppato male non influirà troppo negativamente. La presenza di un multiplayer ben fatto contribuirà ad aumentare la valutazione di questo aspetto.
---------------------------------------
La scala dei voti
I voti partono da 1 e salgono di 0.1 fino ad arrivare a 10.
Il voto finale non è necessariamente la media matematica dei voti parziali, ma un voto che li racchiude in modo omogeneo.
1 - 1.9: Un gioco che rientra in questo range di voti è un disastro sotto tutti i punti di vista, nulla funziona e nulla riesce ad integrarsi.
2 - 2.9: Un gioco che poteva avere qualche buono spunto per essere migliore, ma che semplicemente non c'è e si rivela fallimentare
3 - 3.9: Un gioco che ha di buono almeno l'idea con cui è stato concepito, ma si rivela tutto insufficiente
4 - 4.9: Un gioco afflitto da numerosi problemi sotto tutti gli aspetti, ma con qualcosa di appena sufficiente
5 - 5.9: Un gioco ancora troppo povero per arrivare ad essere considerato sufficiente. Qualche buon aspetto che però non basta a renderlo un gioco piacevole
6 - 6.9: Un gioco sufficiente, carino e magari anche piacevole, che meritava di essere sviluppato meglio e di essere reso più profondo
7 - 7.9: Un buon gioco, con alcuni problemi e qualche mancanza, ma che per la maggior parte degli aspetti è ben sviluppato
8 - 8.9: Un gioco molto valido e ben sviluppato sotto tutti i punti di vista, ma dove ancora si poteva fare un po' di più
9 - 9.9: Un ottimo gioco, realizzato sotto ogni punto di vista in maniera eccellente, che non pecca in nulla, apparte qualche dettaglio di minore importanza
10: Non rappresenta la perfezione, in quanto essa non esiste, ma un gioco che prende questo voto significa che è un capolavoro assoluto, che non pecca in nulla e le cui poche sbavature sono così lievi da non meritare di influire sul voto
Alcuni decimali però solitamente non li utilizzo, in quanto ritengo che essi non abbiano alcun significato reale e sono i seguenti:
.1
.4
.6
.9
Quindi, ad esempio un gioco da 8.1 verrà valutato con un 8, così come un 8.9 verrà valutato con un 9.
Il 10 non lo dò solamente se un gioco prende 10 in tutti i campi, ma anche in casi dove tutto sommato un 9 ad esempio nel sonoro è un punteggio comunque eccellente. Già se il sonoro fosse stato 8.8 il voto complessivo non sarebbe più stato 10. Punto fisso per poter arrivare a 10 è ottenere 10 in grafica e gameplay. Già se uno dei due è 9.8 il 10 non c'è più anche se tutto il resto è 10. Per gli altri campi varia un po', ma in ogni caso solo uno può permettersi di stare sul 9.
Le mie recensioni (AGGIORNATO 30/11/2014 - Sonic Boom: L'Ascesa di Lyric)
Sonic Generations (Xbox360) => QUI
Sonic Generations (3DS) => QUI
The Legend of Zelda: Skyward Sword => QUI
Rayman 3 HD => QUI
Sonic The Hedgehog 4 (Episode 1, Episode 2, Episode Metal) => QUI
New Super Mario Bros. Wii => QUI (Topic serie New Super Mario Bros.)
Paper Mario => QUI (Topic serie Paper Mario)
Xenoblade Chronicles => QUI
New Super Mario Bros. 2 => QUI (Topic serie New Super Mario Bros.)
New Super Mario Bros. U => QUI (Topic serie New Super Mario Bros.)
Luigi's Mansion => QUI (Topic Luigi's Mansion 2)
Paper Mario: Sticker Star=> QUI (Topic serie Paper Mario)
Sonic & All-Stars Racing: Transformed => QUI
Luigi's Mansion 2 => QUI (Topic Luigi's Mansion 2)
Bayonetta => QUI (Topic Bayonetta 2)
Pokémon Versione Bianca 2 => QUI
New Super Luigi U => QUI (Topic serie New Super Mario Bros.)
Mario & Luigi: Dream Team Bros => QUI
Rayman Legends => QUI
Sonic Lost World (WiiU) + DLC => QUI
The Legend of Zelda: The Wind Waker HD => QUI
Super Mario 3D World => QUI
Sonic Lost World (3DS) => QUI
Pokemon Y => QUI
Mario Kart 8 => QUI
Yoshi's New Island => QUI
The Legend of Zelda: A Link to the Past => QUI (Topic The Legend of Zelda: A Link Between Worlds)
The Legend of Zelda: A Link Between Worlds => QUI
Hyrule Warriors + Master Quest DLC Pack => QUI
Pacchetto DLC The Legend of Zelda X Mario Kart 8 => QUI
Bayonetta 2 => QUI
Sonic Boom: L'Ascesa di Lyric => QUI
Regali e premi
Natale 2014
http://www.rpg2s.net/dax_games/r2s_regali2s.png
Citazioni dal forum
-- By Guardian --
Link to comment
Share on other sites
2 answers to this question
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now