Hello i use this files: http://forum.ragezone.com/f904/relea...happy-1170804/
i create a website to register the account with md5 hash
then i tried to login in the game with wrong password for testing purpose, but it successfully logged in. where its should be not right?
There is like no password nor ID authentication in game login screen.
I already have some stupid research like:
- looking at the BC logs while logging in
- looking at the vs solution files for the login script
- looking at the pbbuild data and network
- last is looking at the script.i3pack
and i cannot find it.
where's the file i should fix? thank you.
-- Update --
i think this should check the password
but it seems to be player.ComparePassword is return for nothingCode:Account player = this._client._player; if (player == null || !player.ComparePassword(this.passN)) { string str = ""; if (player == null) str = "The account returned from the database is null"; else if (!player.ComparePassword(this.passN)) str = "Wrong password!"; Logger.LogLogin(str + " [" + this.login + "]"); this._client.SendPacket((SendPacket)new BASE_LOGIN_PAK(EventErrorEnum.Login_USER_PASS_FAIL, this.login, 0L)); this._client.Close(1000, false); }
am i correct?Code:public bool ComparePassword(string pass) { return ConfigGA.isTestMode || pass == token; }
how to fix this?
-- UPDATE FIX --
here's the fix ive done
am i doing it right?Code:if (player == null || this.passN == "" || this.passEnc != player.password) { string str = ""; if (player == null) str = "The account returned from the database is null"; else if (this.passN == "") str = "Empty password!"; else if (this.passEnc != player.password) str = "Wrong password!"; //else if (!player.ComparePassword(this.passN)) // str = "Wrong password!"; Logger.LogLogin(str + " [" + this.login + "]"); this._client.SendPacket((SendPacket)new BASE_LOGIN_PAK(EventErrorEnum.Login_USER_PASS_FAIL, this.login, 0L)); this._client.Close(1000, false); }
or i will get error in the future?
thanks.



Reply With Quote

