Server Help Forum Index Server Help
Community forums for Subgame, ASSS, and bots
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   StatisticsStatistics   RegisterRegister 
 ProfileProfile   Login to check your private messagesLogin to check your private messages   LoginLogin (SSL) 

Server Help | ASSS Wiki (0) | Shanky.com
TCP Billing Protocol Stuff
Goto page 1, 2  Next
 
Post new topic   Reply to topic Printable version
 View previous topic  Bug: Overlapping Regions (I hope) Post :: Post Staff  View next topic  
Author Message
2dragons
Novice


Joined: Feb 17 2004
Posts: 95
Offline

PostPosted: Mon Dec 27, 2004 1:33 am    Post subject: TCP Billing Protocol Stuff Reply to topic Reply with quote

I've been using version 1.3.1 of your proposed protocol Grel. So all my reference is from such. Here is a list of things I propose need changed/added.


s->b PLOGIN should include a field for timezone


Support needs to be added for statistical tracking (kills/deaths/etc...)

b->s POK add stats fields
s->b PLEAVE add stats fields

or perhaps a two way message type PSTATS?

The chat system supports using the name of the chat or the number representing the chat. This introduces a problem as there is no way to differentiate between a chat number and a chat name. (ie ?chat=1) To follow this all billers implementing the TCP protocol must deny the usage of chats that are numbers.
Back to top
View users profile Send private message Add User to Ignore List
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Mon Dec 27, 2004 2:38 am    Post subject: Reply to topic Reply with quote

Sounds okay to me. However, I haven't touched the User Database protocol lately.
_________________
Performance is often the art of cheating carefully. - James Gosling
Back to top
View users profile Send private message Add User to Ignore List
Mine GO BOOM
Hunch Hunch
What What
Hunch Hunch<br>What What


Age:42
Gender:Gender:Male
Joined: Aug 01 2002
Posts: 3615
Location: Las Vegas
Offline

PostPosted: Mon Dec 27, 2004 10:40 am    Post subject: Reply to topic Reply with quote

Chat clients are to be chatting, not player watching. He already stated he wants to keep it simple, thus the name of the protocol.

If you'd like to create your own method of dealing with stats, feel free to add it into a command in which users can opt in or out of easily. Then you can create your own STATS:x:x:x lines for clients to handle.

Timezone isn't really needed. Can't see a practical application in a simple chat client/server protocol.

EDIT: Ignore me, thought was in a different forum, misread the title.
Back to top
View users profile Send private message Add User to Ignore List Send email
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Mon Dec 27, 2004 12:51 pm    Post subject: Reply to topic Reply with quote

Mine GO BOOM: I believe you've misread. 2dragons is talking about the User-Database protocol; not Chatnet. icon_smile.gif
Back to top
View users profile Send private message Add User to Ignore List
D1st0rt
Miss Directed Wannabe


Age:37
Gender:Gender:Male
Joined: Aug 31 2003
Posts: 2247
Location: Blacksburg, VA
Offline

PostPosted: Mon Dec 27, 2004 1:49 pm    Post subject: Reply to topic Reply with quote

tcp billers 4 win!
_________________

Back to top
View users profile Send private message Add User to Ignore List Visit posters website
2dragons
Novice


Joined: Feb 17 2004
Posts: 95
Offline

PostPosted: Mon Dec 27, 2004 2:19 pm    Post subject: Reply to topic Reply with quote

To clarify, I'm speaking of: subspace billing server protocol proposal.

Any billing protocol SHOULD support statistical tracking or it misses a huge part of a biller.
Back to top
View users profile Send private message Add User to Ignore List
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Mon Dec 27, 2004 2:41 pm    Post subject: Reply to topic Reply with quote

I'm just wondering why does a biller need to keep track of the timezone?
Back to top
View users profile Send private message Add User to Ignore List
Cyan~Fire
I'll count you!
I'll count you!


Age:37
Gender:Gender:Male
Joined: Jul 14 2003
Posts: 4608
Location: A Dream
Offline

PostPosted: Mon Dec 27, 2004 3:07 pm    Post subject: Reply to topic Reply with quote

Isn't that part of the SS validation system? Or maybe it's just handled by Subgame?
_________________
This help is informational only. No representation is made or warranty given as to its content. User assumes all risk of use. Cyan~Fire assumes no responsibility for any loss or delay resulting from such use.
Wise men STILL seek Him.
Back to top
View users profile Send private message Add User to Ignore List Visit posters website
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Mon Dec 27, 2004 3:27 pm    Post subject: Reply to topic Reply with quote

I guess I never really thought about it; I know subgame reports the timezone under *info or *einfo; but never really thought about why. But, why does the biller need it, and how do you verify against it..
Back to top
View users profile Send private message Add User to Ignore List
Grelminar
Creator of Asss


Joined: Feb 26 2003
Posts: 378
Offline

PostPosted: Mon Dec 27, 2004 3:31 pm    Post subject: Reply to topic Reply with quote

What exactly do you need the timezone for? It's only slightly useful for authentication/banning purposes, so I suspect you have something else in mind, but I'd like to know what it is.

As for stats, they will not go in this protocol. asss keeps track of lots of stats data in complex formats, which would be quite difficult to embed in this sort of protocol. Eventually a separate stats aggregation system might be designed, but it would be a complement to the user database system, not a component of it.
Back to top
View users profile Send private message Add User to Ignore List Send email Visit posters website
2dragons
Novice


Joined: Feb 17 2004
Posts: 95
Offline

PostPosted: Thu Dec 30, 2004 11:27 pm    Post subject: Reply to topic Reply with quote

Timezone: hrm 3 little reasons

1. To keep the protocol a bit more similar to the UDP. It is quite amazing how much there is different between the 2 protocols once you get past the protocols themselves. (I'd actually like to see more changes than just this.)

2. User auth/banning, sure why not, it should be cake to include so why not include it even if it is almost not worthwhile for this.

3. Demographics. I love data and displaying data. Timezone provides a great way to divide it up. Add it in with the registration/demo form and it is nice.
Back to top
View users profile Send private message Add User to Ignore List
2dragons
Novice


Joined: Feb 17 2004
Posts: 95
Offline

PostPosted: Thu Dec 30, 2004 11:30 pm    Post subject: Reply to topic Reply with quote

Oh just wanted to add, my perspective is totally based on using the 2 protocols together. I care little for the TCP protocol by itself.

In fact what I've done doesn't take into consideratino the protocols, just the data that is similar between the 2 and that which is necessary. It easily supports a dynamic range of protocols fairly easily, but there are certain case between TCP/UDP that just suck.

ie: TCP: named server, UDP: id'd server
Back to top
View users profile Send private message Add User to Ignore List
Grelminar
Creator of Asss


Joined: Feb 26 2003
Posts: 378
Offline

PostPosted: Fri Dec 31, 2004 2:49 am    Post subject: Reply to topic Reply with quote

As a general note, if there's a difference between the protocols, it's probably deliberate. The UDP protocol is a mess, and I was trying to get rid of as many quirks as possible.

Timezones do seem useful, so I'll add them. Before I make a non-backwards-compatible change, are there any other fields that should be added this time around?
Back to top
View users profile Send private message Add User to Ignore List Send email Visit posters website
2dragons
Novice


Joined: Feb 17 2004
Posts: 95
Offline

PostPosted: Fri Dec 31, 2004 3:22 pm    Post subject: Reply to topic Reply with quote

I agree the UDP protocol is a mess, and I do like the crap you've removed when creating the TCP.

Only other change I'd say is necessary would be in regards to:

g->b CHAT

'channel is the name of the channel. alternatively, it can be a
number signifying which of the player's channels the message is
intended for.'

There is no way for the biller to know if it should be interpreted as a channel or a chat number.
Back to top
View users profile Send private message Add User to Ignore List
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Sun Jan 02, 2005 9:02 pm    Post subject: Reply to topic Reply with quote

What would be nice is a field for the port in which the server is listening to. So then you could make a zone info page, with the zone IP/port info...
Back to top
View users profile Send private message Add User to Ignore List
2dragons
Novice


Joined: Feb 17 2004
Posts: 95
Offline

PostPosted: Sun Jan 02, 2005 9:05 pm    Post subject: Reply to topic Reply with quote

Yes I'm glad Cypher pointed that out. Port is necessary for CONNECT, precisely for what he said.
Back to top
View users profile Send private message Add User to Ignore List
-Smong-
Guest


Offline

PostPosted: Mon Jan 03, 2005 8:52 am    Post subject: Reply to topic Reply with quote

2dragons wrote:
There is no way for the biller to know if it should be interpreted as a channel or a chat number.
Just use strtol or look for NumberFormatException when trying to convert the string to an integer.
Alternatively just ignore channel messages that contain a string for the channel name, it's not useful as you need to type more to send a message and chat clients hide all this stuff under the hood anyway.

I'm not sure what you need the server port for. If it's just for collecting stats then you can use a directory client to make a lookup by zone name.

Where you said the protocol is using zone names instead of id's, there is nothing stopping you from using numbers only in the name of the zone. global.conf allows for a billing name and a directory name.
Back to top
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Mon Jan 03, 2005 1:58 pm    Post subject: Reply to topic Reply with quote

Why bother with having 2-3 scripts for say a website that you have a zone info page for every zone connected. I'd rather not have to query the directory server as well; when I could just simply store it in a DB field when the zone connects.

Also, why isn't there support for biller control for: zone reset, zone shutdown?
Back to top
View users profile Send private message Add User to Ignore List
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Mon Jan 03, 2005 2:20 pm    Post subject: Reply to topic Reply with quote

Oh just looking over Catid's biller; and decided, I think timezone identifier would be smart to add as well.
Back to top
View users profile Send private message Add User to Ignore List
2dragons
Novice


Joined: Feb 17 2004
Posts: 95
Offline

PostPosted: Mon Jan 03, 2005 8:37 pm    Post subject: Reply to topic Reply with quote

Grel has already agreed to add timezone in.

-Smong- wrote:

Just use strtol or look for NumberFormatException when trying to convert the string to an integer.
Alternatively just ignore channel messages that contain a string for the channel name, it's not useful as you need to type more to send a message and chat clients hide all this stuff under the hood anyway.


That part of the protocol is g->b, currently I can't even get Asss working enough to test the dang TCP protocol so I don't even know what it sends, but why create any form of ambiguity when it is totally unnecessary? The server should ONLY send 1 form or the other, there is no point for allowing both. Attempting to parse the channel as a number does not solve the problem, a number can still represent a channel name or a channel #. (Hopefully I'm looking at this the correct way. If not my apologies tongue.gif )


-Smong- wrote:

I'm not sure what you need the server port for. If it's just for collecting stats then you can use a directory client to make a lookup by zone name.


Port is useful for anything on the biller's end when it wants to identify/refer to a zone. Perhaps other billers didn't care about a website interface, but being able to dynamically show what servers are connected with ip/port is GOOD thing. Besides something that simple should be included for completeness.

-Smong- wrote:

Where you said the protocol is using zone names instead of id's, there is nothing stopping you from using numbers only in the name of the zone. global.conf allows for a billing name and a directory name.


I'll agree, but the changes from 1 protocol to the next makes it more time consuming to dynamically do stuff, more code must be written to handle the differences between protocols. However I'm fine with CONNECT and at this point am only concerned about things not included that I believe should be. I’ll handle the differences.
Back to top
View users profile Send private message Add User to Ignore List
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Mon Jan 03, 2005 9:01 pm    Post subject: Reply to topic Reply with quote

Aye! yeah, what 2d said. icon_smile.gif icon_lol.gif
Back to top
View users profile Send private message Add User to Ignore List
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Tue Jan 04, 2005 1:24 am    Post subject: Reply to topic Reply with quote

Question, why is it when the TCP biller sends a PBAD, Chatnet receives: "LOGINBAD:???" -- Shouldn't the ??? = rtext?

Question: along the same lines
B <-> S POK:3:Welcome to the Network, we recommend you to ?setemail once you login.:mynx2::7:0:01-04-2005 01:22:47

Why doesn't the rtext field be sent to Continuum and/or chatnet... I thought it was supposed to?

And does WANTREG work w/ Continuum, or only Subspace clients?
Back to top
View users profile Send private message Add User to Ignore List
Smong
Server Help Squatter


Joined: 1043048991
Posts: 0x91E
Offline

PostPosted: Tue Jan 04, 2005 9:39 am    Post subject: Reply to topic Reply with quote

Looking at the code rtext is ignored in POK, you can use the PENTERARENA to trigger a MSG containing the greet text.
Back to top
View users profile Send private message Add User to Ignore List Visit posters website MSN Messenger
ExplodyThingy
Server Help Squatter


Age:38
Gender:Gender:Male
Joined: Dec 15 2002
Posts: 528
Location: Washington DC
Offline

PostPosted: Wed Jan 05, 2005 5:58 pm    Post subject: Reply to topic Reply with quote

The reason for the diference is simple, and the rtext in POK strikes me as useless, but it could potentially be used to singal "You are logged in, BUT..." Such text would probably be only relavant to the logs on ASSS. PENTERARENA is used so that the biller does not have to guess whether or not the player is ready to recieve messages. The risk is that after a POK, the player could read the news, the biller sends after a time delay a greeting, and the player mises it completely.

For those of you have some shady issues about the protocol such as why there is no ability to shutdown a server, much of it has been addressed back in the day by yours truely and grel boy, here:
https://forums.minegoboom.com/viewtopic.php?t=2191&
Official protocol proposals are here:
http://sscx.net/asss/new-biller-prot.txt

Quote:
Question, why is it when the TCP biller sends a PBAD, Chatnet receives: "LOGINBAD:???" -- Shouldn't the ??? = rtext?

The odds are that either that is probably someone taking a shortcut when writing one of the handlers for the protocols, or the more likely possibilty that text is screwed up in transfer or storage (or maybe never sent at all), one of the modules (probably the chatnet) panics, and uses a default string of "???"

Again I raise the question: Why do we have fields in the protocol that permit the use of the deliminator character? (Obviously aside from chat and such messages) Specifically, I question the formatting of time and date data in POK, which contains colons. It is safe, I see that, to do such things in this protocol, however since compatibilty seems important to you, might want to administer to this now rather than later.

Relatedly, does ASSS have a check against zone operators from putting colons into fields sent to the biller? For example, in CONNECT, the zone owner might attempt to name the zone "Something: Stupid" like "Battlefield: 1942" Just something you might want to catch sooner than later for your standard public pre-compiled modules, IMO.

Registration-wise, we now know how to trigger it on Cont and the formatting for at least SS with SubGame2, presumably also with Cont and SubGame2. Is there now support for ASSS to foreward this information to the biller, and is there now a standardized way it should be sent to the biller with TCP?
_________________
There are no stupid question, but there are many inquisitive idiots.
Loot

Dr Brain> I hate clean air and clean water. I'm a member of Evil Conservitive Industries
Back to top
View users profile Send private message Add User to Ignore List Visit posters website
CypherJF
I gargle nitroglycerin


Gender:Gender:Male
Joined: Aug 14 2003
Posts: 2582
Location: USA
Offline

PostPosted: Wed Jan 05, 2005 7:14 pm    Post subject: Reply to topic Reply with quote

I had wondered that myself, does ASSS not allow : in zone names...
Back to top
View users profile Send private message Add User to Ignore List
Display posts from previous:   
Post new topic   Reply to topic    Server Help Forum Index -> ASSS Questions All times are GMT - 5 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum
View online users | View Statistics | View Ignored List


Software by php BB © php BB Group
Server Load: 39 page(s) served in previous 5 minutes.

phpBB Created this page in 0.703179 seconds : 47 queries executed (94.9%): GZIP compression disabled