GodWar
-
Posts
51 -
Joined
-
Last visited
Never
Content Type
Profiles
Forums
Calendar
Posts posted by GodWar
-
-
They can login :)
-
At me nothing stops! The sql works instant and stops nothing… But pls try and report bugs if possible... :)
-
Go to Map Editor - Choose Events at the right - Then click on the map and the Event Window comes :)
If want to edit: Click on theEvent on the map! -
DANGER!!! IT CHANGES YOUR SERVER LOGIN SYSTEM!!! DO IT ON YOUR OWN RISK!!!
**Please use only the myBB for this version. Please be carefully and make a secure copy of your project before you do anything!!!**
**The Clientregistration doesn't work so far…**
How do add a MySQL Login into EO 3.0 is very strange but possible. I must tell you a little bit before you start to fast. First you must know that the current version only works with [myBB](http://www.mybb.com/). That is the same Software which Robin with CC use. This forumsoftware has a normal encoding of passwords. After some tests i got it and find a way to do this with VB6\. Its a strange MD5 and SALT combination. So you need to use this Forum-Software. Later i try other Boards.
**Video:**
http://www.youtube.com/watch?v=PB227iBPLYg
**So what do you need?**
1\. [myBB](http://www.mybb.com/)
2\. A server where you can install it
3\. With that a MySQL Database
4\. The "MyVbQL.dll" & "libmysql.dll" in the same folder where the "Server.exe" is
5\. A reference in your Serverproject to the "MyVbQL.dll"
6\. My "modSQL.bas"
6\. The "clsMD5.cls"
**What you must change:**
**Server:**
modContants
Below:
```
Public Const EFFECT_TYPE_TINT As Long = 6
```Add:
```
Public MD5 As clsMD5
```
* * *
* Include the modSQL.bas to your project.
* Include the clsMD5.cls to you project.
* Add a reference to the "MyVbQL.dll". You find this under the menu (Project->References).
* * *
modHandleData
Replace:
```
If Not AccountExist(Name) Then
Call AlertMsg(index, "That account name does not exist.")
Exit Sub
End If
If Not PasswordOK(Name, Password) Then
Call AlertMsg(index, "Incorrect password.")
Exit Sub
End If
If IsMultiAccounts(Name) Then
Call AlertMsg(index, "Multiple account logins is not authorized.")
Exit Sub
End If
```With:
```
If sqlLoginUser(name, password) = 0 Then
Call AlertMsg(index, "Nickname or Password incorrect!")
Exit Sub
Else
Call sqlAddNewChar(index, name, password)
'Call AlertMsg(index, "Login successfully!")
End If
If Not AccountExist(name) Then
'Call AlertMsg(index, "That account name does not exist.")
'Exit Sub
End If
If Not PasswordOK(name, password) Then
'Call AlertMsg(index, "Incorrect password.")
'Exit Sub
End If
If IsMultiAccounts(name) Then
'Call AlertMsg(index, "Multiple account logins is not authorized.")
'Exit Sub
End If
```
* * *
Change:
```
Public Const sqlServer As String = "test.com"
Public Const sqlUsername As String = "123456"
Public Const sqlPassword As String = "123456789"
Public Const sqlDBName As String = "123458"
Public Const sqlTable As String = "mybb_users"
```
To your Login informations. Only look at the sqlTable. This is the field for the myBB Version.
* * *
* The username-field must have the name "username"
* The password-field must have the name "password"
* The salt-field must have the name "salt"
**Please use only the myBB for this version. Please be carefully and make a secure copy of your project before you do anything!!!** -
^^ The only problem ist the thing with the passworddecrypt. I use now the same forum like Robin and CC… It works there because the forum only use normal salt decrypt. Other like WBB or phpBB maybe not work... Because of the extrem strange decrypt...
-
I update my version. Now you must register in a forum. After that you can login into game. IF someone wan't he can disable the Client registration.
http://www.youtube.com/watch?v=PB227iBPLYg -
At the moment only the login required values. But i want to save all online in a db. Let's see what the future brings :-)
-
I think i delete the register function via Client.exe. The best way is to register in a forum and than login into the game. Which works allready. Tomorrow i post more infos … :-)
-
Iam working on a MySQL System for EO! I work with the current EO 3.0 Version from jcsnider. Register and Login works perfect at the moment. I only need to add some things that prevents errors…
VERSION 2 (Forum Registration):
http://www.youtube.com/watch?v=PB227iBPLYg
VERSION 1 (OLD):
http://www.youtube.com/watch?v=RUWaBu-UzvM -
OK i add a fix!
TO ALL:
For the WAY 1 user: Download the new frmMain and make the first change i add to Post 1!
For the WAY 2 user: Do the first change io add in Post 1 and replace the whole "Private Sub ComboResolution_Click()"
The only thing i doesn't know is what we do when the map is 14x11 (the smallest) and use the highest resolution. At the moment he renders at the bottom right! -
Maybe when the map ich to small… or? that a little problem with the engine :) I watch this and see what i can do :)
-
BUT there in 2.0 a different line? I think it can be the same… Or only a little different? I look wait :)
*EDIT*
Maybe here?
```
With DDSD_BackBuffer
.lFlags = DDSD_CAPS Or DDSD_WIDTH Or DDSD_HEIGHT
.ddsCaps.lCaps = DDSD_Temp.ddsCaps.lCaps
.lWidth = (MAX_MAPX + 3) * PIC_X
.lHeight = (MAX_MAPY + 3) * PIC_Y
End With
```
lWidth and lHeight? -
@DepTa:
> this script work for eo_2_0_0 ? or only [EO - Event System 3.0] Resolution Changer ?
Than use WAY 2!!! I think it can work but i hope a moderator can answer this :) I personaly don't know the differents between these both! -
How to add a resolution change support! At the moment i add 4 resolutions. After hours of calculation these 4 are the best. Its strange to add more resolution because off the calculation of the background :) But it is possible to add more. But my monitor don't allow more ^^. What i notice is that the EXE takes a little bit longer to load.
**Screenshot:**
[![](http://www.freemmorpgmaker.com/files/imagehost/pics/bf8096b85a741f4c3f4b98d50d253717.png)](http://www.freemmorpgmaker.com/files/imagehost/#bf8096b85a741f4c3f4b98d50d253717.png)
**WAY 1**
**Client:**
modContants
Change:
```
Private Direct3D_Window As D3DPRESENT_PARAMETERS 'Backbuffer and viewport description.
```To:
```
Public Direct3D_Window As D3DPRESENT_PARAMETERS 'Backbuffer and viewport description.
```
* * *
Change:
```
Public Const MAX_MAPX As Byte = 14
Public Const MAX_MAPY As Byte = 11
```To:
```
Public MAX_MAPX As Byte
Public MAX_MAPY As Byte
```
* * *
Change:
```
Public Const HalfX As Integer = ((MAX_MAPX + 1) / 2) * PIC_X
Public Const HalfY As Integer = ((MAX_MAPY + 1) / 2) * PIC_Y
Public Const ScreenX As Integer = (MAX_MAPX + 1) * PIC_X
Public Const ScreenY As Integer = (MAX_MAPY + 1) * PIC_Y
Public Const StartXValue As Integer = ((MAX_MAPX + 1) / 2)
Public Const StartYValue As Integer = ((MAX_MAPY + 1) / 2)
Public Const EndXValue As Integer = (MAX_MAPX + 1) + 1
Public Const EndYValue As Integer = (MAX_MAPY + 1) + 1
```To:
```
Public HalfX As Integer
Public HalfY As Integer
Public ScreenX As Integer
Public ScreenY As Integer
Public StartXValue As Integer
Public StartYValue As Integer
Public EndXValue As Integer
Public EndYValue As Integer
```
* * *
Change:
```
Direct3D_Window.BackBufferWidth = 800 ' frmMain.picScreen.ScaleWidth 'Match the backbuffer width with the display width
Direct3D_Window.BackBufferHeight = 600 'frmMain.picScreen.ScaleHeight 'Match the backbuffer height with the display height
```To:
```
Direct3D_Window.BackBufferWidth = 960 ' frmMain.picScreen.ScaleWidth 'Match the backbuffer width with the display width
Direct3D_Window.BackBufferHeight = 768 'frmMain.picScreen.ScaleHeight 'Match the backbuffer height with the display height
```
And replace the frmMain.frm with yours in "\client\src\". (Before make secure copy of yours)
And copy the your main images to "\client\data files\graphics\gui\main\"
**WAY 2**
Do the same like in Way 1 but **DON'T** replace the frmMain.
Add a ComboBox wherever you wan't with the (Name) = "ComboResolution". I add it into the "picOptions" pictureBox.
**Client:**
frmMain
Below:
```
picCover.Width = picScreen.Width + 2
```Add:
```
ComboResolution.AddItem "480x384"
ComboResolution.AddItem "640x480"
ComboResolution.AddItem "800x600"
ComboResolution.AddItem "960x768"
ComboResolution.ListIndex = 0
```
* * *
At the end of the frmMain add:
```
' New Resolution BEGIN
Private Sub ComboResolution_Click()
Dim resWidth, resHeight As Long
Dim res() As String
res() = Split(ComboResolution.List(ComboResolution.ListIndex), "x")
Direct3D_Window.BackBufferWidth = res(0)
Direct3D_Window.BackBufferHeight = res(1)
MAX_MAPX = res(0) / 32 - 1
MAX_MAPY = res(1) / 32 - 1
HalfX = ((MAX_MAPX + 1) / 2) * PIC_X
HalfY = ((MAX_MAPY + 1) / 2) * PIC_Y
ScreenX = (MAX_MAPX + 1) * PIC_X
ScreenY = (MAX_MAPY + 1) * PIC_Y
StartXValue = ((MAX_MAPX + 1) / 2)
StartYValue = ((MAX_MAPY + 1) / 2)
EndXValue = (MAX_MAPX + 1) + 1
EndYValue = (MAX_MAPY + 1) + 1
' Change Background
frmMain.Picture = LoadPicture(App.Path & "\data files\graphics\gui\main\main" & ComboResolution.ListIndex & ".jpg")
picScreen.Width = res(0)
picScreen.Height = res(1)
' Move GUI
imgHPBar.Left = 518 + (ComboResolution.ListIndex * 160)
imgMPBar.Left = 518 + (ComboResolution.ListIndex * 160)
imgEXPBar.Left = 518 + (ComboResolution.ListIndex * 160)
lblHP.Left = 632 + (ComboResolution.ListIndex * 160)
lblMP.Left = 632 + (ComboResolution.ListIndex * 160)
lblEXP.Left = 632 + (ComboResolution.ListIndex * 160)
lblGold.Left = 568 + (ComboResolution.ListIndex * 160)
lblPing.Left = 568 + (ComboResolution.ListIndex * 160)
imgButton(1).Left = 523 + (ComboResolution.ListIndex * 160)
imgButton(2).Left = 603 + (ComboResolution.ListIndex * 160)
imgButton(3).Left = 683 + (ComboResolution.ListIndex * 160)
imgButton(4).Left = 523 + (ComboResolution.ListIndex * 160)
imgButton(5).Left = 603 + (ComboResolution.ListIndex * 160)
imgButton(6).Left = 683 + (ComboResolution.ListIndex * 160)
picParty.Left = 541 + (ComboResolution.ListIndex * 160)
picOptions.Left = 541 + (ComboResolution.ListIndex * 160)
picSpells.Left = 541 + (ComboResolution.ListIndex * 160)
picInventory.Left = 541 + (ComboResolution.ListIndex * 160)
picCharacter.Left = 541 + (ComboResolution.ListIndex * 160)
picSSMap.Left = 800 + (ComboResolution.ListIndex * 160)
picCover.Left = 824 + (ComboResolution.ListIndex * 160)
picAdmin.Left = 544 + (ComboResolution.ListIndex * 160)
picTrade.Left = picScreen.Left + (picScreen.Width / 2 - picTrade.Width / 2)
picShop.Left = picScreen.Left + (picScreen.Width / 2 - picShop.Width / 2)
picBank.Left = picScreen.Left + (picScreen.Width / 2 - picBank.Width / 2)
If (ComboResolution.ListIndex = 0) Then
picHotbar.Top = 399
picEventChat.Top = 442
txtMyChat.Top = 565
txtChat.Top = 442
frmMain.Width = 11865
frmMain.Height = 9315
ElseIf (ComboResolution.ListIndex = 1) Then
picHotbar.Top = 399 + 96
picEventChat.Top = 442 + 96
txtMyChat.Top = 565 + 96
txtChat.Top = 442 + 96
frmMain.Width = 14250
frmMain.Height = 10770
ElseIf (ComboResolution.ListIndex = 2) Then
picHotbar.Top = 399 + 216
picEventChat.Top = 442 + 216
txtMyChat.Top = 565 + 216
txtChat.Top = 442 + 216
frmMain.Width = 16665
frmMain.Height = 12570
ElseIf (ComboResolution.ListIndex = 3) Then
picHotbar.Top = 399 + 384
picEventChat.Top = 442 + 384
txtMyChat.Top = 565 + 384
txtChat.Top = 442 + 384
frmMain.Width = 18975
frmMain.Height = 15080
End If
End Sub
' New Resolution END
```
At me it works so far! I hope i moved all windows :)
Hope you enjoy it :)
And to jcsnider :)
You can use it in your next release if you wan't :) -
THX if you want you can add it to your next release :-)
-
Sorry i changed it in post 1 :)
-
OH this i don't know i change this :)
*EDIT*
CHANGED!
Replace the SourceCode in Post 1 with yours :) -
I changed something. Add errormessage if player offline and confirmation message! Only replace the sourcecode with the new in POST 1 here. And replace the new frmServer :)
Also use IsPlaying :P -
THX :)
Maybe you can begin to make a sourcecode changelog? Good for these who use your 3.0 and write some alone… -
I do:
"If frmServer.lvwInfo.ListItems(i).SubItems(1) > vbNullString Then"!
Its the same i think ^^ It search the list and i ther is a entry it is online! I tested it with 4 player and it works also if player goes offline and so on! -
This Tutorial will give you a new feature. At the moment you can send via Server, item to one or all players.
**Screenshot:**
[![](http://www.freemmorpgmaker.com/files/imagehost/pics/78ba99f2987295988cbff5819937228f.png)](http://www.freemmorpgmaker.com/files/imagehost/#78ba99f2987295988cbff5819937228f.png)
**Server:**
modServerTCP
At the end add:
```
' New Server Commands
Sub SendItem(ByVal playerID As Long, ByVal itemID As Long, ByVal Count As Long)
Dim i As Long
Dim players As String
players = ""
If frmServer.Combo_ItemPlayerID.ListIndex > 0 Then
If IsPlaying(playerID) Then
players = GetPlayerName(playerID)
SpawnItem itemID, Count, GetPlayerMap(playerID), GetPlayerX(playerID), GetPlayerY(playerID), GetPlayerName(playerID)
TextAdd ("Item: " & itemID & " was send to: " & players)
Else
TextAdd ("The player is not online!")
End If
Else
For i = 1 To frmServer.lvwInfo.ListItems.Count
If IsPlaying(i) Then
players = players & GetPlayerName(i) & ", "
SpawnItem itemID, Count, GetPlayerMap(i), GetPlayerX(i), GetPlayerY(i), GetPlayerName(i)
End If
Next i
If players > vbNullString Then
TextAdd ("Item: " & itemID & " was send to: " & players)
Else
TextAdd ("No user online!")
End If
End If
End Sub
```
And replace the frmServer.frm with yours in "\server\src\". (Before make secure copy of yours)
Maybe more features follow later!
And to jcsnider :)
You can use it in your next release if you wan't :) -
OK my fault :) But it works with this :) THX for info ^^
-
Ah OK but i can swear this works also with the original EO! Or?
-
The default color ist NOTHING! :) If you want transparency delete the background of your files that they are alpha :) No pink or whatever :)
[EO - Event System 3.0] MySQL Login System
in Source
Posted