TUServerMU

MuOnline => Files MU => Season12 => Tema comenzado por: Zahamael on April 01, 2022, 02:27:47 AM

Titulo: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Zahamael on April 01, 2022, 02:27:47 AM
EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources

I am sharing these files pack with their sources and tools, I hope you could enjoy everything.

You must use visual studio 2017!

(http://i.imgur.com/Z9MYwwl.png)

Credits: Michi28
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: son1xx2 on April 01, 2022, 07:38:00 AM
Thanks you,
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: antoniodel on April 01, 2022, 09:47:11 AM
Sourcer main?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: thesofer on April 01, 2022, 11:18:28 AM
Thanks you,
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: c4nhsatcodong on April 01, 2022, 11:59:23 AM
400 USD . . .
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: antoniodel on April 01, 2022, 12:06:50 PM
Estar faltando a sourcer do IGC.dll ...
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: 4893298 on April 01, 2022, 10:17:49 PM
@Zahamael bro links are broken, update pls
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: nescafe on April 02, 2022, 08:27:08 AM
@Zahamael alguna idea de como crear el archivo "serverInfo.bmd" al crear el archivo pegarlo en el cliente y luego ejecutar el juego, salta un error diciendo que "serverlist.bmd" no funciona
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: lunaticodeveloper on April 02, 2022, 01:58:39 PM
@Zahamael alguna idea de como crear el archivo "serverInfo.bmd" al crear el archivo pegarlo en el cliente y luego ejecutar el juego, salta un error diciendo que "serverlist.bmd" no funciona

LO ESTAS GENERANDO MAL
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Neves on April 02, 2022, 03:25:15 PM
Pelo visto comeram a source do IGC.dll
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: antoniodel on April 02, 2022, 08:23:22 PM
Pelo visto comeram a source do IGC.dll

Imagino a mesma coisa, agradeço por postar a sourcer mas o principal não postaram que é a igc.dll
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: nescafe on April 02, 2022, 09:15:31 PM
@Zahamael alguna idea de como crear el archivo "serverInfo.bmd" al crear el archivo pegarlo en el cliente y luego ejecutar el juego, salta un error diciendo que "serverlist.bmd" no funciona

LO ESTAS GENERANDO MAL

1.- lo abro con notepadd++
2.- solo cambio la ip, por la de mi vps y le doy guardar
3.- click en el ejecutable
4.- click en "encode"
5.- se genera el archivo serverlist.bmd el cual pego en el cliente y ejecuto...  y no se abre el juego y da error de que el serverlist.bmd esta corrupto
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: lunaticodeveloper on April 03, 2022, 11:53:52 AM
@Zahamael alguna idea de como crear el archivo "serverInfo.bmd" al crear el archivo pegarlo en el cliente y luego ejecutar el juego, salta un error diciendo que "serverlist.bmd" no funciona

LO ESTAS GENERANDO MAL

1.- lo abro con notepadd++
2.- solo cambio la ip, por la de mi vps y le doy guardar
3.- click en el ejecutable
4.- click en "encode"
5.- se genera el archivo serverlist.bmd el cual pego en el cliente y ejecuto...  y no se abre el juego y da error de que el serverlist.bmd esta corrupto

no se abre con notepadd lo abres con el mismo programa... editas y guardas
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: erickmalfoy on April 03, 2022, 09:17:34 PM
Si son los src de michi se podrán trabajar es una buena base y la s12 se podrá actualizar ojalá le pongan empeño :)
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: erickmalfoy on April 06, 2022, 01:09:32 AM
Las herramientas de los bmd...
Puedes compartir para agregar pets y todo? Y poder configurar....
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: ausmann on April 07, 2022, 07:20:43 PM
anyone can help me?
https://ibb.co/1TRHxvz

and how i can contact michi28?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: jorge2016 on April 08, 2022, 09:51:17 AM
anyone can help me?
https://ibb.co/1TRHxvz

and how i can contact michi28?

you need change to other Host-vps..problem is the Host
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: ausmann on April 08, 2022, 11:06:35 AM
that's not a solution.
I have a dedicated server myself and have to host somewhere else just because it doesn't work for me for some reason and nobody knows the reason?
That bullshit
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: ohmagic on April 08, 2022, 12:46:21 PM
that's not a solution.
I have a dedicated server myself and have to host somewhere else just because it doesn't work for me for some reason and nobody knows the reason?
That bullshit
Its obviously a issue from the code, and he gave you the easy out.
If you want the hard one, there you have the source's, hire someone to fix it. Done.
Its free, its up to you using it or not.
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: ausmann on April 08, 2022, 12:59:32 PM
Who can program and fix the problem, maybe code something in the future?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: chuckhai on April 12, 2022, 12:45:58 PM
i need src client for IGC.dll or main unpack. Thank
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Neves on April 14, 2022, 12:00:58 PM
Alguem sabe se tem como fixar o bug dos itens sockets não aceitar options excellents pela source?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: diegah on April 14, 2022, 12:04:22 PM
Alguem sabe se tem como fixar o bug dos itens sockets não aceitar options excellents pela source?

no es un bug, desde la season 10 se separaron todos los sistemas, los items socket son solo socket, los ancients solo ancient, los 380 solo 380...
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Neves on April 14, 2022, 12:12:22 PM
Alguem sabe se tem como fixar o bug dos itens sockets não aceitar options excellents pela source?

no es un bug, desde la season 10 se separaron todos los sistemas, los items socket son solo socket, los ancients solo ancient, los 380 solo 380...
Teria q trabalhar muito na source entao pra mudar isso, vou ver se dá pra fazer algo.
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Neves on April 14, 2022, 12:25:39 PM
Alguem sabe se tem como fixar o bug dos itens sockets não aceitar options excellents pela source?

no es un bug, desde la season 10 se separaron todos los sistemas, los items socket son solo socket, los ancients solo ancient, los 380 solo 380...
Agora o CashShop não abrir tbm faz parte da Season?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: diegah on April 14, 2022, 12:53:02 PM
Alguem sabe se tem como fixar o bug dos itens sockets não aceitar options excellents pela source?

no es un bug, desde la season 10 se separaron todos los sistemas, los items socket son solo socket, los ancients solo ancient, los 380 solo 380...
Agora o CashShop não abrir tbm faz parte da Season?

El cashshop nose si esta operativo 100% en estos files, en las ultimas versiones sigue funcionando (season 16-17) asi que si no anda debe ser algo a reparar..
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: raul31 on April 14, 2022, 04:12:33 PM
Alguem sabe se tem como fixar o bug dos itens sockets não aceitar options excellents pela source?

no es un bug, desde la season 10 se separaron todos los sistemas, los items socket son solo socket, los ancients solo ancient, los 380 solo 380...
Agora o CashShop não abrir tbm faz parte da Season?

Simplemente verifiqua que las versiones del lado del servidor y del lado del cliente estén escritas correctamente, en el archivo "CashShop.xml" verifique las carpetas del lado del cliente "InGameShopBanner"; "InGameShopScript" son la misma versión. Saludos!
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: chuckhai on April 17, 2022, 10:57:07 AM
protocolcore offset ???
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Neves on April 21, 2022, 05:29:49 PM
Alguem mais está tendo problema do zen bugar ao usar o move? Pq quando crio um char novo e vou pegando zen do chao eu tento usar o move fala q nao tenho zen suficiente msm os requerimentos do move do cliente e do muserver estando iguais, se alguem conseguiu fixar isso fala aí pra gente.
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Neves on April 28, 2022, 01:10:35 PM
Alguem sabe onde encontro os arquivos Lualib.pdb e iniparser.pdb para compilar a source bonitinho sem nenhum erro? Não consegui achar os arquivos cpp das livrarias LuaLib e IniParser para compilar.

https://imgur.com/w6DtnNZ
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: kinyuesa on May 05, 2022, 07:24:14 PM
Do you have client source code? src client for IGC.dll or main unpack. Thank
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: xuanyuan on May 12, 2022, 06:28:29 AM

Killing monsters appears in the League announcement

How to solve this problem

https://ibb.co/bzMRdDw
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: chuckhai on May 12, 2022, 09:25:24 PM
Killing monsters appears in the League announcement

How to solve this problem

https://ibb.co/bzMRdDw

The source code of the message has been corrected, please check again
Code: [Select]


void TNotice::MakeNoticeMsg(void * lpNotice, BYTE btType, char * szNoticeMsg)
{
PMSG_NOTICE* pNotice = (PMSG_NOTICE*)lpNotice;
pNotice->type = btType;
memcpy(pNotice->Notice, szNoticeMsg, strlen(szNoticeMsg));
wsprintf(pNotice->Notice, szNoticeMsg);

PHeadSetB((LPBYTE)pNotice, 0x0D, strlen(pNotice->Notice) + sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + 1);
// PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
//
// pNotice->dwColor = 0;
//
// char szTempMsg[4096] = { 256, };
// memset(pNotice->Notice, 256, sizeof(pNotice->Notice));
//
// va_list pArguments;
// //va_start(pArguments, szNoticeMsg);
// vsprintf(szTempMsg, szNoticeMsg, pArguments);
// va_end(pArguments);
//
// MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szNoticeMsg, strlen(szNoticeMsg), (WCHAR*)szTempMsg, sizeof(szTempMsg));
// memcpy(pNotice->Notice, szTempMsg, sizeof(pNotice->Notice));
// pNotice->Notice[sizeof(pNotice->Notice) - 2] = 0;
// pNotice->Notice[sizeof(pNotice->Notice) - 1] = 0;
// PHeadSetB((LPBYTE)pNotice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + (wcslen((WCHAR*)pNotice->Notice) * 2 + 2));
}


void TNotice::MakeNoticeMsgEx(void * lpNotice, BYTE btType, char * szNoticeMsg, ...)
{

PMSG_NOTICE* pNotice = (PMSG_NOTICE*)lpNotice;
pNotice->type = btType;
va_list pArguments;
va_start(pArguments, szNoticeMsg);
vsprintf((char*)pNotice->Notice, (char*)szNoticeMsg, pArguments);
va_end(pArguments);
PHeadSetB((LPBYTE)pNotice, 0x0D, strlen(pNotice->Notice) + sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + 1);
/*PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
pNotice->dwColor = 0;

char szTempMsg[4096] = { 0, };
memset(pNotice->Notice, 0, sizeof(pNotice->Notice));

va_list pArguments;
va_start(pArguments, szNoticeMsg);
vsprintf(szTempMsg, szNoticeMsg, pArguments);
va_end(pArguments);

MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szTempMsg, strlen(szTempMsg), (WCHAR*)pNotice->Notice, sizeof(pNotice->Notice));
pNotice->Notice[sizeof(pNotice->Notice) - 2] = 0;
pNotice->Notice[sizeof(pNotice->Notice) - 1] = 0;
PHeadSetB((LPBYTE)pNotice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + (wcslen((WCHAR*)pNotice->Notice) * 2 + 2));*/
}

void TNotice::SetNoticeProperty(void * lpNotice, BYTE btType, DWORD dwColor, BYTE btCount, WORD wDelay, BYTE btSpeed)
{
PMSG_NOTICE * pNotice =(PMSG_NOTICE *) lpNotice;

pNotice->type = btType;
pNotice->dwColor = dwColor;
pNotice->btCount = btCount;
pNotice->wDelay = wDelay;
pNotice->btSpeed = btSpeed;
}

void TNotice::SendNoticeToAllUser(void * lpNotice)
{
PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;

for ( int n = g_ConfigRead.server.GetObjectStartUserIndex() ; n < g_ConfigRead.server.GetObjectMax() ; n++)
{
if ( gObj[n].Connected == PLAYER_PLAYING )
{
if ( gObj[n].Type  == OBJ_USER )
{
IOCP.DataSend(n, (unsigned char*)pNotice  , pNotice->h.size  );
}
}
}
}

void TNotice::SendNoticeToUser(int aIndex, void * lpNotice)
{
PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
IOCP.DataSend(aIndex, (unsigned char*)pNotice, pNotice->h.size  );
}



void TNotice::AllSendServerMsg(LPSTR chatmsg)
{
PMSG_NOTICE pNotice;

MakeNoticeMsg((TNotice *)&pNotice, 0,  chatmsg);

for ( int n = g_ConfigRead.server.GetObjectStartUserIndex() ; n < g_ConfigRead.server.GetObjectMax() ; n++)
{
if ( gObj[n].Connected == PLAYER_PLAYING )
{
if ( gObj[n].Type  == OBJ_USER )
{
IOCP.DataSend(n, (unsigned char*)&pNotice , pNotice.h.size );
}
}
}
}

void TNotice::GCServerMsgStringSend(LPSTR szMsg, int aIndex, BYTE type)
{
PMSG_NOTICE pNotice;

MakeNoticeMsg(&pNotice, type, szMsg);
IOCP.DataSend(aIndex, (unsigned char*)&pNotice, pNotice.h.size);
}



TNotice::TNotice(BYTE btType)
{
this->m_Notice.btCount = 1;
this->m_Notice.btSpeed = 20;
this->m_Notice.dwColor = _ARGB(255, 255, 200, 80 );
this->m_Notice.wDelay = 0;
this->m_Notice.type = btType;
}







void TNotice::SendToAllUser(LPSTR szMsg, ...)
{
va_list pArguments;
va_start(pArguments, szMsg);
vsprintf(this->m_Notice.Notice, (char*)szMsg, pArguments);
va_end(pArguments);
PHeadSetB((LPBYTE)&this->m_Notice, 0x0D, strlen(this->m_Notice.Notice) + sizeof(PMSG_NOTICE) - sizeof(this->m_Notice.Notice) + 1);

for (int n = g_ConfigRead.server.GetObjectStartUserIndex(); n < g_ConfigRead.server.GetObjectMax(); n++)
{
if (gObj[n].Connected == PLAYER_PLAYING)
{
if (gObj[n].Type == OBJ_USER)
{
IOCP.DataSend(n, (LPBYTE)&this->m_Notice, this->m_Notice.h.size);
}
}
}
}

void TNotice::SendToUser(int aIndex, LPSTR szMsg, ...)
{
char szTempMsg[4096] = { 0, };
memset(m_Notice.Notice, 0, sizeof(m_Notice.Notice));

va_list pArguments;
va_start(pArguments, szMsg);
vsprintf(szTempMsg, szMsg, pArguments);
va_end(pArguments);

MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szTempMsg, strlen(szTempMsg), (WCHAR*)m_Notice.Notice, sizeof(m_Notice.Notice));
m_Notice.Notice[sizeof(m_Notice.Notice) - 2] = 0;
m_Notice.Notice[sizeof(m_Notice.Notice) - 1] = 0;
PHeadSetB((LPBYTE)&m_Notice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(m_Notice.Notice) + (wcslen((WCHAR*)m_Notice.Notice) * 2 + 2));

IOCP.DataSend(aIndex, (LPBYTE)&this->m_Notice , this->m_Notice.h.size );
}


void TNotice::GCNoticeSend(int aIndex, BYTE type, BYTE count, BYTE opacity, WORD delay, DWORD color, BYTE speed, char* message, ...) // OK
{
char buff[256] = {  };

va_list arg;
va_start(arg, message);
vsprintf_s(buff, message, arg);
va_end(arg);

int size = strlen(buff);

size = ((size>MAX_MESSAGE_SIZE) ? MAX_MESSAGE_SIZE : size);

PMSG_NOTICE_SEND pMsg;

pMsg.header.set((LPBYTE)&pMsg, 0x0D, (sizeof(pMsg) - (sizeof(pMsg.message) - (size + 1))));

pMsg.type = type;

pMsg.count = count;

pMsg.opacity = opacity;

pMsg.delay = delay;

pMsg.color = color;

pMsg.speed = speed;

memcpy(pMsg.message, buff, size);

pMsg.message[size] = 0;

IOCP.DataSend(aIndex, (BYTE*)&pMsg, pMsg.header.size);
}

void TNotice::GCNoticeSendToAll(BYTE type, BYTE count, BYTE opacity, WORD delay, DWORD color, BYTE speed, char* message, ...) // OK
{
char buff[256] = { 0};

va_list arg;
va_start(arg, message);
vsprintf_s(buff, message, arg);
va_end(arg);

int size = strlen(buff);

size = ((size>MAX_MESSAGE_SIZE) ? MAX_MESSAGE_SIZE : size);

PMSG_NOTICE_SEND pMsg;

pMsg.header.set((LPBYTE)&pMsg, 0x0D, (sizeof(pMsg) - (sizeof(pMsg.message) - (size + 1))));

pMsg.type = type;

pMsg.count = count;

pMsg.opacity = opacity;

pMsg.delay = delay;

pMsg.color = color;

pMsg.speed = speed;

memcpy(pMsg.message, buff, size);

pMsg.message[size] = 0;

for (int n = g_ConfigRead.server.GetObjectStartUserIndex(); n < g_ConfigRead.server.GetObjectMax(); n++)
{
if (gObjIsConnectedGP(n) != 0)
{
IOCP.DataSend(n, (BYTE*)&pMsg, pMsg.header.size);
}
}
}
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: xuanyuan on May 13, 2022, 09:27:59 AM
chuckhai,  Thank you, brother. How to solve one more problem

Common Data Reload    collapse 


https://ibb.co/T0hHkbX

https://ibb.co/f8tmtWD
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: chuckhai on May 13, 2022, 09:45:14 AM
chuckhai,  Thank you, brother. How to solve one more problem

Common Data Reload    collapse 


https://ibb.co/T0hHkbX

https://ibb.co/f8tmtWD
error in IGC_MasterSkillTree.xml you can fix it directly by putting // before g_MasterLevelSkillTreeSystem.Load(g_ConfigRead.GetPath("IGC_MasterSkillTree.xml")); Or please check in any wrong parameters and then correct it and it will run normally, good luck
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: chuckhai on May 13, 2022, 11:15:48 AM
chuckhai,  Thank you, brother. How to solve one more problem

Common Data Reload    collapse 


https://ibb.co/T0hHkbX

https://ibb.co/f8tmtWD
error in IGC_MasterSkillTree.xml you can fix it directly by putting // before g_MasterLevelSkillTreeSystem.Load(g_ConfigRead.GetPath("IGC_MasterSkillTree.xml")); Or please check in any wrong parameters and then correct it and it will run normally, good luck

Code: [Select]
void CMasterLevelSkillTreeSystem::Load(const char *lpszFileName)
{
pugi::xml_document file;
pugi::xml_parse_result res = file.load_file(g_ConfigRead.GetPath("IGC_MasterSkillTree.xml"));

if (res.status != pugi::status_ok)
{
g_Log.MsgBox("[MasterLevelSkillTreeSystem] - Can't Load %s (%s)", lpszFileName, res.description());
return;
}

int iIndex = -1;
int iTempIndex, iRank, iPos, iPoint, iMaxPoint, iParentSkill1, iParentSkill2, iSkillID;

pugi::xml_node main = file.child("MasterSkillTree");

this->m_wMaxMasterSkillLevel = main.attribute("MaxSkillLevel").as_int(20); // private custom !!!
this->Init();

for (pugi::xml_node class_node = main.child("Class"); class_node; class_node = class_node.next_sibling())
{
int iClass = class_node.attribute("ID").as_int();

for (pugi::xml_node tree = class_node.child("Tree"); tree; tree = tree.next_sibling())
{
int iTreeType = tree.attribute("Type").as_int();

for (pugi::xml_node skill = tree.child("Skill"); skill; skill = skill.next_sibling())
{
iIndex = skill.attribute("Index").as_int();

if (iIndex % 36 == 0)
{
iRank = 8;
iPos = 3;
}

else
{
iTempIndex = iIndex % 36 - 1;
iRank = iTempIndex / 4;
iPos = iTempIndex % 4;
}

iPoint = skill.attribute("ReqMinPoint").as_int();
iMaxPoint = skill.attribute("MaxPoint").as_int();
iParentSkill1 = skill.attribute("ParentSkill1").as_int();
iParentSkill2 = skill.attribute("ParentSkill2").as_int();
iSkillID = skill.attribute("MagicNumber").as_int();

for (int i = 0; i < MAX_TYPE_PLAYER; i++)
{
if (CHARACTER_CLASS_TABLE[i][0] & iClass)
{
this->m_MLSTable[CHARACTER_CLASS_TABLE[i][1]].iAbility[iTreeType].iElement[iRank][iPos].m_dwIndex = iIndex;
this->m_MLSTable[CHARACTER_CLASS_TABLE[i][1]].iAbility[iTreeType].iElement[iRank][iPos].m_byConsumePoint = iPoint;
this->m_MLSTable[CHARACTER_CLASS_TABLE[i][1]].iAbility[iTreeType].iElement[iRank][iPos].m_byMaxPoint = iMaxPoint;
this->m_MLSTable[CHARACTER_CLASS_TABLE[i][1]].iAbility[iTreeType].iElement[iRank][iPos].m_dwParentSkill1 = iParentSkill1;
this->m_MLSTable[CHARACTER_CLASS_TABLE[i][1]].iAbility[iTreeType].iElement[iRank][iPos].m_dwParentSkill2 = iParentSkill2;
this->m_MLSTable[CHARACTER_CLASS_TABLE[i][1]].iAbility[iTreeType].iElement[iRank][iPos].m_dwSkillID = iSkillID;
}
}
}
}
}

}
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: chuckhai on May 13, 2022, 06:02:15 PM
if there is main unpack then this source code is good that i met unfortunately i don't know how to unpack main.exe
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: tangyi90 on September 05, 2022, 09:59:55 PM
Whoever provides the igc.dll source code I can fix the problem, or I can pay for it
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: tangyi90 on September 05, 2022, 10:02:36 PM
Whoever provides the igc.dll source code I can fix the problem, or I can pay for it
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: miltonho2 on September 26, 2022, 02:59:03 PM
Buenas,tengo el problema al crear el mix del hammer archangel queda todo tildado,alguno tiene una mix bien hecha o como puedo editar ese mix..?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: jorge2016 on October 18, 2022, 04:29:12 AM
Buenas,tengo el problema al crear el mix del hammer archangel queda todo tildado,alguno tiene una mix bien hecha o como puedo editar ese mix..?

Te deberia estar funcionando correctamente todos los Mix..
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: miltonho2 on October 19, 2022, 08:04:57 PM
me pasa con los mix de crear el hammer, crear las blessed archangel,desbloquear los set bloodangel, me podrias pasar tu mix.bmd??? he probado con otros pero sigue igual y algunos no son compatibles o si tenes el cliente me lo pasarias porq tengo 2 clientes de la misma vercion y en ninguno anda esos mix
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: jorge2016 on October 20, 2022, 01:22:41 AM
me pasa con los mix de crear el hammer, crear las blessed archangel,desbloquear los set bloodangel, me podrias pasar tu mix.bmd??? he probado con otros pero sigue igual y algunos no son compatibles o si tenes el cliente me lo pasarias porq tengo 2 clientes de la misma vercion y en ninguno anda esos mix

Te compartiria pero nose si te generara problemas, ya que estube agregando nuevos Mix.....

Ejemplo. Upgrade de set holyangel a (awakening, blue eye, silverheart, manticore,  brilliant) y otros mix nuevos..

(https://ibb.co/CJJ4yJv)
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Zahamael on October 20, 2022, 07:26:44 PM
me pasa con los mix de crear el hammer, crear las blessed archangel,desbloquear los set bloodangel, me podrias pasar tu mix.bmd??? he probado con otros pero sigue igual y algunos no son compatibles o si tenes el cliente me lo pasarias porq tengo 2 clientes de la misma vercion y en ninguno anda esos mix

Te compartiria pero nose si te generara problemas, ya que estube agregando nuevos Mix.....

Ejemplo. Upgrade de set holyangel a (awakening, blue eye, silverheart, manticore,  brilliant) y otros mix nuevos..

(https://ibb.co/CJJ4yJv)

Hello Jorge saludos será que puedes aportar la igc.dll source?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: miltonho2 on October 21, 2022, 10:29:23 AM
me pasa con los mix de crear el hammer, crear las blessed archangel,desbloquear los set bloodangel, me podrias pasar tu mix.bmd??? he probado con otros pero sigue igual y algunos no son compatibles o si tenes el cliente me lo pasarias porq tengo 2 clientes de la misma vercion y en ninguno anda esos mix

Te compartiria pero nose si te generara problemas, ya que estube agregando nuevos Mix.....

Ejemplo. Upgrade de set holyangel a (awakening, blue eye, silverheart, manticore,  brilliant) y otros mix nuevos..

(https://ibb.co/CJJ4yJv)

pasamelo si podes, lo probare igual aver si asi me anda  :(
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: jorge2016 on October 21, 2022, 12:12:46 PM
me pasa con los mix de crear el hammer, crear las blessed archangel,desbloquear los set bloodangel, me podrias pasar tu mix.bmd??? he probado con otros pero sigue igual y algunos no son compatibles o si tenes el cliente me lo pasarias porq tengo 2 clientes de la misma vercion y en ninguno anda esos mix

Te compartiria pero nose si te generara problemas, ya que estube agregando nuevos Mix.....

Ejemplo. Upgrade de set holyangel a (awakening, blue eye, silverheart, manticore,  brilliant) y otros mix nuevos..

(https://ibb.co/CJJ4yJv)

pasamelo si podes, lo probare igual aver si asi me anda  :(

ya te lo mande por MP
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on March 23, 2023, 01:56:05 PM
Sourcer main?


share me  please please please
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on March 26, 2023, 12:05:48 PM
Hello Jorge saludos será que puedes aportar la igc.dll source?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on March 26, 2023, 12:07:04 PM
me pasa con los mix de crear el hammer, crear las blessed archangel,desbloquear los set bloodangel, me podrias pasar tu mix.bmd??? he probado con otros pero sigue igual y algunos no son compatibles o si tenes el cliente me lo pasarias porq tengo 2 clientes de la misma vercion y en ninguno anda esos mix

Te compartiria pero nose si te generara problemas, ya que estube agregando nuevos Mix.....

Ejemplo. Upgrade de set holyangel a (awakening, blue eye, silverheart, manticore,  brilliant) y otros mix nuevos..

(https://ibb.co/CJJ4yJv)

pasamelo si podes, lo probare igual aver si asi me anda  :(

ya te lo mande por MP

Hello Jorge saludos será que puedes aportar la igc.dll source?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: icodeapps on March 26, 2023, 03:08:14 PM
no exists igc.dll of season12 from igcn
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on May 11, 2023, 11:45:11 AM
Can someone share the source IGC.dll for me?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on May 12, 2023, 12:23:34 PM
I can't keep the card
please please please please
Which brother can help me?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on May 26, 2023, 10:38:07 AM


Dark Elf class Extra bags cannot be used.

brother help me
 please please please
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: elcanarioloco on June 01, 2023, 09:02:28 AM
hay algun tutorial en el foro que explique cositas sobre las sources? para uno comenzar a solucionar?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: cobyzero on June 01, 2023, 10:29:34 AM
hay algun tutorial en el foro que explique cositas sobre las sources? para uno comenzar a solucionar?
Aprender c++ xd, luego revisar la source y entenderás como funciona. Cualquier curso de internet te sirve, no es que el mu sea algo único del foro xd
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: lozthiensu on June 24, 2023, 11:00:44 PM
I'm newbie. I use 1 week to setup and install this source.
I think it enough good to run free server mu online ss12.
But i have 1 issue need fix.

Let see image bellow.

<blockquote class="imgur-embed-pub" lang="en" data-id="iaGnt7v"><a href="https://imgur.com/iaGnt7v">View post on imgur.com</a></blockquote><script async src="//s.imgur.com/min/embed.js" charset="utf-8"></script>

Cashshop type not open for all 3 type(WCoin, WPoint not have, and globin point).
And when i buy any thing from cashshop. I must checked to checkbox, it wasted my time. If i wanna up item to level +15, it take many many time.

Anyone please help me, how to fix that.
Thanks all so much
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: lozthiensu on June 26, 2023, 01:29:36 PM
I think this source just use to learn config, complie server, setting something. It's can not config to online prod, because i can not decomplie IGC.dll, edit main.exe.

Just give up this source. Don;t waste time anymore
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on July 22, 2023, 03:11:55 AM
Hello brother, I need help with skill Death steb mastery.
Death steb mastery skill cannot be stun.
brother can help me.

 please please please please
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on August 27, 2023, 11:04:12 AM


Fixed text in incorrect position
- experience
- Exit the server
- welcome message

 please please please please
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Tmchien44 on September 07, 2023, 10:12:45 AM


Fixed text in incorrect position
- experience
- Exit the server
- welcome message

 please please please please
clinet ss10 ????
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: dakosmu on September 07, 2023, 10:50:46 PM
Mirror MediaFire
(http://i.imgur.com/Z9MYwwl.png)
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on September 10, 2023, 11:09:46 AM


Fixed text in incorrect position
- experience
- Exit the server
- welcome message

 please please please please
clinet ss10 ????

I downgraded SS12 to SS10.
The original is SS12.
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Tmchien44 on September 11, 2023, 09:36:14 AM


Fixed text in incorrect position
- experience
- Exit the server
- welcome message

 please please please please
clinet ss10 ????

I downgraded SS12 to SS10.
The original is SS12.
Can you share it with me? Thank you very much
chckhai@gmail.com
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: gian789 on September 11, 2023, 11:43:25 AM
Killing monsters appears in the League announcement

How to solve this problem

https://ibb.co/bzMRdDw

The source code of the message has been corrected, please check again
Code: [Select]


void TNotice::MakeNoticeMsg(void * lpNotice, BYTE btType, char * szNoticeMsg)
{
PMSG_NOTICE* pNotice = (PMSG_NOTICE*)lpNotice;
pNotice->type = btType;
memcpy(pNotice->Notice, szNoticeMsg, strlen(szNoticeMsg));
wsprintf(pNotice->Notice, szNoticeMsg);

PHeadSetB((LPBYTE)pNotice, 0x0D, strlen(pNotice->Notice) + sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + 1);
// PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
//
// pNotice->dwColor = 0;
//
// char szTempMsg[4096] = { 256, };
// memset(pNotice->Notice, 256, sizeof(pNotice->Notice));
//
// va_list pArguments;
// //va_start(pArguments, szNoticeMsg);
// vsprintf(szTempMsg, szNoticeMsg, pArguments);
// va_end(pArguments);
//
// MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szNoticeMsg, strlen(szNoticeMsg), (WCHAR*)szTempMsg, sizeof(szTempMsg));
// memcpy(pNotice->Notice, szTempMsg, sizeof(pNotice->Notice));
// pNotice->Notice[sizeof(pNotice->Notice) - 2] = 0;
// pNotice->Notice[sizeof(pNotice->Notice) - 1] = 0;
// PHeadSetB((LPBYTE)pNotice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + (wcslen((WCHAR*)pNotice->Notice) * 2 + 2));
}


void TNotice::MakeNoticeMsgEx(void * lpNotice, BYTE btType, char * szNoticeMsg, ...)
{

PMSG_NOTICE* pNotice = (PMSG_NOTICE*)lpNotice;
pNotice->type = btType;
va_list pArguments;
va_start(pArguments, szNoticeMsg);
vsprintf((char*)pNotice->Notice, (char*)szNoticeMsg, pArguments);
va_end(pArguments);
PHeadSetB((LPBYTE)pNotice, 0x0D, strlen(pNotice->Notice) + sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + 1);
/*PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
pNotice->dwColor = 0;

char szTempMsg[4096] = { 0, };
memset(pNotice->Notice, 0, sizeof(pNotice->Notice));

va_list pArguments;
va_start(pArguments, szNoticeMsg);
vsprintf(szTempMsg, szNoticeMsg, pArguments);
va_end(pArguments);

MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szTempMsg, strlen(szTempMsg), (WCHAR*)pNotice->Notice, sizeof(pNotice->Notice));
pNotice->Notice[sizeof(pNotice->Notice) - 2] = 0;
pNotice->Notice[sizeof(pNotice->Notice) - 1] = 0;
PHeadSetB((LPBYTE)pNotice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + (wcslen((WCHAR*)pNotice->Notice) * 2 + 2));*/
}

void TNotice::SetNoticeProperty(void * lpNotice, BYTE btType, DWORD dwColor, BYTE btCount, WORD wDelay, BYTE btSpeed)
{
PMSG_NOTICE * pNotice =(PMSG_NOTICE *) lpNotice;

pNotice->type = btType;
pNotice->dwColor = dwColor;
pNotice->btCount = btCount;
pNotice->wDelay = wDelay;
pNotice->btSpeed = btSpeed;
}

void TNotice::SendNoticeToAllUser(void * lpNotice)
{
PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;

for ( int n = g_ConfigRead.server.GetObjectStartUserIndex() ; n < g_ConfigRead.server.GetObjectMax() ; n++)
{
if ( gObj[n].Connected == PLAYER_PLAYING )
{
if ( gObj[n].Type  == OBJ_USER )
{
IOCP.DataSend(n, (unsigned char*)pNotice  , pNotice->h.size  );
}
}
}
}

void TNotice::SendNoticeToUser(int aIndex, void * lpNotice)
{
PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
IOCP.DataSend(aIndex, (unsigned char*)pNotice, pNotice->h.size  );
}



void TNotice::AllSendServerMsg(LPSTR chatmsg)
{
PMSG_NOTICE pNotice;

MakeNoticeMsg((TNotice *)&pNotice, 0,  chatmsg);

for ( int n = g_ConfigRead.server.GetObjectStartUserIndex() ; n < g_ConfigRead.server.GetObjectMax() ; n++)
{
if ( gObj[n].Connected == PLAYER_PLAYING )
{
if ( gObj[n].Type  == OBJ_USER )
{
IOCP.DataSend(n, (unsigned char*)&pNotice , pNotice.h.size );
}
}
}
}

void TNotice::GCServerMsgStringSend(LPSTR szMsg, int aIndex, BYTE type)
{
PMSG_NOTICE pNotice;

MakeNoticeMsg(&pNotice, type, szMsg);
IOCP.DataSend(aIndex, (unsigned char*)&pNotice, pNotice.h.size);
}



TNotice::TNotice(BYTE btType)
{
this->m_Notice.btCount = 1;
this->m_Notice.btSpeed = 20;
this->m_Notice.dwColor = _ARGB(255, 255, 200, 80 );
this->m_Notice.wDelay = 0;
this->m_Notice.type = btType;
}







void TNotice::SendToAllUser(LPSTR szMsg, ...)
{
va_list pArguments;
va_start(pArguments, szMsg);
vsprintf(this->m_Notice.Notice, (char*)szMsg, pArguments);
va_end(pArguments);
PHeadSetB((LPBYTE)&this->m_Notice, 0x0D, strlen(this->m_Notice.Notice) + sizeof(PMSG_NOTICE) - sizeof(this->m_Notice.Notice) + 1);

for (int n = g_ConfigRead.server.GetObjectStartUserIndex(); n < g_ConfigRead.server.GetObjectMax(); n++)
{
if (gObj[n].Connected == PLAYER_PLAYING)
{
if (gObj[n].Type == OBJ_USER)
{
IOCP.DataSend(n, (LPBYTE)&this->m_Notice, this->m_Notice.h.size);
}
}
}
}

void TNotice::SendToUser(int aIndex, LPSTR szMsg, ...)
{
char szTempMsg[4096] = { 0, };
memset(m_Notice.Notice, 0, sizeof(m_Notice.Notice));

va_list pArguments;
va_start(pArguments, szMsg);
vsprintf(szTempMsg, szMsg, pArguments);
va_end(pArguments);

MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szTempMsg, strlen(szTempMsg), (WCHAR*)m_Notice.Notice, sizeof(m_Notice.Notice));
m_Notice.Notice[sizeof(m_Notice.Notice) - 2] = 0;
m_Notice.Notice[sizeof(m_Notice.Notice) - 1] = 0;
PHeadSetB((LPBYTE)&m_Notice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(m_Notice.Notice) + (wcslen((WCHAR*)m_Notice.Notice) * 2 + 2));

IOCP.DataSend(aIndex, (LPBYTE)&this->m_Notice , this->m_Notice.h.size );
}


void TNotice::GCNoticeSend(int aIndex, BYTE type, BYTE count, BYTE opacity, WORD delay, DWORD color, BYTE speed, char* message, ...) // OK
{
char buff[256] = {  };

va_list arg;
va_start(arg, message);
vsprintf_s(buff, message, arg);
va_end(arg);

int size = strlen(buff);

size = ((size>MAX_MESSAGE_SIZE) ? MAX_MESSAGE_SIZE : size);

PMSG_NOTICE_SEND pMsg;

pMsg.header.set((LPBYTE)&pMsg, 0x0D, (sizeof(pMsg) - (sizeof(pMsg.message) - (size + 1))));

pMsg.type = type;

pMsg.count = count;

pMsg.opacity = opacity;

pMsg.delay = delay;

pMsg.color = color;

pMsg.speed = speed;

memcpy(pMsg.message, buff, size);

pMsg.message[size] = 0;

IOCP.DataSend(aIndex, (BYTE*)&pMsg, pMsg.header.size);
}

void TNotice::GCNoticeSendToAll(BYTE type, BYTE count, BYTE opacity, WORD delay, DWORD color, BYTE speed, char* message, ...) // OK
{
char buff[256] = { 0};

va_list arg;
va_start(arg, message);
vsprintf_s(buff, message, arg);
va_end(arg);

int size = strlen(buff);

size = ((size>MAX_MESSAGE_SIZE) ? MAX_MESSAGE_SIZE : size);

PMSG_NOTICE_SEND pMsg;

pMsg.header.set((LPBYTE)&pMsg, 0x0D, (sizeof(pMsg) - (sizeof(pMsg.message) - (size + 1))));

pMsg.type = type;

pMsg.count = count;

pMsg.opacity = opacity;

pMsg.delay = delay;

pMsg.color = color;

pMsg.speed = speed;

memcpy(pMsg.message, buff, size);

pMsg.message[size] = 0;

for (int n = g_ConfigRead.server.GetObjectStartUserIndex(); n < g_ConfigRead.server.GetObjectMax(); n++)
{
if (gObjIsConnectedGP(n) != 0)
{
IOCP.DataSend(n, (BYTE*)&pMsg, pMsg.header.size);
}
}
}

Is this solved by compiling the source again and correcting what was mentioned?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Tmchien44 on September 11, 2023, 02:31:55 PM
Killing monsters appears in the League announcement

How to solve this problem

https://ibb.co/bzMRdDw

The source code of the message has been corrected, please check again
Code: [Select]


void TNotice::MakeNoticeMsg(void * lpNotice, BYTE btType, char * szNoticeMsg)
{
PMSG_NOTICE* pNotice = (PMSG_NOTICE*)lpNotice;
pNotice->type = btType;
memcpy(pNotice->Notice, szNoticeMsg, strlen(szNoticeMsg));
wsprintf(pNotice->Notice, szNoticeMsg);

PHeadSetB((LPBYTE)pNotice, 0x0D, strlen(pNotice->Notice) + sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + 1);
// PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
//
// pNotice->dwColor = 0;
//
// char szTempMsg[4096] = { 256, };
// memset(pNotice->Notice, 256, sizeof(pNotice->Notice));
//
// va_list pArguments;
// //va_start(pArguments, szNoticeMsg);
// vsprintf(szTempMsg, szNoticeMsg, pArguments);
// va_end(pArguments);
//
// MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szNoticeMsg, strlen(szNoticeMsg), (WCHAR*)szTempMsg, sizeof(szTempMsg));
// memcpy(pNotice->Notice, szTempMsg, sizeof(pNotice->Notice));
// pNotice->Notice[sizeof(pNotice->Notice) - 2] = 0;
// pNotice->Notice[sizeof(pNotice->Notice) - 1] = 0;
// PHeadSetB((LPBYTE)pNotice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + (wcslen((WCHAR*)pNotice->Notice) * 2 + 2));
}


void TNotice::MakeNoticeMsgEx(void * lpNotice, BYTE btType, char * szNoticeMsg, ...)
{

PMSG_NOTICE* pNotice = (PMSG_NOTICE*)lpNotice;
pNotice->type = btType;
va_list pArguments;
va_start(pArguments, szNoticeMsg);
vsprintf((char*)pNotice->Notice, (char*)szNoticeMsg, pArguments);
va_end(pArguments);
PHeadSetB((LPBYTE)pNotice, 0x0D, strlen(pNotice->Notice) + sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + 1);
/*PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
pNotice->dwColor = 0;

char szTempMsg[4096] = { 0, };
memset(pNotice->Notice, 0, sizeof(pNotice->Notice));

va_list pArguments;
va_start(pArguments, szNoticeMsg);
vsprintf(szTempMsg, szNoticeMsg, pArguments);
va_end(pArguments);

MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szTempMsg, strlen(szTempMsg), (WCHAR*)pNotice->Notice, sizeof(pNotice->Notice));
pNotice->Notice[sizeof(pNotice->Notice) - 2] = 0;
pNotice->Notice[sizeof(pNotice->Notice) - 1] = 0;
PHeadSetB((LPBYTE)pNotice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(pNotice->Notice) + (wcslen((WCHAR*)pNotice->Notice) * 2 + 2));*/
}

void TNotice::SetNoticeProperty(void * lpNotice, BYTE btType, DWORD dwColor, BYTE btCount, WORD wDelay, BYTE btSpeed)
{
PMSG_NOTICE * pNotice =(PMSG_NOTICE *) lpNotice;

pNotice->type = btType;
pNotice->dwColor = dwColor;
pNotice->btCount = btCount;
pNotice->wDelay = wDelay;
pNotice->btSpeed = btSpeed;
}

void TNotice::SendNoticeToAllUser(void * lpNotice)
{
PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;

for ( int n = g_ConfigRead.server.GetObjectStartUserIndex() ; n < g_ConfigRead.server.GetObjectMax() ; n++)
{
if ( gObj[n].Connected == PLAYER_PLAYING )
{
if ( gObj[n].Type  == OBJ_USER )
{
IOCP.DataSend(n, (unsigned char*)pNotice  , pNotice->h.size  );
}
}
}
}

void TNotice::SendNoticeToUser(int aIndex, void * lpNotice)
{
PMSG_NOTICE * pNotice = (PMSG_NOTICE *)lpNotice;
IOCP.DataSend(aIndex, (unsigned char*)pNotice, pNotice->h.size  );
}



void TNotice::AllSendServerMsg(LPSTR chatmsg)
{
PMSG_NOTICE pNotice;

MakeNoticeMsg((TNotice *)&pNotice, 0,  chatmsg);

for ( int n = g_ConfigRead.server.GetObjectStartUserIndex() ; n < g_ConfigRead.server.GetObjectMax() ; n++)
{
if ( gObj[n].Connected == PLAYER_PLAYING )
{
if ( gObj[n].Type  == OBJ_USER )
{
IOCP.DataSend(n, (unsigned char*)&pNotice , pNotice.h.size );
}
}
}
}

void TNotice::GCServerMsgStringSend(LPSTR szMsg, int aIndex, BYTE type)
{
PMSG_NOTICE pNotice;

MakeNoticeMsg(&pNotice, type, szMsg);
IOCP.DataSend(aIndex, (unsigned char*)&pNotice, pNotice.h.size);
}



TNotice::TNotice(BYTE btType)
{
this->m_Notice.btCount = 1;
this->m_Notice.btSpeed = 20;
this->m_Notice.dwColor = _ARGB(255, 255, 200, 80 );
this->m_Notice.wDelay = 0;
this->m_Notice.type = btType;
}







void TNotice::SendToAllUser(LPSTR szMsg, ...)
{
va_list pArguments;
va_start(pArguments, szMsg);
vsprintf(this->m_Notice.Notice, (char*)szMsg, pArguments);
va_end(pArguments);
PHeadSetB((LPBYTE)&this->m_Notice, 0x0D, strlen(this->m_Notice.Notice) + sizeof(PMSG_NOTICE) - sizeof(this->m_Notice.Notice) + 1);

for (int n = g_ConfigRead.server.GetObjectStartUserIndex(); n < g_ConfigRead.server.GetObjectMax(); n++)
{
if (gObj[n].Connected == PLAYER_PLAYING)
{
if (gObj[n].Type == OBJ_USER)
{
IOCP.DataSend(n, (LPBYTE)&this->m_Notice, this->m_Notice.h.size);
}
}
}
}

void TNotice::SendToUser(int aIndex, LPSTR szMsg, ...)
{
char szTempMsg[4096] = { 0, };
memset(m_Notice.Notice, 0, sizeof(m_Notice.Notice));

va_list pArguments;
va_start(pArguments, szMsg);
vsprintf(szTempMsg, szMsg, pArguments);
va_end(pArguments);

MultiByteToWideChar(DEFAULT_CODEPAGE, 0, (char*)szTempMsg, strlen(szTempMsg), (WCHAR*)m_Notice.Notice, sizeof(m_Notice.Notice));
m_Notice.Notice[sizeof(m_Notice.Notice) - 2] = 0;
m_Notice.Notice[sizeof(m_Notice.Notice) - 1] = 0;
PHeadSetB((LPBYTE)&m_Notice, 0x0D, sizeof(PMSG_NOTICE) - sizeof(m_Notice.Notice) + (wcslen((WCHAR*)m_Notice.Notice) * 2 + 2));

IOCP.DataSend(aIndex, (LPBYTE)&this->m_Notice , this->m_Notice.h.size );
}


void TNotice::GCNoticeSend(int aIndex, BYTE type, BYTE count, BYTE opacity, WORD delay, DWORD color, BYTE speed, char* message, ...) // OK
{
char buff[256] = {  };

va_list arg;
va_start(arg, message);
vsprintf_s(buff, message, arg);
va_end(arg);

int size = strlen(buff);

size = ((size>MAX_MESSAGE_SIZE) ? MAX_MESSAGE_SIZE : size);

PMSG_NOTICE_SEND pMsg;

pMsg.header.set((LPBYTE)&pMsg, 0x0D, (sizeof(pMsg) - (sizeof(pMsg.message) - (size + 1))));

pMsg.type = type;

pMsg.count = count;

pMsg.opacity = opacity;

pMsg.delay = delay;

pMsg.color = color;

pMsg.speed = speed;

memcpy(pMsg.message, buff, size);

pMsg.message[size] = 0;

IOCP.DataSend(aIndex, (BYTE*)&pMsg, pMsg.header.size);
}

void TNotice::GCNoticeSendToAll(BYTE type, BYTE count, BYTE opacity, WORD delay, DWORD color, BYTE speed, char* message, ...) // OK
{
char buff[256] = { 0};

va_list arg;
va_start(arg, message);
vsprintf_s(buff, message, arg);
va_end(arg);

int size = strlen(buff);

size = ((size>MAX_MESSAGE_SIZE) ? MAX_MESSAGE_SIZE : size);

PMSG_NOTICE_SEND pMsg;

pMsg.header.set((LPBYTE)&pMsg, 0x0D, (sizeof(pMsg) - (sizeof(pMsg.message) - (size + 1))));

pMsg.type = type;

pMsg.count = count;

pMsg.opacity = opacity;

pMsg.delay = delay;

pMsg.color = color;

pMsg.speed = speed;

memcpy(pMsg.message, buff, size);

pMsg.message[size] = 0;

for (int n = g_ConfigRead.server.GetObjectStartUserIndex(); n < g_ConfigRead.server.GetObjectMax(); n++)
{
if (gObjIsConnectedGP(n) != 0)
{
IOCP.DataSend(n, (BYTE*)&pMsg, pMsg.header.size);
}
}
}

Is this solved by compiling the source again and correcting what was mentioned?
Yes
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on October 06, 2023, 01:53:08 PM


Help me fix the damage numbers that are stacked up so that I can't clearly see them.

Thank you brother for contacting me to help.

 please please please please please
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on October 10, 2023, 01:46:03 AM
me pasa con los mix de crear el hammer, crear las blessed archangel,desbloquear los set bloodangel, me podrias pasar tu mix.bmd??? he probado con otros pero sigue igual y algunos no son compatibles o si tenes el cliente me lo pasarias porq tengo 2 clientes de la misma vercion y en ninguno anda esos mix

Te compartiria pero nose si te generara problemas, ya que estube agregando nuevos Mix.....

Ejemplo. Upgrade de set holyangel a (awakening, blue eye, silverheart, manticore,  brilliant) y otros mix nuevos..

(https://ibb.co/CJJ4yJv)

pasamelo si podes, lo probare igual aver si asi me anda  :(

ya te lo mande por MP

Can I have your mix?
If my brother is kind enough to share it with me.
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: zHammer on October 12, 2023, 08:53:46 PM


 please please please please please please please please

When I pressed start the bot, it immediately caused the Gs to stop working.
Brother, please help me.
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: skllskll on April 27, 2024, 06:02:19 AM
Thanks you,
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: WaterOfLuck on July 19, 2024, 10:44:27 AM
Nice to meet you.
Can you please provide IGC.dll?
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: Shrimp on August 10, 2024, 03:37:15 AM
we are waiting for joão to release the source IGC.dll :P let's go jorge releases it for us there
Titulo: Re: EMU.IGC.Server Suite.x12 12.1.1.0(4) + Sources
Posteado por: cluz123 on October 26, 2024, 03:15:19 PM
Alguien me ayuda? Estoy tratando de compilar el gamesever pero me tira un error lua52.lib fue compilado con una versión anterior de compilador uso visual studio 2017

Update: ya pude hacerlo con visual studio 2015 xd