Membuat Game Fps Sederhana Dengan Game Maker

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker

FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan abjad utama atau dengan kata lain tampilan atau pengambilan kamera gambar dalam game menciptakan kita seakan - akan menjadi abjad tersebut, karna penglihatan dari orang pertama atau abjad utama.Nah, kini kita akan Membuat Game FPS Sederhana Dengan Game Maker. Tutorial kali ini sedikit lebih rumit dan panjang jadi perhatikan baik - baik step - stepnya.

A. Sprites

Sekarang pertama - tama kita harus menyiapkan sprites yang di perlukan untuk menciptakan game FPS kita.

- Sprites

1. spr_wall_hor

Baca Juga


 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker


2. spr_wall_ver

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker



3. spr_player

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker


4. spr_barrel

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker
5. spr_barrel_exp

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker
6. spr_plant

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker

7. spr_monster

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker


8. spr_monster_dead

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker


9. spr_shotgun
 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker

- Textures

1. tex_barrel

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker



2. tex_barrel_exp

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker




3. tex_plant

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker








4. tex_monster

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker




5. tex_monster_dead

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker


- Background

1. texture_wall

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker








2. texture_floor

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker








3. texture_ceiling

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker








Anda juga dapan mengunduh resourcenya di sini : download
Dan anda cukup menginportnya dengan cara klik File > Import Resources.

B. Objek

Sekarang kita akan menciptakan objek yang akan muncul dalam game.

1. obj_wall_basic

Buatlah sebuah objek dengan nama obj_wall_basic centang pada bab Visible dan Solid, kemudian tambahkan sebuah event.

Klik Add Event > Draw > Draw > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut 

/* x1=panjang dimulai y1=lebar dimulai x2=panjang simpulan y2=lebar simpulan z1=tinggi dimulai z2=tinggi simpulan tex=tekstur dinding (dari background 'texture_wall') */ {   d3d_draw_wall(x1,y1,z1,x2,y2,z2,tex,1,1); } 

2. obj_wall_hor

untuk tampilan tembok horizontal buatlah sebuah objek dengan nama obj_wall_hor dengan sprites spr_wall_hor dan setting Parentnya obj_wall_basic kemudian tambahkan sebuah event.

Klik Add Event > Create > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   x1 = x-16;   x2 = x+16;   y1 = y;   y2 = y;   z1 = 32;   z2 = 0;   tex = background_get_texture(texture_wall); } 

3. obj_wall_ver

untuk tampilan tembok vertikal buatlah sebuah objek dengan nama obj_wall_ver dengan sprites spr_wall_ver dan setting Parentnya obj_wall_basic kemudian tambahkan sebuah event.

Klik Add Event > Create > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   x1 = x;   x2 = x;   y1 = y-16;   y2 = y+16;   z1 = 32;   z2 = 0;   tex = background_get_texture(texture_wall); }  

4. obj_player

Sekarang kita menciptakan objek dengan nama obj_player pilih spritesnya spr_player setting depthnya menjadi 100, objek inilah yang akan menjadi player kita dalam objek ini kita akan menambahkan beberapa event jadi perhatikan dengan baik - baik.

Klik Add Event > Create > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   global.camx = x;   global.camy = y;   global.camsin = sin(direction*pi/180);   global.camcos = cos(direction*pi/180);    friction = 0.2;      // initialize 3D   d3d_start();   d3d_set_hidden(true);   d3d_set_lighting(false);   d3d_set_culling(false);   d3d_set_fog(true,c_black,10,300);   // interpolate textures   texture_set_interpolation(true);  //set health  health=100; } 

Klik Add Event > Step > Step > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   global.camx = x;   global.camy = y;   global.camsin = sin(direction*pi/180);   global.camcos = cos(direction*pi/180); } 

Klik Add Event > Collison > obj_wall_basic > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   x = xprevious;   y = yprevious;   if (abs(hspeed) >= abs(vspeed) && not place_meeting(x+hspeed,y,obj_wall_basic))      { x += hspeed; exit;}  if (abs(vspeed) >= abs(hspeed) && not place_meeting(x,y+vspeed,obj_wall_basic))      { y += vspeed; exit;}   speed = 0; } 

Klik Add Event > Keyboard > Left > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut


{   direction += 3; } 

Klik Add Event > Keyboard > Rigt > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut


{   direction -= 3; } 

Klik Add Event > Keyboard > Up > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut


{   var maxspeed;   if keyboard_check(vk_shift) maxspeed = 3 else maxspeed = 1.5;   if (speed < maxspeed ) speed = min(maxspeed ,speed+0.4); }

Klik Add Event > Keyboard > Down > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   var maxspeed;   if keyboard_check(vk_shift) maxspeed = 3 else maxspeed = 1.5;   if (speed > -maxspeed) speed = max(-maxspeed,speed-0.4); } 

Klik Add Event > Keyboard > X-Key > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut


{   var xn,yn;   xn = x + sin(direction*pi/180);   yn = y + cos(direction*pi/180);   if not place_meeting(xn,yn,obj_wall_basic)     { x = xn; y = yn; } }

Klik Add Event > Keyboard > Z-Key > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut


{   var xn,yn;   xn = x - sin(direction*pi/180);   yn = y - cos(direction*pi/180);   if not place_meeting(xn,yn,obj_wall_basic)     { x = xn; y = yn; } }  
Klik Add Event > Other > No More Health > Pada tab kanan pilih Main 2 > Display Message > Isi denggan pesan "You Are Dead !!!"

tambahkan lagi event gres di bawahnya Pada tab kanan pilih Main 2 > Restart Game

Klik Add Event > Draw > Draw > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut 

{   // set the projection    d3d_set_projection(x,y,10, x+cos(direction*pi/180),y-sin(direction*pi/180),10, 0,0,1);   // set color and transparency   draw_set_alpha(1);   draw_set_color(c_white);   // draw floor and ceiling    d3d_draw_floor(0,0,0,room_width,room_height,0,                    background_get_texture(texture_floor),32,32);   d3d_draw_floor(0,0,32,room_width,room_height,32,                    background_get_texture(texture_ceiling),24,24); } 

5. obj_plant

Sekarang untuk pohonnya buat objek gres dengan nama obj_plant pilih spritesnya spr_plant setting parentnya menjadi obj_wall_basic kemudian tambahkan event.

Klik Add Event > Draw > Draw > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut 

{   if (point_distance(x,y,global.camx,global.camy) > 240) exit;   var tex;   tex = sprite_get_texture(tex_plant,0);   d3d_draw_wall(x-7*global.camsin,y-7*global.camcos,24,                 x+7*global.camsin,y+7*global.camcos,0,tex,1,1); } 

6. obj_barrel

Sekarang untuk objek drum dalam game buat sebuah objek gres dengan nama obj_barrel pilih spritesnya spr_barrel setting parentnya menjadi obj_wall_basic selanjutnya ubah depthnya menjadi -10 kemudian tambahkan event.

Klik Add Event > Create > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{ Image_speed=0.1; } 

Klik Add Event > Draw > Draw > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   if (point_distance(x,y,global.camx,global.camy) > 240) exit;   var tex;   tex = sprite_get_texture(tex_barrel,image_index);   d3d_draw_wall(x-6*global.camsin,y-6*global.camcos,12,   x+6*global.camsin,y+6*global.camcos,0,tex,1,1); } 

Klik Add Event > Destroy > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   instance_create(x,y,obj_barrel_exp); } 

7. obj_barrel_exp

Sekarang untuk objek drum menghilang dalam game buat sebuah objek gres dengan nama obj_barrel_xp pilih spritesnya spr_barrel_xp selanjutnya ubah depthnya menjadi -10 kemudian tambahkan event.

Klik Add Event > Create > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{ image_speed=0.2; } 

Klik Add Event > Draw > Draw > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   if (point_distance(x,y,global.camx,global.camy) > 240) exit;   var tex;   tex = sprite_get_texture(tex_barrel_exp,image_index);   draw_set_alpha(1-0.1*image_index);   d3d_draw_wall(x-12*global.camsin,y-12*global.camcos,24,                 x+12*global.camsin,y+12*global.camcos,0,tex,1,1);   draw_set_alpha(1); } 

Klik Add Event > Other > Animation End > Pada tab kanan pilih Main 1 > Destroy Instance

8. obj_monster

Sekaran untuk musuhnya buat sebuah objek dengan nama obj_monster pilih spritesnya spr_monster selanjutnya ubah depthnya menjadi -10 kemudian tambahkan event.

Klik Add Event > Create > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{ image_speed=0.3; image_index=floor(random(4)); }  

Klik Add Event > Draw > Draw > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   if (point_distance(x,y,global.camx,global.camy) > 240) exit;   var tex;   tex = sprite_get_texture(tex_monster,image_index);   d3d_draw_wall(x-8*global.camsin,y-8*global.camcos,19,                 x+8*global.camsin,y+8*global.camcos,3,tex,1,1); } 

Klik Add Event > Destroy > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   instance_create(x,y,obj_monster_dead); } 

Klik Add Event > Step > Step > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   if (point_distance(x,y,global.camx,global.camy) > 200)      { speed = 0; exit; }   if (collision_line(x,y,global.camx,global.camy,obj_wall_basic,false,false))     { speed = 0; exit; }     if (point_distance(x,y,global.camx,global.camy) < 12)    {      speed = 0; health -= 2;      exit;    }   move_towards_point(global.camx,global.camy,1.4); } 

9. obj_monster_dead

Sekarang untuk objek monster menghilang dalam game buat sebuah objek gres dengan nama obj_monster_dead pilih spritesnya spr_monster_dead selanjutnya ubah depthnya menjadi -10 kemudian tambahkan event.

Klik Add Event > Create > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{ image_speed=0.2; } 

Klik Add Event > Draw > Draw > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   if (point_distance(x,y,global.camx,global.camy) > 240) exit;   var tex;   tex = sprite_get_texture(tex_monster_dead,image_index);   draw_set_alpha(1-0.1*image_index);   d3d_draw_wall(x-12*global.camsin,y-12*global.camcos,24,                 x+12*global.camsin,y+12*global.camcos,0,tex,1,1);   draw_set_alpha(1); } 

Klik Add Event > Other > Animation End > Pada tab kanan pilih Main 1 > Destroy Instance

10. obj_gun

Sekarang untuk senjata pemain buatlah sebuah objek gres dengan nama obj_gun pilih spritesnya spr_shotgun selanjutnya ubah depthnya menjadi -100 kemudian tambahkan event.

Klik Add Event > Create > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   image_speed = 0;   image_index = 0;   can_shoot = true; } 

Klik Add Event > Draw > Draw > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   d3d_set_projection_ortho(0,0,640,480,0);   d3d_set_hidden(false);   draw_sprite_ext(spr_shotgun,-1,0,480-256,2,2,0,c_white,1);   draw_set_alpha(0.4);   draw_healthbar(5,460,100,475,health,c_black,c_red,c_lime,0,true,true);   draw_set_alpha(1);   d3d_set_hidden(true); } 

Klik Add Event > Other > Animation End > Pada tab kanan pilih Main 1 > Destroy Instance

Klik Add Event > Keyboard > Space > Pada tab kanan pilih Control > Execute Code > Isi dengan script berikut

{   // check whether you can shoot   if (not can_shoot) exit;   can_shoot = false;   // show the animation and play the sound   image_speed = 0.4;   image_index = 0;   // determine what you hit   var xx, yy, ii;   xx = global.camx;   yy = global.camy;   repeat (50)   {     xx += 4*global.camcos;     yy -= 4*global.camsin;     ii = instance_position(xx,yy,obj_wall_basic);     if (ii == noone)      {       ii = instance_position(xx,yy,obj_monster);       if (ii == noone) continue;       with (ii) instance_destroy();       break;     }     if object_is_ancestor(ii.object_index,obj_plant) continue;     if (ii.object_index == obj_barrel)        with (ii) instance_destroy();     break;   } } 

C. Rooms

Buatlah sebuah room gres dengan nama rm_main kemudian ubah snap_x = 16 dan snap_y = 16 kemudian buatlah room anda.

 FPS atau First Person Shooter yaitu game yang memfokuskan tampilan game pada pandangan k Membuat Game FPS Sederhana Dengan Game Maker

*Notes
- Hijau renta yaitu objek Pohon
- Merah yaitu drum
- Biru muda yaitu monster
- Biru renta yaitu pemain

Kemudian coba jalankan game anda dengan tekan pada keyboard F5. atau klik RUN > Run Normaly.

Sekarang game FPS anda sudah selesai, anda sanggup mengembangkannya menjadi sekeren game - game FPS lain menyerupai COD atau yang lain.

*Notes game ini di buat dan di coba dengan memakai Game Maker 8.0 Full Version

Artikel Terkait

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel