Tải bản đầy đủ (.pdf) (22 trang)

Báo cáo thực tập lập trình GAME ONLINE trên ANDROID bằng COCOS2DX JS và JAVA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (447.47 KB, 22 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO THỰC TẬP

LẬP TRÌNH GAME ONLINE TRÊN
ANDROID BẰNG COCOS2DX-JS VÀ JAVA

Công ty thực tập

:

Công Ty Cổ Phần VNG

Người phụ trách

:

Đặng Thanh Tùng

Thực tập sinh

:

Võ Thành Trung

MSSV

:

18520180



TP. Hồ Chí Minh, tháng 8 năm 2021


LỜI MỞ ĐẦU
Hiện nay, mỗi tháng có hàng triệu ứng dụng mới được ra mắt trên các các cửa hàng ứng
dụng. Trong số đó, bên cạnh các ứng dụng phục vụ cơng việc hàng ngày (cơng việc, tài
chính, …), có một số lượng lớn trong đó là các ứng dụng trò chơi (game). Game được tạo ra
để phục vụ nhu cầu giải trí của con người. Ngày nay, ngành cơng nghiệp game là một bộ
phận không thể thiếu của ngành công nghiệp phần mềm. Song hành cùng với nhịp độ phát
triển mạnh mẽ của các xu hướng mới, công nghệ mới, kèm theo nhu cầu giải trí online của
người dùng ngày càng lớn do các ảnh hưởng từ dịch Covid-19, ngành công nghiệp game
đang trên đà phát triển ngày càng mạnh mẽ hơn.
Cùng với xu thế phát triển của thế giới, và đáp lại sự thay đổi nhu cầu giải trí của người
dùng. Nhiều cơng ty tại Việt Nam đã bước vào ngành công nghiệp game, nỗ lực từng ngày
để hịa nhập cùng với các cơng ty game hàng đầu thế giới. VNG, cùng với Zing Play Game
Studios, là một trong những cái tên đã góp phần rất lớn trong công cuộc phát triển của ngành
game Việt.
Các sản phẩm game từ trước đến nay đã và đang được cộng đồng người dùng u mến
vì mục đích giúp giải trí, giải tỏa căng thẳng, mang lại cảm xúc tích cực. Bên cạnh đó các
game cũng chính là những ứng dụng đầu tiên của các công nghệ mới (AI, VR, AR, NFT, …).
Do đó, xuất phát từ mong muốn tạo ra các sản phẩm đem lại niềm vui cho người dùng, và
niềm khao khát thách thức với các công nghệ mới, em quyết định chọn lập trình game làm
định hướng cho việc học tập và nghề nghiệp của bản thân.
Sau ba năm học tập tại môi trường đại học, em đã lĩnh hội được nhiều kiến thức về kỹ
thuật và quy trình phát triển phần mềm. Em đã tìm kiếm một đơn vị phát triển game để có
thể áp dụng các kiến thức trên vào thực tế, và làm quen với công việc phát triển game trong
môi trường chuyên nghiệp. Qua chương trình VNG Tech Fresher 2020, em đã có được cơ
hội làm việc tại VNG và Zing Play Game Studios - là nơi đã giúp em hoàn thành được dự
định này.


Trang 2


LỜI CẢM ƠN
Trân trọng gửi lời cảm ơn Công Ty Cổ Phần VNG và Zing Play Game Studios đã tạo
điều kiện cho em có cơ hội được thực tập tại cơng ty.
Trong vịng 3 tháng thực tập, nhóm thực tập chúng em đã học được rất nhiều kiến thức
về phát triển game, từ đó có thể cài đặt được một project mobile online game với đầy đủ các
tính năng. Tất cả những thành quả trên, để đạt được không thể thiếu các buổi training bài bản
từ các anh manager và senior trong công ty, niềm quan tâm và chỉ dẫn tận tình từ các anh
mentor, tinh thần đồn kết, nỗ lực từ các bạn trong nhóm, và sự hỗ trợ từ các anh/chị từ các
vị trí khác. Chân thành cảm ơn các anh, các chị, các bạn đã giúp sức cùng em hoàn thành đợt
thực tập này.
Đặc biệt cảm ơn anh Đặng Thanh Tùng đã quản lý chương trình, sắp xếp các buổi
training kiến thức, hỗ trợ các bạn Fresher. Cảm ơn anh Đặng Anh Tuấn, anh Phạm Anh Quốc
đã hướng dẫn, giúp đỡ nhóm em trong việc xây dựng Game Client, xây dựng logic, nâng cao
trải nghiệm người chơi. Cảm ơn anh Võ Toàn Thuận đã chỉ dẫn chúng em trong việc xây
dựng server, các API và xử lý các vấn đề về đồng bộ trong game online.
Em cũng xin chân thành cảm ơn thầy cô trong khoa Công nghệ phần mềm đã hỗ trợ,
tạo điều kiện em hoàn thành bài báo cáo này.
Võ Thành Trung
Thành phố Hồ Chí Minh, ngày 30 tháng 8 năm 2021

Trang 3


NHẬN XÉT CỦA KHOA
…………………………………………………………………………………………………
…………………………………………………………………………………………………

…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………

Trang 4


MỤC LỤC

LỜI MỞ ĐẦU

2

LỜI CẢM ƠN

3

NHẬN XÉT CỦA KHOA

4

MỤC LỤC

5

Chương 1: Giới thiệu công ty thực tập

6

Giới thiệu Công Ty Cổ Phần VNG

6

Giới thiệu Zing Play Game Studios

7

Chương 2: Nội dung thực tập


9

Tìm hiểu cơng ty và các kỹ năng làm việc

9

Tìm hiểu về chun mơn và các kỹ năng trong công việc phát triển game.

9

Các công cụ làm việc

9

Chuỗi seminar tìm hiểu về cơng việc phát triển game.

10

Chuỗi seminar kỹ năng mềm

12

Trải nghiệm, phân tích thiết kế, vẽ các sơ đồ liên quan cho game Thời Loạn Mobile 13
Thiết kế sơ đồ, phát triển project game: Game Mobile Online phong cách thủ thành
(Tower Defense)

13

Thực hiện project


14

Lịch làm việc

14

Chương 3: Chi tiết về project

18

Giới thiệu về game

18

Mục tiêu của game:

18

Mô tả game:

18

Thực hiện

20

Kế hoạch

20


TỔNG KẾT

22

Trang 5


Chương 1: Giới thiệu công ty thực tập

1.

Giới thiệu Công Ty Cổ Phần VNG

Thành lập từ năm 2004 đến nay, VNG đã trải qua 14 năm phát triển và mở rộng để trở
thành một trong những công ty Internet & Công nghệ hàng đầu Việt Nam và Đông Nam Á,
với hơn 3200 thành viên.
Hệ sinh thái ứng dụng và dịch vụ của VNG bao gồm 4 nhóm chính, tập trung hướng
đến những trải nghiệm phong phú và giải pháp tối ưu, phục vụ cho người dùng cá nhân và tổ
chức:
-

Trò chơi trực tuyến

-

Nền tảng kết nối

-

Thanh tốn tài chính


-

Dịch vụ đám mây

Trong đó, trị chơi trực tuyến của VNG gồm 2 mảng chính: Phát triển và sản xuất trị
chơi trực tuyến, phát hành ra thị trường quốc tế. Sản phẩm: Khu vườn trên mây, Dead Target,
iCá….; Nhập khẩu và Phát hành các trò chơi nổi tiếng thế giới. Sản phẩm: Võ Lâm Truyền
Kỳ, Rules of Survival, Crossfire Legend…

Trang 6


2.

Giới thiệu Zing Play Game Studios

ZingPlay Game Studios - là studio trong VNG phát triển game lớn nhất và lâu đời nhất
có trụ sở tại Hà Nội.
Tháng 7/2007 trung tâm ra đời với tên gọi là GSN - Game Studio North. Hiện nay, từ
đội ngũ GSN 20 người đã trở thành tập thể ZPS gần 500 nhân sự có mặt tại Hà Nội - Đà
Nẵng - Hồ Chí Minh và 6 quốc gia khác trên thế giới.
Các sản phẩm thu hút hàng chục triệu khách hàng, ZPS là đơn vị đầu tiên ở Việt Nam
phát triển thành công ứng dụng giải trí trực tuyến bằng thực lực của chính những người Việt
trẻ năng động và nhiều hoài bão.
Các sản phẩm game đánh dấu bước phát triển của ZPS:
-

Sinh Tử Môn thuộc thể loại Tower Defense (2007- 2008)


-

ZingPlay: cổng game giải trí số 1 Việt Nam ( thống trị thị trường casual game

portal trong nước) , có trên 34 loại game hot, game vui (2008- 2010)
-

ZingFarm: game nuôi trồng trực tuyến (2010-2011)

-

myFish + ohfish: game đối kháng, chăn nuôi kết hợp chiến đấu

-

myPlay: cổng game giải trí chơi trên nền web với rất nhiều thể loại game bài,

bida, cá ngựa (8/2011 đến nay)
-

Cấm Giới: game chiến thuật kết hợp nhập vai, là game người Việt thiết kế, có

tiềm năng tiên phong cho game Việt, ra mắt vào cuối tháng 12/2012
-

Thời Loạn: webgame chiến thuật thả quân. ra mắt tháng 11/2013

-

Farmery: Game nông trại trên mobile ra mắt 5/2013


Trang 7


-

ZinZin: Game mini mobile ra mắt cuối 2013

-

FarmeryZ: Webgame nông trại ra mắt tháng 5/2014

-

Thời Loạn Mobile: ra mắt 7/2014.

-

Cửu Tộc: MMO ra mắt 9/1/2015

-

Siêu phẩm Cờ Tỷ Phú ra mắt 1/2016

Trang 8


Chương 2: Nội dung thực tập
Chương trình thực tập với sản phẩm tốt nghiệp là tựa game “Game Mobile Online
phong cách thủ thành (Tower Defense)” nhằm giúp sinh viên được đào tạo công việc chuyên

môn về phát triển Client - Server game trực tuyến 2D trên Android, sử dụng Cocos2dx-JS và
Java. Bên cạnh đó, sinh viên có cơ hội được học tập về phong cách lập trình game chuyên
nghiệp, tìm hiểu tồn cảnh về các vai trị trong đội ngũ phát triển game, đồng thời được rèn
luyện các kỹ năng mềm thiết yếu như làm việc nhóm, thuyết trình, đàm phán và giải quyết
vấn đề.

1.

Tìm hiểu cơng ty và các kỹ năng làm việc

Thời gian : 1 ngày
Nội dung : Giới thiệu về công ty, nơi làm việc, quy định tại công sở.
Được nghe người phụ trách giới thiệu về VNG và Zing Play Game Studios, quá
trình thành lập và phát triển, các sản phẩm làm nên tên tuổi. Được gặp gỡ các anh, chị
quản lý cấp cao trong công ty. Giới thiệu và làm quen với các anh mentor, các bạn
fresher chung nhóm.
Sau đó thực tập sinh được giới thiệu về văn hóa làm việc của cơng ty, bao gồm
giờ giấc làm việc, quy định sử dụng thiết bị chung, quy trình truy cập vào dữ liệu cơng
ty.
Cuối cùng thực tập sinh được bố trí vị trí làm việc, hướng dẫn cài đặt thiết bị
chuẩn bị cho công việc.
Kết quả : Hiểu thêm về công ty, đặc biệt là về quy trình và phong cách làm việc. Làm
quen được với các anh mentor, các bạn fresher. Nắm rõ lịch trình 1 ngày làm việc ở
cơng ty. Có tinh thần kỷ luật và trách nhiệm.

2.

Tìm hiểu về chun mơn và các kỹ năng trong công việc phát triển

game.

2.1.

Các công cụ làm việc

Thời gian : 4 ngày

Trang 9


Nội dung : Tìm hiểu về các ngơn ngữ, frameworks, tools sẽ được sử dụng trong
quá trình làm việc.
Trong thời gian này, thực tập sinh sẽ tìm hiểu các ngơn ngữ, frameworks,
tools thông qua project mẫu. Các anh mentor sẽ theo dõi và hỗ trợ khi cần thiết.
Cụ thể hơn, thực tập sinh sẽ được làm quen với công việc lập trình bằng
Cocos2dx-JS và Java, sử dụng các phần mềm IntelliJ IDEA, Cocos Studio,
Source Tree, memcached.
Thực hiện : Thực hành sử dụng các phần mềm đã nêu trên để tạo ra 1 minigame
đơn giản.
Kết quả : Nắm được các sử dụng các ngôn ngữ, công cụ phục vụ cho việc phát
triển game.
2.2.

Chuỗi seminar tìm hiểu về cơng việc phát triển game.

Thời gian : 3 tuần
Nội dung : Training xung quanh cơng việc chun mơn trong phát triển game. Tìm
hiểu thêm về các mảng công việc khác trong đội ngũ game.
Đây là chuỗi training mang lại rất nhiều kiến thức. Những trainer trong các
seminar là các Leader các bộ phận, hay Senior Developer có nhiều năm làm việc
tại cơng ty. Các kiến thức lĩnh hội được trong seminar bao gồm:

-

Kiến thức chun mơn: tìm hiểu về Client, Server, Design Pattern,

Clean Code:
+

Client: sử dụng Cocos2dx-JS, các khái niệm về Director, Scene,

Layer, Node, Sprite; tạo hiệu ứng hình ảnh, thu nhận tương tác người
dùng (qua chuột, bàn phím, chạm); tối ưu sử dụng các object trong
game; tối ưu hình ảnh hiển thị trên các kích cỡ màn hình. Sử dụng các
cơng cụ để tạo Sprite Sheet, tạo Spine Animation, thiết kế GUI.
+

Server: các khái niệm, mơ hình bố trí server, các giao thức TCP,

UDP; các phương thức tạo gói tin gửi/nhận (JSON, Binary, Protobuf,
…); cách bố trí lưu trữ cơ sở dữ liệu; các phương pháp tối ưu tương tác
giữa Client và Server; làm quen với server engine của công ty.

Trang 10


+

Design Pattern: tìm hiểu về các design pattern thường xuyên

được sử dụng trong game thông qua thực hành thiết kế các sơ đồ use
case, sơ đồ tuần tự và sơ đồ lớp.

+

Clean Code: tìm hiểu về các convention được quy định trong

các project; cách đặt tên biến phải xúc tích và giải nghĩa đầy đủ về vai
trị của biến đó; cách phân chia hàm phải gói gọn trong vai trị duy nhất
của hàm; cách comment phải cung cấp đầy đủ cho người đọc về hoàn
cảnh sử dụng hàm, sử dụng hằng, biến, cơng thức.
-

Hiểu biết về các mảng khác: tìm hiểu về các bộ phận Game

Designer, QC, Art, Multimedia, Marketing:
+

Game Designer: tìm hiểu nhiệm vụ của Game Designer, quy

trình lên ý tưởng và hoàn thiện, các tài liệu được Game Designer cung
cấp để biến ý tưởng thành sản phẩm thực tế.
+

QC: tìm hiểu về các lỗi trong game, phân loại lỗi theo cấp độ

nghiêm trọng; quy trình xử lý lỗi; cách email gửi build kiểm tra lỗi; sử
dụng hệ thống quản lý lỗi JIRA.
+

Art: tìm hiểu về art 3D, 2D, các loại animation sử dụng trong

game.

+

Multimedia: tìm hiểu về các visual effect (VFX) sử dụng trong

game; các sound effect (SFX); background music (BGM).
+

Marketing: tìm hiểu về thị trường game, các yếu tố cần để game

được nhiều người biết đến.
Thực hiện :
-

Tham gia đầy đủ các buổi seminar của công ty.

-

Thực hiện các bài tập thực hành, tham gia các trò chơi nhỏ trong q trình

tham gia seminar.
-

Tích cực phát biểu, thể hiện ý kiến trong suốt quá trình tham gia.

Kết quả :

Trang 11


-


Nâng cao kỹ năng chuyên môn về client, server, sử dụng công cụ liên

quan.
-

Nắm thêm một số quy tắc trong việc viết code sao cho đúng chuẩn, dễ đọc,

dễ hiểu.
-

Ngoài ra còn biết được nhiệm vụ đặc thù của các vai trị liên quan, mở

rộng hiểu biết về cơng việc game, thuận lợi cho việc trao đổi giữa các thành viên
khác vai trò.
2.3.

Chuỗi seminar kỹ năng mềm

Nội dung: Các kiến thức kỹ năng mềm: giao tiếp, đàm phán và thuyết phục
-

Khái niệm về giao tiếp, các tình trạng trong giao tiếp, cách giao tiếp hiệu

quả. Cách đặt câu hỏi , lắng nghe và phản hồi.
-

Cách cân bằng cảm xúc, hóa giải vị thế tâm lý bất bình đẳng (ngạo mạn /

tự ti).

-

Khái niệm về thương lượng, phong cách thương lượng, cách chuẩn bị cho

cuộc thương lượng.
-

Quy tắc 6 chiếc mũ, thử nghiệm áp dụng thực tế vào vấn đề được ban tổ

chức đặt ra.
-

Kỹ năng thuyết trình chuyên nghiệp và tự tin: thiết k16 ý tưởng, xây dựng

nội dung, chuẩn bị và thực hiện thuyết trình.
Thực hiện :
-

Tham gia đầy đủ các buổi seminar.

-

Tích cực đóng góp ý kiến, tham gia các trò chơi nhỏ trong các buổi seminar

và giành được hạng nhất chung cuộc.
Kết quả :
-

Tham gia đầy đủ các buổi seminar.


-

Tích cực đóng góp ý kiến, tham gia các trò chơi nhỏ trong các buổi seminar

và giành được hạng nhất chung cuộc.
-

Lĩnh hội được nhiều kiến thức về giao tiếp, thuyết trình, đàm phán và

thương lượng.

Trang 12


2.4.

Trải nghiệm, phân tích thiết kế, vẽ các sơ đồ liên quan cho game Thời

Loạn Mobile
Nội dung: Trải nghiệm game Thời Loạn Mobile, từ đó tìm hiểu, làm slide giới
thiệu các chức năng của game, vẽ ra các sơ đồ use case, sơ đồ tuần tự để thể hiện
hành vi của game.
Thực hiện :
-

Tìm hiểu game Thời Loạn Mobile.

-

Làm bài tập thiết kế slide giới thiệu các chức năng, đơn vị có trong game.


-

Vẽ các sơ đồ use case, sơ đồ tuần tự thể hiện hành vi của game.

Kết quả :
-

Nắm rõ các chức năng, đơn vị có trong game Thời Loạn Mobile.

-

Ứng dụng thực tế các sơ đồ vào trong thể hiện hành vi của game.

2.5.

Thiết kế sơ đồ, phát triển project game: Game Mobile Online phong cách

thủ thành (Tower Defense)
Nội dung : Ứng dụng các kiến thức đã học vào việc thiết kế và phát triển game
Game Mobile Online phong cách thủ thành (Tower Defense), đáp ứng được các
u cầu tính năng cần có của một game mobile, được chia thành các giai đoạn:
-

Thiết kế các sơ đồ use case, sơ đồ tuần tự:

Tìm hiểu chi tiết, nằm chắc nội dung mơ tả game và tính năng trong design
document để vẽ các sơ đồ use case, sơ đồ tuần tự mô tả hành vi người dùng trong
game. Từ đó tổng hợp và thiết kế sơ đồ lớp hồn thiện cấu trúc tổ chức các class
của game.

-

Dựa theo sơ đồ đã có, tiến hành cài đặt và phát triển game:

Theo các sơ đồ đã vẽ, sử dụng kiến thức đã được training về xây dựng Client Server. (Cụ thể mô tả trong phần công việc ở dưới).
Thực hiện :
-

Tham gia đầy đủ các buổi, chủ động phối hợp với các thành viên khác

trong nhóm.

Trang 13


-

Chủ động liên hệ hỗ trợ từ các anh mentor khi có vướng mắc về code hoặc

document.
Kết quả:
-

3.

Hồn thành ứng dụng game có các yêu cầu đã được đề ra.

Thực hiện project
Sau 2 tuần tìm hiểu ngơn ngữ, framework, cơng cụ sử dụng, đi kèm với chuỗi bài


tập phân tích thiết kế và cài đặt, thực tập sinh đã nắm được các kiến thức cơ bản. Trong
12 tuần kế tiếp, các thực tập sinh tiến hành áp dụng kiến thức để cài đặt 1 sản phẩm
game Tower Defense theo mô tả trong design document.
Chi tiết sản phẩm game sẽ được nói ở phần “Chi tiết về project”.

4.

Lịch làm việc

Tuần

Cơng việc

Người hướng dẫn

- Tìm hiểu về cơng ty và văn hóa Anh Đặng Thanh Tùng
làm việc. Cài đặt thiết bị.

Mức độ
hoàn thành
100%

Anh Võ Tồn Thuận

- Tìm hiểu về các ngơn ngữ, Anh Đặng Anh Tuấn
framework và công cụ sử dụng Anh Phạm Anh Quốc
trong quá trình làm việc.
1

Anh Nguyễn Trung Hưng


- Tham gia các buổi seminar training
kỹ năng chun mơn.
- Hồn thành assignment #1: xây
dựng 1 minigame áp dụng ngôn
ngữ, framework và công cụ được
cấp.
- Tham gia các buổi seminar training Anh Đặng Thanh Tùng
kỹ năng chun mơn.

2

Anh Võ Tồn Thuận

- Hồn thành assignment #2: chơi và Anh Đặng Anh Tuấn
tìm hiểu game Thời Loạn Mobile.

Anh Phạm Anh Quốc
Anh Nguyễn Anh Tuấn

Trang 14

100%


- Hoàn thành assignment #3: demo 1 Anh Phạm Gia Thái
tính năng trong game thủ thành.

Anh Đào Tuấn Linh


- Tham gia các buổi seminar training Anh Đặng Thanh Tùng
3

kỹ năng chun mơn.

100%

Anh Võ Tồn Thuận

- Tìm hiểu design document, lập kế Anh Đặng Anh Tuấn
hoạch thực hiện build.

Anh Phạm Anh Quốc

- Tìm hiểu design document.

Anh Đặng Thanh Tùng

100%

- Tham gia các buổi seminar training Anh Võ Toàn Thuận
kỹ năng chuyên môn.
4

Anh Đặng Anh Tuấn

- Giao diện màn chơi.

Anh Phạm Anh Quốc
Anh Nguyễn Dương Phong

Chị Nguyễn Thị Nhàn
Anh Vũ Tiến Khang
Anh Phạm Quốc Dương

5

- Tìm hiểu design document

Anh Đặng Thanh Tùng

- Flow, các giai đoạn trong trận đấu.

Anh Võ Toàn Thuận

- Truy cập vị trí các ơ trong game.

Anh Đặng Anh Tuấn

- Class đọc config màn chơi game.

Anh Phạm Anh Quốc

- Flow bắt đầu trận đấu - kết thúc Anh Đặng Thanh Tùng
trận đấu.
6

100%

100%


Anh Võ Tồn Thuận

- Cơ chế thêm, xóa, cập nhật các Anh Đặng Anh Tuấn
object trong game

Anh Phạm Anh Quốc
Chị Phan Huy Thiên Thư
Anh Lê Duy

- Quái vật mẫu (sample) trong Anh Đặng Thanh Tùng
game..
7

Anh Võ Toàn Thuận

- Thuật tốn tìm đường cho qi vật. Anh Đặng Anh Tuấn
Sinh số lượng quái vật theo config Anh Phạm Anh Quốc
game trên client.

Chị Lâm Hồng Loan

Trang 15

100%


- Tham gia chuỗi training kỹ năng
mềm.
- Tháp pháo mẫu (sample) trong Anh Đặng Thanh Tùng


100%

game. Các cách người chơi xây Anh Võ Toàn Thuận
8

dựng tháp pháo.

Anh Đặng Anh Tuấn

- Xử lý các lỗi được report ở build Anh Phạm Anh Quốc
#1.
- Xây dựng hệ thống tự động cập Anh Đặng Thanh Tùng

100%

nhật liên tục ở server, bộ đếm thời Anh Võ Toàn Thuận
gian trận đấu.
9

Anh Đặng Anh Tuấn

- Model lưu trữ thông tin người chơi Anh Phạm Anh Quốc
ở server. Model quản lý, thực hiện
trận đấu.
- Sinh số lượng quái vật theo config
game ở server.
- Thiết kế và xây dựng model người Anh Đặng Thanh Tùng

100%


chơi BOT. Các hành vi cơ bản của Anh Võ Toàn Thuận
BOT (xây tháp, thả quái vật).
10

Anh Đặng Anh Tuấn

- Tạo BOT đối đầu với người chơi Anh Phạm Anh Quốc
với các phong cách chiến đấu khác
nhau.
- Xử lý các lỗi được report ở build
#2.
- Hiệu ứng hình ảnh các phép thuật Anh Đặng Thanh Tùng
sử dụng trong game. Các cách Anh Võ Toàn Thuận

11

người chơi sử dụng phép thuật.

Anh Đặng Anh Tuấn

- Ảnh hưởng chỉ số của phép thuật Anh Phạm Anh Quốc
lên tháp pháo và quái vật (tăng

Trang 16

100%


máu, gây sát thương, tăng tốc độ,
…)

- Ảnh hưởng vật lý của phép thuật Anh Đặng Thanh Tùng
12

lên quái vật (đẩy lùi, hất tung).

Anh Võ Tồn Thuận

- Các vật có tương tác đặc biệt với Anh Đặng Anh Tuấn
quái vật.

13

100%

Anh Phạm Anh Quốc

- BOT sử dụng phép thuật.

Anh Đặng Thanh Tùng

- Nâng cấp trí thơng minh của BOT.

Anh Võ Tồn Thuận

100%

Anh Đặng Anh Tuấn
Anh Phạm Anh Quốc
- Sửa chữa các lỗi tồn đọng trong Anh Đặng Thanh Tùng
suốt quá trình phát triển.


Anh Võ Toàn Thuận

14 - Cải thiện performance của game. Anh Đặng Anh Tuấn
Tối ưu sử dụng object, tối ưu xử lý Anh Phạm Anh Quốc
âm thanh.

Trang 17

100%


Chương 3: Chi tiết về project

1.

Giới thiệu về game

Game dạng thủ thành có yêu cầu về chiến đấu thời gian thực. Trong game, người chơi
sẽ ghép cặp thi đấu với đối thủ cùng bậc. Bên cạnh game chính, cịn có các tính năng khác,
bao gồm shop phục vụ mua đồ trong game và hệ thống lựa chọn, nâng cấp tháp, quái vật,
phép sử dụng trong trận đấu.
1.1.

Mục tiêu của game:

Trong mỗi trận đối đầu, người chơi cần phải xây dựng hệ thống phòng thủ của
bản thân làm sao để bảo vệ nhà chính khỏi các đợt quái vật. Người bảo vệ thành cơng
nhà chính của bản thân trong thời gian lâu hơn là người chiến thắng. Trong trường hợp
cả 2 người chơi phịng thủ thành cơng tồn bộ đợt qi, người chơi có nhà chính nhiều

máu hơn là người chiến thắng.
1.2.

Mô tả game:

Ghép trận
Mỗi tài khoản người chơi sẽ mang một số điểm danh vọng (ĐDV). Vào trận
người chơi sẽ được ghép với một đối thủ (người chơi khác hoặc BOT) có ĐDV trong
khoảng tương đương. Khi chiến thắng người chơi được cộng một số ĐDV, thua sẽ bị
trừ điểm, khi hịa thì ĐDV của người chơi khơng thay đổi.
Trận đấu:
Như mô tả ở mục tiêu của game, người chơi phải xây dựng hệ thống phòng thủ
của bản thân với chiến thuật hợp lý để giành chiến thắng. Để làm được điều trên, người
chơi có thể thực hiện các hành động sau:
- Xây dựng tháp pháo trên sân của bản thân.
- Thả quái vật trên sân của đối thủ.
- Sử dụng các phép thuật.
Tháp pháo:
Người chơi có thể xây dựng tháp pháo trên sân của bản thân để tối ưu sát thương
và hiệu ứng trên quái vật. Có 3 loại tháp pháo chính:
- Tháp chiến đấu: tấn cơng gây sát thương lên quái vật.
- Tháp phép thuật: tấn công gây hiệu ứng lên quái vật.

Trang 18


- Tháp hỗ trợ: tăng sức mạnh cho các tháp trong phạm vi ảnh hưởng.
Người chơi có thể sử dụng các tài nguyên để nâng cấp các thuộc tính sức mạnh
của tháp. Tháp khi đạt đến cấp sức mạnh xác định có thể mở khóa thêm hiệu ứng đi
kèm.

Quái vật:
Có 2 loại quái vật trong game:
- Quái vật thường: không có khả năng đặc biệt, do màn chơi sinh ra hoặc do
người chơi thả.
- Quái boss: có khả năng đặc biệt, chỉ do màn chơi sinh ra vào các đợt quái xác
định.
- Các loại quái khác: mang thuộc tính đặc biệt đối với từng loại.
Người chơi có thể sử dụng các tài nguyên để nâng cấp các thuộc tính sức mạnh
của quái.
Phép thuật:
Mỗi loại phép có hiệu ứng và cách sử dụng riêng biệt, tùy vào thiết kế mà phép có
thể được sử dụng trên sân của bản thân hoặc sân của đối thủ. Một số phép có thể tác
động chỉ số của quái vật và trụ (sát thương, làm chậm, tăng tốc độ bắn, …). Một số
phép có thể tác động vật lý lên quái vật(đẩy văng, hất tung, …).
Người chơi có thể sử dụng các tài nguyên để nâng cấp các thuộc tính sức mạnh
của phép.
Các thẻ chiến đấu:
Mỗi thẻ chiến đấu (thẻ bài) đại diện cho một loại tháp pháo (hoặc quái hoặc phép
thuật) mà người chơi sẽ sử dụng trong trận đấu. Người chơi chỉ có thể lựa chọn một số
lượng nhất định thẻ bài để mang vào trận. Mỗi bộ thẻ chiến đấu thể hiện phong cách
chơi của người sở hữu bộ thẻ đó.
BOT:
BOT được tạo ra để đối đầu với người chơi trong một số trường hợp. Mỗi BOT
được tạo ra sẽ mang một phong cách chơi, thứ sẽ định hình cách tạo bộ thẻ và chiến
thuật chơi trong trận. Người chơi đối đầu với BOT giống như đối đầu với những người
chơi khác.

Trang 19



2.

Thực hiện

4 thành viên của team Fresher:
-

Võ Thành Trung

-

Nguyễn Văn Sơn

-

Huỳnh Nhật Long

-

Kiều Công Hậu

Cùng với sự hỗ trợ tận tình của các anh mentor trong team.

3.

Kế hoạch

Build #1:
-


Hồn thành các tính năng ngồi sảnh chờ (Lobby).

-

Xây dựng hệ thống shop, quà tặng hàng ngày.

-

Xây dựng cơ chế soạn bộ thẻ chiến đấu, xem và nâng cấp thẻ.

-

Hoàn thành map cơ bản với các hành động: vào trận, hệ thống sinh quái,

xây tháp phòng ngự, thắng - thua và kết thúc trận đấu.
-

Xây dựng quái mẫu với các hành vi cơ bản (tìm đường tới nhà chính, né

tránh các chướng ngại vật).
-

Xây dựng tháp mẫu với các hành vi cơ bản (xây tháp, bắn quái vật trong

tầm hoạt động).
Kết quả :
-

Hồn thành các tính năng dự kiến (cả về giao diện và logic).


Build #2:
-

Hoàn thành server game và chế độ chơi PvE.

-

Thêm các quái vật mới trong game.

-

Thêm các tháp pháo mới trong game.

-

Phát triển BOT với các phong cách chiến thuật khác nhau.

-

Hoàn thành map cơ bản với các hành động: vào trận, hệ thống sinh quái,

xây tháp phòng ngự, thắng - thua và kết thúc trận đấu.
Kết quả :
-

Hồn thành đa số các tính năng dự kiến.

Trang 20



-

BOT chưa có khả năng xử lý hành vi thơng minh.

-

Chưa hoàn thành đủ số lượng tháp pháo yêu cầu.

-

Chưa hồn thành các loại qi vật có hành vi đặc biệt.

Build #3:
-

Hoàn thành chế độ chơi PvP kèm theo khả năng đồng bộ.

-

Cài đặt sử dụng các phép thuật trong game

-

Thêm các quái vật boss.

-

Thêm các hiệu ứng tháp pháo khi đạt cấp.

-


Thêm các tháp pháo mới trong game.

Kết quả :
-

Hồn thành đa số các tính năng dự kiến.

-

Tác động vật lý của các phép chưa đồng bộ và không quá ổn định.

-

Đồng bộ chưa ổn định khi xử lý nhiều quái, tháp và phép.

Trang 21


TỔNG KẾT
Trong vịng 3 tháng, nhóm đã hồn thành một sản phẩm game theo phong cách Tower
Defense. Game hoạt động tốt trên các thiết bị Android với đầy đủ các tính năng đã đề ra theo
chương trình Fresher. Do thời gian có hạn, cùng với chưa có đầy đủ kinh nghiệm về phát
triển game và kiến thức sâu sắc về Cocos2dx-JS và Java nên khả năng hoạt động chưa xuất
sắc với các thiết bị cấu hình yếu. Nếu cịn thời gian, các hạn chế trên hồn tồn có thể được
khắc phục nhờ vào tổ chức framework có tính module cao.
Chân thành cảm ơn lịng nhiệt tình giúp đỡ của các anh chị Manager, Mentor, QC.
Cảm ơn tinh thần đoàn kết và cố gắng hết mình từ các bạn trong Team 2 đã cùng nhau hoàn
thành tựa game này.
Một lần nữa xin trân trọng cảm ơn VNG và Zing Play Game Studios đã tổ chức

chương trình VNG Tech Fresher để cho em cơ hội được thử sức với vai trò của một Game
Developer. Cảm ơn các thầy cô khoa Công nghệ Phần mềm đã tạo điều kiện cho em được
tham gia thực tập và hoàn thiện báo cáo.

Trang 22



×