My server not show current player online .
Always show 0/500 player. Can anyone help me to fix.
I build from gunz 1.5 Source.
My server not show current player online .
Always show 0/500 player. Can anyone help me to fix.
I build from gunz 1.5 Source.
Zzz Reestart everything !! SQL Server, Locator, Server !
You probly fucked something on your source.
Thank for support Ronny but i think it not from it.Zzz Reestart everything !! SQL Server, Locator, Server !
Yes i know, but i not edit something relate with Current player.You probly fucked something on your source.
But with match server, i comment out where error occured like Unitest++, MMonitor.h :D
So how to fix ?
That from Server log, and i sure that DB Error, but i using DB of emisand ?Code:[09/07/12 23:03:27] MMatchDBMgr::ExceptionHandler ErrSQL( {CALL spUpdateServerStatus_Netmarble (0, 0, 1)} ), ErrCode( -1 ) ErrMsg - Could not find stored procedure 'spUpdateServerStatus_Netmarble'. State:37000,Native:2812,Origin:[Microsoft][ODBC SQL Server Driver][SQL Server] [09/07/12 23:03:27] [CRITICAL ERROR] DB Connection Lost. [09/07/12 23:03:27] DBMS connected [09/07/12 23:03:57] GARBAGE SESSION CLEANING : m_This(02), ClientCount=0, SessionCount=1, AgentCount=1, CommandPool=2, objHistoryCount=1 [09/07/12 23:03:57] MMatchDBMgr::ExceptionHandler ErrSQL( {CALL spUpdateServerStatus_Netmarble (0, 0, 1)} ), ErrCode( -1 ) ErrMsg - Could not find stored procedure 'spUpdateServerStatus_Netmarble'. State:37000,Native:2812,Origin:[Microsoft][ODBC SQL Server Driver][SQL Server] [09/07/12 23:03:57] MMatchDBMgr::ExceptionHandler - Disconnect [09/07/12 23:03:57] MMatchDBMgr::ExceptionHandler - Reconnect [09/07/12 23:03:57] MMatchDBMgr::ExceptionHandler - This(27036760) [09/07/12 23:03:57] [CRITICAL ERROR] DB Connection Lost. [09/07/12 23:03:57] DBMS connected [09/07/12 23:03:57] [CRITICAL ERROR] UpdateServerStatusDB - Shutdown [09/07/12 23:03:57] MatchServer Shutting down...
in DB the Proceduce of ServerStatus table is : [GunzDB].[dbo].[spUpdateServerStatus]
but in the log, it call spUpdateServerStatus_Netmarble @@!
Is that problem ?
Add this to spUpdateServerStatus (REPLACE) :
USE [GunzDB]
GO
/****** Object: StoredProcedure [dbo].[spUpdateServerStatus] Script Date: 09/05/2012 12:12:57 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/* ¼¹ö µ¿Á¢ÀÚ »óÅ */
ALTER PROC [dbo].[spUpdateServerStatus]
@CurrPlayer smallint,
@ServerID int
AS
SET NOCOUNT ON
UPDATE ServerStatus
Set CurrPlayer=@CurrPlayer, Time=GETDATE()
WHERE ServerID=@ServerID
I have script like this on spUpdateServerStatus :|.
So Match Server calling wrong Procedure ?
It call spUpdateServerStatus_Netmarble, if i rename, have error : Procedure or function spUpdateServerStatus_Netmarble has too many arguments specified.
post that thing please?
If i rename spUpdateServerStatus_Netmarble :
Serverlog :
if I not rename, i get error :Code:[09/07/12 23:55:55] MMatchDBMgr::ExceptionHandler ErrSQL( {CALL spUpdateServerStatus_Netmarble (0, 0, 1)} ), ErrCode( -1 ) ErrMsg - Procedure or function spUpdateServerStatus_Netmarble has too many arguments specified. State:37000,Native:8144,Origin:[Microsoft][ODBC SQL Server Driver][SQL Server] [09/07/12 23:55:55] [CRITICAL ERROR] DB Connection Lost. [09/07/12 23:55:55] DBMS connected
in spUpdateServerStatus :Code:[09/08/12 00:00:15] MMatchDBMgr::ExceptionHandler ErrSQL( {CALL spUpdateServerStatus_Netmarble (0, 0, 1)} ), ErrCode( -1 ) ErrMsg - Could not find stored procedure 'spUpdateServerStatus_Netmarble'. State:37000,Native:2812,Origin:[Microsoft][ODBC SQL Server Driver][SQL Server] [09/08/12 00:00:15] [CRITICAL ERROR] DB Connection Lost.
I build in Korea Release publishCode:set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO /* ¼¹ö µ¿Á¢ÀÚ »óÅ */ ALTER PROC [dbo].[spUpdateServerStatus] @CurrPlayer smallint, @ServerID int AS SET NOCOUNT ON UPDATE ServerStatus Set CurrPlayer=@CurrPlayer, Time=GETDATE() WHERE ServerID=@ServerID
oh Sorry i'm find in my source and i was fix for myself, thank Ronny and Vusion to help, like both of you :
Here that a fix :
MMatchServer.cpp
Find and comment out like me :
Oh so amazing that i found different way Vusion :DCode:#ifdef LOCALE_KOREA int nNatePlayer = 0; for(MMatchObjectList::iterator iter = m_Objects.begin(); iter != m_Objects.end(); iter++) { MMatchObject* pObj = (MMatchObject*)iter->second; if( pObj->GetAccountInfo()->m_nCCode == 30 ) { nNatePlayer++; } } // bResult = m_MatchDBMgr.UpdateServerStatus(MGetServerConfig()->GetServerID(), nCurPlayer, nNatePlayer);//Gun edit DB error //#else bResult = m_MatchDBMgr.UpdateServerStatus(MGetServerConfig()->GetServerID(), nCurPlayer); #endif