Stealth Client Forum

Альтернативный клиент Ultima Online
Текущее время: 18.12.2018 16:44

Часовой пояс: UTC + 2 часа




Начать новую тему Ответить на тему  [ Сообщений: 149 ]  На страницу Пред.  1 ... 6, 7, 8, 9, 10  След.
Автор Сообщение
СообщениеДобавлено: 09.02.2013 20:05 
Не в сети Expert
Expert

Зарегистрирован: 28.04.2011 12:05
Сообщения: 505
один фиг ты полез уже с таргетами функции делать,это посложнее будет чем, если ты добавишь стандартное окно да/нет. ну да/нет еще можно заменить винапишным окном. а вот например чтобы в игре над угодными мне таргетами рисовались стрелочки или этой же стрелочкой рисовался маршрут к трупу. Это уже не забабахать через винапи...хотя и так можно , но блин есть же стрелка в уо клиенте чоб ею не попользоваться. тем более когда -то было что когда умираешь прям клиент рисовал стрелочкой дорогу к трупу. Добавь стрелочку плиииз. к трупу я не буду рисовать дорожки т.к. это надо иметь еще один скрипт постоянно за этим следящий(проще сразу в стелс встроить и галочку на вкл этой функции прикрутить)...хотя и до этого если припрет дойду. А вот метки вешать или дорогу указывать себе к чему нить другому это было бы здорово.

_________________
--->>>ПОИСК ПО ФОРУМУ, НАЧНИ С НЕГО!!!<<<---
--->>>Search the forum, start with him!!!<<<---
95% Ваших вопросов уже кем-то написаны и решены.


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 09.02.2013 20:39 
Не в сети Developer
Developer

Зарегистрирован: 24.03.2005 17:05
Сообщения: 3774
метки легко. потом. когда-нить.
а гампы не буду добавлять принципиально.

_________________
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 10.02.2013 13:56 
Не в сети Novice
Novice

Зарегистрирован: 28.10.2008 20:44
Сообщения: 97
гмгм.
откуда клиент берет координаты трупа? Навняка он запоминает место смерти, так вчем пробелма тоже самое сделать скриптом, и далее ГУИ отрисовать окошко в котором грубо говоря боттонами нарисоваьт типа
ооо
о о
ооо
и нужное напрвление утопить боттон
Какую именно - высчитать разницей координат.


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 18.03.2013 14:06 
Не в сети

Зарегистрирован: 05.03.2013 17:27
Сообщения: 5
Как сохранять-загружать конфиг из закладки Hotkeys? при перезаходе все пропадает.


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 19.03.2013 11:24 
Не в сети Developer
Developer

Зарегистрирован: 24.03.2005 17:05
Сообщения: 3774
в 4й версии - никак

_________________
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 19.03.2013 14:09 
Не в сети

Зарегистрирован: 05.03.2013 17:27
Сообщения: 5
Vizit0r писал(а):
в 4й версии - никак

Ок придется пилотом вбивать.

Еще момент: есть рабочий lasttarget но он сбивается, после каста в землю стенок, то есть не срабатывает такое:
Код:
  canceltarget; WaitTargetObject(lasttarget);
  UseObject(FindItem);

Приходится наворачивать клубок:
Код:
   List := TStringList.Create;
   if FindType(lastt,Ground) > 0 then begin
    GetFindedList(List);
    for i := 0 to List.Count-1 do
    begin
     if GetName(StrToInt('$'+List.Strings[i]))=lastn then begin
      CancelTarget; UseType(tt,cc); WaitTargetObject(StrToInt('$'+List.Strings[i]));
     end;
    end;
    List.Free;
   end;


Еще момент 2: не нашел как послать клиенту таргет который кидается в тайл что бы задать XY. Из той же темы, а можно узнать XY тайла под курсором ничего не кликая?

Еще момент 3: стандартный TargetNext


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 20.03.2013 12:17 
Не в сети Developer
Developer

Зарегистрирован: 24.03.2005 17:05
Сообщения: 3774
2 и 3 моменты уже работают в 5м стелсе.
по поводу 1 - lasttarget в 5й версии не сбивается, если тайл (или обьект) = 0. X Y Z сбиваются в любом случае.

_________________
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 21.03.2013 1:51 
Не в сети

Зарегистрирован: 05.03.2013 17:27
Сообщения: 5
Vizit0r писал(а):
2 и 3 моменты уже работают в 5м стелсе.
по поводу 1 - lasttarget в 5й версии не сбивается, если тайл (или обьект) = 0. X Y Z сбиваются в любом случае.

Когда можно будет попробовать 5ю версию?

Замечен баг в Hotkeys: при бинде на колесо мышки вверх, использование колеса вниз многократно повторяет бинд от колеса вверх, при том что на колесо вниз ничего не забито.


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 21.03.2013 10:13 
Не в сети Developer
Developer

Зарегистрирован: 24.03.2005 17:05
Сообщения: 3774
в асе - в любое время.
времени доделать совершенно нет, иначе бы давно в релиз пошла уже.

_________________
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 29.06.2013 17:13 
Не в сети

Зарегистрирован: 29.06.2013 16:42
Сообщения: 1
Авто-одевалка не одевает тотем (SetDress DressSavedSet). Было б хорошо если стелс куда-то запоминал в чем одет чар, так что б после перезагрузки или краша стелса можно было чара одеть функцией DressSavedSet; Фукция DressSavedSet снимала конфликтные вещи и одевала вещь из сохраненного списка. ну или на крайний случай параметр типа UnequipConflictItem если True, снимает, если False - нет.

Так же стелс грузит полностью ядро процессора, когда оооочень много трупов или предметов вокруг, например когда убит чемп. Ну и уже не терпиться поюзать 5ую версию стелса =)


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 29.06.2013 21:05 
Не в сети Developer
Developer

Зарегистрирован: 24.03.2005 17:05
Сообщения: 3774
не. сохранять стелс никуда сет не будет. там своей процедуры по перебору всех слоев и сохранению их в пару десятков строк.
ну а с кофликтными вещами - это вообще фантастика.

а 6й стелс - тест открыт, велком в асю.

_________________
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 18.09.2013 20:47 
Не в сети Novice
Novice

Зарегистрирован: 08.07.2008 17:40
Сообщения: 87
Не определяются координаты персонажа на корабле.

В последних версиях RunUO, в частности, были изменены корабли: при движении корабля посылается пакет F6, а для персонажей и предметов пакет F7. В следствии этого в Stealth Client'е перестали определятся координаты персонажа находящегося на корабле, да и самого корабля тоже.

Описание пакетов взяты у Wyatt'а (http://ruosi.org/packetguide/index.xml):
Код:
F3 - New World Object Packet
New World Object Packet.
26 bytes
from server
byte   ID (F3)
word   0x01
byte   Data Type (0x00 = use TileData, 0x01 = use BodyData, 0x02 = use MultiData)
dword   Serial
word   Object ID
byte   Object ID Offset
word   Amount
word   Amount
word   X
word   Y
sbyte   Z
byte   Light Level (TileData.Quality or 0 for Mobiles)
word   Hue
byte   Flag (0x20 = Show Properties; 0x80 = Hidden)
word   Access (for items only, 0x01 = Player Item, 0x00 = World Item)
First appearance in UO:SA clients, replaces 0x1A packet.

F6 - Boat Moving Packet
Boat Moving Packet.
from server
byte   ID (F6)
word   Packet Size
dword   Boat Serial
byte   Boat Speed (0x01 = one tile, 0x02 = rowboat, 0x03 = slow, 0x04 = fast)
byte   Moving Direction
byte   Facing Direction
word   Boat X
word   Boat Y
word   Boat Z
word   Boat Objects Count
loop   Boat Objects
dword   Boat Object Serial
word   Boat Object X
word   Boat Object Y
word   Boat Object Z
endloop   Boat Objects
Was added in UO:HS clients. Moving Direction = Facing Direction + Command Direction.

F7 - Packet Container Packet
Packet Container Packet.
from server
byte   ID (F7)
word   Packet Size
word   Inner Packets Count
loop   Inner Packets
byte[*]   Inner Packet structure
endloop   Inner Packets
Was added in UO:HS clients. Currently uses for multis, contains F3 packets.


Кусок кода BaseBoat.cs RunUO:
Код:
#region High Seas

public override bool AllowsRelativeDrop
{
   get { return true; }
}

/*
 * OSI sends the 0xF7 packet instead, holding 0xF3 packets
 * for every entity on the boat. Though, the regular 0xF3
 * packets are still being sent as well as entities come
 * into sight. Do we really need it?
 */
/*
protected override Packet GetWorldPacketFor( NetState state )
{
   if ( NewBoatMovement && state.HighSeas )
      return new DisplayBoatHS( state.Mobile, this );
   else
      return base.GetWorldPacketFor( state );
}
*/

public sealed class MoveBoatHS : Packet
{
   public MoveBoatHS( Mobile beholder, BaseBoat boat, Direction d, int speed, List<IEntity> ents, int xOffset, int yOffset )
      : base( 0xF6 )
   {
      EnsureCapacity( 3 + 15 + ents.Count * 10 );

      m_Stream.Write( (int) boat.Serial );
      m_Stream.Write( (byte) speed );
      m_Stream.Write( (byte) d );
      m_Stream.Write( (byte) boat.Facing );
      m_Stream.Write( (short) ( boat.X + xOffset ) );
      m_Stream.Write( (short) ( boat.Y + yOffset ) );
      m_Stream.Write( (short) boat.Z );
      m_Stream.Write( (short) 0 ); // count placeholder

      int count = 0;

      foreach ( IEntity ent in ents )
      {
         if ( !beholder.CanSee( ent ) )
            continue;

         m_Stream.Write( (int) ent.Serial );
         m_Stream.Write( (short) ( ent.X + xOffset ) );
         m_Stream.Write( (short) ( ent.Y + yOffset ) );
         m_Stream.Write( (short) ent.Z );
         ++count;
      }

      m_Stream.Seek( 16, System.IO.SeekOrigin.Begin );
      m_Stream.Write( (short) count );
   }
}

public sealed class DisplayBoatHS : Packet
{
   public DisplayBoatHS( Mobile beholder, BaseBoat boat )
      : base( 0xF7 )
   {
      List<IEntity> ents = boat.GetMovingEntities();

      SafeAdd( boat.TillerMan, ents );
      SafeAdd( boat.Hold, ents );
      SafeAdd( boat.PPlank, ents );
      SafeAdd( boat.SPlank, ents );

      ents.Add( boat );

      EnsureCapacity( 3 + 2 + ents.Count * 26 );

      m_Stream.Write( (short) 0 ); // count placeholder

      int count = 0;

      foreach ( IEntity ent in ents )
      {
         if ( !beholder.CanSee( ent ) )
            continue;

         // Embedded WorldItemHS packets
         m_Stream.Write( (byte) 0xF3 );
         m_Stream.Write( (short) 0x1 );

         if ( ent is BaseMulti )
         {
            BaseMulti bm = (BaseMulti)ent;

            m_Stream.Write( (byte) 0x02 );
            m_Stream.Write( (int) bm.Serial );
            // TODO: Mask no longer needed, merge with Item case?
            m_Stream.Write( (ushort) ( bm.ItemID & 0x3FFF ) );
            m_Stream.Write( (byte) 0 );

            m_Stream.Write( (short) bm.Amount );
            m_Stream.Write( (short) bm.Amount );

            m_Stream.Write( (short) ( bm.X & 0x7FFF ) );
            m_Stream.Write( (short) ( bm.Y & 0x3FFF ) );
            m_Stream.Write( (sbyte) bm.Z );

            m_Stream.Write( (byte) bm.Light );
            m_Stream.Write( (short) bm.Hue );
            m_Stream.Write( (byte) bm.GetPacketFlags() );
         }
         else if ( ent is Mobile )
         {
            Mobile m = (Mobile)ent;

            m_Stream.Write( (byte) 0x01 );
            m_Stream.Write( (int) m.Serial );
            m_Stream.Write( (short) m.Body );
            m_Stream.Write( (byte) 0 );

            m_Stream.Write( (short) 1 );
            m_Stream.Write( (short) 1 );

            m_Stream.Write( (short) ( m.X & 0x7FFF ) );
            m_Stream.Write( (short) ( m.Y & 0x3FFF ) );
            m_Stream.Write( (sbyte) m.Z );

            m_Stream.Write( (byte) m.Direction );
            m_Stream.Write( (short) m.Hue );
            m_Stream.Write( (byte) m.GetPacketFlags() );
         }
         else if ( ent is Item )
         {
            Item item = (Item)ent;

            m_Stream.Write( (byte) 0x00 );
            m_Stream.Write( (int) item.Serial );
            m_Stream.Write( (ushort) ( item.ItemID & 0xFFFF ) );
            m_Stream.Write( (byte) 0 );

            m_Stream.Write( (short) item.Amount );
            m_Stream.Write( (short) item.Amount );

            m_Stream.Write( (short) ( item.X & 0x7FFF ) );
            m_Stream.Write( (short) ( item.Y & 0x3FFF ) );
            m_Stream.Write( (sbyte) item.Z );

            m_Stream.Write( (byte) item.Light );
            m_Stream.Write( (short) item.Hue );
            m_Stream.Write( (byte) item.GetPacketFlags() );
         }
         m_Stream.Write( (short) 0x00 );
         ++count;
      }
      m_Stream.Seek( 3, System.IO.SeekOrigin.Begin );
      m_Stream.Write( (short) count );
   }
}

#endregion

Не судите строго, если вам известно об описанной проблеме, и мои исследования были не верны, так как я не программист.
Использую Stealth Client версии 4.3.6. Очень жду новой версии.


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 19.09.2013 1:15 
Не в сети Developer
Developer

Зарегистрирован: 24.03.2005 17:05
Сообщения: 3774
F7 и F3 работает с момента выхода HS. F6 мне не очень нравится, поэтому я им не занимался. Может когда совсем нечего будет делать - введу, посмотрим. Да и тестить негде особо.

P.S. Release Candidate через пару часов выложу в открытый доступ, как допишу описание всех изменений.

_________________
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 19.09.2013 12:13 
Не в сети Developer
Developer

Зарегистрирован: 24.03.2005 17:05
Сообщения: 3774
баги заели, будет сегодня ночью :)

_________________
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".


Вернуться к началу
 Профиль  
Ответить с цитатой  
СообщениеДобавлено: 19.09.2013 14:16 
Не в сети Expert
Expert

Зарегистрирован: 28.04.2011 12:05
Сообщения: 505
буду обламывать как могу выход релиза постами о багах))))))))))))

_________________
--->>>ПОИСК ПО ФОРУМУ, НАЧНИ С НЕГО!!!<<<---
--->>>Search the forum, start with him!!!<<<---
95% Ваших вопросов уже кем-то написаны и решены.


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 149 ]  На страницу Пред.  1 ... 6, 7, 8, 9, 10  След.

Часовой пояс: UTC + 2 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


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

Найти:
Перейти:  


Тюнинг и аксессуары. Тюнинг внедорожников: магазин 4х4 в Одессе. Интернет магазин "AMAX".
Также, на правах рекламы: школьный сайт: school-work.net и еще один: https://www.youtube.com/channel/UCFSPHKHjP22tEl8Rjcst9Fw.


Рейтинг@Mail.ru
Powered by phpBB® Forum Software © phpBB Group