1645323
Robocode
https://vi.wikipedia.org/wiki?curid=1645323
Title: Robocode
Để điều khiển trò chơi, Robocode có một vòng lặp được xây dựng sẵn gọi là Battle Manager. Về cơ bản, Battle Manager hoạt động như một chương trình sử dụng các robot khác như các plug-in. Mọi rô bốt đều có luồng (thread) riêng của nó và có riêng một hàng đợi sự kiện riêng. Các sự kiện được sinh ra mỗi khi có điều gì đó xảy ra để ta có thể điều khiển được. Các sự kiện có thể được sinh ra khi rô bốt của ta va chạm vào tường, phát hiện có đối thủ trong vùng rađa, vv… Những sự kiện này được đặt vào một hàng đợi sự kiện (event queue) bởi Battle Manager. Các sự kiện này sau đó sẽ được robot tự thực hiện, xử lý. 
Việc chia trò chơi và các robot này có thể tránh được các con robot lập trình kém làm gián đoạn, ngắt trò chơi hoặc lỗi khác có thể xảy ra.
Nguồn và năng lượng.
Một robot sẽ được lấy một lượng năng lượng khi bắt đầu trò chơi, và một robot sau đó sẽ mất hoặc thêm năng lượng trong quá trình chơi. Năng lượng được bổ sung nếu bạn bắn trúng robot khác và năng lượng sẽ bị mất nếu bạn bắn đúng robot của bạn. Một robot thường có 100 điểm năng lượng lúc bắt đầu chơi. 
Nguồn là lượng năng lượng đặt trong mỗi viên đạn khi được bắn. Điều này có nghĩa rằng, một rô bốt sẽ mất năng lượng khi bị đạn bắn trúng. Nguồn càng mạnh, thì năng lượng khi bị bắn trúng sẽ mất càng nhiều. Đây là quan hệ một – một giữa nguồn và năng lượng, có nghĩa là một khi bắn trúng với nguồn là 0.5 thì năng lượng sẽ mất đi 0.5.
Robot Robocode.
Trong Robocode, các rô bốt bao gồm ba phần: một ra đa, một sung, và một xe vận chuyển. Ba phần của rô bốt có thể di chuyển độc lập với nhau. Vì ra đa được gáp trên sung và sung được gán với xe vận chuyển, nên ba phần này có thể ảnh hưởng lẫn nhau.
Một robot Robocode có thể kế thừa từ 3 lớp khác nhau: Robot, AdvancedRobot,và TeamRobot.
Đội chơi.