Consegui corrigir com a ajuda de vocês.
vou deixar aqui o que eu fiz caso alguem tenha a mesma duvida que eu tive.
na source do servidor no arquivo OnSever.cpp
Mudei
lpChar->dwClanManageBit = 1;
para
lpChar->dwClanManageBit = 0;
Na source do game descobri que na função OpenmonsterfromCristal te varias fucionalidades importantes.
Resumo das Funções Identificadas
Funcionalidade
Trecho do Código
Observação
Dono do Cristal
lpChar->smCharInfo.Next_Exp = lpPlayInfo->dwObjectSerial;
Salva quem invocou para o monstro ser "amigável".
Tempo de Vida
lpChar->dwUpdateCharInfoTime = dwPlayServTime+4*60*1000;
O monstro desaparece após 4 minutos.
Buff por Level
lpChar->smCharInfo.Life[1] += lpPlayInfo->smCharInfo.Level*3;
O HP do monstro aumenta conforme o nível do jogador.
Prevenção de PK
lpChar->smCharInfo.Brood = smCHAR_MONSTER_USER;
Define que o monstro está no time dos jogadores.
Sobre os mostros não se atacarem.
BillingCrystalFlag = TRUE; // Å©¸®½ºÅ» ÀϹݸó½ºÅ͵鳢¸®µµ ¼·Î °ø°ÝÇÏÁö ¾Ê´Â´Ù.
// A tradução do comentário coreano acima é:
// "Os monstros normais do cristal não atacam uns aos outros."
Mais adiante, o código aplica essa flag ao monstro criado:
lpChar->Clan_CastleMasterFlag = BillingCrystalFlag;
espero que essas informações ajude mais pessoas.