Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Release] IGCN Season 9.5 (src-x9.5 9.5.1.15) SRC (April/2016)

Junior Spellweaver
Joined
Jul 30, 2005
Messages
176
Reaction score
110
so if it is possible you could share the code to fix the bug that crashes the DataServer ?? % n,% s,% d when used in frindsystem and cashshop gift.

This is not even close to a great solution, but it avoid the crashes, as intended. The Friend System is not crashing when % sign is typed. Can you be more specific?

StdAfx.h
Code:
#include <boost/algorithm/string/replace.hpp>

DSprotocol.cpp
Code:
void CDataServerProtocol::ReqInGameShopItemGift(short aIndex, ISHOP_ITEM_GIFT *aRecv)
{
	std::string strMessage;
...
	strMessage = aRecv->Message;
	boost::replace_all(strMessage, "%", "%%");

	this->m_ItemShopDB.ExecQuery("EXEC WZ_IBS_AddGift '%s', %d, %d, %d, %d, '%s', '%s'", aRecv->TargetName, aRecv->ID1, aRecv->ID2, aRecv->ID3, 2, aRecv->Name, strMessage.c_str());
...
}

void CDataServerProtocol::ReqInGameShopPackageGift(short aIndex, LPBYTE aRecv)
{
	std::string strMessage;
...
	strMessage = lpMsg->Message;
	boost::replace_all(strMessage, "%", "%%");

	for(int i=0;i<lpMsg->Count;i++)
	{
		lpItem = (ISHOP_ITEM_PACKAGE *)(aRecv + sizeof(ISHOP_ITEM_GIFT_PACKAGE) + i * sizeof(ISHOP_ITEM_PACKAGE));

		this->m_ItemShopDB.ExecQuery("EXEC WZ_IBS_AddGift '%s', %d, %d, %d, %d, '%s', '%s'",
			lpMsg->TargetName, lpItem->ID1, lpItem->ID2, lpItem->ID3,
			2, lpMsg->Name, strMessage.c_str());
...
}

-- Edit --

Friend System uses Binary storage, so it is not affected by % sign.

Code:
wsprintf(szMsg, "UPDATE T_FriendMail SET Subject=? where MemoIndex=%d AND GUID=%d", memo_index, guid);
this->m_MailDB.SetAsBinary(szMsg, (LPBYTE)lpMemoSendHdr->Subject, 60);
...
wsprintf(szMsg, "UPDATE T_FriendMail SET Memo=? where MemoIndex=%d AND GUID=%d", memo_index, guid);
this->m_MailDB.SetAsBinary(szMsg, (LPBYTE)sMemo, memo_size);

[]'s
 
Last edited:
Junior Spellweaver
Joined
Aug 27, 2008
Messages
183
Reaction score
133
Small corrections to DS Final
In :
void CDevilSquareFinal::proc_DSFState_Ready(int nCurTime)
change
PHeadSetB((LPBYTE)&pMsg, 0x86, sizeof(pMsg));
to
PHeadSetB((LPBYTE)&pMsg, 0x92, sizeof(pMsg));
and
In:
void GameProtocol::CGReqDSFEnter(int iIndex)
find

BOOL bGoFinal = g_DevilSquareFinal.IsGoFinalParty(szUserName1, szUserName2, wServerCode1, wServerCode2);

if (bGoFinal == FALSE)
{
pMsg.btResult = 18;
memcpy(pMsg.Name, gObj[iIndex].Name, sizeof(pMsg.Name));
IOCP.DataSend(iIndex, (LPBYTE)&pMsg, pMsg.h.size);

return;
}
change
pMsg.btResult = 19; <= to get correct text in client
Later i will post other fixes...
 
Last edited:
Junior Spellweaver
Joined
Jul 30, 2005
Messages
176
Reaction score
110
Level 3 Wing - 100% combination chance bug (purposely?) :glare:

ChaosBox.cpp
Code:
BOOL CMixSystem::AdvancedWingMix(LPOBJ lpObj)
{
...
	// Comment out or remove the line below
	//lpObj->ChaosSuccessRate = 100;
...
}
 
Junior Spellweaver
Joined
Jul 30, 2005
Messages
176
Reaction score
110
Fix for ANSI Code Page 1252 (Server + Client)

Server ProhibitedSymbols.cpp:
Replace all CP_UTF8 macros to CP_ACP

Client ServerInfo.cpp:
Code:
m_Charset = GetPrivateProfileIntA("Gameplay", "CodePage", 1252, filedec);

Ps.: Convert all files that cointain special characters (like ã, ç, ó) to ANSI. In Notepad++: Encoding -> Convert to ANSI.
 
Initiate Mage
Joined
Jul 14, 2018
Messages
2
Reaction score
0
Reverse the main, get the algorithm -> dec the ozg to gfx-> decompile gfx -> edit the flash file -> enc the edited gfx to new ozg -> that's it.


Hello SolarisMu, I would like to know how you do? Is it a script that you add in the IGC.dll? Pardon my ignorance :( Could you make it easier? That I have been trying for a long time to work with MacroMain.ozg

By Google Translate
 
Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
Hello SolarisMu, I would like to know how you do? Is it a script that you add in the IGC.dll? Pardon my ignorance :( Could you make it easier? That I have been trying for a long time to work with MacroMain.ozg

By Google Translate

I don't think editing ozg/gfx files is a simple task can be done by a small/easy script.
If you want to know about that, I suggest you google about gfx scaleform, or a topic in LOL forum (as I remember) fairly clear about how to edit LOL UI (it's similar to Mu UI).

Btw, what're you gonna do with MacroMain(Auto-Z UI)?
 
Initiate Mage
Joined
Jul 14, 2018
Messages
2
Reaction score
0
I don't think editing ozg/gfx files is a simple task can be done by a small/easy script.
If you want to know about that, I suggest you google about gfx scaleform, or a topic in LOL forum (as I remember) fairly clear about how to edit LOL UI (it's similar to Mu UI).
Btw, what're you gonna do with MacroMain(Auto-Z UI)?
To modify the interface and see what can be done with those files .OZG I found an algorithm to unzip http://forum.ragezone.com/f508/decrypt-files-ozd-ozg-player-1124869/, could you help me implement it?
I also want to modify the .OZG and .OZD files

From what I understood, you have to embed it in the IGC.dll, I already did it but it did not work :( Excuse my ignorance.

Another thing, I would like to know how I can modify the level that is shown when you press the letter "C", the MasterLv + Level always appears and I want only the normal Level to appear until it reaches the level 400 that would be added to everything.

By Google Translate
 
Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
To modify the interface and see what can be done with those files .OZG I found an algorithm to unzip http://forum.ragezone.com/f508/decrypt-files-ozd-ozg-player-1124869/, could you help me implement it?
I also want to modify the .OZG and .OZD files

From what I understood, you have to embed it in the IGC.dll, I already did it but it did not work :( Excuse my ignorance.

Another thing, I would like to know how I can modify the level that is shown when you press the letter "C", the MasterLv + Level always appears and I want only the normal Level to appear until it reaches the level 400 that would be added to everything.

By Google Translate

Yes, with that topic method, http://forum.ragezone.com/f508/decrypt-files-ozd-ozg-player-1124869/
you will have decrypted .GFX(or .CFX-> compressed GFX in higher season) files. -- 1st step dec ozg->gfx --
with file .CFX, you will have 1 more step to uncompress it.

Then you must know how to edit gfx/cfx file as I mentioned above.
after all, you must have the algorithm to re-convert/encrypt gfx back to ozg.

-----------------------------------

with character "C", why don't you try something like...
if(iMLevel <= 0)
{
iGResetVisibleUI = false;
}
 
Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
LOL
My Panzer Division -.- Look cool enough? ^^
UC77BsQ - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums
 

Attachments

You must be registered for see attachments list
Newbie Spellweaver
Joined
Jan 24, 2016
Messages
15
Reaction score
7
how is the process of debug this gameservers? only for logs or i can break the operation and see in real time the values of my vars?
 
Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
how is the process of debug this gameservers? only for logs or i can break the operation and see in real time the values of my vars?

yes, I think you can. But need all required scripts/library/dlls... build in DEBUG mode.
 
Newbie Spellweaver
Joined
Jan 24, 2016
Messages
15
Reaction score
7
thanks, hey bro i got a problem with this files, in my other computer the inventory is invisible! do you know how to solve that?
 
Newbie Spellweaver
Joined
Aug 6, 2018
Messages
9
Reaction score
1
drakelv - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums
yes, I think you can. But need all required scripts/library/dlls... build in DEBUG mode.
Not necessary. You can debug RELEASE build.

-Disable optimization
-Disable COMDAT
-Enable Debug generation
-Enable Map generation
-Enable /LTCG

sLdcvww - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums

 

Attachments

You must be registered for see attachments list
Last edited:
Experienced Elementalist
Joined
May 4, 2017
Messages
219
Reaction score
318
drakelv - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums
Not necessary. You can debug RELEASE build.-Disable optimization-Disable COMDAT-Enable Debug generation-Enable Map generation-Enable /LTCG
sLdcvww - [Release] IGCN Season 9.5  (src-x9.5 9.5.1.15) SRC (April/2016) - RaGEZONE Forums
Interesting that you called it release build profile, instead of DEBUG
 

Attachments

You must be registered for see attachments list
Newbie Spellweaver
Joined
Aug 6, 2018
Messages
9
Reaction score
1
Interesting that you called it release build profile, instead of DEBUG
Because it is built in release mode with all vndev release libs that u can download around, so that is actually release mode.
 
Last edited:
Newbie Spellweaver
Joined
Jan 11, 2013
Messages
57
Reaction score
12
There is something wrong with JewelMixSystem.cpp, the jewels are created one by one after unpacking jewel bundle, not all at the same time.

This causes the server to crash and the player may lose the jewels when trying to unpack multiple bundles at the same time.
 
Junior Spellweaver
Joined
Jul 30, 2005
Messages
176
Reaction score
110
There is something wrong with JewelMixSystem.cpp, the jewels are created one by one after unpacking jewel bundle, not all at the same time.

This causes the server to crash and the player may lose the jewels when trying to unpack multiple bundles at the same time.

Please detail how this crash happens, so we can replicate and try to fix it.
 
Back
Top