Author |
Message |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Sat Nov 20, 2004 2:36 pm Post subject: another biller question |
 |
|
|
|
well i just wanted to ask what does Flag do in PLOGIN ..?
|
|
Back to top |
|
 |
Grelminar Creator of Asss
Joined: Feb 26 2003 Posts: 378 Offline
|
Posted: Sat Nov 20, 2004 3:34 pm Post subject: |
 |
|
|
|
it's right in the spec, two lines below the description of PLOGIN:
Quote: | flag is 0 for a normal login, 1 for "i want to create a new player". |
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Sun Nov 21, 2004 1:11 am Post subject: |
 |
|
|
|
yes i know... but i just dont understand that in the that description
cause.... umm ur telling me flag 0 is normal login as in the account is created ? and 1 is new player? thats strange o_O i dont think thats what it means umm whats the difference between normal login/ create a new player
|
|
Back to top |
|
 |
CypherJF I gargle nitroglycerin

Gender: Joined: Aug 14 2003 Posts: 2582 Location: USA Offline
|
Posted: Sun Nov 21, 2004 1:19 am Post subject: |
 |
|
|
|
lol.. believe me it works out alright.  _________________ Performance is often the art of cheating carefully. - James Gosling
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Sun Nov 21, 2004 1:24 am Post subject: |
 |
|
|
|
i know its just a flag its useless but i want to understand it maybe its for
name
email
age
work place thing on SSC biller servers
so i can add extra saving stuff
|
|
Back to top |
|
 |
Grelminar Creator of Asss
Joined: Feb 26 2003 Posts: 378 Offline
|
Posted: Sun Nov 21, 2004 3:52 am Post subject: |
 |
|
|
|
The difference is that a "normal login" (i.e., flag == 0) will fail if the name doesn't exist, but a "create new player login" (i.e., flag == 1), will succeed (and have a side effect of creating a new player). You can't tell me that it's useless, or that I'm wrong about what it means, and you can't try to make it mean something else, because I wrote the spec, and it means exactly what I say it does, and nothing more.
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Mon Nov 22, 2004 2:21 am Post subject: |
 |
|
|
|
Grelminar that flag is SENT to the the Biller
the Biller doesnt send the flag back
so how the hell should the game server (asss) would know if the player is new or not ok let me read ur post again i could be wrong with something
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Mon Nov 22, 2004 2:25 am Post subject: |
 |
|
|
|
since i cant edit posts ill just say it here
in the biller protocol
g is game server
b is billing server
so...
game sends:
g->b: "PLOGIN:pid:flag:name:pw:ip:macid:contid"
the game server asks the biller to log this person in
for example
PLOGIN:1:No clue here:Pokemon 2001:mypassword:127.0.0.1:3423432:longs of hex stuff
how does the game server request if the player exist or not? I ran a packet logger and it didn't do nothing for the flag
|
|
Back to top |
|
 |
Mine GO BOOM Hunch Hunch What What

Age:41 Gender: Joined: Aug 01 2002 Posts: 3615 Location: Las Vegas Offline
|
Posted: Mon Nov 22, 2004 9:20 am Post subject: |
 |
|
|
|
It works like this.
- Client tries to log in with a new name, sends a packet just like normal.
- Server forwards to billing with the that flag set to 0.
- Billing responds back with a decline message (too lazy to look it up right now).
- Server sends back to client the logon packet, but with the 'Unknown user' flag toggle.
- Client sees that, and asks the user if they want to create a new name.
- Client then sends the exact same packet as the first step, except the flag is set to 1 for a new user.
- Server forwards.
- Billing recieves, notices the 'new user' part, checks to make sure the name isn't in use. If sucessfully created, responds back like any normal client would get.
- Server tells the user 'you are now logged in.'
- Client becomes happy.
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Mon Nov 22, 2004 12:47 pm Post subject: |
 |
|
|
|
where does it send the flag back?
to log in u gotta pass this
"WANTREG:pid"
"POK:pid:rtext:name:squad:billerid:usage:firstused"
no flags anywhere there
|
|
Back to top |
|
 |
Smong Server Help Squatter

Joined: 1043048991 Posts: 0x91E Offline
|
Posted: Mon Nov 22, 2004 12:54 pm Post subject: |
 |
|
|
|
PBAD:pid:newname:rtext
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Mon Nov 22, 2004 12:59 pm Post subject: |
 |
|
|
|
ohh so u gotta say that in the file
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Mon Nov 22, 2004 1:01 pm Post subject: |
 |
|
|
|
hey soo flag for PLOGIN is useless like i said
flag will always be 0
because the PBAD is called only if the name doesnt exist or something is wrong
|
|
Back to top |
|
 |
Smong Server Help Squatter

Joined: 1043048991 Posts: 0x91E Offline
|
Posted: Mon Nov 22, 2004 1:01 pm Post subject: |
 |
|
|
|
Edit: The protocol works fine. I have written 2 billers that use this protocol and it all makes sense. Why don't you go away and try this out for yourself instead of being like Qndre.
pbadisinthefile.png - 5.36 KB
File downloaded or viewed 10 time(s)
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Mon Nov 22, 2004 1:05 pm Post subject: |
 |
|
|
|
I did make my own and it works good just listen....
Im thinking here why does the PLOGIN send a flag when its always going to be 0 its a useless part in the packet
PBAD is only called when names dont exist or password or something
but every character passes PLOGIN first!!
|
|
Back to top |
|
 |
Smong Server Help Squatter

Joined: 1043048991 Posts: 0x91E Offline
|
Posted: Mon Nov 22, 2004 1:09 pm Post subject: |
 |
|
|
|
Here is what mgb said but with parts of the protocol added:
- Client tries to log in with a new name, sends a packet just like normal.
- Server forwards to billing with the that flag set to 0. g->b PLOGIN...0
- Billing responds back with a decline message (too lazy to look it up right now). b->g PBAD...1
- Server sends back to client the logon packet, but with the 'Unknown user' flag toggle.
- Client sees that, and asks the user if they want to create a new name.
- Client then sends the exact same packet as the first step, except the flag is set to 1 for a new user.
- Server forwards. g->b PLOGIN...1
- Billing recieves, notices the 'new user' part, checks to make sure the name isn't in use. If sucessfully created, responds back like any normal client would get. b -> g POK...
- Server tells the user 'you are now logged in.'
- Client becomes happy.
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Mon Nov 22, 2004 1:11 pm Post subject: |
 |
|
|
|
ok tell me when flag is 1 or something on PLOGIN and not 0 on BILLING server
there is no way the client (Continuum) will know if a player is new or not
|
|
Back to top |
|
 |
Smong Server Help Squatter

Joined: 1043048991 Posts: 0x91E Offline
|
Posted: Mon Nov 22, 2004 1:18 pm Post subject: |
 |
|
|
|
If you try to login with a new name the server forwards your login to the biller (PLOGIN 0). The biller then fails to find an existing account with that name and sends this fact to the client (PBAD 1). The client then requests a new name (PLOGIN 1).
|
|
Back to top |
|
 |
pokemon 2001 Novice

Age:39 Gender: Joined: Nov 21 2004 Posts: 71 Location: New York, Brooklyn Offline
|
Posted: Mon Nov 22, 2004 1:40 pm Post subject: |
 |
|
|
|
kk
|
|
Back to top |
|
 |
2dragons Novice
Joined: Feb 17 2004 Posts: 95 Offline
|
Posted: Sun Dec 26, 2004 10:40 pm Post subject: |
 |
|
|
|
In my opinion it is a bit of a hack around having defined reasons for not allowing a login.
Basically when a user logs in there are 3 options:
Login Suceeded
Login Failed (No account exists)
Login Failed (For some reason)
and each option's response string
POK
PBAD:0
PBAD:1
The only thing that little field does is tell the server if the login is bad because the name doesn't exist or if the login is bad for some other reason.
If you just take note of the SS biller protocol you'll see it defined PBAD responses while the TCP protocol allows you to write any reason for not allowing a connection.
|
|
Back to top |
|
 |
Mine GO BOOM Hunch Hunch What What

Age:41 Gender: Joined: Aug 01 2002 Posts: 3615 Location: Las Vegas Offline
|
Posted: Mon Dec 27, 2004 9:44 am Post subject: |
 |
|
|
|
Sometimes you'll need to inform the user as to why they were accepted. For the chat protocol, it maybe that the host doesn't want chat users to gain access, but will post an email or web address in which they can contact a person to apply for an expection.
As for having a username there, that is because the billing server is able to rename a user. This was originally done because logging in was not case sensitive, but in game, your username was always the same case as when you first created the username.
This has later been used to rename users to ^Banned when banned, and ^Name when running off a billing server proxy when the real one is down. That allows some hosts to force all chat clients to be different in someway than normal users in game, such as having a * at the end, if they wish.
|
|
Back to top |
|
 |
|