Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (492)
Games in Android Showcase (112)
games submitted by our members
Games in WIP (556)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
   Home   Help   Search   Login   Register   
  Show Posts
Pages: [1] 2
1  Game Development / Newbie & Debugging Questions / Re: screwy sprites (gifs in Java2D)? on: 2004-05-12 21:56:56
Long shot, but if you are using CVS then make sure you're using the -kb flag for importing.  Not doing that sometimes produces the result you describe.  (You're probably not doing that, but just in case...)
2  Game Development / Networking & Multiplayer / Re: Login and lobby server network architecture on: 2004-05-12 19:01:08
Hi blahblahblah,

Thanks for the thoughtful response. Let me answer some of the questions you raise and see if you might point me in the right direction.

As far as security goes, part of what I'm trying to accomplish is a single sign-on environment with respect to the various lobby servers.  Players should be able to move from lobby to lobby without having to reauthenticate.

It is true that the login server would be a bottleneck in the system, but only the initial login would really use the login server.  After that, control would be handed off to one of the lobby servers.  I believe that is a fairly standard configuration, at least in IT settings, because it actually *supports* scalability (you can always add new lobby servers) even if it introduces certain risks; viz., single point of failure in the login server, and login server scalability.  The single point of failure risk is mitigated in part by making the login server as simple as possible, and the scalability risk is mitigated in part by giving the login server very limited responsibilities (just auth the user and then handoff to a lobby server).

As to why I want authentication at all, I want to be able to audit users and I want to be able to place access controls on what users are able to do.  For example, it would be nice for the server to support remote admin, such as booting users, deleting users, whatever, and obviously we wouldn't want such features to be readily accessible to normal users.  And we're not excited about the "security by obscurity" approach of simply assuming that nobody will figure out how to access such features because they're not widely known.  They may indeed become more widely known as more developers become involved with the project.

Concerning using HTTP--I agree with you on that, for exactly the reasons you give.  (For example, would be nice to use Tomcat as the login server, write a servlet, and handle login server scalability with mechanisms already supported by Tomcat should the need ever arise.)  I intend to bring that up with the other developer on the project at some point.

On the question of ports, I think my question was not as clear as it could have been.  I don't care about the actual port numbers, whether I'm using standard ports, or anything like that.  What I care about is the extent to which a given port should be overloaded with lots of different kinds of traffic.  For example, should chat traffic have a dedicated port, or should it share the port with other kinds of traffic (e.g. downloading the Terms of Use).  What are the general principles in deciding how to assign traffic to ports?  E.g., maybe it is true that the number of ports should be minimized because it makes firewall configuration simpler.

Thanks again for your response!

Willie
3  Discussions / Miscellaneous Topics / It's called "Off Topic" :-) on: 2004-05-08 17:27:40
Hey, have you guys seen this site?  It is pretty funny:

http://www.winternet.com/~mikelr/flame1.html

Willie
4  Java Game APIs & Engines / Java 2D / Re: graphicsDevice.getConfigurations() maps to wha on: 2004-05-07 21:05:55
Not sure. I don't do any MS programming at all.  :-P
5  Java Game APIs & Engines / Java 2D / Re: graphicsDevice.getConfigurations() maps to wha on: 2004-05-07 19:08:50
It looks like the pixel formats are the actual constant values for the MS PixelFormat Enum.

http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemdrawingimagingpixelformatclasstopic.asp?frame=true

They are specific to Windows I believe.
6  Game Development / Networking & Multiplayer / Login and lobby server network architecture on: 2004-05-07 18:22:37
A friend and I are creating a multiplayer lobby.  The deployment will consist of a single login server sitting out in front, handling all authentications, and then arbitrarily many lobby servers to manage different lobbies.  The idea is that any given user can go to any lobby, like the North America West lobby, the Europe lobby, that kind of thing.  The lobby servers are not located on the same LAN as the login server.

All queries against the login server are synchronous, so we just use a simple request/response protocol, with no persistent connections.  Session state is managed in a way similar to how HTTP does it.

We are about to start on the lobby servers and are not sure how best to handle connections and authentication.  The communication here is partly synchonous and partly asynchonous.  For example, a user may request to host a game, so that would be a synchronous request.  Or the lobby may indicate to the user that somebody just sent him a chat message, or that a new game is being hosted, or whatver.  Asynchonous there.

We are thinking that for any given user, there should be a persistent connection to his current lobby for handling asycn communications.  Synchronous requests would be sent to the lobby server in the same manner they're sent to the login server.  We would want all such requests to be authenticated.

1) Does the above seem reasonable?

2) Should different types of async communications be handled on different ports?  (E.g. should incoming chats be handled on a different port than new game notifications)  What are the common ports (and are which are commonly TCP-based vs. UDP-based)

3) For authenticating lobby server requests, we were thinking that on entering a lobby, the lobby would request the auth info from the login server one time and cache it so as to avoid making the lobby server query the login server with every request.  Is this reasonable?

Willie
7  Discussions / Miscellaneous Topics / Re: Ideas being a pain on: 2004-05-05 18:31:47
Originality is important but overrated. If you think you can execute the idea well and come up with something fun to play, I'd say go for it!   Grin
8  Game Development / Game Play & Game Design / Re: I need some help with the controls :( on: 2004-05-04 07:16:17
I don't know the Llamatron game, so I don't know the controls for that, but the game reminds me of Asteroids a bit.  That might be a way to do it (two rotate keys, thrust, and fire).

It took me a bit to figure out how to control the ship but I was able to do it.

Willie
9  Game Development / Game Play & Game Design / Re: 3d world on: 2004-05-03 20:30:44
I dunno, maybe it would be cool to have a donut-shaped planet...   Cheesy

But I think the actual shape wouldn't even be a donut.  It would be more like a thick washer.  The reason is the same reason it wouldn't be a sphere.  If the map were interpreted as a sphere, then we would have to assume some kind of spacetime distortion if you move off of a great circle.  Similarly, if you travel along the major circumference of a torus, there is only one great circle, and we'd have to assume a distortion off of that great circle.

"In the beginning, there was a washer-shaped planetoid called Galacto..."
10  Discussions / Miscellaneous Topics / Re: NVIDIA popup blocker? on: 2004-05-01 00:32:25
Yeah, that is weird.  I wonder if it has some kind of browsing spyware.
11  Game Development / Networking & Multiplayer / Re: Point me in the right direction. on: 2004-04-30 18:45:25
If you're already pretty decent with Java programming in general, the O'Reilly book by Elliotte Rusty Harold is pretty good.  (It is now in the second edition, so get that one, not the first.)

Willie
12  Game Development / Newbie & Debugging Questions / Re: Event handling problem on: 2004-04-30 06:22:40
Instead of (evt == "Good"), try ("Good".equals(evt)).  (The main point is to use the equals() method.  I've just switched the order to follow a common idiom that makes it impossible to get a NullPointerException.)

Willie
13  Game Development / Networking & Multiplayer / Re: Developing Java Gameservers on: 2004-04-30 06:14:32
Yeah, I was thinking that it would be pretty straightforward to use HTTP for communicating with a login server (log into server, get announcements, terms of use, list of lobbies, whatever) because those operations are all client-initiated request/response, and the model for doing such things over HTTP is pretty well-defined.  (Game client can accept cookies, have a servlet on the server, can use HTTPS to hide password if so desired, etc.)  I think talking about that a little could be useful.

I have very little experience with game development, so pardon me if this is amusingly noobish (it isn't intended to be), but would anybody really want to implement a wire-level protocol?  (You mean on top of IP, right?  I guess it has to be on top of IP if you want to support Internet games.)  Aren't TCP and UDP good enough?

Willie
14  Game Development / Networking & Multiplayer / Re: Developing Java Gameservers on: 2004-04-24 23:06:08
For my own part, I'm interested in protocol design and implementation because I haven't yet taken the time to look at existing third-party solutions.  (We're talking application-level protocols, right?)
15  Game Development / Networking & Multiplayer / Re: Discovering hosts on a LAN? on: 2004-04-24 17:54:53
Hm, after writing that I came up with an idea.  What if when the new player joins the LAN, his client broadcasts a query to the LAN like "who has a game?"  That prompts a response from any host on the LAN.  (I guess that response doesn't need to be broadcasted though.)  I'm pretty sure that would work.

Is there a better or more standard way of doing this?

Thanks,
Willie
16  Game Development / Networking & Multiplayer / Re: Discovering hosts on a LAN? on: 2004-04-24 17:36:25
p.s. Also, in case it's not obvious from my previous post, there is no dedicated server on the LAN.  Any player is a potential game host.  So there is no central authority to query for available games.
17  Game Development / Networking & Multiplayer / Discovering hosts on a LAN? on: 2004-04-24 17:34:09
Hi guys,

I'm working on a multiplayer game that will support LAN play.  I would like to know the best way to implement host discovery on the LAN.

I think I know part of what needs to be done, though I would appreciate your thoughts.  If a player decides to host a game, I assume I need to have that host do an IP broadcast to the LAN.  If the player dissolves the game, then again I would guess that host needs to broadcast the fact to the LAN.  (Can I do that using TCP, or do such broadcasts have to be UDP?)

The part where I'm not sure what to do is this.  Suppose there are already games being staged on the LAN, and a new player joins the LAN.  What is the best way for that player to be made aware of the games?  Does the host need to issue periodic broadcasts, so that the new player learns of the game?  If so, what is a good time interval?  Or is there a better way to do it altogether?

Thanks,
Willie
18  Game Development / Game Play & Game Design / Re: 3d world on: 2004-04-24 02:12:02
That is exactly right.  For example, if your world was 255*255, then you can set x = (x + deltax) % 255.
19  Discussions / Miscellaneous Topics / Re: programmer's dedication (or lack there of) on: 2004-04-22 18:51:17
It is funny and ironic that this thread might have spawned a bunch of new projects.   Grin
20  Game Development / Networking & Multiplayer / Re: Networking for Multiplayer Lobby on: 2004-04-22 18:19:08
p.s. Once I configured port forwarding for the EE ports, my attempt to host stopped producing the warning at all.  It looks like the way it works is that when I press "Host", Sierra tries to establish a connection to my machine.  If it's successful, then no dialog comes up.  In other words it is not the client that is somehow able to divine whether my machine is sitting behind NAT, as I had proposed.
21  Game Development / Networking & Multiplayer / Re: Networking for Multiplayer Lobby on: 2004-04-22 18:16:51
Hey guys, your explanation was right.  Damn.  I've been playing that game for about three years without being able to host.  LOL, I'm a dork...
22  Game Development / Networking & Multiplayer / Re: Networking for Multiplayer Lobby on: 2004-04-22 15:07:53
Yeah, the part at the end gave me an idea, where you say "Some routers...".  The thing that I've been having trouble getting is why an inbound connection wouldn't work through NAT even if I have port forwarding set up on my router.  I already tried it before, and before hosting, the game (Empire Earth in this case) warns me that others might have trouble connecting to my machine.

Hm, I wonder if *this* is what's happening.  I wonder if EE checks the local machine's IP address, and is somehow able to determine that it is a private IP address.  (Reserved range for private IPs?  Is there such a thing?  On my LANs I use 192.1.x.x and 192.2.x.x.)  If it's private then the warning comes up, but maybe if port forwarding is configured then clients will be able to connect anyway, despite the warning.

Thanks for the idea.  I'll give it a shot.

Willie
23  Discussions / Miscellaneous Topics / Re: programmer's dedication (or lack there of) on: 2004-04-22 03:16:11
I think that is an interesting question SpuTTer.  I doubt there is a way to fix the "problem" in general, if it's really a problem at all.  It's just human nature.  People get excited about stuff and then get bored of it after a while if it takes any real effort to do.  I imagine that making good games will always take a nontrivial amount of effort, so the secret to completing a game would seem to be that one has to be motivated enough to actually invest the effort.

That motivation can come from any number of places I suppose.  For me, I'm tired of working for other people and this is my way to have a shot at working for myself.  That's been pretty motivating so far--we'll see how I feel a year from now.

Willie
24  Game Development / Networking & Multiplayer / Re: Networking for Multiplayer Lobby on: 2004-04-22 02:36:02
p.s. I do not believe that it has anything to do with a firewall.  Even if I'm using NAT with no firewall, I can't host a game.

Willie
25  Game Development / Networking & Multiplayer / Networking for Multiplayer Lobby on: 2004-04-22 02:31:09
Hi guys,

A friend and I are working on a multiplayer lobby for our game.  It is modeled off of the multiplayer lobby that Sierra uses for some of its games (e.g., Empire Earth, Emperors), though we're trying to make the UI a little more intuitive.  :-)

Anyway, there is something about the way that the Empire Earth lobby works that I don't understand, but maybe somebody else does.  It does not allow you to host a game if you are using NAT.  Does anybody have any insight as to why that might be, and what can be done to get around that?

Also, I guess while I have your attention, let me run the high-level multiplayer lobby architecture by you and see whether I am on the right track.  We have a single login server that handles authentication and then hands users off to one of arbitrarily many lobby servers.  When somebody hosts a game, it is a game staging server running on the *host's* machine that handles game staging.  So players have to connect to the host's machine.  I assume that somehow NAT prevents that, but I don't know what the problem would be.

Thanks,
Willie
26  Game Development / Artificial Intelligence / Re: [AI] Java Rules engines - especially Rete-base on: 2004-04-21 19:41:48
A tried using JESS a few years back for a cognitive tutor project.  (Uses JESS to generate context-specific hints for learners engaged in some problem solving activity.)  Ultimately I went with a custom solution instead of JESS because there was no way that I could see to make the rules engine to "unapply" a rule that it had already applied.  (The way the feedback/hints are generated is to have the rules engine find the best rule given the current problem state.  But once you find the rule, you need to be able to unapply the rule so that your model reflects the learner's current state.)

I've never done game AI using a rules engine, so I don't know whether the same kind of issue can come up, but I mention it since I happen to have had some limited experience with JESS.  :-P

Willie
27  Discussions / Miscellaneous Topics / Re: A J2EE versus .NET comparison on: 2004-04-21 18:43:52
Quote


Agreed!  And you can use, for example, Eclipse as an IDE, MySQL as a database, Struts as an MVC system, Hibernate as a heirarchical object layer, Maven as a build tool etc, and never pay a penny for your software.  Lots of companies do exactly this - pay nothing for the software and buy a cheap box to start with.  If you become sucessful and need to expand, then you go out and buy more tin.  If they wish, all they really need to worry about is development costs, and with the market flooded with Java developers you can get good ones pretty cheap, too! Grin


Yeah, that's exactly what we're doing on my project--we use MySQL, JBoss, Tomcat, Struts, etc.  It's all great.  All of those products are of the highest quality.  And there is no shortage of documentation, though you do have to pay for the JBoss documentation.  (Still, I think it's like $100 a year or something like that.  Totally cheap.)  If a company is paying thousands of dollars for a J2EE environment, that's their mistake; it doesn't say anything about J2EE.

I don't program in .NET so I'm not qualified to say anything about whether that's a good framework or not (by most accounts I've heard, it is, with the only real drawback being that it's tied to Microsoft).  But I can say that one can easily get a J2EE shop going for the cost of a cheap box and a few programmers (who, admittedly, may not be so cheap--but I'd be surprised if .NET programmers were much cheaper--I could be wrong).

Willie
28  Discussions / Miscellaneous Topics / Re: A J2EE versus .NET comparison on: 2004-04-21 14:47:41
J2EE doesn't have to be expensive as far as the servers go.  JBoss is a great J2EE app server, and Tomcat is a very nice servlet/JSP engine.  Both are open source, free, and of very high quality.  We've been using JBoss for a couple of years, and Tomcat for many years, with great success.
29  Game Development / Newbie & Debugging Questions / Re: AWT Button Borders on: 2004-04-20 18:35:30
I'm not a pro on AWT/Swing stuff, so I'm just putting this out as an idea, but I wonder if the actual text rendering for AWT components is handled by the OS.  After all AWT uses heavyweight OS peers to render the components (though I don't know if the text is included in that).

Hopefully somebody with more AWT knowledge than me can clarify.  :-)
30  Game Development / Newbie & Debugging Questions / Re: AWT Button Borders on: 2004-04-20 18:27:48
Can you use Java2D to do the anti-aliased text?
Pages: [1] 2
 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

Nickropheliac (16 views)
2014-08-31 22:59:12

TehJavaDev (23 views)
2014-08-28 18:26:30

CopyableCougar4 (33 views)
2014-08-22 19:31:30

atombrot (42 views)
2014-08-19 09:29:53

Tekkerue (41 views)
2014-08-16 06:45:27

Tekkerue (35 views)
2014-08-16 06:22:17

Tekkerue (26 views)
2014-08-16 06:20:21

Tekkerue (37 views)
2014-08-16 06:12:11

Rayexar (73 views)
2014-08-11 02:49:23

BurntPizza (49 views)
2014-08-09 21:09:32
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!