PDA

Просмотр полной версии : OutGame управление чаром.


DrFall
07.01.2010, 19:19
Суть такова. Для того, чтобы рулить чарами не загружая при этом окошки в скрипты вставляю:
NOCLOSECLIENTAFTERSERVERDISCONNECT;
NOCLOSESERVERAFTERCLIENTDISCONNECT;
Вставляю сие дело тупо в начало главного цикла. Чар остается в игре, с этим все впорядке. Проблема в том, что после того, как я выгружаю клиент, скрипт не отправляет пакеты. Принимать принемает, в логе видно как бегут принятые пакеты, а вот слать не хочет. В пнх, в окошке чара, на вкладке "Посылка", кнопки просто неактивные, т.е. ничего даже нажать нельзя. Пробовал на нескольких серверах с разными сборками, но всегда напарывался именно на эту проблему. Поиском пользовался. Есть решение?

alexteam
07.01.2010, 19:27
http://coderx.ru/showthread.php?t=2293&page=3

DrFall
07.01.2010, 19:41
Так там ведь не про то. Во-первых, у меня проблем с сокетами не возникает, пнх (v3.5.14.124 есличо) не ругается. Во-вторых:
SendToClient/SendToClientEx нельзя если соответствующий клиент дисконнектнут от пх.
SendToServer/SendToServerEx нельзя если пх отключен от сервера игры.

//вызывается при приходе каждого пакета если скрипт включен
begin
NOCLOSECLIENTAFTERSERVERDISCONNECT;
NOCLOSESERVERAFTERCLIENTDISCONNECT;
if (FromServer) and (ConnectName = PlayerChar) then
begin
if (pck[1] = #$70) then
begin
buf := HStr('55 01 00 00 00');
SendToServerEx(PlayerChar);
end;
Связка с сервером есть, т.к. пакет только что от него прилетел. Но обратно на сервер ничего не шлет. Т.е. я в окне логов вижу как пакет приходит, в окне со скриптами вижу кусок который выше, а реакции никакой не вижу.

alexteam
07.01.2010, 19:51
мде, 124.. это...стяни последнюю версию ибо черт его знает что в я в сокетном енджине менял после 124го билда.

DrFall
07.01.2010, 20:26
Стянул последнюю. С ней не заходит (кто бы мог подумать :D), настройки выставил все так же как и в прошлой (которая 124), newxor взял от нее, вот лог:
07.01.2010 19:14:32 Library loaded F:\Program Files\l2phx.3.5.33.164\inject.dll
07.01.2010 19:14:32 Library loaded F:\Program Files\l2phx.3.5.33.164\newxor.dll
07.01.2010 19:14:33 Startup of L2ph v3.5.33.164
07.01.2010 19:14:33 Local server registered on 7788
07.01.2010 19:14:35 Patched l2.exe (3640)
07.01.2010 19:14:51 (Inject.dll) connect on 89.108.126.123:2106 ignored
07.01.2010 19:14:53 (Inject.dll) connect on 89.108.126.123:7777 intercepted
07.01.2010 19:14:53 ServerListen: New connection found.
07.01.2010 19:14:53 Tunel ($60528328) created
07.01.2010 19:14:53 Tunel ($60528328) runned for reading from socket # 256
07.01.2010 19:14:54 Tunel ($60528328), Server socket # 256 / Client socket # 292, Connect established with 89.108.126.123:7777
07.01.2010 19:14:54 Tunel ($60528328) Disconnect from client
07.01.2010 19:14:54 Tunel ($60528328) Disconnect from server
07.01.2010 19:14:54 Tunel ($60528328) Destroyed

Выставил галки на Ignore directions Client -> Server и Server -> Client. В таком раскладе зашло, но трафик не видно, хотя тунель какой-то все же создался. Имя соединения тоже не зацепило, вместо него так и остается proxy#284. Порты проверил, выставлено также как и в моей 124, но с ней заходит на ура, а с 5.33.164, нифига.
Еще попробовал прикрутить старую inject.dll, с ней вообще никакой реакции, но это уже не важно, я думаю.

alexteam
07.01.2010, 20:29
настрой абсолютно так же за исключением использования невхора как такового.
зы. настройки языка там тоже сменить можно...

DrFall
07.01.2010, 20:38
настрой абсолютно так же за исключением использования невхора как такового.
зы. настройки языка там тоже сменить можно...

Зашло, не знал, что newxor теперь по дефолту не нужен. И скрипты заработали, теперь все за****ь, спасибо за помощь.

alexteam
07.01.2010, 20:41
он по дефолту и не шел в дистрибутиве... как бы..