9/30/2014

AI 4 - Cài đặt Giác quan


  AI 4 - Cài đặt giác quan -

Đây là một chương ngắn về cách thực hiện hành vi AI sử dụng các khái niệm về một hệ thống cảm giác tương tự như những gì thực thể sống có. Như chúng ta đã thảo luận trước đó, một hệ thống nhân vật AI cần phải có nhận thức về môi trường, nhận thức các trường hợp trở ngại, nơi kẻ thù nó đang tìm kiếm, nếu đối phương có thể bị phát hiện trong tầm nhìn của người chơi, và những cái khác. Chất lượng trí tuệ nhân tạo của NPC của chúng ta hoàn toàn phụ thuộc vào thông tin mà nó có thể nhận được từ môi trường. Dựa trên thông tin đó, các nhân vật AI sẽ quyết định logic để thực hiện. Nếu không có đủ thông tin cho AI, nhân vật AI của chúng ta có thể có các hành vi kỳ lạ, chẳng hạn như việc lựa chọn địa điểm sai để hỗ trợ, ngủ, và vòng lặp hành động kỳ lạ, và không biết những gì để đưa ra quyết định thực hiện. Thử tìm kiếm "AI glitches" trên YouTube, và bạn sẽ tìm thấy một số hành vi hài hước của nhân vật AI ngay cả trong trò chơi AAA.

9/09/2014

2D Platformer Bài 1 - Tiếp Đất




Rất hân hạnh và chào đón những ai muốn bước vào con đường lập trình game 2D với Unity game engine. Chuỗi bài viết này sẽ sử dụng đến những update mới nhất được thêm vào trong phiên bản Unity 4.3. Vâng, tất cả mọi thứ, platformer căn bản, parallax scrolling, trí tuệ nhân tạo, UI, đấu boss, khá hấp dẫn nhỉ?

8/27/2014

ProjectGame 1.5 - Tạo chìa khóa và mở cửa




Trong bài này, chúng ta sẽ tạo cửa để làm điểm kết thúc game. Chúng ta cũng sẽ tạo ra Trigger Collider, để người chơi không thể hoàn thành game nếu như không nhặt đủ vật phẩm, dĩ nhiên là chiếc chìa khóa cửa.

8/26/2014

AI 3.3 - Tính cách nhân vật



  3.3 - Tính cách nhân vật -

Chúng ta cũng có thể sử dụng xác suất khác nhau để tìm ra nét đặc sắc cho các nhân vật trong game. Hãy giả vờ như chúng ta đã thiết kế một bản kế hoạch cho một trò chơi quản lý dân số cho chính quyền địa phương. Chúng ta cần phải giải quyết và mô phỏng các vấn đề như thuế so với thu hút tài năng toàn cầu, nhập cư so với gắn kết xã hội, và như vậy. Chúng ta có ba lớp nhân vật trong bản kế hoạch của chúng ta, cụ thể là, công nhân, nhà khoa học và các chuyên gia.

7/25/2014

AI 3.2 - Định nghĩa xác suất



  3.2 - Định nghĩa Xác Suất -

Có rất nhiều cách để định nghĩa xác suất dựa trên các tình huống và ngữ cảnh. Thông thường khái niệm xác suất dùng để chỉ khả năng của một sự kiện xảy ra thành công. Xác suất của một sự kiện A xảy ra thường được viết như P (A). Để tính toán P (A), chúng ta cần phải biết số lần nó có thể xảy ra (n), và tổng số lần tất cả các sự kiện khác có thể có thể xảy ra (N).

7/17/2014

Project RPG BÀI 17. TẠO CÁC ĐIỂM HỒI SINH CHO MOB (Phần 1)



Bài viết này sẽ thêm chức năng tạo ra các điểm hồi sinh cho các quái vật mob, quái vật sẽ được hồi sinh một cách ngẫu nhiên tại các điểm hồi sinh. Bài này khá dài nên mình sẽ chia ra làm nhiều phần.

7/15/2014

DEVGAME 1.8 - ĐẾM SỐ LƯỢNG NHẤP CHUỘT



Trong các game nhấp chuột phiêu lưu, sẽ có vài vật phẩm mà bạn phải nhặt nhiều lần để được qua cửa tiếp theo hoặc để hoàn thành nhiệm vụ nào đó. Bài viết này bạn sẽ phải thêm một biến đếm kiểu số nguyên-integer để đánh dấu số lần mà bạn đã nhấp chuột vào đối tượng.

B1. Tiếp tục với project chúng ta đã thực hiện ở các bài trước, tại thẻ Project nhấp đúp chuột vào file Js MousePick.

B2. Chèn đoạn code bên dưới vào đầu file script sau dòng code #pragma strict.

private var pickNum : int = 0;

Luật: Kể từ bài viết này, nếu chèn đoạn code vào đầu file script nghĩa là bạn sẽ phải hiểu là chèn nó vào bên dưới dòng code #pragma strict nhé.

B3. Chèn dòng code sau bên trên hàm Debug.Log:

pickNum = pickNum + 1; // increment the number of times the object was picked

Ghi chú: Bạn có thể chú thích công dụng của đoạn code vào phía sau dấu //, tất cả những kí tự phía sau // đều được trình biên dịch code bỏ qua và không thực hiện.

Bạn cũng có thể thay hàm Debug.Log thành hàm print để hiển thị ra console biến số.

B4. Xóa hàm Debug.Log đi và thay bằng đoạn code sau:

print("This object was picked " + pickNum + " times.");

B5. Lưu file script lại.

B6. Trở qua Unity Editor, save Scene này lại bằng cách ấn Ctrl + S và nhấp nút Play để kiểm tra thành quả.


Thông báo sẽ hiển thị mỗi khi bạn nhấp chuột vào khối hộp.


Ngoài ra, bạn có thể thay thế đoạn code pickNum = pickNum + 1 thành pickNum += 1 hay pickNum++ đều được, cả 3 đều cùng một chức năng là tăng biến pickNum lên 1 đơn vị. Kết quả đều giống hệt nhau.