Đẳng Cấp Học Sinh

Đẳng Cấp Học Sinh

Đại Ân 2
 
Trang ChínhPortalCalendarTrợ giúpTìm kiếmThành viênNhómĐăng kýĐăng Nhập

Share | 
 

 Tự sáng tạo trò chơi với phần mềm Game Maker (phần 3)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
zavasaki11
Thành Viên Cấp 2
Thành Viên Cấp 2


Tổng số bài gửi : 21
Join date : 03/05/2012
Age : 23
Đến từ : Đại Ân 2

Bài gửiTiêu đề: Tự sáng tạo trò chơi với phần mềm Game Maker (phần 3)   Mon May 21, 2012 4:23 pm

Trong phần này, bạn sẽ làm quen với cách tạo ra nhiều "hành động" thú vị cho đối tượng trong game, ví dụ như để cho hai con quái vật va 'bốp" vào nhau hay nảy tung lên khi va vào tường...

Tạo action

Các hành động (action) chỉ ra những việc xảy ra trong một trò chơi mà Game Maker tạo nên. Những hành động này được đặt trong các “sự kiện” của object. Bất cứ khi nào sự kiện diễn ra, những hành động này được thực hiện và tạo ra “cách ứng xử” của các instance trong object. Có rất nhiều hành động khác nhau trong phần mềm này và điều quan trọng là chúng ta phải hiểu rõ về chức năng của chúng.

Bạn có thể tìm thấy tất cả các hành động ở bên tay phải bảng Object properties và có 6 loại action khác nhau. Cách chọn actions chúng ta đã thảo luận ở phần 2.

Khi bạn đã “kéo-thả” một action trong danh sách, một cửa sổ sẽ hiện lên và lúc này bạn có thể đưa vào các tham số cho hành động. Các tham số này sẽ được mô tả ở bên dưới các biểu tượng của actions; tuy nhiên có hai loại tham số phổ biến nhất mà chúng ta cần bàn luận kỹ hơn.

Ở phần đầu của bảng tham số bạn sẽ thấy mục Applies to và lúc này bạn phải chọn Self, Other hay Object. Phần mặc định Self sẽ quy định hành động thực hiện cho bản thân instance và phần lớn bạn sẽ chọn mục này. Trong trường hợp xảy ra sự kiện collision (đụng độ), bạn có thể xác định hành động cho instance khác tham gia vào vụ “đụng độ” đó, ví dụ như bạn có thể phá huỷ instance kia chẳng hạn. Cuối cùng, bạn có thể áp dụng hành động cho tất cả các instance của một object xác định.

Kiểu thứ hai là hộp trạng thái Relative. Nếu đánh dấu vào hộp này, giá trị mà bạn gõ vào sẽ tương ứng với những giá trị hiện thời. Ví dụ: bạn có thể thêm vào cho giá trị hiện tại chứ không thay đổi giá trị hiện tại thành một giá trị mới. Những tham số khác sẽ được mô tả dưới đây. Sau đó bạn có thể thay đổi các tham số bằng cách nhấn đúp vào biểu tượng hành động.

Bắt đầu di chuyển. Bạn có thể sử dụng action này để bắt đầu di chuyển instance theo một hướng nhất định với nút có mũi tên 8 hướng này. Tốc độ di chuyển được tính bằng số pixel cho mỗi step. Bạn cũng có thể xác định nhiều hướng khác nhau cho đối tượng.

Thiết lập hướng và tốc độ di chuyển. Đây là cách thứ hai để xác định một chuyển động với góc từ 0 và 360 độ. 0 có nghĩa là di chuyển về bên phải và hướng di chuyển là theo chiều ngược kim đồng hồ. Như vậy 90 độ có nghĩa là di chuyển thẳng đứng lên. Nếu bạn muốn tạo ra một hướng bất kỳ thì có thể nhập vào số ngẫu nhiên từ 0 đến 360. Bạn sẽ để ý thấy là máy sẽ cho kết quả ngẫu nhiên thấp hơn con số mà bạn chỉ ra. Do đó, hãy chú ý đến hộp Relative. Nếu đánh dấu vào đây thì chuyển động mới sẽ được thêm vào chuyển động trước. Ví dụ: nếu instance đang chuyển động lên trên và bạn thêm chuyển động sang trái nào đó thì nõ sẽ chuyển động lên về phía bên trái.

Di chuyển đến một điểm xác định. Bạn có thể chỉ ra một vị trí, tốc độ xác định cho một instance di chuyển đến. Ví dụ: nếu muốn một viên đạn bay tới con tàu vũ trụ chẳng hạn, bạn có thể dùng tới vị trí như (tau.x,tau.y). Nếu đánh dấu vào hộp Relative, bạn sẽ xác định được tương đối cho vị trí hiện thời của instance.

Thiết lập tốc độ di chuyển theo phương nằm ngang. Tốc độ của instance bao gồm chuyển động theo phương nằm ngang và thẳng đứng. Với action này, bạn có thể thay đổi tốc độ theo phương nằm ngang (nghĩa là chuyển động sang phải, còn đặt giá trị âm instance sẽ chuyển động sang trái).

Thiết lập tốc độ di chuyển theo phương nằm dọc. Cũng tương tự như trên.

Thiết lập trọng lực. Với action này, bạn có thể tạo ra trọng lực cho một object nhất định. Bạn xác định một hướng (góc từ 0 đến 360 độ) và một tốc độ, và trong mỗi step tốc độ này được kèm vào chuyển động hiện tại của object. Thường thì bạn chỉ cần một số gia tốc độ rất nhỏ (ví dụ như 0,01) và hướng chuyển động đi xuống (270 độ chẳng hạn). Nếu đánh dấu vào hộp Relative, bạn có thể tăng được tốc độ trọng lực và hướng. Chú ý một điều là, không giống như trong thực tế, object khác nhau có các hướng trọng lực khác nhau.

Đảo ngược hướng theo phương nằm ngang. Với action này bạn có thể thay đổi chuyển động của instance theo phương ngang. Ví dụ: bạn có thể dùng khi object đụng vào bờ tường chẳng hạn.

Đảo ngược hướng theo phương thẳng đứng. Ví dụ, bạn có thể dùng khi object đụng vào nền cứng nằm ngang.

Thiết lập va chạm. Va chạm làm cho các instance di chuyển chậm lại. Bạn hãy xác định mức độ của va chạm. Trong mỗi step mức độ này bị trừ đi cho đến khi tốc độ bằng 0. Thường thì bạn muốn con số rất nhỏ, ví dụ như 0,01.

Nhảy đến một vị trí cho trước. Khi dùng action này, bạn có thể đặt instance vào một vị trí xác định. Bạn chỉ cần xác định toạ độ (x,y) cho instance đó là được. Nếu đánh dấu vào hộp Relative, vị trí này tương ứng với vị trí hiện tại của instance. Hành động này thường được áp dụng để di chuyển liên tục một instance.

Nhảy đến vị trí bắt đầu. Hành động này giúp bạn đặt instance quay trở lại vị trí ban đầu mà nó được tạo ra.

Nhảy đến vị trí ngẫu nhiên. Bạn có thể dùng hành động này để di chuyển instance đến một vị trí ngẫu nhiên trong room. Những vị trí được chọn là nơi instance không "giao" với các instance "dạng rắn" nào cả.

Xuất hiện lại khi ra ngoài room. Với hành động này, bạn có thể để một instance đi xoay quanh room khi nó rời cạnh này của room rồi xuất hiện ở cạnh bên kia. Hành động này thường được dùng trong sự kiện Outside. Chú ý một điều là instance phải có tốc độ phù hợp để xuất hiện lại như vậy do hướng của nó dựa trên hướng của chuyển động (dọc, ngang hay cả hai).

Di chuyển đến vị trí tiếp xúc. Bạn có thể dùng action này để di chuyển instance theo một hướng cho trước cho tới khi tiến đến một vị trí tiếp xúc. Nếu đã có một sự kiện "đụng độ" tại vị trí hiện tại thì instance không di chuyển. Nói cách khác, instance được đặt ngay trước khi một "đụng độ" xảy ra. Bạn có thể xác định hướng với khoảng cách tối đa để di chuyển. Ví dụ: khi instance đang "rơi" bạn có thể di chuyển xuống dưới cho đến khi chạm vào một objưct nào đó. Bạn cũng có thể chỉ ra nó chỉ áp dụng cho những vật dạng "rắn" hay tất cả các đối tượng. Thường thì bạn dùng hành động này cho sự kiện "đụng độ" để đảm bảo rằng instance dừng lại khi va chạm với instance khác.

Bật vào các object khác.
Khi đặt hành động này vào sự kiện "đụng độ" với object khác, instance sẽ nảy ngược lại theo quy luật vật lý thông thường. Nếu đặt thông số là False thì hành động chỉ đúng với các "bức tường" nằm dọc và ngang. Khi đặt thông số bằng True thì hành động được áp dụng cho cả các "bức tường" dạng cong và "lởm chởm". Bạn cũng có thể xác định hành động cho các object dạng rắn hoặc với tất cả các object.

Tạo room

Sau khi đã hiểu sơ qua các khái niệm về object và các “ứng xử” của nó dưới hình thức “sự kiện” và “hành động”, bạn có thể bắt tay vào tạo room, hay còn gọi là các level cho game. Bất kỳ game nào cũng có ít nhất một room. Trong những room này, chúng ta hãy đặt vào các instance của các object. Khi game bắt đầu, room thứ nhất được thể hiện luôn và các instance trong đó được “thổi một luồng sinh khí” do các hành động được tiến hành.

Có rất nhiều khả năng lựa chọn khi tạo room. Ngoài việc đặt một loạt các thuộc tính và thêm instance của object, bạn còn có thể thêm vào các background, xác định các hình và thêm tiêu đề.

Trước hết, để tạo room, hãy chọn chức năng Add Room và bảng sau đây sẽ hiện ra:



Ở phần trên cùng là một thanh công cụ. Tại đây, bạn có thể xác định kích cỡ của bảng dùng để đặt vị trí các object. Bạn cũng có thể quyết định có để các đường kẻ ô hay không. Đôi khi bạn sẽ thấy rất hữu ích khi để ẩn một số thứ trong room; dù vậy khi các instance được thêm vào, chúng sẽ hiện ra và độc lập với phần thiết lập chế độ xem (view setting). Ở đây có các nút để xoá instance khỏi room và chuyển toàn bộ các instance lên số lượng pixel (điểm ảnh) khá lớn. Hãy dùng đến các số âm để dịch chuyển instance lên hoặc xuống. Điều này là rất hữu ích khi bạn muốn mở rộng room (thậm chí đặt các instance ra ngoài room). Nút Undo dùng để bỏ đi phần vừa chỉnh sửa, nút OK dùng để lưu chỉnh sửa.

Ở bên tay trái bạn sẽ thấy 3 mục chính là objects, settings và backgrounds. Với objects bạn có thể thêm instance vào room. Settings sẽ giúp bạn chỉ ra số thiết lập cho room. Trong mục backgrounds bạn có thể thiết lập các hình nền cho room.

Add instances ](Thêm instance).

Khi bắt đầu room trống không với nền màu xám. Để thêm instance vào, đầu tiên chọn mục objects hoặc Add instance. Sau đó chọn object mà bạn muốn thêm vào và chú ý rằng khi bạn thay đổi nguồn của sprite thì sẽ có biểu tượng gạch chéo trên hình. Nhấn chuột trái vào màn hình room. Lúc này một instance sẽ hiện ra. Nếu bạn giữ phím Alt trong khi đặt instance này thì nó không được "sắp hàng" trên bảng. Nếu giữ phím chuột trong lúc kéo instance vào room thì bạn sẽ đặt nó được đúng chỗ. Còn khi giữ phím Shift trong khi nhấn và di chuyển chuột thì vô số instance tương tự sẽ được thêm vào.

Bạn sẽ để ý thấy một điều là nếu đặt một instance lên trên một instance khác thì instance ban đầu sẽ biến mất. Thường thì đây là điều mà bạn muốn, nhưng tất nhiên không phải lúc nào cũng thế. Bạn có thể tránh được điều này bằng cách không đánh dấu vào hộp Delete underlying.

Nếu muốn thay đổi vị trí của instance, hãy giữ phím Ctrl và nhấn chuột trái vào instance đó rồi giữ chuột để kéo vào vị trí mới. (Dùng phím Alt thì sẽ chính xác hơn). Nếu bạn giữ Ctrl trong khinhấn chuột phải vào một instance thì một menu xuất hiện. Tại đây, bạn có thể xoá object, nhập vào vị trí chính xác cho instance hay di chuyển instance ở tận cùng lên đầu và ngược lại.

Room setting (Thiết lập room).

Mỗi room có một số thiết lập riêng mà bạn có thể thay đổi bằng cách nhấn vào mục settings. Mỗi room đều có một tên riêng và tốt hơn hết hãy cho nó một cái tên có nghĩa. Bạn cũng có thể thiết lập chiều rộng và độ cao của room (bằng pixel), cũng như tốc độ của game (số step/giây). Nếu tốc độ càng cao thì hành động càng tỏ ra "êm ái". Tuy nhiên, bạn cần có máy tính cấu hình cao để chạy nó.

Thiết lập background

Dùng nút backgrounds bạn có thể tạo được hình nền cho room. Thực ra, bạn có thể xác định vô số backgrounds. Trang đó hiện ra như sau:



Ở phần đầu là màu của nền và bạn có thể nhấn vào đó để thay đổi. Màu nền chỉ hữu dụng nếu bạn không dùng hình nền che lấp toàn bộ room. Nói cách khác, tốt nhất là không đánh dấu vào ô có tên Draw background color.

Bạn sẽ thấy một danh sách gồm 8 background hiện ra và có thể xác định cho từng cái. Nhưng thường thì bạn chỉ cần từ một đến hai hình nền. Muốn xác định được background, trước hết hãy chọn trong danh sách. Sau đó đánh dấu vào hộp có tên Visible when room starts, nếu không bạn sẽ không nhìn thấy background mà bạn chọn. Tên của background sẽ được in đậm khi đã được xác định.

Lúc này bạn có thể chỉ ra hình nền trong menu và bạn có thể thay đổi rất nhiều setting. Trước hết, bạn cần xác định xem hình nền này đặt theo chiều dọc hay chiều ngang và có thể chọn vị trí của background trong room. Bạn còn có sự lựa chọn khác là trải rộng hình nền. Do đó background sẽ được tính tỷ lệ để "lấp đầy" room. Cuối cùng, bạn có thể "cuộn" background này bằng cách tạo cho nó tốc độ lên hoặc xuống (xác định bằng số pixel/step). Tốt hơn hết không sử dụng cách cuộn với nền bị trải rộng vì trông rất xấu.

Ngoài ra, bạn sẽ nhìn thấy một hộp có tên Foreground image. Khi đánh dấu vào đây, hình nền sẽ trở thành hình "phủ", nghĩa là "đè" lên các hình khác chứ không nằm sau nữa.

Nguồn : [You must be registered and logged in to see this link.]
Về Đầu Trang Go down
Xem lý lịch thành viên
 

Tự sáng tạo trò chơi với phần mềm Game Maker (phần 3)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
Đẳng Cấp Học Sinh :: Lập Trình - Thiết Kế :: Phát Triển Game :: Game Maker-