Giter Club home page Giter Club logo

Comments (22)

DanVanAtta avatar DanVanAtta commented on May 21, 2024

Going through the process a bit myself, I'll note the download size is large, 348MB (about 1hr to download)

from triplea.

veqryn avatar veqryn commented on May 21, 2024

The upgrade process has been improved a lot from where it used to be. But it could still get a lot better. For a historical view of things, the release process used to involve starting up a separate lobby for the new version, convincing people to download it and log into the new lobby (which split the community in half), and not being able to load or play old savegames. All these issues have been solved, so the only big issue left is really just convincing people to download the new one.

Desura has a pretty nice process for games (http://www.desura.com/). Basically, it version controls the releases and diff's them. Then when upgrading to a new version, the upgrade process downloads only the files that have changed or been added (and of course removes that ones that are no longer around). Pretty cool stuff, but I don't know if we can get there easily (we are already on desura, for those users who want to download our app through there).

from triplea.

ron-murhammer avatar ron-murhammer commented on May 21, 2024

Yeah getting to the point of doing sort of 'patches' or 'upgrades' rather than re-downloading the entire thing would be great. I mean pretty much all steam games do this now (we obviously aren't steam though). It would also be great to allow users to choose to upgrade within the app rather than downloading stuff outside of it.

Boils down to people should download TripleA once then just update it from within the application.

from triplea.

DanVanAtta avatar DanVanAtta commented on May 21, 2024

I think it's important to mention the another important item, beyond what @ron-murhammer just mentioned, is as much version compatibility as possible. What comes to mind primarily there is decoupling the lobby as much as possible, so we could upgrade the lobby without forcing everyone to get a new game engine (so avoiding needless user upgrades)

from triplea.

veqryn avatar veqryn commented on May 21, 2024

the lobby can already be upgraded, so long as you do not change one of the interface method signatures that talks to the lobby, of which there are only a couple.

from triplea.

gaborbernat avatar gaborbernat commented on May 21, 2024

This is potentially a really hard question to solve. Java Web Start or capsules could help, but I have a feeling it would be not trivial to set it up.

For speeding up the download experience maybe it could help if we would add P2P file sharing inside the client.

from triplea.

gaborbernat avatar gaborbernat commented on May 21, 2024

In the meantime found http://installbuilder.bitrock.com/installbuilder-features.html, given that we get an open source license this could solve the pain of upgrades issue.

from triplea.

DanVanAtta avatar DanVanAtta commented on May 21, 2024

One thought, if we have a download in the game, we can always download the non-java bundled version, would really reduce the size of the download. I would expect given our distribution size that there should be some fat to trim.

Another thought perhaps along the same lines, stop creating an uber-jar (shadow) jar and have the mulitple jar files exist on the client system. We could then download only the ones needed, typically will be just the game engine jar, and that would be very small (few megabytes). A slightly alternative thought would be to have our library dependencies be packaged into a single shadow jar, and have the game engine jar use just that one.

Before going down those paths, I would be curious to see if we can get an open source license for one of these installer tools, and see what it looks like. Perhaps keeping these ideas in our hat for then as a way to get the installer tool to work really well.

from triplea.

gaborbernat avatar gaborbernat commented on May 21, 2024

I've completed the application form for Install Builder by BitRock. I'll keep you updated on how it goes. I think it definitely worths a try.

For downloading the dependencies separately at first startup we can use https://github.com/puniverse/capsule.

from triplea.

gaborbernat avatar gaborbernat commented on May 21, 2024

We've got the license for BitRock InstallBuilder.

Thank you for your interest in InstallBuilder! We are happy to provide you with a free license (attached) for your projects. Before registering it, please download the latest version of InstallBuilder (Enterprise edition) from:

http://installbuilder.bitrock.com/download-step-2.html

Then, to register the product, you can either copy the file to the BitRock InstallBuilder installation directory or, from the main application menu, select 'License', then 'Register license' and follow the on-screen instructions.

We hope you and your users enjoy BitRock InstallBuilder, and we wish you the best of luck with your projects. We are attaching an "Installers by BitRock" icon. Posting it and/or a link to bitrock.com in your download or project page would be greatly appreciated, although it is not required. If you do link to us, it would be great if you would use the words "cross platform installer". We will keep you informed of InstallBuilder's new features and functionality by sending you a monthly newsletter. If for any reason you prefer to not receive this, simply send us an email requesting to be taken off our list.

Please do not hesitate to contact us with feature suggestions or any issues you may find. We love to hear from our users and your feedback helps us improve our software.

Best regards,

Reyes &The BitRock InstallBuilder Team

Will play around with it, and make a POC of it in the next week or so.

from triplea.

DanVanAtta avatar DanVanAtta commented on May 21, 2024

Looks promising, pls keep us posted.

from triplea.

DanVanAtta avatar DanVanAtta commented on May 21, 2024

I looked at file size of the download, lots of it is maps and sounds. I started this forum discussion on the topic with more details: http://tripleadev.1671093.n2.nabble.com/Release-File-Size-Maps-and-sounds-td7589091.html

Looks like with not too much work we could hack a full 100~150MB off the download size.

from triplea.

veqryn avatar veqryn commented on May 21, 2024

Sorry but I am against cutting this down at all.
People (not the power-users in our forum, but our actual users) expect that when they download our game, they can play all the games they want.
If anything, I plan to increase the size by adding new sounds, and maybe a new map.

from triplea.

DanVanAtta avatar DanVanAtta commented on May 21, 2024

My experience is mainly with lobby players, not forum players. The lobby players of course range from day 1 just downloaded the game, to experts. The size of the download is a major complaint.

I don't think users have the expectation they can play all the maps. The fact you can download more maps from the first UI screen suggests otherwise even.

New sounds is good, but it makes no sense to impact every download of the game for sounds that appear on only one map, that likely will never get played by most players.

I feel strongly about this given how many conversations I've seen in the lobby on the topic. During releases there is no end to the complaints. Furthermore, I personally do not enjoy downloading a file that is so large, it does make the upgrade painful. Now that I see the reason, I'm caught eager to see something done.

I'm also concerned how this would be treating our lobby community as well. We would be forcing them download huge files of data that is already on their system over and over again for each release to no benefit to them. They do not play the AI and often play the same maps. I'll note too that the attitude with many players is that even if the release is every few months, it's such a hassle they are really discouraged from upgrading.

So with all respect, this issue is causing us to lose players, forcing downloads to be this large, particularly when there is almost no universal benefit to doing so, I think is a bad idea. Furthermore, what if we scale more, more maps, better graphics, even more skins, every map all of a sudden has a napolean skin add on too. When is the file too large, 300MB, 400MB, 1GB? I would suggest a engine over 50MB is already way far too large. We should give people the ability to quickly start playing the game to see if they like it. With the attention span of the internet, waiting 20 minutes to download and our user is not going to be so stoked (or will have context switched, in general we're not going to get as much user engagement).

from triplea.

DanVanAtta avatar DanVanAtta commented on May 21, 2024

To bring the discussion back to some concrete actions:

Sounds
Let's see about compressing sounds. Keeping every sound from every map is not much of a problem if we get good space savings by going to high quality mp3 (from lossless wav files).

Maps
Let's simply create another installer, an update version that has the game engine and nothing much else. This would better satisfy some use cases:

  • new users that want a quick download to sample the game (so maybe include a small map or two)
  • existing users looking to upgrade game engine and not re-download maps

And we would still of course have the original release artifact file with all maps, so the other use cases are still satisfied just as well as before:

  • new users that want full functionality after download
  • existing users that want to update both their maps and game engine

from triplea.

veqryn avatar veqryn commented on May 21, 2024

A user can already download the "bots" version if they want triplea without any assets.

I am still against publishing triplea with fewer assets than we currently have.

from triplea.

DanVanAtta avatar DanVanAtta commented on May 21, 2024

I'm surprised the bots version doesn't have assets. Sounds like they share maps, but if they share maps, why not also share binaries too? That's beyond the topic. If the bots version already fits the bill, then we could potentially use that for a second purpose.

If this is not a good path, is there an alternative method you can suggest to help lobby users not re-download maps they already have when they only want to upgrade game engine?

from triplea.

gaborbernat avatar gaborbernat commented on May 21, 2024

What about providing a slimmer version too?

from triplea.

doctored avatar doctored commented on May 21, 2024

another alternative on the sounds is aac mp4 i think it provides superior fidelity to either wav or mp3 although any conversion necessarily implies data loss.

ps aac is also far more efficient space wise.

pps ogg might be good too but I'm not an expert on ogg.

from triplea.

gaborbernat avatar gaborbernat commented on May 21, 2024

I for one would opt for a with sound, no sound version. Literally the first thing I do for a clean new version is to turn off the sound.

from triplea.

doctored avatar doctored commented on May 21, 2024

the sound files should really not impact the size much at all but a wav @ 44khz 16 bit chews up 704 kbps compared to mp3 or aac at similar quality level it's ~ an order of magnitude larger in file size.

from triplea.

DanVanAtta avatar DanVanAtta commented on May 21, 2024

I think this conversation lost focus, updated 9 days ago is evidence of that. To bring it back on track we should evaluate why releases are painful, how to measure that, and then figure out what to do to irmprove. Burying a list of pain items as a comment in the middle of a long issue does not seem effective. So I started a wiki to keep track of the lists of things that we can/should fix, and a start of ideas to help fix those things:
https://github.com/triplea-game/triplea/wiki/Releases-User-Pain-List

We can create new issues to talk about specific topics/ideas IMO to keep conversation moving forward and focused. Closing..

from triplea.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.