zTeam source + fixes STABLE

Joined
Sep 20, 2012
Messages
289
Reaction score
75
Hello, since the development topic is pretty much dead and the other topics in release are not open source and bugged as hell and since my files are stable and have a lot of fixes, I decided to start a new open source thread in order to further develop these nice files :)

As of customs I've only enabled ShopPointEx , OffTrade and ConnectEx wich I've tested and work properly




CHANGELOG:

Code:
- Fixed Poison/Ice Strengthener
- Fixed Gens Msg Display Error
- Fixed Soul Bug Offtrade
- Fixed Sphere LVL 1 Drop
- Fixed Some Annoying Logs When CS Not Running
- Added Config For Luck/Skill Drop
- Fixed IT (client ttlci.dll)

KNOWN ISSUES:

Code:
- Mussenger Doesn't Work 
- Gift Shop Doesn't Work
- Dark Side Mana Bug When No Targets
- Deathstab Skill Visual Bug // => client side bug
- Agility Bug On Some Skills

ofc some of the fixes are sloppy,but there's the source so you can optimize that sht
that's all , pls report bugs and don't spam

also credits go to :
WebZen
zTeam
Community for many fixes


and mostly Webmonkey for senting me many fixes and working together with me on some as well , dude has huge experiense :)


About zClient Source:
I'm not going to post a source since I think anyone can customize the client as he wishes to;
I'm Only going to post fixes that affect the gameplay or have an effect on GS stability.


fix visual show offtrade type (zClient.dll source) :

add this in protocol.cpp:

Code:
case 0x3F:
   {
     gOffTrade.RecvPShop((PMSG_ANS_BUYLIST_FROM_PSHOP*)Data);// <- here 
   }
   break;

and then in offtrade.cpp change the wcoin check like this:

Code:
if(!strcmp(Data->szPShopText,WCOIN_SHOP))

link UPDATE (31/8/2014 - 17:00):


full client:

patch it with zClient files that you can find on other ragezone topics, dont be lazy -.-
 
Last edited:
Does this include the /openware function? Thanks,

It's great if webmonkey can share the source to completely fix the /offtrade here :)
 
Does this include the /openware function? Thanks,

It's great if webmonkey can share the source to completely fix the /offtrade here :)

/offtrade is completely fixed and included in the sources, only thing missing is in zClient.dll some code to show zen/wcoin/soul
at the moment it only shows zen but it's only visual cause items cost wcoin or souls if its wcoin/soul shop

as for /ware, I said it before I've not included/coded almost any customs , thx and keep testing
 
/offtrade is completely fixed and included in the sources, only thing missing is in zClient.dll some code to show zen/wcoin/soul
at the moment it only shows zen but it's only visual cause items cost wcoin or souls if its wcoin/soul shop

as for /ware, I said it before I've not included/coded almost any customs , thx and keep testing

Thanks for the info,

Could you also share the source of your client?

Best,
 
Just stop with the customs... No one gives a flying **** for "openware" or "custom jewels" or anything like that.
These sources are NOT perfect, there are bugs. Plenty of them.

Compile the sources and test for fucks sake. I feel ashamed for this community, no wonder no one shares anything. Current moto: get as much crappy customs as possible and sellout the server to donators. I just don't even...

@ftewegw1 Organize your thread! Add a client that people could download and test. Do you want to fix bugs which arise from an incomplete client ripped from some childish website? General client (the one you use) would limit the bugs to the things you at least have sources for.
 
Just stop with the customs... No one gives a flying **** for "openware" or "custom jewels" or anything like that.
These sources are NOT perfect, there are bugs. Plenty of them.

Compile the sources and test for fucks sake. I feel ashamed for this community, no wonder no one shares anything. Current moto: get as much crappy customs as possible and sellout the server to donators. I just don't even...

@ftewegw1 Organize your thread! Add a client that people could download and test. Do you want to fix bugs which arise from an incomplete client ripped from some childish website? General client (the one you use) would limit the bugs to the things you at least have sources for.
need to update know issues /if fixed -> delete if not stay and add new bugs
i dont tested now this source, but in my previous i found bug with castle siege.
If u not config CastleSiege in DB u have error with error-L2 : header error (wsJoinServerCli.cpp 295)lOfs:0, size:36
and with this error if u restart fast gs (~2-3 times) u have block join to server.

and ofc we are waiting for Nam4 release, btw it intresting how many bugs he fixed (not show in changelogs.)

and ofc soon i added all customs in this release or add code of small fixes and extensial.


First fix command:
Search for COMMAND_RESETCLASS
and add it:
case 98:
lpObj->DbClass = 98;
break;
zTeam forgot for RF >.<

and maybe we are create GitHub and give good users access to editing? it really help for fix bugs =/
in planed i rewrite all commands ... and release commands source for it.
 
Last edited:
Please make this repack without customs :) thank you .
it easy, but need more time. for first time i think need fix current bugs list.



Fix gens message, after kill gens player you have recieve message about like this ->"5 contribution point(s) would be lost"

Search for %d contribution point(s) would be lost
and change:
GCServerMsgStringSend(Text, lpObj->m_Index, 1);
to
GCServerMsgStringSend(Text, lpTargetObj->m_Index, 1);
 
First fix command:
Search for COMMAND_RESETCLASS
and add it:
case 98:
lpObj->DbClass = 98;
break;
zTeam forgot for RF >.<

since the switch case is DBCLASS, your code there is doing absolutely nothing. its like

Code:
if (somevariable == 1)
   somevariable = 1;

I think that fist master is 98 and rage fighter 96, so code should be:

Code:
case 98:
lpObj->DbClass = 96;
break;

that being said, count me in if you start a public repo.
 
since the switch case is DBCLASS, your code there is doing absolutely nothing. its like

Code:
if (somevariable == 1)
   somevariable = 1;

I think that fist master is 98 and rage fighter 96, so code should be:

Code:
case 98:
lpObj->DbClass = 96;
break;

that being said, count me in if you start a public repo.
Oh my carelessness :D
//PublicRepo:
Ok, today or tomorrow i create repo on github and give invites u and all Good Coders.



Hi guys i create repo
WebMonkey and topic creator i sent message, but if you learn c++ or good coder and think about fix this release please leave me message about it!
 
Last edited:
if( g_PostChatColor < 1 || g_PostChatColor > 8 )
Post Chat Color Crash fix

Socket Seed fix drop:
Code:
    if ( this->m_SphereDropLevel[0] <= iMonsterLevel )
    {
        iSphereLevel = 1;
    }
    else if( this->m_SphereDropLevel[1] <= iMonsterLevel )
    {
        iSphereLevel = 2;
    }
    else if( this->m_SphereDropLevel[2] <= iMonsterLevel )
    {
        iSphereLevel = 3;
    }
    else if( this->m_SphereDropLevel[3] <= iMonsterLevel )
    {
        iSphereLevel = 4;
    }
    else if( this->m_SphereDropLevel[4] <= iMonsterLevel )
    {
        iSphereLevel = 5;
    }
    else
    {
        return -1;
    }
    // ----
    for( int i = 0; i < iSphereLevel; i++ )
    {
        if(this->m_SphereDropRate[i] >= GetLargeRand() % MAX_SPHERE_DROP )
        {
            iItemCode = i + ITEMGET(12, 70);
        }
    }

Massive spam log fix (just delete following lines):
Code:
        if ( iTotalShieldDamage > 0 )
        {
            LogAddTD("[PvP System] Victim:[%s][%s], Attacker:[%s][%s] - SD[%d] HP[%f] -> SD[%d] HP[%f]",
                lpTargetObj->AccountID, lpTargetObj->Name, lpObj->AccountID, lpObj->Name,
                lpTargetObj->iShield + iTotalShieldDamage, lpTargetObj->Life + AttackDamage, 
                lpTargetObj->iShield, lpTargetObj->Life);
        }

i see u use my "FIX":
Code:
    else if( !this->EmptyPointInventory(lpUser, lpUser->Inventory1[ItemPos].m_iPShopValue) ) //remove the !
But it dont fix offtrade for item. No recieve soul for sell item.

OffExp Timer fix:
Code:
#ifdef OFFEXP
            if ( lpObj->OffExp == 1 )
            {
                OffExp.TickTimes(n);
            }
#endif


Add To Bug list after this message gs block to join server:
Code:
				if( this->CheckSync() == FALSE )
				{
					LogAddC(2, "[CastleSiege] CCastleSiege::Init() - CheckSync() == FALSE");
					MsgBox("[CastleSiege] CCastleSiege::Init() - CheckSync() == FALSE");
					MsgOutput(iIndex, lMsg.Get(3202));
					return;
				}
with error:
error-L2: header error (wsJoinServercli.cpp 295)lOfs:0, size:28
 
Last edited:
Back