Register for your free account! | Forgot your password?

You last visited: Today at 02:39

  • Please register to post and access all features, it's quick, easy and FREE!


[Release]Ingamepasswordchangenotification

Reply
 
Old   #1
 
elite*gold: 44
Join Date: Dec 2009
Posts: 1,688
Received Thanks: 3,827
[Release]Ingamepasswordchangenotification

Hallöle,

habe ihr eine kleine Erweiterung für den Client-Login.
Diese Erweiterung ist ein Pop-Up sollte der Account aufgrund
von gehackten Datenbanken o.ä. dazu gezwungen werden soll
sein Passwort zu ändern.


Einbau ist relativ simpel:
  1. Accounts welche die Benachrichtigung erhalten sollen kriegen in der Account-Player den Status "PWEDIT". Diesen könnt über via Query etc. einfügen.
  2. Öffnet ihr die introLogin.py und ersetzt folgende Stelle:
    Code:
    	def OnLoginFailure(self, error):
    		if self.connectingDialog:
    			self.connectingDialog.Close()
    		self.connectingDialog = None
    
    		try:
    			loginFailureMsg = self.loginFailureMsgDict[error]
    		except KeyError:
    			if PASSPOD_MSG_DICT:
    				try:
    					loginFailureMsg = PASSPOD_MSG_DICT[error]
    				except KeyError:
    					loginFailureMsg = locale.LOGIN_FAILURE_UNKNOWN + error
    			else:
    				loginFailureMsg = locale.LOGIN_FAILURE_UNKNOWN  + error
    
    		#0000685: [M2EU] 아이디/비밀번호 유추 가능 버그 수정: 무조건 패스워드로 포커스가 가게 만든다
    		loginFailureFunc=self.loginFailureFuncDict.get(error, self.SetPasswordEditLineFocus)
    
    		if app.loggined:
    			self.PopupNotifyMessage(loginFailureMsg, self.__ExitGame)
    		else:
    			self.PopupNotifyMessage(loginFailureMsg, loginFailureFunc)
    
    		snd.PlaySound("sound/ui/loginfail.wav")
    Mit dieser Stelle:
    Code:
    	def OnLoginFailure(self, error):
    		if self.connectingDialog:
    			self.connectingDialog.Close()
    		self.connectingDialog = None
    		try:
    			loginFailureMsg = self.loginFailureMsgDict[error]
    		except KeyError:
    			if PASSPOD_MSG_DICT:
    				try:
    					loginFailureMsg = PASSPOD_MSG_DICT[error]
    				except KeyError:
    					loginFailureMsg = localeInfo.LOGIN_FAILURE_UNKNOWN + error
    			else:
    				if error == "PWEDIT":
    					# dbg.LogBox('Hallo lieber Spieler,ndeine Accountdaten sind nicht mehr sicher. Bitte aendere deinenDaten auf unserer Website.nLiebe Gruesse,nEuer Elitepvpers Team')
    					# os.startfile("http://google.de")
    					# self.stream.SetPhaseWindow(0)
    					import grp
    					self.BackgroundPWEDIT = ui.Bar()
    					self.BackgroundPWEDIT.SetParent(self)
    					self.BackgroundPWEDIT.AddFlag("attach")
    					self.BackgroundPWEDIT.AddFlag("not_pick")
    					self.BackgroundPWEDIT.SetPosition(0,0)
    					# self.BackgroundPWEDIT.SetSize(wndMgr.GetScreenWidth,wndMgr.GetScreenHeight)
    					self.BackgroundPWEDIT.SetSize(wndMgr.GetScreenWidth(),wndMgr.GetScreenHeight())
    					self.BackgroundPWEDIT.SetColor(grp.GenerateColor(0.0, 0.0, 0.0, 0.71))
    					self.BackgroundPWEDIT.Show()
    					self.EditPasswordBoard = ui.Board()
    					self.EditPasswordBoard.SetParent(self.BackgroundPWEDIT)
    					self.EditPasswordBoard.SetSize(500,200)
    					self.EditPasswordBoard.SetCenterPosition()
    					self.EditPasswordBoard.Show()
    					self.TextLines = ui.MultiTextLine()
    					self.TextLines.SetParent(self.EditPasswordBoard)
    					self.TextLines.SetPosition(50,20)
    					self.TextLines.SetWidth(400)
    					self.TextLines.SetText("Hallo lieber Spieler von Sacred-Metin2[ENTER]Dieser Spielccount ist nicht mehr sicher. Aus diesem Grund muss das Passwort[ENTER]geändert werden. Folgende Ursachen könnten zu dieser Meldung geführt haben:[ENTER]- Deine Accountdaten sind in einer öffentlichen Account-Tabelle enthalten[ENTER]- Wir haben ein neues Sicherheitsupdate aufgespielt[ENTER]- Du hast dein Passwort die letzten 2 Monate nicht geändert.[ENTER][ENTER]Bitte wähle eine dieser Optionen:")
    					self.TextLines.SetTextHorizontalAlignCenter()
    					self.TextLines.Show()
    					self.EditPasswordButton = ui.Button()
    					self.EditPasswordButton.SetParent(self.EditPasswordBoard)
    					self.EditPasswordButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
    					self.EditPasswordButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
    					self.EditPasswordButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
    					self.EditPasswordButton.SetText("Jetzt Spielaccount-Daten ändern")
    					self.EditPasswordButton.SetPosition(60,160)
    					self.EditPasswordButton.SetEvent(self.OpenEditPasswordWindow)
    					self.EditPasswordButton.Show()
    					self.ClosePasswordButton = ui.Button()
    					self.ClosePasswordButton.SetParent(self.EditPasswordBoard)
    					self.ClosePasswordButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
    					self.ClosePasswordButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
    					self.ClosePasswordButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
    					self.ClosePasswordButton.SetText("Mit einem anderen Account einloggen")
    					self.ClosePasswordButton.SetPosition(260,160)
    					self.ClosePasswordButton.SetEvent(self.CloseEditPasswordWindow)
    					self.ClosePasswordButton.Show()
    					self.stream.popupWindow.Close()
    				else:
    					loginFailureMsg = localeInfo.LOGIN_FAILURE_UNKNOWN  + error
    
    
    		#0000685: [M2EU] ???/???? ?? ?? ?? ??: ??? ????? ???? ?? ???
    		loginFailureFunc=self.loginFailureFuncDict.get(error, self.SetPasswordEditLineFocus)
    
    		if app.loggined:
    			if not error == "PWEDIT":
    				self.PopupNotifyMessage(loginFailureMsg, self.__ExitGame)
    		else:
    			if not error == "PWEDIT":
    				self.PopupNotifyMessage(loginFailureMsg, loginFailureFunc)
    
    		snd.PlaySound("sound/ui/loginfail.wav")
  3. Jetzt zwei neue Funktionen in die introLogin.py einbauen:
    Code:
    	def OpenEditPasswordWindow(self):
    		os.startfile("http://google.de")
    		self.BackgroundPWEDIT.Hide()
    		
    	def CloseEditPasswordWindow(self):
    		self.BackgroundPWEDIT.Hide()
  4. Nun das MultiTextLine Module einbauen: [Python] TextReader & MultiTextLine Bitte auch ein Thanks da lassen
  5. Fertig

Viel Spaß dabei !
Dank an NyBu für die Clientseitige Idee.

Gruß



Poccix is offline  
Thanks
36 Users
Old 12/06/2014, 21:41   #2
 
elite*gold: 5971
Join Date: May 2011
Posts: 2,802
Received Thanks: 8,473
Vielen Dank für die Blumen. Vielen Dank, wie lieb von dir.
Manchmal weiter weiß ich nicht lalala

Hast du gut gemacht


nybu is offline  
Thanks
5 Users
Old 12/06/2014, 21:44   #3
 
elite*gold: 0
Join Date: Nov 2014
Posts: 834
Received Thanks: 104
Hübsches Release. Danke!
byte Netwxrk is offline  
Thanks
1 User
Old 12/06/2014, 21:50   #4


 
elite*gold: 290
Join Date: Jan 2014
Posts: 1,562
Received Thanks: 2,305
Sehr sauber geschrieben, es ist bestimmt so fehlerlos wie ein Dysonstaubsauger.
Weiter so & danke.

- Hausmeister Hardy


Kyuso /.. is offline  
Thanks
2 Users
Old 12/06/2014, 22:48   #5

 
elite*gold: 3
Join Date: May 2014
Posts: 1,670
Received Thanks: 682
Nice aber ..



..

€: vermute es liegt an "localeinfo" ich teste mal ohne
€2: nope, geht immernoch net. alles 1:1 übernommen und auf Tabs geachtet
xSaito is offline  
Thanks
1 User
Old 12/06/2014, 22:54   #6

 
elite*gold: 14
Join Date: Mar 2014
Posts: 1,576
Received Thanks: 954
Sehr, sehr nice thx oÔ
Fydes is offline  
Thanks
1 User
Old 12/06/2014, 22:57   #7
 
elite*gold: 44
Join Date: Dec 2009
Posts: 1,688
Received Thanks: 3,827
Quote:
Originally Posted by xSaito View Post
Nice aber ..



..

€: vermute es liegt an "localeinfo" ich teste mal ohne
Wüsste nicht wo ich "SetFontName" nutze :s Würde mal an anderer Stelle suchen.
Poccix is offline  
Old 12/06/2014, 23:00   #8

 
elite*gold: 3
Join Date: May 2014
Posts: 1,670
Received Thanks: 682
Quote:
Originally Posted by Lord Poccix View Post
Wüsste nicht wo ich "SetFontName" nutze :s Würde mal an anderer Stelle suchen.

Also wenn ich die änderungen die oben aufgelistet sind rückgängig mache geht es wieder, müsste also irgendwie mit dem teil von dir zusammenhängen :/
xSaito is offline  
Old 12/06/2014, 23:00   #9
 
elite*gold: 44
Join Date: Dec 2009
Posts: 1,688
Received Thanks: 3,827
Quote:
Originally Posted by xSaito View Post
Also wenn ich die änderungen die oben aufgelistet sind rückgängig mache geht es wieder, müsste also irgendwie mit dem teil von dir zusammenhängen :/
Add mal Skype schaue es mir mal an.
Poccix is offline  
Thanks
1 User
Old 12/06/2014, 23:29   #10
Trade Restricted
 
elite*gold: 9
Join Date: Jul 2014
Posts: 818
Received Thanks: 677
Kuhles Release
grαyfox is offline  
Old 12/06/2014, 23:38   #11
 
elite*gold: 0
Join Date: Jun 2012
Posts: 232
Received Thanks: 104
Richtig geil. Gute Arbeit wie immer
mcmst54321 is offline  
Old 12/07/2014, 00:11   #12
 
elite*gold: 0
Join Date: Apr 2013
Posts: 468
Received Thanks: 427
Sieht süß aus, vielen Dank für das Release.
.Achi' is offline  
Old 12/07/2014, 00:50   #13
 
elite*gold: 0
Join Date: Apr 2014
Posts: 536
Received Thanks: 232
PHP Code:
'module' object has no attribute 'loggined' 
naja sowas hab ich gesucht, danke dir !
www.Alesta2.de | Bizeps is offline  
Old 12/07/2014, 01:21   #14
together as one

 
elite*gold: 0
Join Date: Feb 2011
Posts: 5,442
Received Thanks: 3,018
Nette Idee, finde es ohnehin besser, die Spieler direkt via Client anstatt via Homepage darauf aufmerksam zu machen.
Nick is offline  
Old 12/07/2014, 01:35   #15
 
elite*gold: 73
Join Date: Sep 2011
Posts: 5,263
Received Thanks: 3,828
Einfach aber wirkungsvoll!


DasSchwarzeT is offline  
Reply



« Previous Thread | Next Thread »



All times are GMT +2. The time now is 02:39.


Powered by vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Abuse
Copyright ©2018 elitepvpers All Rights Reserved.