Skip to Content
Darkstar: The Java Game Server
book

Darkstar: The Java Game Server

by Brendan Burns
August 2007
Intermediate to advanced
77 pages
1h 59m
English
O'Reilly Media, Inc.
Content preview from Darkstar: The Java Game Server

Space Game!

The following section describes the complete implementation of a simple multiplayer space combat game. Players are pilots engaged in simple combat with each other. Figure 6 shows two opponents playing the game.

A screen shot of Space Game! in action.

Figure 6. A screen shot of Space Game! in action.

This section is organized a follows: first the data structures for the game state are described, then the main game application, finally the client application is briefly discussed.

Game State

Space Game! is a relatively simple game. There are basically only three types of objects which make up the internal state of the game: Ships, Bullets and the game clock. Each ship obviously represents a particular client in the game. Each client can fire multiple Bullets in an attempt to destroy other player's ships. The game clock is the central arbiter of time in the game. It is used to synchronize action. The class diagram for this game state is shown in Figure 7.

The object model for game state

Figure 7. The object model for game state

The first thing to notice is that all of the game state objects implement a shared moveable interface. The moveable interface simply requires two methods:

public interface Moveable {
   public void move();
   public int getTicks();
}

The move() method actually moves the moveable object. The getTicks() function returns the current local ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Beginning Java 8 Games Development

Beginning Java 8 Games Development

Wallace Jackson

Publisher Resources

ISBN: 9780596514846Errata