From: Alan W. <de...@gm...> - 2005-01-30 17:45:30
|
Ok, for about a week now, since I've downloaded the code, I've been working on adding metaserver support. I've gotten nearly everything implemented, a nice chat display, players display, rooms dialog, etc... A nearly complete metaserver client. I'm working on Windows, so of course only the SDL implementation is written. I have only the metaserver games packets to deal with before I was going to work on polishing it up and releasing the code. With this news of your nearly working code, I think this would be a good time to announce what I have and work on merging our code if needed to complete the transformation. I've entered a live metaserver (playmyth.net) with it this morning. http://www.darooster.net/pictures/alephonelives.jpg Let me know what we should do to finish this before I lose interest :) Alan On Sun, 30 Jan 2005 02:37:28 -0500, Woody Zenfell III <woo...@ve...> wrote: > Hi, > > As many of you know, I've had A1 integration with bungie.net-style > metaservers brewing for a while. The recent attention to the project > (10th anniversary, free content, etc.) and attempts to splinter the > community encouraged me to make some more progress on it. > > I have put together some very rudimentary metaserver support. It > currently only uses "guest" accounts on mariusnet (www.mariusnet.com), > and there are many, many features and niceties not implemented > "end-to-end" yet. But it's a start, and I wanted to get it into the > living codebase as soon as possible, and continue to refine it from > there. > > So far, metaserver client functionality is only exposed through the SDL > UI (because it's easier to develop for, and because it's the only > cross-platform solution). I expect Carbon support will be added at > some point as well. Currently, as noted, support is fairly rough and > minimal: > > * The "Join" box now has an extra button, "Join by Metaserver". > This launches a new dialog box that connects to mariusnet, enters the > "Vimy Ridge" room, and shows the players (A1 or not!) and A1 games in > that room, along with a chat window. You can't see any information > about a player besides his name. You can't see any information about a > game besides its name (which is currently set to the name of the > gathering player plus "'s Game"). Chat works but is not terribly > pleasant. All chat messages are the same color, and it can be hard to > tell where one message ends and the next starts. Clicking "Cancel" > disconnects and takes you back to the main menu. Clicking on a > player's name does nothing. Clicking on a game attempts to join that > game, as if you had entered its IP address for "Join by IP". > > * The "Setup Network Game" box now has an extra toggle, "Advertise > Game on Metaserver". You won't be able to tell it, but this invisibly > connects to mariusnet, enters the "Vimy Ridge" room, and creates a game > that joining A1 players should be able to see. You'll remain connected > to that room, with that game advertised, until you cancel gathering or > start the game. In either of those cases, you'll summarily disconnect > from mariusnet, taking away your game with you. Note: > > * Advertising your game on the metaserver doesn't prevent people > from joining your game by IP or "by LAN". > > * Advertising your game on the metaserver doesn't require that > you configure port forwarding on your router/NAT device/etc., but > gathering any game (advertised or not) still does! This could be > somewhat confusing/misleading for newbies. > > A couple practical notes that follow from the above: > > * We're guests at mariusnet; it's an established service with a > small group of regular Myth players. If they wander in and get > curious, be friendly. May as well start off on the right foot. :) Of > course, they may rapidly learn to congregate in a different room. > > * When Joining by Metaserver, note that if you see games there, the > gathering players won't be able to hear anything you say to them, etc. > because they're just seeing the ordinary "Gather Network Game" box on > their screen. > > * People won't appear in the room while they're actually playing a > game, nor will the game appear. So if you're sniffing around for > games, you may want to hang around in there for a bit and see whether > people pop in between games. Actually in the meantime, you probably > want to continue using whatever method you've been using (AIM chat > room, etc.) to find other players; I don't think this is mature enough > yet to substitute. > > Don't update documentation, etc. to match the above, because frankly > this user experience kind of sucks, and I hope it will rapidly evolve > into something more pleasant, making most of the above obsolete. But > this is the minimum change I could devise that actually provides most > of the fundamental value of the metaserver. > > People building the SDL project will need to update project files to > add the files in Network/Metaserver. People building the Carbon > project will eventually need to do something like that, but I don't > think they'll be affected yet. > > Please let me know how things go if you experiment with this. In the > meantime I'll keep improving and refining both the code and the user > experience. This is also a bit of an experiment: using A1's CVS > repository for somewhat rough code still under development (but > believed not to break anything), rather than only for really polished, > well-tested code. It makes sense to me, but I'd be curious to hear > comments on this as well. > > Special thanks go out to the mariusnet folks "Conner" and "Marius" for > being so helpful and accommodating in this effort. > > Woody > > ------------------------------------------------------- > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > Tool for open source databases. Create drag-&-drop reports. Save time > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > _______________________________________________ > Marathon-devel mailing list > Mar...@li... > https://lists.sourceforge.net/lists/listinfo/marathon-devel > |