Poll: Server ability : URL forwarding of MISSION content ?

Be advised that this is a public poll: other users can see the choice(s) you selected.

Page 1 of 11 12345 ... LastLast
Results 1 to 10 of 106

  Click here to go to the first Developer post in this thread.  

Thread: Server ability : URL forwarding of MISSION content

  1.   Click here to go to the next Developer post in this thread.   #1
    I'm creating this thread with poll to obtain some feedback on one 'possible' feature for ArmA 2 (with very rare chance this to appear also for ArmA 1) server / client.

    Original thread with POLL was here : http://www.flashpoint1985.com/cgi-bi...T;f=57;t=77288

    The feature is option for server to define file source forward for MP missions content (HTTP) and client's ability to download that content then from defined source.

    Description:
    The Arma 1 (and most likely 2 too) engine could easily support this feature ,
    as MISSION related content is possible to load after engine start (contrary to map or other type of game changeable content like models).
    So technically this feature would require that instead of downloading MISSION file from ArmA *1/2 game server directly
    there will be inserted of small&simple portion of code telling game to download file from server defined URL location (if enabled server side).
    The routine about file placement and check if present/loadable etc. is then same/similar to already existing part of code.

    i split the poll into these sections tho i would like users to post with comments why they for or against this useful feature:

    1. server admin/owner/donator + support this feature
    2. just user + supporting this feature
    3. anyone against this feature

    thanks everyone for taking part

    p.s. once again just in other words for these who not understand above

    actual situation :

    1. client w/o mission establish connection with server
    2. mission file is downloaded from server using server-client connection
    3. when mission file is downloaded and not corrupt then client loads it into memory and enters missions

    positivies:
    + already done

    negatives:
    - will use bandwidth block of game server for mission distribution instead of game traffic
    - try imagine popular public server with 1k Unique Users / week download several 5MB missions ...ouch

    proposed situation:

    1. client w/o mission establish connection with server
    2. server tells client there is possible download location at http://www.somewebsite.net/folder/arma2mission.pbo (this part must be coded in)
    3. clients starts wget on background and waits for error code or timeout on error code (this part must be coded in)
    4. if error code is success then file is placed into mission directory like usual and loaded as usual (code already present ingame)
    5. if file not match (already code present ingame) or if error code is fail / timeout then client may fall-back to try download from server using already existing method (this part must be coded in with reusing already present code)
    6. when mission file is downloaded and not corrupt then client loads it into memory and enters mission


    *not need to use external opensource wget and use own portion of code, it was just example

    negatives:
    - some code must be added but not much (as most of code needed is already in)

    positives:
    + offloading the mission download to different source than gameserver

    ...

  2. #2
    What is/are the benefit(s)?

    I do imagine at least one, yet please go on.

  3.   Click here to go to the next Developer post in this thread.   #3
    BI Developer Dwarden's Avatar
    Join Date
    Mar 5 2002
    Location
    Czech Republic
    Posts
    7,797
    Author of the Thread
    erm i though the benefits are clear ...

    actual situation w/o this feature mean that any player w/o the mission in question is downloading it from the server:

    which means :
    - higher bw demand on server resulting to e.g. higher cost (bw block limits)
    - less bw for players already on server (possible issues with quality of gameplay)

    today most of modern MP oriented games and engines already offer this (e.g. engines from trio Epic, Valve, ID) for map/mission content

    the problem turns worse in moment You use 'big/huge' mission and run popular server (100s to 1000s unique players)

    with the feature you would then:

    + define mission source URL independently on the server location
    + save your server bw block
    + increase the quality of gameplay on server

    in short instead of 'wasting' precious bandwidth on your ***server (not everyone have dedicated server line beyond T2) You can utilize some ultra fast public mirror hosting mission file(s)




  4. #4
    while i agree that BI is engine is lacking so many aspects most
    other mp engines have, i doubt whether the effort for this would
    be well spent.

    the engine needs to handle several things for his or you make it
    very crude (unique identification, error handling, fallback, etc).

    instead the should focus on proper configuration, addon download
    (game restart is ok), more stable / resistant to errors, optimization,
    linux server etc etc




  5.   Click here to go to the next Developer post in this thread.   #5
    BI Developer Dwarden's Avatar
    Join Date
    Mar 5 2002
    Location
    Czech Republic
    Posts
    7,797
    Author of the Thread
    there is no need to complicate things and that's so neat on this feature

    game server:

    add query string with Mission_downloadable == "true"/"false"

    add query string with Mission_download_URL == "*"

    game client:

    if client sees true for Mission_downloadable
    then client uses Mission_download_URL and auto adds "http://" to URL defined
    then client executes e.g. wget to download URL+mission filename (+ needed switches)
    then client waits till error returned or file downloaded or other error returns or else timeout
    then client tries load mission like now (same part of code used for actual download from server)

    yet if any of above fails client can easily fallback to already existing direct download from game server code
    also client can use file operations code already present

    that's all ... simpler it can't be

    p.s. don't mismatch this with any addon content ...
    that's completely different and unrelevant unrelated to this feature




  6. #6
    Hi all

    I think Q has completely misunderstood and indeed obfuscating the simplicity and the importance of this proposal for Join In Progress (JIP) And how many ways this will improve ArmA.

    JIP Lag and Mission load speeds
    Basically this addresses Mission load speeds and JIP Lag.

    It does so in three aspects.

    1) When you first play a mission or when a mission is updated, you all have to download the mission. If it is one of the big servers say 60 plus players it causes loads of problems: It can take up to 10 minutes, people get bored, there are dropped connections adding to the load if they half way through a download.

    Downloading the mission in advance removes this problem.
    Torrents might be a useful additional location for missions then just put up a server index page for the torrents. That way a clan can trickle their servers mission and their addons, no need for emails to tell people to update addons either, it all becomes automated.

    2) JIP lag for existing clients/players on a server when some one joins a server. The server has to slow to send the whole mission file which with sound and even video files to every new client. We have all experienced the dreaded Lag in a helo coming into the Hot LZ where we all crash and do not even know why, as a new player from a different continent joins with a mission they have never downloaded before (it is always polite ask on Team Speak if you can JIP in) JIP lag for a pilot is a killer.

    Downloading the mission in advance removes this problem because all downloads are done separate from the server, mission load JIP Lag is removed, synchro Lag still exists but more on that later.


    3) JIP lag for a new client/player is removed, meaning you join the game faster. Synchro Lag still exists but more on that later.

    Synchro Lag
    This is outside what Dwarden is proposing. This mostly affects big missions and Persistent Server missions like Warfare and Evolution and only when Joining In Progress

    When you JIP into a mission that has been going for some time the mission environment has changed. Units have moved/changed position from the mission download positions, bushes trees lampposts have been knocked down by bad drivers (mostly me that, sorry) buildings blown up ammo load outs are all different people shoot bullets, lots of dead bodies where the bullets hit people, smoke, explosions etc.

    What is needed for Synchro Lag is a server farm architecture essentially the ability to use client as a server. Nothing special just an additional server that acts as a dumb client to the main server and can be used by JIP players to synchronize to.

    Another solution may be to use peer-to-peer updating from players in game, but there are a whole bunch of technical issues as pert of that route.

    Anyway I think we should give Dwarden our full support on this.

    Kind Regards walker




    You are only a bullet away from being stupid.

  7. #7
    1.15 fixed the mission download problem.
    IC with 100 players had no longer any problem during JIP, mission
    start, long mission download.

    at least to our experience this is no longer true.
    bandwith is the least issue of the A1 DS imo. the other stated
    ones are way more important imo.
    so i see this as a very minor issue in these days.

    again you need to have the mission still on your server, make
    a compare if the URL is offering the same file.

  8.   Click here to go to the next Developer post in this thread.   #8
    BI Developer Dwarden's Avatar
    Join Date
    Mar 5 2002
    Location
    Czech Republic
    Posts
    7,797
    Author of the Thread
    @Q the client already compares the file (if you have the mission already) and if not it redownloads it ...
    so again that part of code is already included in client ...

    and please don't think in scope of 'rare server' with 'uber fast' line running 'small' well spread mission for 'limited' number of clients ...

    this is aimed at:

    - public server
    - 64-128 or more player server
    - mission size is 1 MB or bigger

    for starter let say You have 2000 unique players / month and you rotate 10 missions with total size 25MB (avg 2.5MB/mission) and let say each mission gets 2 builds per month

    if 25% of players already got these missions other way

    then bw block needed is 'only' 0.75*2000*25*2 = 75000 MB
    (just for mission itself downloads)

    now let's not even try imagine very popular server with way more and lot bigger missions and even more often updated ones ...

    in short something what ArmA 2 try aims to be right ?

    @ walker You not lightened my argument either
    as some of the issues (or most) were resolved in public 1.15 beta already

    anyway You still right that 'cluttering' the server bandwidth on server where is some 'limit' (be it max bw block or actual throughput) still exist and that's exactly what above suggested feature remove

  9. #9
    I am with Dwarden on this one
    Iron Europe a WWI mod for TWI's new game RO:HoS

  10. #10
    Dwarden,
    You know I am for this, since I use this form of "redirect" for RvS and CoD servers.
    Last edited by SWAT_BigBear; Feb 17 2012 at 04:32. Reason: I'm to I am (new forums)
    Cya in the CrossHairs Kill Zone!

    Spoiler:

Page 1 of 11 12345 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •