Lời mở đầu Nhu cầu giải trí của con người là một chủ đề không mới. Từ trước khi xã hội loài người đạt được những phát triển vượt bậc, đã có những hình thức trò chơi, thú vui tiêu khiển được lưu truyền từ đời này sang đời khác. Từ những trò chơi dân gian cho thiếu nhi như cò cò, ô ăn quan đến những trò chơi tập thể ngày lễ hội như kéo co, đua thuyền, hay trí tuệ như cờ tướng, cờ vây, hoặc thậm chí cả các tệ nạn như tổ tôm, đánh bạc, người xưa mặc dù lam lũ, bươn chải để kiếm sống vẫn tìm cách làm giàu đời sống tinh thần cho chính mình. So với những hình thức giải trí khác như thơ ca, hội họa, kịch nghệ hay điện ảnh, người tham gia trò chơi không thưởng thức chúng một cách thụ động.
Họ trực tiếp tham gia vào quá trình chơi, là một phần trong chuỗi hành động của trò chơi đấy. Những quyết định của người chơi ảnh hưởng trực tiếp dến diễn biến, kết quả của trò chơi, có thể dẫn đến những tình huống kì lạ, không thể lường trước. Người ta tìm tới trò chơi, dù là người chơi trực tiếp hay là khán giả, ắt cũng vì nghiện cái cảm giác ấy. Khi mà cơm áo gạo tiền dần dần trở nên ít nhức nhối, con người nhận ra họ có nhiều thời gian hơn để thỏa mãn cái nhu cầu về văn hóa, giải trí của mình.
Đi lên cùng xã hội, những hình thức giải trí cũng tiến hóa. Thơ ca trở thành sách, truyên, tiểu thuyết, được bày bán trên kệ sách cho mọi người. Nhạc, họa vừa chuyên môn hóa vừa cộng đồng hóa, thể nên có ca sĩ, nhạc sĩ, họa sĩ chuyên nghiệp thì cũng có những con người lấy cái nghề này làm sở thích, thỏa cái thú ca vẽ cho đời. Trò chơi cũng không phải là ngoại lệ, ngược lại chúng phát triển như tên lửa, chỉ trong một thời gian ngắn đã có vô vàn thể loại, hình thức trò chơi.
Trò chơi được thể chế hóa, có luật rõ ràng, người ta gọi là thể thao. Trò chơi được thương mại hóa, được sáng tạo, phát hành bởi các đơn vị chuyên nghiệp, trở thành một loại hàng hóa được mua bán. Hình thức của trò chơi cũng trở nền đa dạng hơi. Từ thô sơ, tự phát đễn chuyên nghiệp, có luật chơi rõ ràng, dụng cụ chuyên biệt (xúc xắc, thẻ bài,.), chả mất bao lâu sau khi máy tính ra đời, người ta bắt đầu làm trò chơi trên nó.
Trò chơi điện tử ngày nay đã là một thứ gì đó gần gũi đối với xã hội loài người. Một ngành công nghiệp khổng lồ từ những ông lớn hàng tỉ đô la cho đễn một hoặc hai thanh thiếu niên không có gì ngoài tham vọng và nhiệt huyết, là ước mơ của hàng vạn người, ác mộng của hàng vạn người khác. Một lĩnh vực mà người thành công rất nhiều mà người thất bại cũng không ít. Một chủ đề mà mặt tốt lẫn mặt xấu của nó luôn luôn được lôi ra tranh luận, bàn tán.
Nhưng gì thì gì, người ta vẫn muốn chơi game và làm game. Dự án game Space Shooter này, mặc dù người thực hiện thiếu chuyên môn, thiếu năng lực, thời gian và nhân lực hạn hẹp, dự án vẫn bước những bước đi chập chững, vấp ngã rồi lại đứng dậy, cố gắng để cho ra đời một trò chơi hoàn chỉnh, bước vào một ngành công nghiệp đáng mơ ước nhưng cũng đầy cạm bẫy và chông gai. Luận văn tốt nghiệp Trang vii/39 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính 5 Giới thiệu Khi nhắc tới "trò chơi điện tử đầu tiên", nhiều người sẽ nghĩ đễn Pong, game thùng (arcade game) được phát hành bởi Atari. Tuy nhiên trước đó, vào năm 1962, một số sinh viên và giảng viên tại Đại học Tổng hợp Massachusett (MIT) phát triển game "Spacewar!" chạy trên máy mainframe PDP-1 của trường.
"Spacewar!" là trò chơi cho hai người, mỗi người điều khiển một trong hai tàu vũ trụ chiến đấu trong môi trường 2D trong trường trọng lực của một ngôi sao. Game mô tả đơn giản môi trường không gian (người chơi áp dụng lực đẩy lên tàu vũ trụ để di chuyển và sẽ không dừng lại khi người chơi ngừng tác dụng, trọng lực của ngôi sao cũng được mô phỏng), cho phép người chơi sử dụng các chiến thuật như sử dụng trường trọng lực của ngôi sao để tăng tốc cho tàu, tạo lợi thế cho mình. "Spacewar!" tạo ảnh hưởng lớn đễn văn hóa game ở Mỹ [1] và đi tiên phong trong sự phát triển của ngành công nghiệp game. "Spacewar!" là một sản phẩm đi trước thời đại, cho thấy tiềm năng cũng như sức hấp dẫn của trò chơi điện tử tới công chúng.
Mặc dù vậy, do là người đi tiên phong, so với những sản phẩm hiện tại, trò chơi có nhiều điểm yếu, có thể kể đến như việc hỗ trợ nhiều người chơi còn sơ khai. Việc thực hiện Space Shooter bắt nguồn từ ý tưởng thực hiện game tương tự Spacewar! trên nền tảng hiện đại với các cải tiến mà tác giả nhận định sẽ mở rộng lối chơi và hấp dẫn hơn.1 Mô tả sản phẩm Space Shooter là trò chơi đối kháng lấy góc nhìn top-down có hỗ trợ nhiều người chơi. Trò chơi lấy bối cảnh không gian, nơi người chơi điều khiển một trong nhiều tàu không gian, sử dụng các loại vũ khí khác nhau để tiêu diệt nhau, đồng thời tránh những thiên thạch được sản sinh ngẫu nhiên trong màn chơi. Người chơi có thể đấu đội theo hình thức ghi điểm hoặc hợp tác với nhau để sống sót trước hàng loạt tàu "zombie" do máy điều khiển trong một khoảng thời gian xác định.
Mỗi màn chơi chỉ kéo dài vài phút trên thực tế, phù hợp cho giờ giải lao hoặc trên phương tiện công cộng. Tuy giữ phương châm đơn giản, dễ chơi nhưng Space Shooter vẫn mang trong mình đặc trưng của việc di chuyển trong môi trường không trọng lực, yêu cầu người chơi phải khéo léo điều khiển tàu của mình để không những sống sót trước hiểm họa từ môi trường và người chơi khác mà còn có thể bắn trả lại để gây điểm. Trò chơi cung cấp một số lượng các tàu vũ trụ với mỗi tàu có những đặc trưng riêng. Mỗi tàu có khả năng tấn công, phòng thủ cũng như di chuyển khác nhau, phù hợp với lối chơi của từng người.
Các loại vũ khí cũng có các Luận văn tốt nghiệp Trang 1/39 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính thông số và cách gây sát thương khác nhau, người chơi chú ý để áp dụng cho phù hợp. Tính năng nhiều người chơi được tính đến từ những giai đoạn đầu trong quá trình phát triển game. Trò chơi hỗ trợ tạo phòng, chọn thể loại chơi, cho phép người chơi tham gia vào phòng được tạo sẵn.2 Mục tiêu Tác giả chọn thực hiện game làm đề tài cho luận văn tốt nghiệm vì đề tài bao quát được toàn bộ kiến thức trong chương trình của ngành Khoa học Máy Tính. Do tính chất rộng của một dự án game, khi thực hiện ta sẽ phải áp dụng toàn bộ những kiến thức đã học vào quá trình phát triển.
Những kiến thức ấy bao gồm từ cơ bản về lập trình, về toán học, lập trình phần mềm, công nghệ phần mềm cho đến đến những kiến thức chuyên về game hơn như lập trình hướng đối tượng, mạng máy tính và trí tuệ nhân tạo. Điều này khiên game thích hợp cho đề tài luận văn, người thực hiện không chỉ ôn lại kiến thức, thử sức bản thân, mà còn thể hiện được mình có thể làm được những gì và đã xứng đáng để tốt nghiệp hay chưa. Tác giả phát triển Space Shooter với các mục tiêu cụ thể như sau: • Xây dựng game với gameplay loop (một chuỗi hành động mà người chơi lặp đi lặp lại trong quá trình chơi game [2]) dựa trên Spacewar!, cụ thể là việc di chuyển một tàu vũ trụ với góc nhìn top-down (từ trên xuống trong môi trường 2D) trong môi trường không trọng lực và dùng các vũ khí trên tàu để chiến đấu với các tàu vũ trụ khác • Thực hiện các cải thiện so với Spacewar!, cụ thể với khả năng chơi nhiều người qua mạng Internet, tính năng chọn một trong nhiều tàu vũ trụ, hệ thống sinh lực và các chủng loại vũ khí khác nhau. Nếu có thể, tính đến việc thực hiện tàu do máy điều khiển một cách đơn giản.
• Thử sức bản thân với một dự án game hoàn chỉnh. Trò chơi điện tử là một loại hình phần mềm đặc biệt, bao gồm rất nhiều yếu tố từ nhiều lĩnh vực khác nhau, liên kết với nhau tạo thành một trải nghiệm hoàn chỉnh. Các lĩnh vực một game cần có thể từ mang tính khoa học cao như trí tuệ nhân tạo, mạng máy tính cho tới yêu cầu con mắt thẩm mỹ, tính nghệ thuật như thiết kế giao diện, nhân vật, cốt truyện, màn chơi,. Một game có thể trông đơn giản nhưng vẫn cần rất nhiều công sức để thực hiện, phần lớn trong đó là hiện thực những hệ thống nền mà tuy không được thấy bởi người chơi, vẫn đóng vai trò lớn trong việc đảm bảo trải nghiệm game là thông suốt.
Luận văn tốt nghiệp Trang 2/39 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính 6 Những trò chơi liên quan Khi thực hiện đề tài này, để lấy ý tưởng cho các cải thiện so với game Spacewar! theo mục tiêu của đề tài, tác giả lấy cảm hứng từ: 1) những game trên thị trường có bối cảnh và lối chơi tương đương và 2) một số game mà tác giả đã được trải nghiệm có những điểm đáng học hỏi. Loại hình thứ nhất gồm Starsector, một game nhập vai trên nền tảng PC và loại thứ hai có game bắn súng Soul Knight trên điện thoại di động. Cụ thể, tác giả lấy Soul Knight làm cảm hứng cho hình thức, độ tiếp cận và Starsector cung cấp nguồn ý tưởng cho bối cảnh và hệ thống chiến đấu trong trò chơi.1 Soul Knight Soul Knight là một game bắn súng góc nhìn top-down trên nền tảng Android và iOS do công ty ChillyRoom phát triển, ra mắt vào năm 2017 trên Google Play Store và Apple AppStore. Người chơi điều khiển các nhân vật với kỹ năng đặc biệt riêng để chiến đấu trước kẻ thù trong một hệ thống hầm ngục được sản sinh ngẫu nhiên, sử dụng các vũ khí có được bằng mở hòm kho báu hoặc mua tại cửa hàng trong hầm ngục.
Trò chơi hỗ trợ nhiều người chơi bằng kết nối LAN hoặc qua mạng, với tối đa 4 người chơi.