Ideas & Suggestions

The latest version of the UOAI library and all directly related information can be found in this forum.

Re: Ideas & Suggestions

Postby Artaxerxes on Mon Jun 15, 2009 3:45 pm

megamandos wrote:You know, over time I have noticed a few issues caused by the dll "staying inside" of the client and then being "re-injected" upon another application or another instance of the same application being started up. Many times this results in some very odd and almost unexplainable things happening. One of the main issues I have is with the packet filter. If you apply a filter to say the "0xBF" packet (which handles many things) and do some operations and then shut down the program without shutting down the client or removing the filter, then restarting the program and subsequently "re-injecting" the code, the client will still "ignore" the 0xBF packet, and the newly injected code will not recognize that the 0xBF packet is being filtered, and thus will not be able to receive those packets for interpretation, nor will it be able to remove the filter and enable itself to do so.

So, I would suggest that you add code to UOAI for it to be able to unhook/unload itself from the client, either automatically or manually by the parent application upon the parent application closing. I know this may require a lot of work, but it would solve many debugging issues.


The dll is not supposed to be unloaded, since several UOAI instance can be using the same client. Shutting down one UOAI app should not cause another to stop working, right?
That being said, however, the packet-filtering problem you noted shouldn't happen... the packet should remain filtered if your app does not remove the filter, there is no re-injection (at least there shouldn't be)... so the set filters client-side should remain active. However, that should also mean that if you check the filter, after you restarted your app, it should still be set. I'll double-check what's going on there.
Artaxerxes
Site Admin
 
Posts: 530
Joined: Tue Nov 18, 2008 9:51 pm

Re: Ideas & Suggestions

Postby megamandos on Mon Jun 15, 2009 5:25 pm

oh crap, you're right lol
"Those who sacrifice liberty for security, deserve neither." Benjamin Franklin
User avatar
megamandos
Guru
 
Posts: 312
Joined: Thu Jan 29, 2009 5:01 am

Re: Ideas & Suggestions

Postby megamandos on Fri Jun 26, 2009 3:17 am

I was wondering if you could add a boolean value to the player mobile to disable requesting status updates from the server. 'Cause for kph I just cache all the status info and don't use any data from uoai for the player. Or you could implement the method I use. When a program requests the hits of a mobile for the first time, tell the server you have pulled the health bar of that mobile and cache the mana/hits/stamina and status updates (0x11 and 0x77 packets) for that mobile from then on so the next time the program requests hits/stamina/status the data is already stored locally. This would make uoai respond faster and would save a lot of bandwidth. In the mean time I just would like you to add that boolean value.
"Those who sacrifice liberty for security, deserve neither." Benjamin Franklin
User avatar
megamandos
Guru
 
Posts: 312
Joined: Thu Jan 29, 2009 5:01 am

Re: Ideas & Suggestions

Postby Artaxerxes on Fri Jun 26, 2009 7:15 am

megamandos wrote:I was wondering if you could add a boolean value to the player mobile to disable requesting status updates from the server. 'Cause for kph I just cache all the status info and don't use any data from uoai for the player. Or you could implement the method I use. When a program requests the hits of a mobile for the first time, tell the server you have pulled the health bar of that mobile and cache the mana/hits/stamina and status updates (0x11 and 0x77 packets) for that mobile from then on so the next time the program requests hits/stamina/status the data is already stored locally. This would make uoai respond faster and would save a lot of bandwidth. In the mean time I just would like you to add that boolean value.


I was planning to implement similar status-info caching already, but i didn't get to that yet. Since i am changing my main com-code and rebuilding UOAI code from there, i'll only get to such changes once the com-part is finished (it is as good as finished, but i probably wont be continuing until after 10th of july as i said before).
The boolean wouldn't be really usefull for most other people I guess, so not sure if it makes sense to add it to UOAI. Also the bandwidth-waste is rather a bug, so it just needs to be fixed, without requiring you to disable the feature completely.
Some general configuration object that allows you to tune UOAIs performance and to help prevent it eating bandwidth (like it seems to do with the current status-info-reading implementation) might be added though.
Artaxerxes
Site Admin
 
Posts: 530
Joined: Tue Nov 18, 2008 9:51 pm

Previous

Return to UOAI Developers Forum

Who is online

Users browsing this forum: No registered users and 1 guest

cron