The DBB needs your help ....
Re: The DBB needs your help ....
Jeff,
don't let flip confuse you. Apparently he has missed a few posts here.
I am done with specifying the game info. Find all information on the lower half of this page: http://www.descent2.de/d2x-tracker.html
don't let flip confuse you. Apparently he has missed a few posts here.
I am done with specifying the game info. Find all information on the lower half of this page: http://www.descent2.de/d2x-tracker.html
- KoolBear
- DBB Co-Founder
- Posts: 10132
- Joined: Thu Nov 05, 1998 12:01 pm
- Location: Houston, TX USA
- Contact:
Re: The DBB needs your help ....
Excellent Diedel beautiful piece of work.
Re: The DBB needs your help ....
The version-specific subsections are meant to hold all information specific to a certain Descent version. So there could be either D2X-XL or DXX-Rebirth settings. A given Descent version doesn't need to supply (dummy) information for any other Descent version.
Re: The DBB needs your help ....
The XML looks good.
I'm not familiar with the extra features in XL or Rebirth. My intuition is to just ignore the D2x-specific sections, or do you think that there is something crucial enough to warrant creating a column for it in a table of games?
Maybe an alternative would be to create a column for a comma-separated list of only the "extra features" that are enabled. This could get tricky, since for some things the "extra feature" seems to be actually disabling the thing, like with suicides.
I'm not familiar with the extra features in XL or Rebirth. My intuition is to just ignore the D2x-specific sections, or do you think that there is something crucial enough to warrant creating a column for it in a table of games?
Maybe an alternative would be to create a column for a comma-separated list of only the "extra features" that are enabled. This could get tricky, since for some things the "extra feature" seems to be actually disabling the thing, like with suicides.
Re: The DBB needs your help ....
a suggestion:
instead of <D2X-XL> and <DXX-Rebirth> tags, Perhaps <game-variant name="D2X-XL"> would be more extensible.
instead of <D2X-XL> and <DXX-Rebirth> tags, Perhaps <game-variant name="D2X-XL"> would be more extensible.
Re: The DBB needs your help ....
Actually, I think we might need a small adjustment so that a generic tracker (that might not necessary display information specific to either D2X-XL or D1/2X-Rebirth) can show some rather important information - namely, what version of the game the host is running. If it's an XL game, you may not be able to join it with Rebirth ... or with an old version of XL. Something like
Then you would also have the variant-specific block later on in the XML snippet. I'm not sure whether it's better to use the same element name for this regardless of version, or a different one for each - the latter might make a serial XML parser fractionally more difficult to implement if you were doing it wrong (skipping unknown elements isn't rocket science), but to a DOM parser it's literally no effort at all to ignore it if you're not expecting it.
Code: Select all
<game-variant>D2X-XL | D1X-Rebirth | D2X-Rebirth</game-variant>
<version>(1.15.147, 0.57, etc)</version>
Re: The DBB needs your help ....
What are the versioning semantics? For instance, does 1.15.xx necessarily break compatibility for 1.14.xx players to join, and are all 1.15.xx intended to be mutually compatible?
Re: The DBB needs your help ....
Nothing quite so strict as that I don't think. If it lists the version then people should be able to guess why they can't join if they can't at least.
Re: The DBB needs your help ....
Sirius proposition looks good. There should probably be another field telling the level type (D1, D2, XL), as you can use D2X-XL for all of them.
Jeff, I could offer a condensed "extra features enabled" information, e.g. using the CompetitionMode field:
no: gameplay-critical extra features enabled
basic: non-critical extra features enabled
full: no extra features enabled
People may still want to see details about what features exactly are on or off. Two possibilities here:
1. Your tracker can expand the info (e.g. using a popup window or floating div area) when a user clicks on a tracker display line
2. The player will have to use D2X-XL to see all the extra features (D2X-XL provides expanded game info when pressing a key in the netgame browser).
A program type field is a good idea, too.
If Rebirth is starting to use the tracker, too, we need to expand it to let it be aware of different program versions, because they do have incompatible UDP networking protocols, so they would need to silently filter any game hosts returned by a tracker and display only those they can cooperate with.
Edit:
XML and documentation updated (see http://www.descent2.de/d2x-tracker.html#xml).
Except with the competition mode, the D2X-XL specific info could theoretically be ignored. Competition mode gives people a basic idea whether D2X-XL features are enabled (or disabled) they would prefer not to use (or to use).
The tracker can use the Name value from the Program tag to identify the extensions area (i.e. when <Program Name="D2X-XL" Version="1.15.148" /> then the extensions area would be <D2X-XL> ... </D2X-XL>).
Jeff, I could offer a condensed "extra features enabled" information, e.g. using the CompetitionMode field:
no: gameplay-critical extra features enabled
basic: non-critical extra features enabled
full: no extra features enabled
People may still want to see details about what features exactly are on or off. Two possibilities here:
1. Your tracker can expand the info (e.g. using a popup window or floating div area) when a user clicks on a tracker display line
2. The player will have to use D2X-XL to see all the extra features (D2X-XL provides expanded game info when pressing a key in the netgame browser).
A program type field is a good idea, too.
If Rebirth is starting to use the tracker, too, we need to expand it to let it be aware of different program versions, because they do have incompatible UDP networking protocols, so they would need to silently filter any game hosts returned by a tracker and display only those they can cooperate with.
Edit:
XML and documentation updated (see http://www.descent2.de/d2x-tracker.html#xml).
Except with the competition mode, the D2X-XL specific info could theoretically be ignored. Competition mode gives people a basic idea whether D2X-XL features are enabled (or disabled) they would prefer not to use (or to use).
The tracker can use the Name value from the Program tag to identify the extensions area (i.e. when <Program Name="D2X-XL" Version="1.15.148" /> then the extensions area would be <D2X-XL> ... </D2X-XL>).
Re: The DBB needs your help ....
if you fully implemented Sirius's suggestion, then whoever is doing the page can use a single css/xslt rule for all the games, rather than having to do one each for D1X/D2X/D2X-XL...
Re: The DBB needs your help ....
Did you read my spec on the page I have linked to?
Re: The DBB needs your help ....
I did, but this was what I was meaning:
It would be easier to read if {0|1} was replaced with {enabled|disabled}.
Code: Select all
<?xml version="1.0"?>
<GameInfo>
<Descent>
<Host>hostname</Host>
<Mission Type={"D1" | "D2" | "D2X"} Name="mission name" Level="level no" />
<Players Current="number of players" Max="max. number of players" />
<Difficulty>difficulty level</Difficulty>
<Mode
Type={"Coop" | "Anarchy" | "Robo Anarchy" | "CTF" | "Hoard" | "CTF+" | "Monsterball" | "Entropy"}
Team={"0"|"1"}
Robots={"0"|"1"} />
<Status>"Forming" | "Open" | "Restricted" | "Closed" | "Full" </Status>
</Descent>
<game-variant Name={"D2X-XL" | "DXX-Rebirth"} Version="program version" >
<Competition Mode={"-1"|"0"|"1"} />
<GraphicsFx
Shadows={"0"|"1"}
Smoke={"0"|"1"}
Lightning={"0"|"1"} />
<WeaponFx
LightTrails={"0"|"1"}
Tracers={"0"|"1"} />
<ShipFx
Shield={"0"|"1"}
Damage={"0"|"1"}
Weapons={"0"|"1"}<
GatlingSpeedup={"0"|"1"} />
<HUD
TargetInd={"0"|"1"}
DamageInd={"0"|"1"}
LockInd={"0"|"1"} />
<RADAR
Players={"0"|"1"}
Powerups={"0"|"1"}
Robots={"0"|"1"}
HUD={"0"|"1"} />
<Controls
Mouselook={"0"|"1"}
FastPitch={"0"|"1"} />
<GamePlay
Cheats={"0"|"1"}
Darkness={"0"|"1"}
SmokeGrenades={"0"|"1"}
FusionRamp={"0"|"1"}
FriendlyFire={"0"|"1"}
Suicide={"0"|"1"}
KillMissiles={"0"|"1"}
TriFusion={"0"|"1"}
BetterShakers={"0"|"1"}
HitBoxes={"0"|"1"} />
</game-variant>
<game-variant/>
...
</GameInfo>
Re: The DBB needs your help ....
Easier for humans - computers don't care. And it blows the data up.
The way you wrote it doesn't work. You are using an empty tag for the program version, but you need a start and end tag. Maybe just a typo, but I wanted to clarify.
What your proposition does is to mix two different tags that should not intersect. Imo it is cleaner to separate the program version info from the extensions info.
The way you wrote it doesn't work. You are using an empty tag for the program version, but you need a start and end tag. Maybe just a typo, but I wanted to clarify.
What your proposition does is to mix two different tags that should not intersect. Imo it is cleaner to separate the program version info from the extensions info.
Re: The DBB needs your help ....
<tagx/> and <tagx></tagx> are identical, so is <x e="y"/> and <x><e>y</e></x>; I did <game-variant/> for the sake of compactness.karx11erx wrote:I am not an XML expert, but I am pretty sure that something like <tag props /> ... </tag> doesn't work. Maybe <tag props> ... </tag>, but I am not sure about that. So far I thought you can either do <tag props /> or <tag><prop1>...</prop1> ... </tag>.
Re: The DBB needs your help ....
You don't understand.
You did <tagx/> </tagx>, which afaik is not possible.
Anyway, my proposition isn't very flexible. Every application implementing this has to know about all keywords an extension uses. Change the extension => change all apps.
You could do something like:
This would allow any application to use and display all extension information without knowing in advance how many there are and how each is named. The only fixed keywords provide Descent version independent meta information. You could even omit the group count and just stop looking for more "GroupX" areas as soon as one isn't contained in the XML tree. Same for the attributes.
What do you think about it, folks?
You did <tagx/> </tagx>, which afaik is not possible.
Anyway, my proposition isn't very flexible. Every application implementing this has to know about all keywords an extension uses. Change the extension => change all apps.
You could do something like:
Code: Select all
<Extensions Groups="number of extension groups M">
<Group1 Name="name" Attributes="number of attributes N">
<Attribute1 Name="name" State={"0" | "1" | "disabled" | "enabled" | "another meaningful state"} />
...
<AttributeN Name="name" State={"0" | "1" | "disabled" | "enabled" | "yet another meaningful state"} />
</Group1>
...
<GroupM>
...
</GroupM>
</Extensions>
What do you think about it, folks?
Re: The DBB needs your help ....
fixed typo above.
you can specify a fixed set of keywords in a XML's DTD schema if you wanted. you still need to document the format however.
that being said, its easy enough for the game client to filter out servers that it can't connect to.
you can specify a fixed set of keywords in a XML's DTD schema if you wanted. you still need to document the format however.
that being said, its easy enough for the game client to filter out servers that it can't connect to.
Re: The DBB needs your help ....
What has this to do with it?fliptw wrote:that being said, its easy enough for the game client to filter out servers that it can't connect to.
And what are your comments good for if you hardly ever offer a solid concept and not just some buzzwords here? What is your goal: To help us? Or what else?
Re: The DBB needs your help ....
I think we are communicating at cross purposes here, lets get something straight:
Do you intend to have actual game clients make use of the XML information provided by the server?
Do you intend to have actual game clients make use of the XML information provided by the server?
- KoolBear
- DBB Co-Founder
- Posts: 10132
- Joined: Thu Nov 05, 1998 12:01 pm
- Location: Houston, TX USA
- Contact:
Re: The DBB needs your help ....
Gentlemen,
I think we had a great run here. I believe that this thread is about run it course for the purpose I created it.
Going forward Jeff250 will be the coordinator from the DBB side. It appears that we have decided and agreed on an output from the DX-XL. Please support Jeff and keep him on the straight and narrow
If we need anything else from the developers lets have Jeff be our liaison. The next phase will require very little from the developers anyway.
I want to thank everyone that has contributed to this effort all the DBB'rs , Diedel, Zico, LO thank you very much for your input. Jeff let me know what you need and I will see that you have it when you need it.
I would like to remind everyone that this effort should remain an open source project, while the DBB might customize the look, it should be a utility that many sites can use if they choose!
Kindest Regards,
Mike Sullivan
Mike
I think we had a great run here. I believe that this thread is about run it course for the purpose I created it.
Going forward Jeff250 will be the coordinator from the DBB side. It appears that we have decided and agreed on an output from the DX-XL. Please support Jeff and keep him on the straight and narrow
If we need anything else from the developers lets have Jeff be our liaison. The next phase will require very little from the developers anyway.
I want to thank everyone that has contributed to this effort all the DBB'rs , Diedel, Zico, LO thank you very much for your input. Jeff let me know what you need and I will see that you have it when you need it.
I would like to remind everyone that this effort should remain an open source project, while the DBB might customize the look, it should be a utility that many sites can use if they choose!
Kindest Regards,
Mike Sullivan
Mike
Re: The DBB needs your help ....
Well said, KB. I would like to output tracker data on DescentValhalla.com for all Descent's, not just D3. I'm looking forward to hearing what the next steps are for me. If this thread has run its course, I'd love to continue the dialog in email, Diedel. If that's okay with you. Let me know.
Re: The DBB needs your help ....
OK, the new competition mode tag seems good.
I don't think we need a DTD schema. I'd rather not over-engineer this.
I don't think we need a DTD schema. I'd rather not over-engineer this.
Re: The DBB needs your help ....
Nope. The game clients already have their game info communication setup. This is solely for allowing external services (like a website) display information about what Descent 1/2 games are going on and how they are setup.fliptw wrote:I Do you intend to have actual game clients make use of the XML information provided by the server?
Jeff,
I have renamed the "Program" tag to "Agent" and turned the CompetitionMode tag into the attribute "Extensions" there (which may sound more meaningful to people without detailled knowledge of D2X-XL):
<Agent Name="D2X-XL" Version="1.15.149" Extensions={"none" | "basic" | "critical"} />
none: No extensions enabled
basic: Some extensions are enabled that aren't gameplay critical
critical: Gameplay critical extensions are enabled
I'd like to hear your plan regarding the detailled extensions info e.g. D2X-XL supplies. If you don't want to support that (e.g. by popping the info up when a user clicks on the related line in the server display) and just use the Extensions property, I could as well omit it.
Re: The DBB needs your help ....
I just plan on supporting the Extensions property. Popping into XL seems like the best way to get the low level XL details, especially since they'll probably be changing with time. I think the main utility of this tracker service on the DBB.net will just be to advertise when people are playing games. If people want a robust game inspection tool, then there is already XL for that.karx11erx wrote:I'd like to hear your plan regarding the detailled extensions info e.g. D2X-XL supplies. If you don't want to support that (e.g. by popping the info up when a user clicks on the related line in the server display) and just use the Extensions property, I could as well omit it.
Re: The DBB needs your help ....
Umm ... I have changed the spec a little more.
The program specific areas are gone (<D2X-XL>, <DXX-Rebirth>) and have replaced by a general "Extensions" area:
This seems to make the most sense to me (and is quite similar to flip's idea - I wouldn't want to list extensions inside an area tagged "Server" though, since the relation here imo isn't strong enough).
If everybody agrees on providing only basic extensions info I would however completely omit the Extensions area.
Edit:
I have changed the Host tag and have changed the difficulty from a tag to an attribute of the mission tag.
The program specific areas are gone (<D2X-XL>, <DXX-Rebirth>) and have replaced by a general "Extensions" area:
Code: Select all
<GameInfo>
<Server Name="name" Version="version" Extensions={"none" | "basic" | "critical"} />
<Descent>
...
</Descent>
<Extensions>
<Extension1
Property1={"0" | "1" | "disabled" | "enabled"}
Property2={"0" | "1" | "disabled" | "enabled"} />
...
</Extensions>
</GameInfo>
If everybody agrees on providing only basic extensions info I would however completely omit the Extensions area.
Edit:
I have changed the Host tag and have changed the difficulty from a tag to an attribute of the mission tag.
Re: The DBB needs your help ....
if its only meant for web services, then we don't need to enumerate the property values.
We also could transmit the extension info as a separate request.
We also could transmit the extension info as a separate request.
Re: The DBB needs your help ....
More information on extensions could be useful if you don't have the opportunity to check out more game information later on - e.g. if it becomes possible to join a D2 netgame directly from the tracker feed in the way you can with D3.
Re: The DBB needs your help ....
No separate requests please. D2X-XL game clients will always be able to see any D2X-XL specific game info extensions.
Here's the current spec: http://www.descent2.de/d2x-tracker.html#xml
Here's the current spec: http://www.descent2.de/d2x-tracker.html#xml
Re: The DBB needs your help ....
For what little it matters, that looks good to me.
Re: The DBB needs your help ....
Looks like you guys got some functionality up. Looks good!
Arch Linux x86-64, Openbox
"We'll just set a new course for that empty region over there, near that blackish, holeish thing. " Zapp Brannigan
"We'll just set a new course for that empty region over there, near that blackish, holeish thing. " Zapp Brannigan
Re: The DBB needs your help ....
Agreed, although that's the D3 tracker which is independent of this effort. I believe that was thanks to Koolbear and Ryujin.
However, you can see our beta demo of the XL tracker here (with some site-specific customizations by Diedel):
http://www.descent2.de/trackers.html, then click on active servers
I believe that Koolbear is still working on getting it integrated with the phpBB, and then we'll likely want to make a few changes yet. There are some known issues as well.
At some point, I'll be publishing the php code when everything has settled.
However, you can see our beta demo of the XL tracker here (with some site-specific customizations by Diedel):
http://www.descent2.de/trackers.html, then click on active servers
I believe that Koolbear is still working on getting it integrated with the phpBB, and then we'll likely want to make a few changes yet. There are some known issues as well.
At some point, I'll be publishing the php code when everything has settled.
- KoolBear
- DBB Co-Founder
- Posts: 10132
- Joined: Thu Nov 05, 1998 12:01 pm
- Location: Houston, TX USA
- Contact:
Re: The DBB needs your help ....
This is released! You can see it on the main page of the DBB Classic theme, I will be adding it to the other themes this weekend. The code is available to anyone that wants it in order to setup a tracker on their site!
Jeff250 and Diedel have done a wonderful job on this project! Ryujin provided some great feedback during testing along with tons of valuable input from the community.
Jeff250 is working on implementing phase two which will launch D2X-XL for you similar to the way DescentValhalla is currently doing. Look for this improvement in the coming weeks!
Jeff250 and Diedel have done a wonderful job on this project! Ryujin provided some great feedback during testing along with tons of valuable input from the community.
Jeff250 is working on implementing phase two which will launch D2X-XL for you similar to the way DescentValhalla is currently doing. Look for this improvement in the coming weeks!
- Foil
- DBB Material Defender
- Posts: 4900
- Joined: Tue Nov 23, 2004 3:31 pm
- Location: Denver, Colorado, USA
- Contact:
Re: The DBB needs your help ....
Excellent work, guys. I think this is the first time a D3 tracker and D1/D2 tracker have been seen in the same place. Awesome.