Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 12.10.2007, 11:39   #1
Рыцарь
 
Аватар для dmitry501
 
Регистрация: 01.10.2007
Сообщений: 293
Сказал Спасибо: 42
Имеет 50 спасибок в 37 сообщенях
dmitry501 пока неопределено
По умолчанию Различия в пакетах C4, C5, Интерлюдии

есть у кого информация о различиях в пакетах?
Может есть ссылки на java исходники от интерлюдии?
В частности интересуют пакеты UserInfo и CharInfo.
__________________
Цитата:
Сообщение от Stas
...Ну на хрена ты меня посылаешь гууглить или искать 140 страниц описанных где-то комманд, если я уже в сотый раз объясняю, что хочу облегчить труд многим, я же эти доводы подробно описал...
dmitry501 вне форума   Ответить с цитированием
Старый 12.10.2007, 11:48   #2
Пользователь
 
Регистрация: 21.09.2007
Сообщений: 37
Сказал Спасибо: 0
Имеет 10 спасибок в 2 сообщенях
Shura1oplot
По умолчанию

Пакеты в с4. остальные пакеты не отличаются от с5
Код:
s03=CharInfo:h(psize)c(ID)d(X)d(Y)d(Z)d(Heading)d(ObjectID)s(Name)d(Race)d(Sex)d(ClassID:Get.ClassID)d(DHair)d(Head:Get.Func01)d(RHand:Get.Func01)d(LHand:Get.Func01)d(Gloves:Get.Func01)d(Chest:Get.Func01)d(Legs:Get.Func01)d(Feet:Get.Func01)d(Back:Get.Func01)d(LRHand:Get.Func01)d(Hair:Get.Func01)d(PvpFlag)d(Karma)d(MSpeed)d(PSpeed)d(PvpFlag)d(Karma)d(runSpd)d(walkSpd)d(swimRSpd)d(swimWSpd)d(flRunSpd)d(flWalkSpd)d(flyRSpd)d(flyWSpd)f(SpdMul)f(ASpdMul)f(collisRadius)f(collisHeight)d(HairStyle)d(HairColor)d(Face)s(Title)d(clanID)d(clanCrest)d(allyID)d(allyCrest)d(siegeFlag)c(isStand)c(isRun)c(isInFight)c(isAlikeDead)c(Invis)c(Mount)c(shop)h(cubics:For.0001)h(cubID)c(findparty)d(abnEffects)c(RecomLeft)h(RecomHave)d(classID:Get.ClassID)d(maxCP)d(curCP)c(isMounted)c(Team)d(clanBigCrestId)c(isNoble)c(isHero)c(isFishing)d(fishX)d(fishY)d(fishZ)d(NameColor:Get.FCol)c(isRun)d(d)d(PItem)d(PledgeClass)d(?PledgeColor:Get.FCol)d(TitleColor:Get.FCol)d(Cursed)
s04=UserInfo:h(psize)c(ID)d(X)d(Y)d(Z)d(Heading)d(ObjectID)s(Name)d(Race)d(Sex)d(ClassID:Get.ClassID)d(Level)d(Exp)d(STR)d(DEX)d(CON)d(INT)d(WIT)d(MEN)d(MaxHP)d(CurHP)d(MaxMP)d(CurMP)d(SP)d(CurLoad)d(MaxLoad)d(d)d(DHair)d(Rear)d(Lear)d(Neck)d(RFinger)d(LFinger)d(Head)d(RHand)d(LHand)d(Gloves)d(Chest)d(Legs)d(Feet)d(Back)d(LRHand)d(Hair)d(DHair:Get.Func01)d(Rear:Get.Func01)d(Lear:Get.Func01)d(Neck:Get.Func01)d(RFinger:Get.Func01)d(LFinger:Get.Func01)d(Head:Get.Func01)d(RHand:Get.Func01)d(LHand:Get.Func01)d(Gloves:Get.Func01)d(Chest:Get.Func01)d(Legs:Get.Func01)d(Feet:Get.Func01)d(Back:Get.Func01)d(LRHand:Get.Func01)d(Hair:Get.Func01)d(Patk)d(Paspd)d(Pdef)d(evasion)d(accur)d(crithit)d(Matk)d(Maspd)d(Paspd)d(Mdef)d(PvpFlag)d(Karma)d(runSpd)d(walkSpd)d(swimRSpd)d(swimWSpd)d(flRSpd)d(flWSpd)d(flyRSpd)d(flyWSpd)f(MoveMul)f(aspdMul)f(collisRadius)f(collisHeight)d(HairStyle)d(HairColor:Get.FCol)d(Face)d(AccessLvl)s(Title)d(clanID)d(clanCrestId)d(AllyID)d(AllyCrestId)d(ClanLeader)c(Mount)c(shop)c(DwarfCraft)d(PKkills)d(PVPkills)h(cubics:For.0001)h(cubID)c(findparty)d(abnEffects)c(c)d(clanPrivil)d(d)d(d)d(d)d(d)d(d)d(d)d(d)h(RecomLeft)h(RecomHave)d(d)h(InventLimit)d(classId:Get.ClassID)d(sEff)d(maxCP)d(curCP)c(Mount)c(Team)d(clanBigCrestId)c(Noble)c(Hero)c(Fishing)d(fishX)d(fishY)d(fishZ)d(NameColor:Get.FCol)
s13=CharSelectInfo:h(psize)c(ID)d(Count:For.0069)s(Name)d(CharID)s(LoginName)d(SessionID)d(ClanID)d(d)d(Sex)d(Race)d(ClassID:Get.ClassID)d(active)d(X)d(Y)d(Z)f(cur_HP)f(cur_MP)d(SP)d(Exp)d(Level)d(Karma)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(Under)d(Rear)d(Lear)d(Neck)d(RFinger)d(LFinger)d(Head)d(RHand)d(LHand)d(Gloves)d(Chest)d(Legs)d(Feet)d(Back)d(LRHand)d(Hair)d(Under:Get.Func01)d(Rear:Get.Func01)d(Lear:Get.Func01)d(Neck:Get.Func01)d(RFinger:Get.Func01)d(LFinger:Get.Func01)d(Head:Get.Func01)d(RHand:Get.Func01)d(LHand:Get.Func01)d(Gloves:Get.Func01)d(Chest:Get.Func01)d(Legs:Get.Func01)d(Feet:Get.Func01)d(Back:Get.Func01)d(LRHand:Get.Func01)d(Hair:Get.Func01)d(HairStyle)d(HairColor:Get.FCol)d(Face)f(Max_HP)f(Max_MP)d(DELdays)d(ClassID:Get.ClassID)d(autSel)c(EnchEffect)
s15=CharSelected:h(psize)c(ID)s(Name)d(CharID)s(Title)d(SessionID)d(ClanID)d(d)d(Sex)d(Race)d(ClassID:Get.ClassID)d(active)d(X)d(Y)d(Z)f(Cur_HP)f(Cur_MP)d(SP)d(EXP)d(Level)d(Karma)d(d)d(INT)d(STR)d(CON)d(MEN)d(DEX)d(WIT)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(inGameTime)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)
s16=NpcInfo:h(psize)c(ID)d(ObjectID)d(NpcTypeID)d(IsAttackable)d(X)d(Y)d(Z)d(Heading)d(d)d(Maspd)d(Paspd)d(runSpd)d(walkSpd)d(swimRSpd)d(swimWSpd)d(flRSpd)d(flWSpd)d(FlyRSpd)d(FlyWSpd)f(ProperMul)f(Paspd)f(CollisRadius)f(CollisHeight)d(RHand)d(d)d(LHand)c(nameabove)c(isRun)c(isInFight)c(isAlikeDead)c(isSummoned)s(Name)s(Title)d(d)d(d)d(karma?)d(abnEffect)d(d)d(d)d(d)d(d)c(c)c(Team)f(collisRadius)f(collisHeight)d(d)
s58=SkillList:h(psize)c(ID)d(ListCount:For.0003)d(isPassive)d(lvl)d(SkillID:Get.Skill)
они же в с5
Код:
s03=CharInfo:h(psize)c(ID)d(X)d(Y)d(Z)d(Heading)d(ObjectID)s(Name)d(Race)d(Sex)d(ClassID:Get.ClassID)d(DHair)d(Head:Get.Func01)d(RHand:Get.Func01)d(LHand:Get.Func01)d(Gloves:Get.Func01)d(Chest:Get.Func01)d(Legs:Get.Func01)d(Feet:Get.Func01)d(Back:Get.Func01)d(LRHand:Get.Func01)d(Hair:Get.Func01)d(PvpFlag)d(Karma)d(MSpeed)d(PSpeed)d(PvpFlag)d(Karma)d(runSpd)d(walkSpd)d(swimRSpd)d(swimWSpd)d(flRunSpd)d(flWalkSpd)d(flyRSpd)d(flyWSpd)f(SpdMul)f(ASpdMul)f(collisRadius)f(collisHeight)d(HairStyle)d(HairColor)d(Face)s(Title)d(clanID)d(clanCrest)d(allyID)d(allyCrest)d(siegeFlag)c(isStand)c(isRun)c(isInFight)c(isAlikeDead)c(Invis)c(Mount)c(shop)h(cubics:For.0001)h(cubID)c(findparty)d(abnEffects)c(RecomLeft)h(RecomHave)d(classID:Get.ClassID)d(maxCP)d(curCP)c(isMounted)c(Team)d(clanBigCrestId)c(isNoble)c(isHero)c(isFishing)d(fishX)d(fishY)d(fishZ)d(NameColor:Get.FCol)c(isRun)d(d)d(PItem)d(PledgeClass)d(PledgeColor:Get.FCol)d(TitleColor:Get.FCol)d(Cursed)
s04=UserInfo:h(psize)c(ID)d(X)d(Y)d(Z)d(Heading)d(ObjectID)s(Name)d(Race)d(Sex)d(ClassID:Get.ClassID)d(Level)q(Exp)d(STR)d(DEX)d(CON)d(INT)d(WIT)d(MEN)d(MaxHP)d(CurHP)d(MaxMP)d(CurMP)d(SP)d(CurLoad)d(MaxLoad)d(d)d(DHair)d(Rear)d(Lear)d(Neck)d(RFinger)d(LFinger)d(Head)d(RHand)d(LHand)d(Gloves)d(Chest)d(Legs)d(Feet)d(Back)d(LRHand)d(Hair)d(DHair:Get.Func01)d(Rear:Get.Func01)d(Lear:Get.Func01)d(Neck:Get.Func01)d(RFinger:Get.Func01)d(LFinger:Get.Func01)d(Head:Get.Func01)d(RHand:Get.Func01)d(LHand:Get.Func01)d(Gloves:Get.Func01)d(Chest:Get.Func01)d(Legs:Get.Func01)d(Feet:Get.Func01)d(Back:Get.Func01)d(LRHand:Get.Func01)d(Hair:Get.Func01)d(Patk)d(Paspd)d(Pdef)d(evasion)d(accur)d(crithit)d(Matk)d(Maspd)d(Paspd)d(Mdef)d(PvpFlag)d(Karma)d(runSpd)d(walkSpd)d(swimRSpd)d(swimWSpd)d(flRSpd)d(flWSpd)d(flyRSpd)d(flyWSpd)f(MoveMul)f(aspdMul)f(collisRadius)f(collisHeight)d(HairStyle)d(HairColor:Get.FCol)d(Face)d(AccessLvl)s(Title)d(clanID)d(clanCrestId)d(AllyID)d(AllyCrestId)d(ClanLeader)c(Mount)c(shop)c(DwarfCraft)d(PKkills)d(PVPkills)h(cubics:For.0001)h(cubID)c(findparty)d(abnEffects)c(c)d(clanPrivil)h(RecomLeft)h(RecomHave)d(d)h(InventLimit)d(classId:Get.ClassID)d(sEff)d(maxCP)d(curCP)c(Mount)c(Team)d(clanBigCrestId)c(Noble)c(Hero)c(Fishing)d(fishX)d(fishY)d(fishZ)d(NameColor:Get.FCol)c(isRun)d(FaceID)d(Face:Get.Func01)d(PledgeClass)d(d)d(TitleColor:Get.FCol)d(Cursed)
s13=CharSelectInfo:h(psize)c(ID)d(Count:For.0071)s(Name)d(CharID)s(LoginName)d(SessionID)d(ClanID)d(d)d(Sex)d(Race)d(ClassID:Get.ClassID)d(active)d(X)d(Y)d(Z)f(cur_HP)f(cur_MP)d(SP)q(Exp)d(Level)d(Karma)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(Under)d(Rear)d(Lear)d(Neck)d(RFinger)d(LFinger)d(Head)d(RHand)d(LHand)d(Gloves)d(Chest)d(Legs)d(Feet)d(Back)d(LRHand)d(Hair)d(Under:Get.Func01)d(Rear:Get.Func01)d(Lear:Get.Func01)d(Neck:Get.Func01)d(RFinger:Get.Func01)d(LFinger:Get.Func01)d(Head:Get.Func01)d(RHand:Get.Func01)d(LHand:Get.Func01)d(Gloves:Get.Func01)d(Chest:Get.Func01)d(Legs:Get.Func01)d(Feet:Get.Func01)d(Back:Get.Func01)d(LRHand:Get.Func01)d(Hair:Get.Func01)d(HairStyle)d(HairColor:Get.FCol)d(Face)f(Max_HP)f(Max_MP)d(DELdays)d(ClassID:Get.ClassID)d(autSel)c(EnchEffect)d(Face)d(Face:Get.Func01)
s15=CharSelected:h(psize)c(ID)s(Name)d(CharID)s(Title)d(SessionID)d(ClanID)d(d)d(Sex)d(Race)d(ClassID:Get.ClassID)d(active)d(X)d(Y)d(Z)f(Cur_HP)f(Cur_MP)d(SP)q(EXP)d(Level)d(Karma)d(d)d(INT)d(STR)d(CON)d(MEN)d(DEX)d(WIT)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(inGameTime)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)d(d)
s16=NpcInfo:h(psize)c(ID)d(ObjectID)d(NpcTypeID)d(IsAttackable)d(X)d(Y)d(Z)d(Heading)d(d)d(Maspd)d(Paspd)d(runSpd)d(walkSpd)d(swimRSpd)d(swimWSpd)d(flRSpd)d(flWSpd)d(FlyRSpd)d(FlyWSpd)f(ProperMul)f(Paspd)f(CollisRadius)f(CollisHeight)d(RHand)d(d)d(LHand)c(nameabove)c(isRun)c(isInFight)c(isAlikeDead)c(isSummoned)s(Name)s(Title)d(d)d(d)d(karma?)d(abnEffect)d(d)d(d)d(d)d(d)c(c)c(Team)f(collisRadius)f(collisHeight)d(d)
s58=SkillList:h(psize)c(ID)d(ListCount:For.0004)d(isPassive)d(lvl)d(SkillID:Get.Skill)c(c)
описание из впф-ппц

З.Ы. на счет интерлюдии - самому было бы интересно
Shura1oplot вне форума   Ответить с цитированием
Старый 12.10.2007, 13:48   #3
Рыцарь
 
Аватар для dmitry501
 
Регистрация: 01.10.2007
Сообщений: 293
Сказал Спасибо: 42
Имеет 50 спасибок в 37 сообщенях
dmitry501 пока неопределено
По умолчанию

Так. UserInfo накопал
s04=UserInfo:h(psize)c(ID)d(X)d(Y)d(Z)d(Heading)d( ObjectID)s(Name)d(Race)d(Sex)d(ClassID:Get.ClassID )d(Level)q(Exp)d(STR)d(DEX)d(CON)d(INT)d(WIT)d(MEN )d(MaxHP)d(CurHP)d(MaxMP)d(CurMP)d(SP)d(CurLoad)d( MaxLoad)d(d)d(DHair)d(Rear)d(Lear)d(Neck)d(RFinger )d(LFinger)d(Head)d(RHand)d(LHand)d(Gloves)d(Chest )d(Legs)d(Feet)d(Back)d(LRHand)d(Hair)d(DHair:Get. Func01)d(Rear:Get.Func01)d(Lear:Get.Func01)d(Neck: Get.Func01)d(RFinger:Get.Func01)d(LFinger:Get.Func 01)d(Head:Get.Func01)d(RHand:Get.Func01)d(LHand:Ge t.Func01)d(Gloves:Get.Func01)d(Chest:Get.Func01)d( Legs:Get.Func01)d(Feet:Get.Func01)d(Back:Get.Func0 1)d(LRHand:Get.Func01)d(Hair:Get.Func01)-(0076)d(Patk)d(Paspd)d(Pdef)d(evasion)d(accur)d(crithit) d(Matk)d(Maspd)d(Paspd)d(Mdef)d(PvpFlag)d(Karma)d( runSpd)d(walkSpd)d(swimRSpd)d(swimWSpd)d(flRSpd)d( flWSpd)d(flyRSpd)d(flyWSpd)f(MoveMul)f(aspdMul)f(c ollisRadius)f(collisHeight)d(HairStyle)d(HairColor :Get.FCol)d(Face)d(AccessLvl)s(Title)d(clanID)d(cl anCrestId)d(AllyID)d(AllyCrestId)d(ClanLeader)c(Mo unt)c(shop)c(DwarfCraft)d(PKkills)d(PVPkills)h(cub ics:For.0001)h(cubID)c(findparty)d(abnEffects)c(c) d(clanPrivil)h(RecomLeft)h(RecomHave)d(d)h(InventL imit)d(classId:Get.ClassID)d(sEff)d(maxCP)d(curCP) c(Mount)c(Team)d(clanBigCrestId)c(Noble)c(Hero)c(F ishing)d(fishX)d(fishY)d(fishZ)d(NameColor:Get.FCo l)c(isRun)d(FaceID)d(Face:Get.Func01)d(PledgeClass )d(d)d(TitleColor:Get.FCol)d(Cursed)
__________________
Цитата:
Сообщение от Stas
...Ну на хрена ты меня посылаешь гууглить или искать 140 страниц описанных где-то комманд, если я уже в сотый раз объясняю, что хочу облегчить труд многим, я же эти доводы подробно описал...
dmitry501 вне форума   Ответить с цитированием
Старый 12.10.2007, 21:15   #4
Пользователь
 
Регистрация: 21.09.2007
Сообщений: 37
Сказал Спасибо: 0
Имеет 10 спасибок в 2 сообщенях
Shura1oplot
По умолчанию

dmitry501, для интерлюдии? или что это?
Shura1oplot вне форума   Ответить с цитированием
Старый 14.10.2007, 10:44   #5
Гость
 
Сообщений: n/a
По умолчанию Re:

Цитата:
Сообщение от Shura1oplot
dmitry501, для интерлюдии? или что это?
Это для С5 у Сауроныча взято но для интерлюди тоже пойдет
  Ответить с цитированием
Старый 14.10.2007, 21:00   #6
Новичок
 
Регистрация: 10.10.2007
Сообщений: 3
Сказал Спасибо: 0
Имеет 1 спасибку в 1 сообщении
Death
По умолчанию Re: Re:

Цитата:
Сообщение от Kirpi4
Цитата:
Сообщение от Shura1oplot
dmitry501, для интерлюдии? или что это?
Это для С5 у Сауроныча взято но для интерлюди тоже пойдет
Не подойдет.
Death вне форума   Ответить с цитированием
Старый 14.10.2007, 23:34   #7
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию Re: Различия в пакетах C4, C5, Интерлюдии

UserInfo.java из L2j FORTRESS Interlude
Код:
public class UserInfo extends ServerBasePacket
{
	private static final String _S__04_USERINFO = "[S] 04 UserInfo";
	private final L2Player _cha;
	private int _runSpd, _walkSpd, _swimRunSpd, _swimWalkSpd, _flRunSpd,
			_flWalkSpd, _flyRunSpd, _flyWalkSpd;

	/**
	 * @param _characters
	 */
	public UserInfo(L2Player cha)
	{
		_cha = cha;
	}

	@Override
	final void runImpl()
	{
		float moveMultiplier = _cha.getMovementSpeedMultiplier();
		_runSpd = (int) (_cha.getRunSpeed() / moveMultiplier);
		_walkSpd = (int) (_cha.getWalkSpeed() / moveMultiplier);
		_flRunSpd = _flyRunSpd = _runSpd;
		_flWalkSpd = _flyWalkSpd = _walkSpd;
		_swimRunSpd = _cha.getSwimSpeed();
		_swimWalkSpd = _cha.getSwimSpeed();
	}

	@Override
	final void writeImpl()
	{
		writeC(0x04);

		writeD(_cha.getX());
		writeD(_cha.getY());
		writeD(_cha.getZ());
		writeD(_cha.getHeading());
		writeD(_cha.getObjectId());
		writeS(_cha.getName());

		writeD(_cha.getRace().ordinal());
		writeD(_cha.getSex());
		writeD(_cha.getBaseClass());
		writeD(_cha.getLevel());
		writeQ(_cha.getExp());
		writeD(_cha.getSTR());
		writeD(_cha.getDEX());
		writeD(_cha.getCON());
		writeD(_cha.getINT());
		writeD(_cha.getWIT());
		writeD(_cha.getMEN());
		writeD(_cha.getMaxHp());
		writeD((int) _cha.getCurrentHp());
		writeD(_cha.getMaxMp());
		writeD((int) _cha.getCurrentMp());
		writeD(_cha.getSp());
		writeD(_cha.getCurrentLoad());
		writeD(_cha.getMaxLoad());
		writeD(0x28); // unknown

		//writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_UNDER));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_DHAIR));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_REAR));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEAR));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_NECK));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RFINGER));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LFINGER));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HEAD));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LHAND));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_GLOVES));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_CHEST));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEGS));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FEET));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_BACK));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LRHAND));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HAIR));
		writeD(_cha.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FACE));

		//writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_UNDER));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_DHAIR));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_REAR));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEAR));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_NECK));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RFINGER));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LFINGER));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HEAD));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LHAND));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_GLOVES));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_CHEST));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEGS));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FEET));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_BACK));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LRHAND));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HAIR));
		writeD(_cha.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FACE));

		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);
		writeH(0x00);

		writeD(_cha.getPAtk(null));
		writeD(_cha.getPAtkSpd());
		writeD(_cha.getPDef(null));
		writeD(_cha.getEvasionRate(null));
		writeD(_cha.getAccuracy());
		writeD(_cha.getCriticalHit(null, null));
		writeD(_cha.getMAtk(null, null));

		writeD(_cha.getMAtkSpd());
		writeD(_cha.getPAtkSpd());

		writeD(_cha.getMDef(null, null));

		writeD(_cha.getPvpFlag()); // 0=white, 1=purple, 2=purpleblink
		writeD(_cha.getKarma());

		writeD(_runSpd);
		writeD(_walkSpd);
		writeD(_swimRunSpd); // swimspeed
		writeD(_swimWalkSpd); // swimspeed
		writeD(_flRunSpd);
		writeD(_flWalkSpd);
		writeD(_flyRunSpd);
		writeD(_flyWalkSpd);
		writeF(_cha.getMovementSpeedMultiplier());
		writeF(_cha.getAttackSpeedMultiplier());
		if(_cha.getMountType() != 0 && _cha.getPet() != null)
		{
			writeF(_cha.getPet().getTemplate().collisionRadius);
			writeF(_cha.getPet().getTemplate().collisionHeight);
		}
		else
		{
			writeF(_cha.getBaseTemplate().collisionRadius);
			writeF(_cha.getBaseTemplate().collisionHeight);
		}

		writeD(_cha.getHairStyle());
		writeD(_cha.getHairColor());
		writeD(_cha.getFace());
		writeD(_cha.getPlayerAccess().IsGM || _cha.getPlayerAccess().CanUseGMCommand ? 1 : 0);  // builder level активирет в клиенте админские команды

		String title = _cha.getTitle();
		if(_cha.isInvisible())
			title = "Invisible";
		if(_cha.isPolymorphed())
			title += " - " + NpcTable.getTemplate(_cha.getPolyid()).name;
		writeS(title);
		writeD(_cha.getClanId());
		writeD(_cha.getClanCrestId()); //clan crest
		writeD(_cha.getAllyId());
		writeD(_cha.getAllyCrestId()); // ally crest id
		writeD(_cha.isClanLeader() ? 0x60 : 0); // siege-flags  0x40 - leader rights  0x20 - ??
		writeC(_cha.getMountType()); // mount type
		writeC(_cha.getPrivateStoreType());
		writeC(_cha.getSkillLevel(L2Skill.SKILL_CRYSTALLIZE) > 0 ? 1 : 0);
		writeD(_cha.getPkKills());
		writeD(_cha.getPvpKills());

		writeH(_cha.getCubics().size());
		for(int id : _cha.getCubics().keySet())
			writeH(id);

		writeC(0x00); //1-find party members

		writeD(_cha.getAbnormalEffect());
		writeC(0x11);

		writeD(_cha.getClanPrivileges());
		writeH(_cha.getRecomLeft()); //c2  recommendations remaining
		writeH(_cha.getPlayerAccess().IsGM ? 0 : _cha.getRecomHave()); //c2  recommendations received
		writeD(0x00);

		writeH(_cha.getInventoryLimit());

		writeD(_cha.getClassId().getId());
		writeD(0x00); // special effects? circles around player...
		writeD(_cha.getMaxCp());
		writeD((int) _cha.getCurrentCp());

		writeC(_cha.isMounted() ? 0 : _cha.getEnchantEffect()); //should check if mounted and not use
		writeC(_cha.getTeam()); //team circle around feet 1= Blue, 2 = red
		writeD(_cha.getClanCrestLargeId());
		writeC(_cha.isNoble() || _cha.isGM() && Config.GM_HERO_AURA ? 1 : 0); //0x01: symbol on char menu ctrl+I  
		writeC(_cha.isHero() || _cha.isGM() && Config.GM_HERO_AURA ? 1 : 0); //0x01: Hero Aura and symbol

		writeC(_cha.isFishing() ? 1 : 0); //Fishing Mode
		writeD(_cha.GetFishx()); //fishing x  
		writeD(_cha.GetFishy()); //fishing y
		writeD(_cha.GetFishz()); //fishing z

		writeD(_cha.getNameColor());
		writeC(_cha.isRunning() ? 0x01 : 0x00); //changes the Speed display on Status Window
		writeD(_cha.getPledgeClass()); //C5 ??
		writeD(0x00); //C5 ??
		writeD(_cha.getTitleColor()); //C5 ??
		writeD(0); //C5 ??
		if(_cha.isCursedWeaponEquiped())
			writeD(CursedWeaponsManager.getInstance().getLevel(_cha.getCursedWeaponEquipedId()));
		else
			writeD(0x00);

		_cha.refreshSavedStats();
	}

	@Override
	public String getType()
	{
		return _S__04_USERINFO;
	}
}
CharInfo.java из L2j FORTRESS Interlude
Код:
public class CharInfo extends ServerBasePacket
{
	private static final String _S__03_CHARINFO = "[S] 03 CharInfo";
	private L2Player _cha;
	private Inventory _inv;
	private int _mAtkSpd, _pAtkSpd;
	private int _runSpd, _walkSpd, _swimRunSpd, _swimWalkSpd, _flRunSpd,
			_flWalkSpd;

	protected boolean logHandled()
	{
		return true;
	}

	/**
	 * @param _characters
	 */
	public CharInfo(L2Player cha)
	{
		_cha = cha;
		_inv = cha.getInventory();
		_mAtkSpd = _cha.getMAtkSpd();
		_pAtkSpd = _cha.getPAtkSpd();
	}

	@Override
	final void runImpl()
	{
		// no long-running tasks
		float moveMultiplier = _cha.getMovementSpeedMultiplier();
		_runSpd = (int) (_cha.getRunSpeed() / moveMultiplier);
		_walkSpd = (int) (_cha.getWalkSpeed() / moveMultiplier);
		_flRunSpd = _runSpd;
		_flWalkSpd = _walkSpd;
		_swimRunSpd = _cha.getSwimSpeed();
		_swimWalkSpd = _cha.getSwimSpeed();
	}

	@Override
	final void writeImpl()
	{
		if(_cha == null)
			return;

		if(_cha.isPolymorphed())
		{
			writeC(0x16);
			writeD(_cha.getObjectId());
			writeD(_cha.getPolyid() + 1000000); // npctype id
			writeD(_cha.getKarma() > 0 ? 1 : 0);
			writeD(_cha.getX());
			writeD(_cha.getY());
			writeD(_cha.getZ());
			writeD(_cha.getHeading());
			writeD(0x11);
			writeD(_mAtkSpd);
			writeD(_pAtkSpd);
			writeD(_runSpd);
			writeD(_walkSpd);
			writeD(_swimRunSpd/*0x32*/); // swimspeed
			writeD(_swimWalkSpd/*0x32*/); // swimspeed
			writeD(_flRunSpd);
			writeD(_flWalkSpd);
			writeD(0x00); //_flyRunSpd
			writeD(0x00); //_flyWalkSpd
			writeF(_cha.getMovementSpeedMultiplier());
			writeF(_cha.getAttackSpeedMultiplier());
			writeF(_cha.getPolyRadius());
			writeF(_cha.getPolyHeight());
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); // right hand weapon
			writeD(0);
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LHAND)); // left hand weapon
			writeC(1); // name above char 1=true ... ??
			writeC(_cha.isRunning() ? 1 : 0);
			writeC(_cha.isInCombat() ? 1 : 0);
			writeC(_cha.isAlikeDead() ? 1 : 0);
			writeC(_cha.isInvisible() ? 1 : 0); // invisible ?? 0=false  1=true   2=summoned (only works if model has a summon animation)
			writeS(_cha.getName());
			writeS(_cha.getTitle());
			writeD(0);
			writeD(_cha.getPvpFlag());
			writeD(_cha.getKarma()); // hmm karma ??

			writeH(_cha.getAbnormalEffect()); // C2
			writeH(0x00); // C2
			writeD(0); // C2
			writeD(0); // C2
			writeD(0); // C2
			writeD(0); // C2
			writeC(0); // C2
		}
		else
		{
			writeC(0x03);
			writeD(_cha.getX());
			writeD(_cha.getY());
			writeD(_cha.getZ());
			writeD(_cha.getHeading());
			writeD(_cha.getObjectId());

			writeS(_cha.getName());
			writeD(_cha.getBaseTemplate().race.ordinal());
			writeD(_cha.getSex());
			writeD(_cha.getBaseClass());

			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_DHAIR));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HEAD));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_RHAND));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LHAND));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_GLOVES));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_CHEST));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LEGS));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_FEET));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_BACK));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LRHAND));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HAIR));
			writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_FACE));

			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);
			writeH(0);

			writeD(_cha.getPvpFlag());
			writeD(_cha.getKarma());

			writeD(_mAtkSpd);
			writeD(_pAtkSpd);

			writeD(_cha.getPvpFlag());
			writeD(_cha.getKarma());

			writeD(_runSpd);
			writeD(_walkSpd);
			writeD(_swimRunSpd/* 0x32 */); // swimspeed
			writeD(_swimWalkSpd/* 0x32 */); // swimspeed
			writeD(_flRunSpd);
			writeD(_flWalkSpd);
			writeD(0x00); //_flyRunSpd
			writeD(0x00); //_flyWalkSpd
			writeF(_cha.getMovementSpeedMultiplier()); // _cha.getProperMultiplier()
			writeF(_cha.getAttackSpeedMultiplier()); // _cha.getAttackSpeedMultiplier()
			writeF(_cha.getBaseTemplate().collisionRadius);
			writeF(_cha.getBaseTemplate().collisionHeight);

			writeD(_cha.getHairStyle());
			writeD(_cha.getHairColor());
			writeD(_cha.getFace());

			writeS(_cha.getTitle());
			writeD(_cha.getClanId());
			writeD(_cha.getClanCrestId());
			writeD(_cha.getAllyId());
			writeD(_cha.getAllyCrestId());

			writeD(0x00); // new in rev 417 siege-flags

			writeC(_cha.isSitting() ? 0 : 1); // standing = 1 sitting = 0
			writeC(_cha.isRunning() ? 1 : 0); // running = 1 walking = 0
			writeC(_cha.isInCombat() ? 1 : 0);
			writeC(_cha.isAlikeDead() ? 1 : 0);

			writeC(_cha.isInvisible() ? 1 : 0); // invisible = 1 visible =0
			writeC(_cha.getMountType()); // 1 on strider 2 on wyfern 0 no mount
			writeC(_cha.getPrivateStoreType()); // 1 - sellshop

			writeH(_cha.getCubics().size());
			for(int id : _cha.getCubics().keySet())
				writeH(id);

			writeC(0x00); // find party members

			writeD(_cha.getAbnormalEffect());

			writeC(_cha.getRecomLeft());
			writeH(_cha.getPlayerAccess().IsGM ? 0 : _cha.getRecomHave());
			writeD(_cha.getClassId().getId());

			writeD(_cha.getMaxCp());
			writeD((int) _cha.getCurrentCp());
			writeC(_cha.isMounted() ? 0 : _cha.getEnchantEffect());

			writeC(_cha.getTeam()); // team circle around feet 1= Blue, 2 = red
			writeD(_cha.getClanCrestLargeId());
			writeC(_cha.isNoble() ? 1 : 0); // 0x01: symbol on char menu ctrl+I
			writeC(_cha.isHero() || _cha.isGM() && Config.GM_HERO_AURA ? 1 : 0); // 0x01: Hero Aura

			writeC(_cha.isFishing() ? 1 : 0);
			writeD(_cha.GetFishx());
			writeD(_cha.GetFishy());
			writeD(_cha.GetFishz());

			writeD(_cha.getNameColor());

			// New C5            
			writeD(_cha.isRunning() ? 0x01 : 0x00); //changes the Speed display on Status Window
			writeD(_cha.getPledgeClass());
			writeD(0x00); //C5 ??
			writeD(_cha.getTitleColor());
			writeD(0x00); //C5 ??
			if(_cha.isCursedWeaponEquiped())
				writeD(CursedWeaponsManager.getInstance().getLevel(_cha.getCursedWeaponEquipedId()));
			else
				writeD(0x00);
		}
	}

	@Override
	public String getType()
	{
		return _S__03_CHARINFO + ": " + _cha;
	}
}
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
Старый 15.10.2007, 09:48   #8
Гость
 
Сообщений: n/a
По умолчанию

Ссылочку на весь сервер если можно
  Ответить с цитированием
Старый 15.10.2007, 13:20   #9
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию Re:

Цитата:
Сообщение от Kirpi4
Ссылочку на весь сервер если можно
http://trac.balancer.ru/svn/l2j/trunk/
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
Старый 15.10.2007, 13:39   #10
Рыцарь
 
Аватар для dmitry501
 
Регистрация: 01.10.2007
Сообщений: 293
Сказал Спасибо: 42
Имеет 50 спасибок в 37 сообщенях
dmitry501 пока неопределено
По умолчанию

Всем спасибо, я уже все нашел, тему можно закрывать.

p.s. Для абисса делал скриптик, тамошние админы извращаются. Протокол 747, шифруют как в С4, UserInfo, CharInfo как в C4, CharSelected как в IL. До этого в 746 SkillList, UseInfo, CharInfo было все из IL. Непонятно, то ли они к совместимости с волкером для С4 стремятся? :)
__________________
Цитата:
Сообщение от Stas
...Ну на хрена ты меня посылаешь гууглить или искать 140 страниц описанных где-то комманд, если я уже в сотый раз объясняю, что хочу облегчить труд многим, я же эти доводы подробно описал...
dmitry501 вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Основные форумы > Программинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 10:08.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!