Yoko

All sides of Injection
It is currently 2017-10-19 09:17:34

All times are UTC+02:00




Post new topic  Reply to topic  [ 27 posts ]  Go to page 1 2 Next
Author Message
PostPosted: 2014-10-08 16:29:22 
Offline

Joined: 2014-08-20 11:50:46
Posts: 14
Hallo,

our shard (0.56c-Nightly) has migrated and forced us to use client 7.0.35.6. Is there some possibility to run yoko with this client? Thanks for replies.


Top
   
PostPosted: 2014-10-08 17:28:19 
Offline

Joined: 2011-06-11 19:54:23
Posts: 823
If not crypted.


Top
   
PostPosted: 2014-10-09 00:38:04 
Offline

Joined: 2014-10-08 22:28:13
Posts: 6
Hello.

I have a same problem, but I can log in with this client (7.0.35.6) however after few steps game totaly freez.

Its any chance to decrypt thit version or modify some Yoko files?

Thank before for ideas! :idea:

W.


Top
   
PostPosted: 2014-10-09 10:28:23 
Offline

Joined: 2014-08-20 11:50:46
Posts: 14
Yes my client freezes too after few steps without encryption.


Top
   
PostPosted: 2014-10-09 10:40:35 
Offline

Joined: 2011-06-11 19:54:23
Posts: 823
Write in p.m. link on server (or link on distributive for this client and loginserver), test acc


Top
   
PostPosted: 2014-10-09 13:01:58 
Offline

Joined: 2014-10-08 20:28:21
Posts: 1
Hypermangan wrote:
Yes my client freezes too after few steps without encryption.

I use this topic.
Me too. I have same problem.

I see Yoko have supports up to version 7.0.29 client. For the newest client was changed packets, files from 7.24 version? Yoko will also support new clients (if yoko support 7.0.29)? Is it planned? Thanks for replies.
And thanks you for good job on Yoko. Last year changes are amazing.


Last edited by Xavirian on 2014-10-09 17:52:21, edited 1 time in total.

Top
   
PostPosted: 2014-10-09 13:36:20 
Offline

Joined: 2014-10-08 22:28:13
Posts: 6
Juicy Fruit wrote:
Write in p.m. link on server (or link on distributive for this client and loginserver), test acc


I wrote you an email. Thanks before...


Top
   
PostPosted: 2014-10-09 19:38:41 
Offline

Joined: 2011-06-11 19:54:23
Posts: 823
http://rghost.ru/58436215
This injection.dll version works stably on Kelevar shard.


Top
   
PostPosted: 2014-10-09 21:11:21 
Offline

Joined: 2014-10-08 22:28:13
Posts: 6
Thanks man, great work! But I am interesting, where is the problem?


Top
   
PostPosted: 2014-10-09 22:06:48 
Offline

Joined: 2011-06-11 19:54:23
Posts: 823
One of new packet it was not correctly parsed.


Top
   
PostPosted: 2014-10-09 23:02:10 
Offline

Joined: 2014-10-08 22:28:13
Posts: 6
I think, is there a little problem. It seem Injection with this client dont know item Type. For example when I use a easy scp with UO.BandageSelf() I´ve got a system message No bandages found. When I try it with UO.UseType("0x0E21") I´ve got basically the same message No item found. I´ve tried info command and Type is still the same.

Thanks before for reply!

W.


Top
   
PostPosted: 2014-10-09 23:22:57 
Offline

Joined: 2014-07-20 22:43:29
Posts: 6
problem with items I with advice from friend this. (Packet 0xF3)
Code:
private static CallbackResult OnItemDetailsNew(byte[] data, CallbackResult prevState)
        {
            lock (World.SyncRoot)
            {
                PacketReader reader = new PacketReader(data);

                byte id = reader.ReadByte();
                if (id != 0xF3) throw new Exception("Invalid packet passed to OnItemDetailsNew.");

                ushort osiShit = reader.ReadUInt16();
                byte dataType = reader.ReadByte();
                uint serial = reader.ReadUInt32();
                bool isNew = false;
                RealItem item = World.FindRealItem(serial);
                ushort graphic = reader.ReadUInt16();
                byte facing = reader.ReadByte();
                ushort amount = reader.ReadUInt16();
                ushort amount2 = reader.ReadUInt16();
                ushort x = reader.ReadUInt16();
                ushort y = reader.ReadUInt16();
                sbyte z = reader.ReadSByte();
                byte lightLevel = reader.ReadByte();
                ushort hue = reader.ReadUInt16();
                byte flag = reader.ReadByte();
                ushort access = reader.ReadUInt16();
                if (item == null)
                {
                    item = new RealItem(serial);
                    item.Graphic = graphic;
                    item.X = x;
                    item.Y = y;
                    item.Z = z;
                    item.Flags = flag;
                    item.Color = hue;
                    item.Amount = amount;
                    World.Add(item);
                    isNew = true;
                }
                item.Detach();
#if WORLDDEBUG
                Trace.WriteLine(String.Format("Item updated ({0}).", item.Description), "World");
#endif
                if (isNew)
                    itemAdded.InvokeAsync(null, new ObjectChangedEventArgs(serial, ObjectChangeType.NewItem));

                ObjectChanged(serial, ObjectChangeType.ItemUpdated);
                itemUpdated.InvokeAsync(null, new ObjectChangedEventArgs(item.Serial, ObjectChangeType.ItemUpdated));

                return CallbackResult.Normal;
            }
        }


old items (Packet 0x1A)
Code:
private static CallbackResult OnItemDetails(byte[] data, CallbackResult prevResult)
        {
            lock (World.SyncRoot) {
                PacketReader reader = new PacketReader(data);

                byte id = reader.ReadByte();
                if (id != 0x1A) throw new Exception("Invalid packet passed to OnItemDetails.");

                ushort blockSize = reader.ReadUInt16();

                if (blockSize != reader.Length)
                    return CallbackResult.Normal;

                uint serial = reader.ReadUInt32();

                bool isNew = false;
                RealItem item = World.FindRealItem(serial);
                if (item == null) {
                    item = new RealItem(serial);
                    World.Add(item);
                    isNew = true;
                }

                ushort dispId = reader.ReadUInt16();

                if ((serial & 0x80000000) != 0) {
                    item.Amount = reader.ReadUInt16();
                }

                if ((dispId & 0x8000) != 0) {
                    dispId += reader.ReadByte();
                }

                item.Graphic = (ushort)(dispId & 0x7FFF);

                ushort x = reader.ReadUInt16();
                item.X = (ushort)(x & 0x7FFF);

                ushort y = reader.ReadUInt16();
                item.Y = (ushort)(y & 0x3FFF);

                if ((x & 0x8000) != 0) {
                    byte direction = reader.ReadByte();
                }

                item.Z = reader.ReadSByte();

                if ((y & 0x8000) != 0) {
                    item.Color = reader.ReadUInt16();
                }

                if ((y & 0x4000) != 0) {
                    item.Flags = reader.ReadByte();
                }

                item.Detach();

#if WORLDDEBUG
                Trace.WriteLine(String.Format("Item updated ({0}).", item.Description), "World");
#endif
                if (isNew)
                    itemAdded.InvokeAsync(null, new ObjectChangedEventArgs(serial, ObjectChangeType.NewItem));

                ObjectChanged(serial, ObjectChangeType.ItemUpdated);
                itemUpdated.InvokeAsync(null, new ObjectChangedEventArgs(item.Serial, ObjectChangeType.ItemUpdated));

                return CallbackResult.Normal;
            }
        }


Look at it ... in 0x1A load item only with ID but in new packet (I don't know why) I must load almost whole packet and insert data to item before than add dynamic list of item.
hope it will help you, if not write me couse i had this problem yesterday and solved it so i can now log on kelevar with different external program i´m developing.

Edit : You are edited tiledata for new UO if injection working with?


Last edited by Venushja on 2014-10-09 23:52:33, edited 1 time in total.

Top
   
PostPosted: 2014-10-09 23:52:10 
Offline

Joined: 2014-10-08 22:28:13
Posts: 6
Máš ode mě PM. / You´ve got a PM from me. :)


Top
   
PostPosted: 2014-10-10 01:57:39 
Offline

Joined: 2014-10-08 22:28:13
Posts: 6
Still the same problem. From Venushja I received another version of Injection aka Injection_25_01_2014, I have a Injection_16_03_2014 version. When I try to use the older version with new injection.dll file posted here, the script.dll file didnt working. When i try script.dll file from newest version, problem with Type is back. :(

Thanks for your help!

W.


Top
   
PostPosted: 2014-10-10 06:37:30 
Offline

Joined: 2014-07-20 22:43:29
Posts: 6
Yeah I login 2 server with injection and I didn't have problem with type but tabpage Script not working (empty field) ...


Top
   
PostPosted: 2014-10-10 08:20:25 
Offline

Joined: 2011-06-11 19:54:23
Posts: 823
Track world items checkbox must be checked for correctly works of find commands.

Script.dll linked to injection.dll since last release of injection, because there are some specific features.


Top
   
PostPosted: 2014-10-10 08:51:42 
Offline

Joined: 2014-07-20 22:43:29
Posts: 6
But why I have empty field tabpage of script? And you release source code of new Injection?


Top
   
PostPosted: 2014-10-10 09:35:36 
Offline

Joined: 2014-08-20 11:50:46
Posts: 14
I used Venushja's injection.dll with newest version of injection (16_3_2014) and it runs. I checked Track world items and everything seems to be ok. I have no problem with use of types jet but I go test anymore. Thank you very much. I will report then if I find some problem.


Top
   
PostPosted: 2014-10-10 09:41:52 
Offline

Joined: 2011-06-11 19:54:23
Posts: 823
If you use old version of injection.dll – take the proper version of script.dll from archive with used injection.

You want inj source code?
You known C++? Injection.dll and Launcher written in RAD Studio 2010, script.dll – in C++ Builder 6.0 with synhl component for colored editor.


Top
   
PostPosted: 2014-10-10 09:44:42 
Offline

Joined: 2011-06-11 19:54:23
Posts: 823
Hypermangan wrote:
I used Venushja's injection.dll with newest version of injection (16_3_2014) and it runs. I checked Track world items and everything seems to be ok. I have no problem with use of types jet but I go test anymore. Thank you very much. I will report then if I find some problem.

^^
And Clear Memory checkbox must be unchecked. If checked – items (in containers) in inj memory may be lost.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 27 posts ]  Go to page 1 2 Next

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited