how would you run..

how would you run on a server do you use tomcat or do you have to be at the server to run it? ???

To run on a spereate server you need to modify the deployment XML files for your installed apps.

As initially deployed all the exmaples are set to locaqhost 127.0.0.1. You need to change those to the IP port you are actually going to be listening for users on.

You then have two chocies for discovery. Either run the DiscoveryManager and run a web server to publish the resulting discovery.xml file so your remote client can get it OR write/modify a FakeDiscovery.xml file that you put locally on your client and read with a file:// URL.

thanks

i think i get the SGS basics but how do i get multiple views of the same 3d world for different users in difrent place or togther in the J3D universe.

That is completely a client issue.

The answer is you woudl build a custom admin client that let you jump between user’s views or open m,ultipel windows,one on each user.

admin client???

Okay, here’s how it beaks down:

Server: Holds state of the world. Does server side cheat-avoidance and central logic like wall collision detection, combat and AI

Client: Renders an approximate view of the world for the players’. (approximate because you need to allow for latency issues.)

IF you want to be able to see the world from multiple players’ POVs simultaneously you need to either
(a) Fire up multiple clients
or
(b) Write a client with multiple canvas’s.

Frankly, this is all incredibly basic stuff. I’d wager that, if you need this explained, your current aspirations do not meet your skill set.

I strongly suggest you chose a simpler first project in order to learn the basics of writing networked games. The 3D complications can be aded ontop of that to begin with.

A good first program for you to look at for ideas might be Kev’s Tank demo that is up in the demos area of games-darkstar.dev.java.net
I’d shoot for something of about that level of compelxity for your first project.

how dose client get world from server? i gues world is in a GLO
PS i could not work out what to do in the tutorial my app is based on what i found in the javadocs and the battleboard code
PPS why is there no 3d examples

(1) Its totally up to the design of the game.

BattleTrolls/JNWN has local data for the world maps and the creatires and sends textual commands from the server to the client instructing the client what to do (ie “add creature 1 15 15 0 0 nw_troll Hubert”, “walk 1 20 20 0 3.14” etc.)

(2) Im not surprised. You seem to be lookign for a game engine. SGS is not a game engine. SGS is an enabling technology for writing all sorts of different kinds of games and game engines.

(3) There are no 3D examples because I dont yet have the permissions to release Battletrolls. Im working on that. When I have the permissionI will release it. But I dont think it will help you that much unless you happen to be making something almost exactly like it. Its not a game engine, its just an example. You will still need to understand the code to use it as a starting point and you will need to understand client/server games in order to understand the code.

Again I strongly suggest you scale back you ambitions and start with a failry simple 2D game in order to learn how to write client/server games.

Otehrwise, you might want to look for a game engine that you just code on a “modding” level. Something like NWN perhapse. Its limited in how many users can use it at once (about a dozen) but its programmable on a modder level. Otherwise you might try “multiverse”. I don’t know how good an engine it is but at least they let you download it for free…

all i want to do is get the world from server through the client i do not know how to get that i am not looking for a game engine

Yes, what you want is a game engine because thats the only thing that is going to hadn you a unified world between server and client.

Anything else, you need to build it yourself.

Typically the static data is deploeyd to both locations. The dynamic information is updated in some game-specific packet protocol from the server to the client. Each client runs a local simulation that is loosely coupled to the other clients. Each user’s actions are communicated up to the server which sends it on to other users along with anything that happens because of server logic.

When i get battletrolls released you can see how it does that, but fundementally each game is different and has to develop its own scheme for communication.