Tìm hiểu phương pháp xây dựng game bắn xe tăng với flash

  • Số trang: 23 |
  • Loại file: PDF |
  • Lượt xem: 13 |
  • Lượt tải: 0
nganguyen

Đã đăng 34173 tài liệu

Mô tả:

Đại Học Quốc Gia TP.HCM Trường Đại Học Công Nghệ Thông Tin BÀI THU HOẠCH MÔN PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC ĐỀ TÀI: TÌM HIỂU PHƯƠNG PHÁP XÂY DỰNG GAME BẮN XE TĂNG VỚI FLASH GVHD: GS.TSKH. Hoàng Kiếm Người thực hiện: Bùi Chí Cường Mã số: CH1101007 Lớp: Cao học khóa 6 TP.HCM – 2012 LỜI CẢM ƠN Lời đầu tiên, em xin gửi lời chân thành cảm ơn đến Ban Chủ nhiệm trường Đại học công nghệ thông tin TP HCM đã tạo điều kiện cho em được tiếp cận với bộ môn Phương pháp nghiên cứu khoa học. Bộ môn này đã giúp em có những phương pháp làm việc khoa học để hoàn thành tốt bài tiểu luận này. Em xin cảm ơn thầy GS.TSKH. Hoàng Kiếm đã tận tình truyền đạt kiến thức cho chúng em cũng những gì thầy đã giúp đỡ, hướng dẫn để em thực hiện bài tiểu luận. Em cũng xin gửi lời cảm ơn sâu sắc đến quý thầy cô trong Khoa Công nghệ Thông tin cùng các bạn bè thân hữu đã nhiệt tình đóng góp ý kiến, cũng như động viên để em hoàn thiện hơn đề tài của mình. Mặc dù đã rất cố gắng nhưng đề tài khó tránh khỏi những thiếu sót và sai lầm, em mong thầy cô và bạn bè cho ý kiến để đề tài ngày càng hoàn thiện hơn. Một lần nữa,em xin chân thành cảm ơn! Tp. HCM, tháng 4 năm 2012 Bùi Chí Cường CH1101007 MỤC LỤC LỜI CẢM ƠN ...............................................................................................................ii MỤC LỤC .................................................................................................................. iii DANH MỤC CÁC HÌNH VẼ ........................................................................................ CHƯƠNG I - MỞ ĐẦU ........................................................................................ 5 1.1 1.2 Giới thiệu chung. ...................................................................................................... 5 Hoạt động nghiên cứu. .............................................................................................. 6 CHƯƠNG II - CÁC PHƯƠNG PHÁP NGHIÊN CỨU ......................................... 7 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 Nguyên tắc 1 - Nguyên tắc phân nhỏ ......................................................................... 7 Nguyên tắc 2 - Nguyên tắc tách khỏi ......................................................................... 7 Nguyên tắc 3 - Nguyên tắc xếp lồng .......................................................................... 7 Nguyên tắc 4 - Nguyên tắc phẩm chất cục bộ ............................................................ 7 Nguyên tắc 5 - Nguyên tắc kết hợp............................................................................ 7 Nguyên tắc 6 - Nguyên tắc vạn năng ......................................................................... 8 Nguyên tắc 7 - Nguyên tắc thực hiện sơ bộ ............................................................... 8 Nguyên tắc 8 - Nguyên tắc thay đổi màu sắc ............................................................. 8 CHƯƠNG III - PHÂN TÍCH VÀ THIẾT KẾ GAME BẮN XE TĂNG VỚI FLASH ......................................................................................................................... 9 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 Áp dụng nguyên tắc phân nhỏ. .................................................................................. 9 Áp dụng nguyên tắc tách khỏi ................................................................................. 12 Áp dụng nguyên tắc xếp lồng. ................................................................................. 14 Áp dụng nguyên tắc phẩm chất cục bộ. ................................................................... 15 Áp dụng nguyên tắc kết hợp. ................................................................................... 15 Áp dụng nguyên tắc vạn năng. ................................................................................ 16 Áp dụng nguyên tắc quan hệ phản hồi ..................................................................... 18 Áp dụng nguyên tắc thay đổi màu sắc. .................................................................... 21 CHƯƠNG IV - KẾT LUẬN ................................................................................ 23 4.1 4.2 4.3 Tóm tắt các kết quả đạt được ................................................................................... 23 Hướng phát triển ..................................................................................................... 23 Tài liệu tham khảo .................................................................................................. 23 DANH MỤC CÁC HÌNH VẼ Hình 1 - Đối tượng Tank cấu thành từ các bộ phận rời rạc ........................................................ 9 Hình 2 - Bản đồ trong game ................................................................................................... 10 Hình 3 - Các loại tường .......................................................................................................... 11 Hình 4 - Cấu trúc tường gạch ................................................................................................. 12 Hình 5 - Cấu trúc tường đá, thép ............................................................................................ 12 Hình 6 - Cấu trúc file Excel cho Map ..................................................................................... 13 Hình 7 - Cơ chế thêm hình của Flash ...................................................................................... 14 Hình 8 - Đối tượng thêm sau chồng lên đối tượng thêm trước nó ............................................ 14 Hình 9 - Độc lập giữa code và giao diện ................................................................................. 15 Hình 10 - Một Map hoàn chỉnh trong Game ........................................................................... 16 Hình 11 - Độ lệch tâm của đạn ............................................................................................... 17 Hình 12 - Tương tác giữa các đối tượng ................................................................................. 19 Hình 13 - Hệ thống chuyển động ............................................................................................ 20 Hình 14 - Xe tăng người chơi ................................................................................................. 22 Hình 15 - Xe tăng địch ........................................................................................................... 22 BÙI CHÍ CƯỜNG - CH1101007 1 LỚP CH CNTTQM - K6 CHƯƠNG I - MỞ ĐẦU 1.1 Giới thiệu chung. Trong cuộc sống số ngày nay, game được xem như là một công cụ giải trí hiệu quả. Những máy chơi game thế hệ mới ra đời, công nghệ đồ họa không ngừng phát triển, các thiết bị giải trí cầm tay ngày càng mạnh và đa năng phần nào đã giúp công nghệ game phát triển. Những game lớn có mức đầu tư hàng trăm đô la, nhiều thể loại game mới ra đời, game trực tuyến thu hút sự quan tâm của số lượng lớn người chơi ở nhiều độ tuổi, ngành nghề. Tất cả như minh chứng cho thấy nhu cầu về game vẫn còn rất dồi dào và thị trường game vẫn còn là mảnh đất màu mỡ cho các nhà sản xuất game. Tuy nhiên, mục tiêu của em khi thực hiện đề tài này không phải là nghiên cứu về game và thị trường game mà em chỉ đi sâu nghiên cứu về mảng game nhỏ, dành cho đối tượng người chơi dùng game để giải trí đích thật, những người chỉ có những khoản thời gian rảnh rỗi ngắn ngủi để giải trí, những người mong muốn có những game nho nhỏ, vui tươi và không quá phức tạp. Và game xây dựng trên nền tảng Flash dường là một lựa chọn không tồi. Có rất nhiều thể loại game có thể lựa chọn và phát triển : hành động, nhập vai, đối kháng, mô phỏng, thể thao, chiến thuật.... Tuy nhiên, với nguồn tài chính và nhân lực ít ỏi cùng với mục tiêu của đề tài, nhóm em quyết đinh sẽ lựa chọn thể loại Game mini sẽ là thể loại game được lựa chọn và phát triển. Tuy nhiên, trong thể loại game mini có rất nhiều tựa game hay, lối chơi cũng rất đa dạng. Vậy, một câu hỏi nữa đặt ra là nhóm sẽ lựa chọn xây dựng game theo một tựa game nào đây? Sau khi đã xem xét đã quyết định xây dựng game theo tựa game bắn xe tăng mà nổi tiếng nhất là tựa game Battle City được xây dựng trên hệ máy NEC (máy bỏ băng). Tuy nhiên, không phải ngẫu nhiên mà em chọn thể loại game này mà em thấy nó thỏa mãn được một số tiêu chí sau: GVHD: GS.TSKH. Hoàng Kiếm Trang 5 BÙI CHÍ CƯỜNG - CH1101007  LỚP CH CNTTQM - K6 Game 2D : để phù hợp với môi trường phát triển là game Flash, xây dựng không quá phức tạp  Nhẹ : Game thành phẩm có dung lượng nhỏ , tốt nhất là dưới 10Mb  Có thể chơi hai người : Chơi chung với ai đó luôn tạo cảm giác vui vẻ hơn là chơi một mình  Nội dung hấp dẫn : Cuốn hút, tạo nhiều cảm giác cho người chơi  Có tính thực dụng : Có thể chơi được, làm xong có thể upload cho mọi người download, tặng bạn bè  AI không quá khó : viết AI là một công việc không phải dễ, nếu làm một game có sự tham gia của máy mà quá phức tạp, việc viết một AI chấp nhận được quả là không phải dễ, nhiều lúc ảnh hưởng trực tiếp đến game đang xây dựng, AI tồi có thể làm game phá sản  Đồ họa đơn giản và sinh động : Cũng như vấn đề AI, không phải ai cũng có năng khiếu vẽ, việc tập luyện để vẽ thành thạo không phải ngày một ngày hai và vấn đề thẩm mỹ không phải tự dưng mà có Với những lý do ở trên, có vẻ như thể loại game bắn xe tăng sẽ là lựa chọn tốt cho em. 1.2 Hoạt động nghiên cứu. - Áp dụng các nguyên tắc cơ bản trong bộ môn Phương pháp nghiên cứu khoa học để phân tích những nguyên tắc sáng tạo đã được áp dụng để xây dựng đề tài luận văn “Tìm hiểu và xây dựng Game với Flash” của mình. GVHD: GS.TSKH. Hoàng Kiếm Trang 6 BÙI CHÍ CƯỜNG - CH1101007 2 LỚP CH CNTTQM - K6 CHƯƠNG II - CÁC PHƯƠNG PHÁP NGHIÊN CỨU Áp dụng các nguyên tắc trong phương pháp nghiên cứu khoa học để giải quyết vấn đề: 2.1 Nguyên tắc 1 - Nguyên tắc phân nhỏ  Chia đối tượng thành các phần độc lập  Làm đối tượng trở nên tháo lắp được  Tăng mức độ phân nhỏ của đối tượng 2.2 Nguyên tắc 2 - Nguyên tắc tách khỏi  Tách phần gây phiền phức ra khỏi đối tượng hoặc ngược lại. Tách lấy phần cần thiết 2.3 Nguyên tắc 3 - Nguyên tắc xếp lồng  Để một vật thể trong lòng một vật thể khác, vật thể khác này lại để trong lòng một vật thể thứ ba  Chuyển một vật thể thông qua một khoảng trống của một vật thể khác 2.4 Nguyên tắc 4 - Nguyên tắc phẩm chất cục bộ  Chuyển đối tượng (hay môi trường bên ngoài, tác động bên ngoài) có cấu trúc đồng nhất thành không đồng nhất.  Các phần khác nhau của đối tượng phải có các chức năng khác nhau.  Mỗi phần của đối tượng phải có các chất năng khác nhau. 2.5 Nguyên tắc 5 - Nguyên tắc kết hợp  Kết hợp các đối tượng đồng nhất hoặc các đối tượng dùng cho các hoạt động kế cận.  Kết hợp về mặt thời gian các hoạt động đồng nhất hoặc kế cận GVHD: GS.TSKH. Hoàng Kiếm Trang 7 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 2.6 Nguyên tắc 6 - Nguyên tắc vạn năng  Đối tượng thực hiện một số chức năng khác nhau do đó không cần sự tham gia của đối tượng khác. 2.7 Nguyên tắc 7 - Nguyên tắc thực hiện sơ bộ  Thực hiện trước sự thay đổi, tác động cần có, hoàn toàn hoặc từng phần, đối tượng với đối tượng.  Cần sắp xếp các đối tượng trước, sao cho chúng có thể hoạt động từ vị trí thuận lợi nhất và không mất thời gian dịch chuyển. 2.8 Nguyên tắc 8 - Nguyên tắc thay đổi màu sắc  Thay đổi màu sắc của đối tượng hay môi trường bên ngoài.  Thay đổi độ trong suốt của đối tượng hay môi trường bên ngoài.  Để có thể quan sát được những đối tượng hoặc những quá trình, sử dụng các chất phụ gia màu, huỳnh quang.  Nếu các chất phụ gia đó đã được sử dụng, dùng các nguyên tử đánh dấu.  Sử dụng các hình vẽ, ký hiệu thích hợp GVHD: GS.TSKH. Hoàng Kiếm Trang 8 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 CHƯƠNG III - PHÂN TÍCH VÀ THIẾT KẾ GAME BẮN 3 XE TĂNG VỚI FLASH 3.1 Áp dụng nguyên tắc phân nhỏ. Áp dụng nguyên tắc phân nhỏ thiết kế các đối tượng :  Đối tượng xe tank : Trong Flash, ta có chế độ kết hợp nhiều MovieClip để tạo thành 1 MovieClip mới. Điều này rất có ý nghĩa trong việc thiết kế các đối tượng phức tạp, có nhiều chi tiết. Trong trường hợp này, ta sẽ phân ra thiết kế các “đối tượng con” của đối tượng đó sau đó ráp lại để thành 1 đối tượng hoàn chỉnh. Mặt khác, cơ chế này còn cho phép ta chỉnh sửa dễ dàng các chi tiết khi cần thiết và có thể kế thừa để thiết kế các đối tượng khác Hình 1 - Đối tượng Tank cấu thành từ các bộ phận rời rạc  Bản đồ và môi trường trong game : Bản đồ game được chia thành nhiều ô nhỏ và ghép lại : GVHD: GS.TSKH. Hoàng Kiếm Trang 9 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 Hình 2 - Bản đồ trong game Ứng với mỗi ô trên bản đồ ta sẽ có nhiều lớp đối tượng khác nhau, mà lớp dưới cùng sẽ là môi trường cho game. Các loại môi trường trong game bao gồm: o Cỏ đồng bằng o Cát sa mạc GVHD: GS.TSKH. Hoàng Kiếm Trang 10 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 o Đất cứng o Băng giá o Đầm lầy o Tuyết dày o Nước  Đối tượng tường : Game có 4 loại tường Gạch Đá Thép Biên Hình 3 - Các loại tường Mỗi loại tường đều được cấu thành từ những mảnh nhỏ. Điều này làm cho game trở nên thực tế và hay hơn do mảnh tường lớn có thể bị phân nhỏ khi bị công phá bằng đạn GVHD: GS.TSKH. Hoàng Kiếm Trang 11 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 Hình 4 - Cấu trúc tường gạch Hình 5 - Cấu trúc tường đá, thép 3.2 Áp dụng nguyên tắc tách khỏi Trong Game đã sử dụng dữ liệu XML để lưu trữ các Map, mỗi file XML là một Map được đặt tên và có cấu trúc quy định sẵn, bên cạnh đó mỗi Map sẽ có một thiết kế ban đầu bằng file Excel (map.xls) với cái màu sắc được quy định cho các môi trường, tường, vị trí căn cứ, vị trí tường của căn cứ, vị trí load ban đầu của các xe tank (ta và địch) GVHD: GS.TSKH. Hoàng Kiếm Trang 12 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 Hình 6 - Cấu trúc file Excel cho Map Tên map được đặt như sau : mapX.xml với X là một số nguyên không âm được đánh tăng dần tương ứng với level mà ta chơi. Dưới đây là ví dụ cấu trúc một Map /> /> /> GVHD: GS.TSKH. Hoàng Kiếm Trang 13 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 Bên cạnh đó các file âm thanh trong game cũng được tách khỏi chương trình được lưu trữ ở bên ngoài, giảm đáng kể dung lượng của 1 game Flash và có thể thay đổi âm thanh khác nhau một cách tùy thích. 3.3 Áp dụng nguyên tắc xếp lồng. Các đối tượng khi add vào được hiểu như add vào một mảng chiều (như một mảng một chiều quản lý các đối tượng hiển thị). Vì vậy, những đối tượng được thêm vào sau được để ở phía trên (nằm chồng lên) các đối tượng được thêm trước nó. Hình 7 - Cơ chế thêm hình của Flash Hình 8 - Đối tượng thêm sau chồng lên đối tượng thêm trước nó GVHD: GS.TSKH. Hoàng Kiếm Trang 14 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 3.4 Áp dụng nguyên tắc phẩm chất cục bộ. Thiết kế các đối tượng phải độc lập với nhau. Sự thay đổi của đối tượng này phải không được ảnh hưởng đến các đối tượng khác. Ví dụ: Khi ta thêm loại mới cho đối tượng xe tăng người chơi thì không ảnh hưởng đến xe tăng địch, thêm một loại môi trường mới hay một loại tường mới nào đó,. Việc độc lập các đối trong thiết kế sẽ giúp cho ta dễ dàng bảo trì cũng như năng cấp về sau. Hoặc sau này nếu có nhu cầu mở rộng thêm ta sẽ tích hợp thêm những đối tượng khác. Bên cạnh việc độc lập các đối tượng, việc cài đặt code trong từng đối tượng cũng phải không được đồng nhất, phải tách rời phần hiển thị ra khỏi phần coding. Trong Action Script 3 cho ta phần code ở 1 file và đối tượng MovieClip ở 1 file khác rất tiện cho chúng ta bảo trì hay sử dụng lại. Hình 9 - Độc lập giữa code và giao diện 3.5 Áp dụng nguyên tắc kết hợp. Sử dụng khá nhiều trong việc thiết kế một Map, kết hợp nhiều loại môi trường sẽ tạo nên sự đa dạng, sống động cũng như sự hứng thú hơn cho người chơi, bên cạnh đó là sự xuất hiện nhiều loại xe tank địch với cấp độ và đạn dược khác nhau. GVHD: GS.TSKH. Hoàng Kiếm Trang 15 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 Hình 10 - Một Map hoàn chỉnh trong Game 3.6 Áp dụng nguyên tắc vạn năng. Trong game, xe tăng có thể chuyển đổi các loại đạn qua lại và sẽ có thêm loại đạn mới nếu ăn được nó trong game, em xây dựng 8 loại đạn dược với tính năng, công dụng và sức công phá khác nhau. Điều này hứa hẹn làm game thêm đa dạng và hấp dẫn hơn. Các thông số chính của đạn :  Damage_min : Sức sát thương tối thiểu  Damage_max : Sức sát thương lớn nhất  D_Walls : Số lớp gạch công phá  Step : Bức di chuyển (tốc độ bay)  _xy_per : Độ lệch tâm đạn khi bắn (độ lệch tâm nòng súng) GVHD: GS.TSKH. Hoàng Kiếm Trang 16 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 Hình 11 - Độ lệch tâm của đạn ID Tên đạn Cỡ nòng Tốc Tốc độ Damage Damage của súng độ bắn Min Max bay 1 Bullet 1 100mm 1 10 200 220 2 Bullet 2 100mm 2 10 200 220 3 Bullet 3 100mm 2 8 200 220 4 Bullet 4 125mm 2 8 425 475 5 Bullet 5 125mm 2 8 500 550 6 Bullet 10 --- 2 5 1600 2000 7 Bullet 20 15mm 1 44 30 40 8 Bullet 21 50mm 2 22 75 95 Bảng các loại đạn ID Tên súng Cỡ nòng Loại đạn sử Số lượng dụng khi bắn 1 Gun 1 100mm 1 1 2 Gun 2 100mm 2 1 3 Gun 3 100mm 3 2 4 Gun 4 125mm 4 1 5 Gun 5 125mm 5 1 GVHD: GS.TSKH. Hoàng Kiếm Trang 17 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 6 Gun 6 --- 6 1 7 Gun 7 15mm 7 1 8 Gun 8 50mm 8 1 Bảng các loại súng Súng cơ bản xe tăng qua các Level Level Loại súng cơ bản 1 1 2 2 3 3 4 4 Địch loại 1 all 1 Địch loại 2 all 2 Địch loại 3 all 3 Địch loại 4 all 4 Xe tăng Người chơi Bảng loại súng cơ bản của các loại xe tăng 3.7 Áp dụng nguyên tắc quan hệ phản hồi Đối với các game nói chung và các game nhỏ nói riêng, va chạm vật lý giữa các đối tượng được xem là vấn đề then chốt đối với việc xây dựng game. Kiểm tra sự va chạm giữa các đối tượng cùng với xây dựng trạng thái của chúng là hai vấn đề chính khi xây dựng thể loại game này. Trong game bắn xe tăng thì có sự va chạm giữa các đối tượng GVHD: GS.TSKH. Hoàng Kiếm Trang 18 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 Hình 12 - Tương tác giữa các đối tượng Các di chuyển vật lý trong game được đặt dưới sự quản lý của hệ thống chuyển động. Hệ thống này sẽ đảm bảo cho sự chuyển động trở nên thực hơn. Hệ thống này gồm các thành phần : o Tốc độ tối đa : Tốc độ tối đa của đối tượng (maxspeed) o Tăng tốc : Sự gia tăng tốc độ của đối tượng qua từng frame (tangtoc) o Giảm tốc : Sự giảm tốc của môi trường di chuyển qua từng frame (giamtoc) o Tốc độ tối đa trên môi trường : Độ ảnh hưởng của môi trường đến tốc độ tối đa (MS_per) Hai yếu tố đầu là yếu tố của đối tượng di chuyển, hai yếu tố sau là yếu tố của môi trường di chuyển Bốn thành phần trên sẽ hình thành một hệ thống di chuyển đơn giản đảm bảo được các yếu tố : o Đối tượng di chuyển tăng tốc từ từ đến vận tốc tối đa o Giảm tốc từ từ khi dừng lại o Ảnh hưởng của môi trường di chuyển sẽ được thể hiện GVHD: GS.TSKH. Hoàng Kiếm Trang 19 BÙI CHÍ CƯỜNG - CH1101007 LỚP CH CNTTQM - K6 Hình 13 - Hệ thống chuyển động s Tốc độ di chuyển sẽ được tính bằng công thức : Speed = Speed + tangtoc – giamtoc Speed <= (MaxSpeed *MS_per/100) Và nguyên tắc này được thấy rõ hơn trong việc xây dựng hệ thống AI (Artificial Intelligence) cho game : o Di chuyển và bắn : Di chuyển đều đặng, không đứng yên, nhả đạn đều đặng. Điều đặc biệt là xe tăng địch sẽ chẳng bao giờ hết đạn o Chạm tường : Thử phá tường trong một khoảng thời gian nào đó, nếu không được thì chuyển hướng di chuyển. o Chạm xe tăng đồng minh : đổi hướng di chuyển o Khi bị tấn công : chuyển hướng di chuyển về hướng bị tấn công, bắn trả o Đột biến : Lâu lâu chuyển hướng, tăng khả năng chiến đấu và tránh bị “bắt bài” Với một AI xây dựng với trí thông minh đơn giản như vậy thôi nhưng trong game, xe tăng máy có số lượng đông đảo và lì lợm sẽ gây rất nhiều khó khăn cho người chơi và sẽ không dễ “xơi” vì những xe tăng này cũng có khả năng ăn các món đồ chơi. GVHD: GS.TSKH. Hoàng Kiếm Trang 20
- Xem thêm -