Работа над Goddess of Destruction (part 6) - Страница 29 - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II

Lineage II
Дискуссии на тему создания, настройки и обслуживания серверов Lineage 2. При поддержке: Премиум услуги по рекламе

Закрытая тема
Опции темы
Непрочитано 02.03.2014, 22:10   #281
Аватар для Bonux
Пользователь

По умолчанию Re: Работа над Goddess of Destruction (part 6)

Цитата:
Сообщение от BoneBreaker Посмотреть сообщение
Дядьки добрые, подскажите пожалуйста, что в эпизодеоне сотворили с кланом? Сравнил структуры пакетов линдвиор<->эпизодеон, всё сходится, но менюшка клана мертвая.
GameGuard killer другой используйте.
Bonux вне форума Отправить сообщение для Bonux с помощью ICQ Отправить сообщение для Bonux с помощью Skype™
Непрочитано 02.03.2014, 23:14   #282
Пользователь

По умолчанию Re: Работа над Goddess of Destruction (part 6)

Цитата:
Сообщение от Bonux Посмотреть сообщение
GameGuard killer другой используйте.
А это тут причем??

Речь не о заблокированных кнопках в интерфейсе клана, как было на линдвиоре 531.

Речь о самом по себе пустом интерфейсе, то есть без списка членов клана, отображения наличия клана в нижнем меню, отображения названия клана
BoneBreaker вне форума
Непрочитано 03.03.2014, 18:01   #283
Аватар для VenomRaider
Участник

По умолчанию Re: Работа над Goddess of Destruction (part 6)

тоже очень интересно
VenomRaider вне форума
Непрочитано 08.03.2014, 12:44   #284
Пользователь

По умолчанию Re: Работа над Goddess of Destruction (part 6)

anyone knows when server send the PledgeCrest then L2 window Stuck?
disable the PledgeCrest will ignore the crest show.

name: PledgeCrest
Opcode : 6A
Size: 269 + 2

0001 serverid : 1 (0x00000001)
0005 crestId : 17853 (0x000045BD)
0009 size : 256 (0x00000100)
the below is data
__________________
https://github.com/L2Miko
iquelite на форуме Отправить сообщение для iquelite с помощью MSN
Непрочитано 01.04.2014, 06:54   #285
Аватар для Bonux
Пользователь

По умолчанию Re: Работа над Goddess of Destruction (part 6)

Мб кому-то пригодится...

UIPacket (UserInfo) (Opcode 0x32). Protocol 597. (Не полностью разобран)

Код:
			writeD(obj_id);
			writeD(372 + _name.length() * 2 + title.length() * 2);
			writeH(23);

			writeB(new byte[]{(byte) 0xFF, (byte) 0xFF, (byte) 0xFF});

			writeD(_relation);
			writeH(16 + _name.length() * 2);
			writeH(_name.length());
			writeCutS(_name);
			writeC(gm_commands);
			writeC(_race);
			writeC(sex);
			writeD(base_class);
			writeD(class_id);
			writeC(level);

			writeH(18);
			writeH(_str);
			writeH(_dex);
			writeH(_con);
			writeH(_int);
			writeH(_wit);
			writeH(_men);
			writeH(_luc);
			writeH(_cha);

			writeH(14);
			writeD(maxHp);
			writeD(maxMp);
			writeD(maxCp);

			writeH(38);
			writeD(curHp);
			writeD(curMp);
			writeD(curCp);
			writeQ(_sp);
			writeQ(_exp);
			writeF(_expPercent);

			writeH(4);
			writeH(_enchant);

			writeH(15);
			writeD(hair_style);
			writeD(hair_color);
			writeD(face);
			writeC(0x00);

			writeH(6);
			writeC(mount_type);
			writeC(private_store);
			writeC(can_crystalize);
			writeC(0x00);

			writeH(56);
			writeH(_weaponFlag);
			writeD(_patk);
			writeD(_patkspd);
			writeD(_pdef);
			writeD(_pEvasion);
			writeD(_pAccuracy);
			writeD(_pCrit);
			writeD(_matk);
			writeD(_matkspd);
			writeD(_patkspd);
			writeD(_mdef);
			writeD(_mEvasion);
			writeD(_mAccuracy);
			writeD(_mCrit);

			writeH(14);
			writeH(defenceFire);
			writeH(defenceWater);
			writeH(defenceWind);
			writeH(defenceEarth);
			writeH(defenceHoly);
			writeH(defenceUnholy);

			writeH(18);
			writeD(_loc.x);
			writeD(_loc.y);
			writeD(_loc.z + Config.CLIENT_Z_SHIFT);
			writeD(vehicle_obj_id);

			writeH(18);
			writeH(_runSpd);
			writeH(_walkSpd);
			writeH(_swimRunSpd);
			writeH(_swimWalkSpd);
			writeH(_flRunSpd);
			writeH(_flWalkSpd);
			writeH(_flyRunSpd);
			writeH(_flyWalkSpd);

			writeH(18);
			writeF(move_speed);
			writeF(attack_speed);

			writeH(18);
			writeF(col_radius);
			writeF(col_height);

			writeH(5);
			writeC(attackElement.getId());
			writeH(attackElementValue);

			writeH(32 + title.length() * 2);
			writeH(title.length());
			writeCutS(title);
			writeH(pledge_type);
			writeD(clan_id);
			writeD(large_clan_crest_id);
			writeD(clan_crest_id);
			writeD(ClanPrivs);
			writeC(0x00);
			writeD(ally_id);
			writeD(ally_crest_id);
			writeC(partyRoom ? 0x01 : 0x00);

			writeH(22);
			writeC(pvp_flag);
			writeD(karma);
			writeC(noble);
			writeC(hero);
			writeC(pledge_class);
			writeD(pk_kills);
			writeD(pvp_kills);
			writeH(rec_left);
			writeH(rec_have);

			writeH(15);
			writeD(vitality);
			writeC(0);
			writeD(fame);
			writeD(0x00); // Рейдовые Очки

			writeH(9);
			writeC(talismans);
			writeC(openCloak);
			writeC(_team.ordinal());
			writeC(0);
			writeC(0);
			writeC(0);
			writeC(0);

			writeH(4);
			writeC(isFlying ? 0x02 : 0x00);
			writeC(running);

			writeH(10);
			writeD(name_color);
			writeD(title_color);

			writeH(9);
			writeD(0);
			writeH(InventoryLimit);
			writeC(0);

			writeH(9);
			writeC(1);
			writeH(0);
			writeD(0);

P.S. Перевод клиента позаимствован с ГВ.

Добавлено через 4 минуты
CharacterSelectionInfoPacket (Opcode 0x09). Protocol 597.

Код:
		writeD(size);
		writeD(0x07); // Максимальное количество персонажей на сервере
		writeC(0x00); // 0x00 - Разрешить, 0x01 - запретить. Разрешает или запрещает создание игроков
		writeC(0x00);
		writeD(0x02); // 0x01 - Выводит окно, что нужно купить игру, что создавать более 2х чаров. 0х02 - обычное лобби.
		writeC(0x00); // 0x01 - Предлогает купить ПА.

		long lastAccess = -1L;
		int lastUsed = -1;
		for(int i = 0; i < size; i++)
			if(lastAccess < _characterPackages[i].getLastAccess())
			{
				lastAccess = _characterPackages[i].getLastAccess();
				lastUsed = i;
			}

		for(int i = 0; i < size; i++)
		{
			CharSelectInfoPackage charInfoPackage = _characterPackages[i];

			writeS(charInfoPackage.getName());
			writeD(charInfoPackage.getCharId()); // ?
			writeS(_loginName);
			writeD(_sessionId);
			writeD(charInfoPackage.getClanId());
			writeD(0x00); // ??

			writeD(charInfoPackage.getSex());
			writeD(charInfoPackage.getRace());
			writeD(charInfoPackage.getBaseClassId());

			writeD(0x01); // active ??

			writeD(charInfoPackage.getX());
			writeD(charInfoPackage.getY());
			writeD(charInfoPackage.getZ());

			writeF(charInfoPackage.getCurrentHp());
			writeF(charInfoPackage.getCurrentMp());

			writeQ(charInfoPackage.getSp());
			writeQ(charInfoPackage.getExp());
			int lvl = charInfoPackage.getLevel();
			writeF(Experience.getExpPercent(lvl, charInfoPackage.getExp()));
			writeD(lvl);

			writeD(charInfoPackage.getKarma());
			writeD(charInfoPackage.getPk());
			writeD(charInfoPackage.getPvP());

			writeD(0x00);
			writeD(0x00);
			writeD(0x00);
			writeD(0x00);
			writeD(0x00);
			writeD(0x00);
			writeD(0x00);

			writeD(0x00); // unk Ertheia
			writeD(0x00); // unk Ertheia

			for(int PAPERDOLL_ID : Inventory.PAPERDOLL_ORDER)
				writeD(charInfoPackage.getPaperdollItemId(PAPERDOLL_ID));

			writeD(charInfoPackage.getPaperdollVisualId(Inventory.PAPERDOLL_RHAND)); //Внешний вид оружия (ИД Итема).
			writeD(charInfoPackage.getPaperdollVisualId(Inventory.PAPERDOLL_LHAND)); //Внешний вид щита (ИД Итема).
			writeD(charInfoPackage.getPaperdollVisualId(Inventory.PAPERDOLL_GLOVES)); //Внешний вид перчаток (ИД Итема).
			writeD(charInfoPackage.getPaperdollVisualId(Inventory.PAPERDOLL_CHEST)); //Внешний вид верха (ИД Итема).
			writeD(charInfoPackage.getPaperdollVisualId(Inventory.PAPERDOLL_LEGS)); //Внешний вид низа (ИД Итема).
			writeD(charInfoPackage.getPaperdollVisualId(Inventory.PAPERDOLL_FEET)); //Внешний вид ботинок (ИД Итема).
			writeD(0x00); //???
			writeD(charInfoPackage.getPaperdollVisualId(Inventory.PAPERDOLL_HAIR)); //Внешний вид шляпы (ИД итема).
			writeD(charInfoPackage.getPaperdollVisualId(Inventory.PAPERDOLL_DHAIR)); //Внешний вид маски (ИД итема).

			writeH(0x00); // unk Episodion
			writeH(0x00); // unk Episodion
			writeH(0x00); // unk Episodion
			writeH(0x00); // unk Episodion
			writeH(0x01); // unk Episodion

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

			writeF(charInfoPackage.getMaxHp()); // hp max
			writeF(charInfoPackage.getMaxMp()); // mp max

			writeD(charInfoPackage.getAccessLevel() > -100 ? charInfoPackage.getDeleteTimer() : -1);
			writeD(charInfoPackage.getClassId());
			writeD(i == lastUsed ? 1 : 0);

			writeC(Math.min(charInfoPackage.getPaperdollEnchantEffect(Inventory.PAPERDOLL_RHAND), 127));
			writeH(charInfoPackage.getPaperdollVariation1Id(Inventory.PAPERDOLL_RHAND));
			writeH(charInfoPackage.getPaperdollVariation2Id(Inventory.PAPERDOLL_RHAND));
			int weaponId = charInfoPackage.getPaperdollItemId(Inventory.PAPERDOLL_RHAND);
			if(weaponId == 8190) // Transform id (на оффе отображаются только КВ трансформации или вообще не отображаются ;)
				writeD(301);
			else if(weaponId == 8689)
				writeD(302);
			else
				writeD(0x00);

			//TODO: Pet info?
			writeD(0x00);
			writeD(0x00);
			writeD(0x00);
			writeD(0x00);
			writeF(0x00);
			writeF(0x00);

			writeD(charInfoPackage.getVitalityPoints());
			/*TODO: Сделать, чтобы реагировало на ПА.
			if(hasPremiumAccount)
			{
				writeD(charInfoPackage.getVitalityPoints() > 0 ? (int) (100 * Config.ALT_VITALITY_PA_RATE) : 100);
				writeD(Config.ALT_VITALITY_POTIONS_PA_LIMIT - charInfoPackage.getVitalityUsedPotions());
			}
			else
			{*/
				writeD(charInfoPackage.getVitalityPoints() > 0 ? (int) (100 * Config.ALT_VITALITY_RATE) : 100);
				writeD(Config.ALT_VITALITY_POTIONS_LIMIT - charInfoPackage.getVitalityUsedPotions());
			/*}*/
			writeD(0x01); // Активен персонаж или нет.
			writeC(0x00); // UNK
			writeC(0x00); // UNK
			writeC(0x00); // UNK Episodion
Добавлено через 7 минут
ExUserInfoEquipSlot (Opcode 0xFE:0x151). Protocol 597.

Код:
		writeD(_objectId);
		writeH(_inv.length);

		writeB(new byte[]{(byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF});

		for(int[] inv : _inv)
		{
			writeH(18); // size
			writeD(inv[0]); // item ObjID
			writeD(inv[1]); // item ID
			writeH(inv[2]); // variation ID 1 (augment)
			writeH(inv[3]); // variation ID 2 (augment)
			writeD(inv[4]); // visual ID
		}

Последний раз редактировалось Bonux; 01.04.2014 в 07:22. Причина: Добавлено сообщение
Bonux вне форума Отправить сообщение для Bonux с помощью ICQ Отправить сообщение для Bonux с помощью Skype™
Сказали спасибо:
Непрочитано 01.04.2014, 07:49   #286
Пользователь

По умолчанию Re: Работа над Goddess of Destruction (part 6)

Цитата:
Сообщение от Bonux Посмотреть сообщение
Мб кому-то пригодится...

UIPacket (UserInfo) (Opcode 0x32). Protocol 597. (Не полностью разобран)
597 протокол это Артеас уже?
Melcor вне форума
Непрочитано 01.04.2014, 08:09   #287
Аватар для Bonux
Пользователь

По умолчанию Re: Работа над Goddess of Destruction (part 6)

Цитата:
Сообщение от Melcor Посмотреть сообщение
597 протокол это Артеас уже?
Да. Артеас.
Bonux вне форума Отправить сообщение для Bonux с помощью ICQ Отправить сообщение для Bonux с помощью Skype™
Сказали спасибо:
Непрочитано 01.04.2014, 10:36   #288
Аватар для Bacek

По умолчанию Re: Работа над Goddess of Destruction (part 6)

Цитата:
Сообщение от Bonux Посмотреть сообщение
P.S. Перевод клиента позаимствован с ГВ.
Достали таки ключ =(

п.с вроде это все в шаре было.
да и разбор не совсем верный. На нпцИнфо этот трюк уже не пройдет.
__________________
Человек просто обязан ошибаться, раз другие учатся на его ошибках .......
Bacek вне форума Отправить сообщение для Bacek с помощью ICQ
Непрочитано 01.04.2014, 11:17   #289
Пользователь

По умолчанию Re: Работа над Goddess of Destruction (part 6)

Цитата:
Сообщение от Bonux Посмотреть сообщение
Да. Артеас.
writeD(face);
writeC(0x00);
->
writeD(face);
writeC(stathair);

__________________
https://github.com/L2Miko
iquelite на форуме Отправить сообщение для iquelite с помощью MSN
Непрочитано 01.04.2014, 12:58   #290
Аватар для Bonux
Пользователь

По умолчанию Re: Работа над Goddess of Destruction (part 6)

Цитата:
Сообщение от Bacek Посмотреть сообщение
Достали таки ключ =(

п.с вроде это все в шаре было.
да и разбор не совсем верный. На нпцИнфо этот трюк уже не пройдет.
Хз...


Добавлено через 25 минут
To: Bacek:
Свернуть ↑Развернуть ↓

Последний раз редактировалось Bonux; 01.04.2014 в 13:24. Причина: Добавлено сообщение
Bonux вне форума Отправить сообщение для Bonux с помощью ICQ Отправить сообщение для Bonux с помощью Skype™
Закрытая тема

Метки
development, goddess of destruction, l2j, l2p, lineage 2 tauti owned!, tauti, vistall убил 2 часа, атата, гео tauti за картоху, геодата бункера, иди копай, карательный отряд, картоха vs ява, ололо - жесть, технология батарей 0о, у корейцев недержание, шаурмэ фейл


Здесь присутствуют: 4 (пользователей: 0 , гостей: 4)
 
Опции темы

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа над Goddess of Destruction Вопрос Мараторий Lineage II 29 11.06.2013 18:01
Работа над Goddess of Destruction Glory Days Mazaffaka Lineage II 89 07.05.2013 19:10
Lineage 2 Goddess of Destruction chapter 3: Lindvior part 2 - Lord of the West Wind LineOFWar Lineage II 0 09.12.2012 13:46
Работа над Goddess of Destruction (part 2) Ozzy Lineage II 411 22.06.2011 15:58
Адаптируем SQL BimBom Работа со скриптами 9 14.10.2009 15:14


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 16:27. Часовой пояс GMT +3.

Вверх