1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Automatic Updates

Discussion in 'General Discussion' started by Praxiiz, May 26, 2014.

  1. Praxiiz
    Offline

    Praxiiz Active Member

    Joined:
    Oct 22, 2013
    Messages:
    310
    Likes Received:
    87
    What are shards currently doing for auto patching?
     
  2. Enroq
    Offline

    Enroq Active Member

    Joined:
    Apr 20, 2014
    Messages:
    206
    Likes Received:
    34
    Right now the only option is to build your own. There's source code in the description.

     
  3. Hank
    Offline

    Hank Active Member

    Joined:
    Nov 14, 2013
    Messages:
    972
    Likes Received:
    152
    The number of shards currently using an autopatcher is rather slim. Generally shards just distribute a archive of files to their users to download. As far as autopatcher go most of the ones I see are full file replacement.
    I plan on using a delta file patcher or what is called delta updates. It seems like the smartest option, just not always the fastest because it has to check the code first.
    http://en.wikipedia.org/wiki/Delta_update

    Edit:Before someone brings up the subject, I think people relied too much on programs like uogateway and connectuo.
     
    #3 Hank, May 27, 2014
    Last edited: May 27, 2014
  4. Arrrr
    Offline

    Arrrr New Member

    Joined:
    Apr 17, 2014
    Messages:
    19
    Likes Received:
    1
    Last time i played UO, the shard used an old uptader software, i believe it is well known in the community, i have seen it many times in more shards.
     
  5. Praxiiz
    Offline

    Praxiiz Active Member

    Joined:
    Oct 22, 2013
    Messages:
    310
    Likes Received:
    87
    I did some work on a patcher a couple years ago that leverages xdelta. Xdelta is very efficient, but it requires some foreknowledge of the files you are patching to. I was thinking about possibly adding it as a plugin to UltimaLive so that players wouldn't have to run a separate patching utility for every shard they play on. But that got me thinking about a bigger issue.

    Right now the there are a three main methods of connecting to a shard:
    • A player connects with the normal game client and a modified login.cfg
    • A player connects using Razor
    • A player connects with UO Steam (UO Assist)
    None of these methods provide a way to patch without a custom patcher. If it was a plugin for UltimaLive, it would run automatically when a) the client started but before it loaded any files or b) when it connected to a shard and was notified there were updates, but that would require a restart of the client and if the shard decided to switch clients, Razor or UO steam would have to know where the new executable was. Since UltimaLive is invoked down stream from all of the above mentioned methods, updating the client executable would be a problem from the context of using it on more than one shard.

    It would be able to update all of the other client files and keep them separated by shard.

    When UO Gateway and ConnectUO were around and were mainstream, they could provide an end-to-end solution because they were the first thing to be launched. They could patch a client and then launch the client or launch Razor which would then launch the client. The patching could all happen before the client was launched.

    The issue with UO Gateway and Connect UO is that they were too centralized. They wanted to be a listing service as well as a patcher and launcher. When Jeff moved on, he open sourced ConnectUO, but he didn't have rights to release the source for the razor launcher that was used. The launcher wasn't open source and so it saw gaps in its maintenance and for a time it didn't work with the later clients.

    What we need is a decentralized (no shard listings) patcher and launcher that works with Razor, UO Steam, or what ever assistant a player wants. If a player could click on a link from a shards website or from a listing site using something similar to connect UOs protocol (CUO://), then the listing part of the launcher wouldn't be needed.

    The launcher would have to be open source so that it could survive it's developers.
     
    #5 Praxiiz, May 27, 2014
    Last edited: May 27, 2014
    • Agree Agree x 3
    • Winner Winner x 1
    • Informative Informative x 1
  6. Crome969
    Offline

    Crome969 Member

    Joined:
    Jan 9, 2014
    Messages:
    196
    Likes Received:
    20
    A Player also could connect through Stealth-Client :) UOSteam is finished..
     
  7. Praxiiz
    Offline

    Praxiiz Active Member

    Joined:
    Oct 22, 2013
    Messages:
    310
    Likes Received:
    87
    When you say UOSteam is finished you mean development has stopped only. It will still function in its current state and will work with current clients. Future client updates may break compatibility with it, that's all. It is still being used by players mainstream so it still has to be considered.

    As far as the stealth client - how many shards officially support it and would want to provide automatic updates for it?

    Actually this may not matter because the updater could update an entire client before launching it - an updater shouldn't really care what client is being used.
     
    #7 Praxiiz, May 28, 2014
    Last edited: May 28, 2014
  8. Crome969
    Offline

    Crome969 Member

    Joined:
    Jan 9, 2014
    Messages:
    196
    Likes Received:
    20
    UOSteam wont be updated in any further development wich means sooner or later it will break.

    Stealth doesnt care about Custom clients. But we as developer are adding support for shards with custom patchs\packets. A Power not all Clients you counted up support.

    Stealth is against other Clients not much known. It has it weak points here and there but its still a client wich get updates.
     
  9. xG00BERx
    Online

    xG00BERx Active Member

    Joined:
    Jan 6, 2014
    Messages:
    302
    Likes Received:
    35
    What is the chance of getting the Source Code to this? I have never heard of it but once a while ago. Is it open source?
     
  10. m309
    Offline

    Admin Moderator ServUO Developer

    Joined:
    Mar 3, 2013
    Messages:
    1,243
    Likes Received:
    130
    http://stealth.od.ua/Main_Page

    Google is your friend. Play nice with your friend. Ask your friend questions.
     
    • Two Thumbs Up Two Thumbs Up x 1
  11. Crome969
    Offline

    Crome969 Member

    Joined:
    Jan 9, 2014
    Messages:
    196
    Likes Received:
    20
    Its closed source due the decisions of the head developer for now.But as said it closed it also means if we drop this project we may release the source.Actually we are a small developer team containing Vizt0r as head developer, CFA as second head developer, Boydon for python support as languange, myself for community questions and bug testing\fixing.

    Stealth is written in Delphi allows scripting in python and pascal and once we resolved our api issues could be used via wrapper dll in other languanges ( such as c# and others).

    In the past camed a few shards up with custom packets for login and gameplay in order to detect third party clients. We also added those packets for handling so our users could connect through stealth client.On the other side we also have some deals with a few shardowners where we send a special identifying packet to their shard in order to detect the users under the limitation that a shard officially support the usage of the client.

    The reason thats it is pretty unknown is the fact that it was mostly communicated in russian\ukraine and never got that much attention as easyuo or razor or uosteam.
     
  12. xG00BERx
    Online

    xG00BERx Active Member

    Joined:
    Jan 6, 2014
    Messages:
    302
    Likes Received:
    35
    Now that is Information google might not have been able to tell you. I did do some research but I was looking for some "Inside" info, Thanks for this xD
     
  13. Crome969
    Offline

    Crome969 Member

    Joined:
    Jan 9, 2014
    Messages:
    196
    Likes Received:
    20
    Those informations exist, they are just out of our reach. I´m native german with some basic english skills, it tooked me a while to understand what google translator drops me out of translations from russian to english and inside of my brain into german :)
     
    • Two Thumbs Up Two Thumbs Up x 1
  14. Praxiiz
    Offline

    Praxiiz Active Member

    Joined:
    Oct 22, 2013
    Messages:
    310
    Likes Received:
    87
    I've been looking at putting together a launcher - here's a mockup of the UI.

    ai22.photobucket.com_albums_b347_Praxiiz_Screenshot2.png

    Separating the Launcher from any assistants used would allow updating a shard's client files before the assistant runs.

    It could also add a custom URI handler such as UO:// That would effectively let you put an address on your shard's website like
    Code (Text):
    1. UO://myshard.someDomain.com/ClientFiles.zip
    as a link that could be launched directly from the webpage. Shard listing sites could also include the URI on a link to your shard and have your shard launch immediately.

    The Client Update URL would point to where the client files were hosted. This launcher would make no assumptions about what client is being used. It wouldn't even need to be an EA client. The webserver hosting the client would need a xml file that listed files needed for the client as well as versions of those files. That version file would be saved locally and checked against the remote version periodically.
     
    #14 Praxiiz, Jun 3, 2014
    Last edited: Jun 3, 2014
    • Two Thumbs Up Two Thumbs Up x 3
    • Like Like x 1
  15. xG00BERx
    Online

    xG00BERx Active Member

    Joined:
    Jan 6, 2014
    Messages:
    302
    Likes Received:
    35
    That is really cool, I might start working on putting something together as well!
     
  16. Ce Jayce
    Offline

    Ce Jayce Member

    Joined:
    Jan 24, 2014
    Messages:
    140
    Likes Received:
    14

    Aweeesome!
     
Similar Threads: Automatic Updates
Forum Title Date
New Join Forum How to generate monsters automatically when they dead ? Mar 21, 2017
ServUO Discussion where is the automatic message broadcast script Mar 8, 2015
ServUO Discussion So I want to update server with error updates ServUO post Jun 6, 2017
Support Was wondering with new updates how you could enable.. Mar 16, 2016
Announcements Few updates to repo Aug 19, 2015
Announcements I'm back, and time for some updates! Jul 10, 2014
Script Support My Updates Questions, and Oddity Tread Apr 20, 2014