i got the database from
https://github.com/DragonFiestaTeam/...base_3_08_2012
so i think its safe to assume i have the full database.
i got the database from
https://github.com/DragonFiestaTeam/...base_3_08_2012
so i think its safe to assume i have the full database.
I'll look into this later today.
Sent from my SM-G900F using Tapatalk
bump...
Here:
#Mysql Settings
#Login
#Database
Login.Mysql.Server=127.0.0.1
Login.Mysql.Port=3306
Login.Mysql.User=root
Login.Mysql.Password=
Login.Mysql.Database=fiesta_login
Login.Mysql.MinPool=10
Login.Mysql.MaxPool=20
Login.Mysql.QuerCachePerClient=2
Login.Mysql.OverloadFlags=1
#Login Generel Settings
Login.Debug=true
Login.InterPassword=lol
Login.InterServerPort=10022
Login.Port=9010
Login.LoginServiceURI=net.pipe://localhost/LoginService
Login.Version=2
Login.WorkInterVal=1
#World
World.Mysql.Server=127.0.0.1
World.Mysql.Port=3306
World.Mysql.User=root
World.Mysql.Password=
World.Mysql.Database=fiesta_world
#World Generel Settings
World.Port=9110
World.ZoneBase.Port=9210
World.ZoneCount=2
World.IP=127.0.0.1
World.Debug=true
World.WorkInterval=1
World.TranferTimeout=60000
World.LoginServer.IP=127.0.0.1
World.LoginServer.Port=10022
World.Name=Teva
World.ID=0
World.LoginServiceURI=net.pipe://localhost/LoginService
World.WorldServiceURI=net.pipe://localhost/WorldService
World.GameServiceURI=net.pipe://localhost/GameService
World.InterServerPort=11000
World.InterPassword=lol
World.Version=2
#Zone
Data.Mysql.Server=localhost
Data.Mysql.Port=3306
Data.Mysql.User=root
Data.Mysql.Password=
Data.Mysql.Database=fiesta_data
#Zone Generel Settings
Zone.IP=127.0.0.1
Zone.WorldServerPort=11000
Zone.WorldServerIP=127.0.0.1
Zone.Debug=true
Zone.WorkInterval=1
Zone.TransferTimeout=10000
Zone.WorldServiceURI=net.pipe://localhost/WorldService
Zone.Password=lol
Zone.Version=2
#perfomance
Zone.TicksToSleep=1000
Zone.SleepTime=1
World.TicksToSleep=1000
World.SleepTime=1
#mysql Perfomance World
#this Settings for connecntion to worldatabase from zone
ZoneWorld.Mysql.MaxPool=20
ZoneWorld.Mysql.MinPool=10
ZoneWorld.Mysql.OverloadFlags=1
ZoneWorld.Mysql.QuerCachePerClient=2
# World mysql Perfomance Settings
World.Mysql.QuerCachePerClient=2
World.Mysql.OverloadFlags=1
World.Mysql.MinPool=10
World.Mysql.MaxPool=20
#mysql Perfomance zone
Data.Mysql.MinPool=10
Data.Mysql.MaxPool=20
Data.Mysql.QuerCachePerClient=2
Data.Mysql.OverloadFlags=1
Thank you for that the zone now works...but i'm getting
Any assistance would be appreciated.Code:[29/01/2016 04:23:32] (Warn) Invalid client authentication from 192.168.0.3
(i removed the IP manually otherwise it'd be a public ip!)Code:[29/01/2016 14:58:55] (Warn) Invalid client authentication from 77.98.*.*
I do not understand the problem with Handler3.cs - i'm not a C# user at the current time so any help would be lovely.
I remember having this issue too. I think I edited the response to always allow client even when not authenticated.
PS: SendCharList(? smth like that from the thing above it)
You can understand what's happening just by reading your code most likely, and fix it from there.
I do suggest you learn up a bit on C# first before even trying this..
Also, posting your login handler code might be helpful
the Hanlder3.cs
Code:using System; using Zepheus.FiestaLib; using Zepheus.FiestaLib.Networking; using Zepheus.Util; using Zepheus.World.Data; using Zepheus.World.Networking; namespace Zepheus.World.Handlers { public sealed class Handler3 { [PacketHandler(CH3Type.WorldClientKey)] public static void TransferKey(WorldClient client, Packet packet) { string key; if (!packet.ReadSkip(18) || !packet.TryReadString(out key, 32)) { Log.WriteLine(LogLevel.Warn, "Invalid connection request."); client.Disconnect(); return; } ClientTransfer transfer = ClientManager.Instance.GetTransfer(key); if (transfer != null) { // Check if client does not connect from localhost or LAN, // and if it's connecting from the correct IP. // When this check is not done, people can remote hack someone. if (!client.Host.StartsWith("127.0") && !client.Host.StartsWith("192.") && transfer.HostIP != client.Host) { Log.WriteLine(LogLevel.Warn, "Remotehack from {0}", client.Host); SendError(client, ServerError.InvalidCredentials); } else { if (ClientManager.Instance.RemoveTransfer(transfer.Hash) && (!Program.Maintenance || transfer.Admin > 0)) //admins can still login { client.Authenticated = true; client.AccountID = transfer.AccountID; client.Admin = transfer.Admin; client.Username = transfer.Username; client.lastPing = DateTime.Now; //this is so pongthread can start checking him client.Pong = true; client.RandomID = MathUtils.RandomizeUShort(ushort.MaxValue); Log.WriteLine(LogLevel.Debug, "{0} authenticated.", client.Username); SendCharacterList(client); } } } else { Log.WriteLine(LogLevel.Warn, "Invalid client authentication from {0}", client.Host); SendError(client, ServerError.InvalidCredentials); } } [PacketHandler(CH3Type.BackToCharSelect)] public static void BackToCharSelect(WorldClient pClient, Packet pPacket) { bool go; // dunno if (!pPacket.TryReadBool(out go)) { Log.WriteLine(LogLevel.Warn, "Couldn't read back to char select packet"); return; } if (!pClient.Authenticated) { Log.WriteLine(LogLevel.Warn, "Player tried using the back to char select packet while not able to"); return; } if (go) { SendCharacterList(pClient); } } public static void SendError(WorldClient client, ServerError error) { using (Packet pack = new Packet(SH3Type.Error)) { pack.WriteShort((byte)error); client.SendPacket(pack); } } private static void SendCharacterList(WorldClient client) { if (!client.LoadCharacters()) { SendError(client, ServerError.DatabaseError); return; } using (var packet = new Packet(SH3Type.CharacterList)) { packet.WriteUShort(client.RandomID); packet.WriteByte((byte)client.Characters.Count); foreach (WorldCharacter ch in client.Characters.Values) { PacketHelper.WriteBasicCharInfo(ch, packet); } client.SendPacket(packet); } } } }
change SendError(client, ServerError.InvalidCredentials)Code:Log.WriteLine(LogLevel.Warn, "Invalid client authentication from {0}", client.Host); SendError(client, ServerError.InvalidCredentials);
to SendCharacterList(client)
dunno if this works tho.
negative it doesn't work at all.....its terrible.
- - - Updated - - -
however i did do the test with the following section:
Which didn't work anyways. When i did the test.Code:client.Authenticated = true; client.AccountID = transfer.AccountID; client.Admin = transfer.Admin; client.Username = transfer.Username; client.lastPing = DateTime.Now; //this is so pongthread can start checking him client.Pong = true; client.RandomID = MathUtils.RandomizeUShort(ushort.MaxValue); Log.WriteLine(LogLevel.Debug, "{0} authenticated.", client.Username); SendCharacterList(client);
I tried so f***ing many things, nothing worked.
Let's hope someone else knows how to fix this :c
What do you intend to do with this once you can login?
Also what's your error?
Instead of just testing random things, why don't you use FiestaShark and make sure the server-><-client communications are correct? Do it on Gamigo first then compare it to yours.