MIME-Version: 1.0 Server: CERN/3.0 Date: Monday, 06-Jan-97 21:34:25 GMT Content-Type: text/html Content-Length: 7670 Last-Modified: Wednesday, 15-Nov-95 19:02:14 GMT The Netrek-Java Project

The Netrek-Java Project

by Hiep H Nguyen
http://www.cs.utexas.edu/users/hiep/netjav.html

Table Of Contents:

Proposal

We propose the gradual porting and migration from C to Java of the client code for Netrek, a popular, interactive, multi-user video game on the internet. This will allow Netrek to run in all applications and an on all platforms running Java (i.e. Netscape, HotJava, Solaris, WindowsNT). The goal is to produce a pure Java application using the graphics, networking and security features of Java, and to develop a methodology for gradual code porting from C to Java. This project will also demonstrate that Java can handle interactive, networked application with real-time graphics. The result will be an impressive video-game for the World Wide Web.

Why Netrek?

Netrek is one of the most popular, real-time, networked video-game on the internet. It has a wide user base, and is an excellent demonstration of networking, and of graphics capabilities. It has a simple graphics engine, and it is not crucial for the graphics to run fast like other commercial video games, since it was written with networking in mind. (The true speed bottleneck of a game like Netrek is the communication between a Netrek client and server). Netrek has also been ported many times to many platforms, thus the modular structure is present for gradual code porting. For example, the first stage of the code port would involve writing a graphics wrapper in Java for the Netrek graphics engine, thus keeping all the other C code in tact. Also there the number of files and functions in a Netrek client is not trivial. It will be a good test of how well Java handles a large application like Netrek.

Why Java?

Java allows portable code, that can be updated without having users download new clients for each new release. It also allows better graphics (i.e. true images instead of bitmaps, thus we can use a gif for all ships and planets). It will already have support for networking, and security. It will decrease the need to port Netrek to new systems.

Methodology

We propose the gradual porting of the client code of Netrek to Java, by using the facilities for calling native C code from Java. Java graphics and networking methods will replace the client code equivalent. The process will involve: The porting can be broken up into 3 main phases.

Java's Possible Drawbacks

The following are possible questions that this project will answer directly relevant to Java? We will test these possible drawbacks of Java:

Who is working on this?

Currently the people working on this project are:

Helping Out

Any help on this project in terms of time, knowledge, comments, suggestions or money will be greatly appreciated. This project is particularly suited for those interested in Java, Web-Programming and real-time video games for the Internet.
Please email me at hiep@cs.utexas.edu if you have any comments, suggestion or if you would like to sign on for this project.

Related Web Site