Tuesday, May 31, 2005

Slowly but surely 50%

I am happy to announce that 50% of the Dedicated Chat Server component of GTADS has been completed. The server can listen for new clients, and perform user authentication. A simple method of password management has been implemented so far, no database usage at this point, however, when JDBC gets implemented mySQL support will be included.
At this point I think it will be fair to work on both the server and client at the same time to get the client going, do protocol testing, and by the time the server is completed 90% of the client will be completed. Again, if anyone would like to view the sourcecode it is currently available on sourceforge's cvs. I plan to have a chat only release completed, this is without the GTA gaming support, in about 2 weeks. If there is anyone proficient in swing that would like to assist in the client development, feel free to drop me an email or comment.
I would also like to comment on some of the criticisms of the motivations for my project. If GTADS is not for you, it is not for you, I am only providing something that a group of people may be interested in using for recreation. I am by no means doing this to impose GTA on anyone. I am well aware of the existence of GTA3+ and I am not focusing on those games as they already have well developed multiplayer projects. This project does target an aged game (7 years old to be exact for GTA1) but I don't write personal projects to cater to the whats popular, I'll write them to cater to what I think i'd like to see. I'd love to have done this program a long time ago when GTA1 was more popular but I had only seen the real need for it when I had a broadband connection and saw multiplayer over cable for the first time. With that said, if you believe that GTADS is an outdated project don't use it but i'd like to let those people in for a little secret. While this project initially targets GTA1 and 2, if all goes well, as I do expect it to, GTADS will run beyond the scope of Grand Theft Auto and target a wide variety of Internet games, providing an opportunity as well as an alternative for game play.

Sunday, May 29, 2005

CVS Repository Up

Its been a few days since I got a chance to work on the server some more however I made a good deal of progress yesterday in developing the framework on the server. It is still about only 25% complete but I am confident it will be complete soon. Also in other news, there is a CVS repository via sourceforge that I have started using to put my code up on. For any interested in taking a peek at what's being worked on right up to the minute feel free to stop by the sourceforge homepage and get the CVS information.
The chat protocol is now starting to be developed and I will have a good deal of it developed in a document on sourceforge soon. It is a simple sequence designed to make interaction between client and server simple since the client will have to be started on in a couple of days.

Monday, May 23, 2005

New Sourceforge Home

Well it took a couple of days but GTADS finally has a home for its code base on https://sourceforge.net/projects/gtads/. When I get something substantial up in terms of the dedicated server, there will soon be some activity up on the SF site. Right now I haven't had much time this weekend to progress any further on GTADS but with the end of this semester I think I will be able to squeeze in some time this week. I posted some info on various gaming news groups to give people some insight on the existence of this project and possibly some support and help. At this stage of development, however, help is not necessarily needed so much as the passing by word of mouth of this project.

Friday, May 20, 2005

Progress on Dedicated Server

Still no word from Sourceforge.net on giving my project space to work on GTADS some progress has been made on the chatserver component. I had decided to retain the maximum amount of portability I would write the server in Java, saving some time and problems with sockets and threads. So far a portion of the netcode for user logins has been implemented but there is a long road of code that needs to done before there is any alpha project created.
I have also been working on the design of the most integral part of GTADS, the localhost proxy. This will be especially complicated and I have done some packet sniffing over a sample game to figure out what the trigger packets are to initialize a game, same player information. I am confident that this will be sorted out and by the time the client is created. Again if anyone has any packet data from playing in GTA don't hesistate to send it to steven.day@gmail.com. Also let others know of the existence of this project if possible. Help is the best resource to make this project happen.

Wednesday, May 18, 2005

SourceForge Project in the Making

Well, I have officially placed a submission for the GTADS project on sourceforge. This should make it easier to manage and encourage other developers to take part in making this happening. I will know whether my submission has been successful or not in 2-3 business days, but I am confident that it will go though without a hitch
As for development, early stages of the dedicated server has gone underway, it is mostly revisiting the whole model for the dedicated server, the client, and the client's localhost proxy. These three components will be the major projects in creating the whole GTADS infrastructure.
The first project that has to be done before anything else can happen is the actual dedicated server. This is what I will be working on first, the user management, and chat infrastructure, and then the game join/host infrastructure
The user management, I suspect, will give the option of using filebased storage and eventually a mySQL interface, I haven't decided on what fields to include for the user, as it will also be included in the actual User object. For the chat infrastructure, this will probably borrow heavily from the IRC model and I will be reading up on the IRC RFC on the protocol and game control is still in sketchy detail.
A side project that I had already started was documenting the GTA1 protocol only the work of implementing the locahost proxy by the time there is work left to be done there. If anyone with GTA1 who plays over TCP would like to grab the packet data and start on this it would be greatly appreciated. The best method in decoding the packets are in loading up the game and doing one or two specific things each time. I will provide a small imcomplete document of what I had documented very soon.

Tuesday, May 17, 2005

Build a better Multiplayer for GTA1 and 2

Well its been 2 years put off but I am finally going to get back on track with the development of a convenient multiplayer experience for Grand Theft Autos 1 and 2. I had started on some development on this back in 2003 but had put it off due to time contrains and eventually forgot about it. It is a shame though because I had wanted to create a dedicated server for people to participate and play against people across the internet.


As it stands GTADS will comprise of two components. The dedicated server that will stand as a chat/game hosting interface that players will connect on and the client, which will have the mechanisms for connecting the game to other players. The Dedicated server will be independent of the actual gameplay and GTA protocols, but will allow a Battlenet (tm) sort of interface. A player will have an account, a message inbox and a game playing record of wins and losses. The client will act as a connection to the dedicated server, allow players to connect and host games and also act as a proxy for the games. This is the meat of the what needs to be done to actually connect GTA players together in multiplayer.


I had some some early work done reverse engineering the GTA protocol to figure out what needs to be involved in the actual multiplayer. I envision a GTA player connecting their game to localhost (127.0.0.1) which will act as a proxy to connect to a game specified on the server.


This blog will attempt to chonicle my progress and let anyone who is interested know where I am at with this project. I will host this project on SourceForge.net as it will be open source. I encourage anyone whom is interested to help me take on such an endevor.



- Steven Day
GTA Developer