Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (494)
Games in Android Showcase (114)
games submitted by our members
Games in WIP (563)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Upgrading Games  (Read 2566 times)
0 Members and 1 Guest are viewing this topic.
Offline D.t.O

Junior Member




Psych'd about Java Games


« Posted 2004-04-13 20:38:49 »

[more or less moved from Tools Discussion -> UML editors: 2004 roundup]

Here's the discussion so far:

blahblahblahh:
Quote
FYI for those who know how I sit with JWS games: apps are an entirely different situation. Most apps you *never* want an upgrade unless you the user choose it. This is mainly because apps are nearly always editors of documents, and you want your document-editing to remain constant from session to session. Games have no document, and are just a complete package. There's lots of knock-on effects from this, if you think about it in detail (if anyone wants to discuss, start a thread in off-topic, I'll remove it from this thread ). I'm not arguing for or against (shrug; I'm undecided) but it's a neat feature that Argo offers.

pedro:
Quote
I watched last year a presentation from a Microsoft guy that came to our university and he talked about the challenge of keeping software up-to-date for the non-technical user (security issues as his main concern, of course :p), and he described how they're approaching the problem. It seems to me that having apps using webstart (kind of turning the 'internet' as a huge hard-drive) seems to very promising in constantly updating products without the user even realising it. I don't think there are many bad effects if you consider that everyone will be accessing the same webstart version of the application, and if you assume updates are backward-compatible and let you import/export stuff.  

But maybe, you'll want to give the user the option of sticking the previous version (or preferably just keeping the UI of the previous version while updating internal logic, and gradually changing/introducing new features to the UI so he doesn't get shocked very time he starts his app).

I think Sun has always some really cool technology, and webstart could innovate how companies provide desktop applications. (There're problems such as download time of huge applications, but it's true that in company networks, terminal PCs share application via a common server, so why not extend it to the level of the internet?)

Am I talking nonsense?

D.t.O:
Quote
No you are not talking nonsense Smiley
Personally, I like the idea of updating the internal logic (though if it has no effect on the UI, I don't see how it would help except if it was some speed-enhancement upgrade). Also, I hate automatic updates in general if they modify the whole GUI/UI significantly, especially if it's a game. I've never updated any one of my games, and luckily, they haven't been silently modifying themselves...

And finally, blahblahblahh:
Quote
Guys, seriously, start another thread.

It's probably worth it - there could be a lot of interesting debate on this webstart issue. And I think it's particularly interesting how well-suited games are for JWS compared to other apps.

Enjoy.
Regards,
     - D.t.O
kul_th_las
Guest
« Reply #1 - Posted 2004-04-14 00:15:35 »

I would have to agree that updating the background logic, when it is limited to a few key areas, namely...
(1) Bug fixes
(2) Speed increases
(3) Additional document format support

...and when it avoids updates in areas such as...
(1) The way it already interprets file formats (unless it's a fix, rather than just a change)
(2) The user interface

...then it could be a very cool thing.

Additionally, what if we started adding a "Help->Update" menu item to our apps that would open up a window (or perhaps a web page) that has links to updates.

For example, you could have a different link for each major version of the program, and clicking on the link would update the app to that version. Of course, you would want to hide links to the current or previous versions of the program.

Small updates and bug fixes could be handled as a check box option in the app, and could be run at startup each time, while major updates could be found under the "Help->Update" menu. It would then be trivial to make it clear to the user that if they update their app via the website, that it might constitue a not-so-small change in the app behavior.
Offline D.t.O

Junior Member




Psych'd about Java Games


« Reply #2 - Posted 2004-04-14 01:47:45 »

Just wondering here.
Is a JWS program considered an "app"? :-/
The answer to this question would certainly help me understand the minute details that this thread is all about Grin...

Enjoy.
Regards,
     - D.t.O
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline cfmdobbie

Senior Member


Medals: 1


Who, me?


« Reply #3 - Posted 2004-04-14 07:42:33 »

Quote
Just wondering here.
Is a JWS program considered an "app"? :-/


Generally, yes.  However, it has features in common with applications and applets:

Like an application, it runs in a separate process from the browser and separate VM instance from other WebStart applications, controls its own top-level windows and can make use of native libraries, access the filesystem etc, if the user allows it.  However, it runs in a security sandbox, is easily launched from a web-page, and automatically gets the latest version from the server, like an applet.

Hellomynameis Charlie Dobbie.
Offline William Denniss

JGO Coder


Projects: 2


Fire at will


« Reply #4 - Posted 2004-04-14 10:04:17 »

sandbox != applet - I'd definitally call it an application, which can optionally run in a sandbox (but many - especially games, do not).  Apart from remote code download and potential sandbox it really doesn't share much else.

great technology, 1.5 is even better too.

Will.

Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #5 - Posted 2004-04-14 18:29:44 »

Remember that Web Start CAN be used to launch Applets as well as Applications.

Offline mlk

Junior Member




Muppet!


« Reply #6 - Posted 2004-04-14 23:42:44 »

Quote
sandbox != applet - I'd definitally call it an application, which can optionally run in a sandbox (but many - especially games, do not).  


OT I know, but surely games (esp. "free"[1] downloadable ones) are idea for sandboxing.

I think auto updating for games is a great thing.

[1] Read: Ofton malware ridden

Offline D.t.O

Junior Member




Psych'd about Java Games


« Reply #7 - Posted 2004-04-15 01:20:22 »

Quote

I think auto updating for games is a great thing.

If you're game automatically updates and the interface completely changes, would you still be happy :-/ ?

Enjoy.
Regards,
     - D.t.O
Offline cfmdobbie

Senior Member


Medals: 1


Who, me?


« Reply #8 - Posted 2004-04-15 10:12:10 »

Quote
OT I know, but surely games (esp. "free"[1] downloadable ones) are idea for sandboxing.


Not OT at all - an intrisic property of WebStart.

Games don't not use the sandbox because they don't want to, they do it because often they aren't able to.  Any game using e.g. Java2D is okay, but anyone loading native libraries for OpenGL etc is running untrustable code, so sandboxing just isn't possible.  Those are the breaks, folks!

Hellomynameis Charlie Dobbie.
Offline D.t.O

Junior Member




Psych'd about Java Games


« Reply #9 - Posted 2004-04-15 16:35:46 »

What does OT stand for?
Off-Topic?

Enjoy.
Regards,
     - D.t.O
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline digitprop

Junior Member





« Reply #10 - Posted 2004-07-16 17:27:25 »

Just read up on this interesting thread, and was wondering: Is there something like a rollback / versioning feature planned for JWS?

Auto-updating applications (and games) is great in principle, but can be disastrous if the update breaks something (like files saved in an old version). This can happen, even with rigorous testing.

Users would probably be much more relaxed about auto-updating if they could easily go back to a previous version.

M. Fischer . www.digitprop.com
Offline blahblahblahh

JGO Coder


Medals: 1


http://t-machine.org


« Reply #11 - Posted 2004-07-16 18:36:17 »

[personal opinion]
Rollback is difficult since webstart doesn't impose any restrictions on the server which is serving the webstart files - which means old versions no longer exist anywhere except on the user's computer.

If you want to rollback, you need to keep a copy of everything you've ever downloaded, one copy for each and every version!

As it stands, webstart merely *caches* items at the moment, and you can give it a finite amount of hard-disk space (e.g. I think I give it 100Mb or something like that). If e.g. you use a large IDE like netbeans that weighs in at 50Mb+, and you use it for one year, you may go through 10 minor versions - which is half a gig in old copies that would have to be cached *just for that one app*.

In theory, it's not difficult to do delta-compression on the different copies, and you would expect a high correlation between versions. Far far better would be if Sun put some real effort into webstart and made it automatically do delta-compression on the downloaded JAR's - which would generally make apps with few JAR's download around 3 to 10 times faster. Large apps could download 100 times faster (based on loose conclusions from previous experiments with delta compression in app updates).

But the sad fact is that Sun only has 6 billion dollars of cash in the bank, and can't afford to hire a couple of skilled developers to work full-time on something as unimportant as the primary application-delivery system. It's only potential is to revolutionise application delivery, and bring large numbers of app developers to the Java platform, so obviously it is rightly a low priority [/sarcasm]. I know that enterprise java users developed their own custom delivery systems ages ago, so the Sun Java strategic people probably don't care much about JWS. Cry

Webstart still doesn't even work as well as it should have done in java 1.2.x. So I wouldn't hold your breath waiting for Sun to put any serious effort into it...
[/personal opinion]

malloc will be first against the wall when the revolution comes...
Offline blahblahblahh

JGO Coder


Medals: 1


http://t-machine.org


« Reply #12 - Posted 2004-07-16 19:14:17 »

And app developers would have to jump through some hoops to make it possible, which I doubt many would bother with. Since Sun hasn't made a decent standardized configuration system (if you think Properties fits the bill you've never had to maintain a normal-sized application - expect a minimum of several hundred config options) lots of apps still have proprietary systems that change from release to release (as they re-factor it). Althtough they often remember to make newer versions import old config, the reverse is rare in the extreme, and you'd probably often have to delete your config when reverting Sad.

malloc will be first against the wall when the revolution comes...
Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #13 - Posted 2004-07-16 21:58:40 »

It would be simple for the Web Start client to simply keep the one previous version that could be restored in the event that the user has problem with the latest version.

The Web Start app should have options to "pin" applications to the current version in the cache as well as the roll-back one version feature.  That would make it much safer for non-corporate environments.

Offline blahblahblahh

JGO Coder


Medals: 1


http://t-machine.org


« Reply #14 - Posted 2004-07-16 22:56:43 »

Quote

The Web Start app should have options to "pin" applications to the


Possibly the 1st or 2nd most-requested feature of webstart? Smiley It is possible to achieve manually, but it's not easy enough.

malloc will be first against the wall when the revolution comes...
Offline digitprop

Junior Member





« Reply #15 - Posted 2004-07-18 07:24:36 »

Blahblahblah, you are right that a rollback feature would only work with delta compression. However, one would think that this is not extraordinarily difficult to implement...

I agree that Sun' lacking effort for Webstart doesn't do justice to its importance for the platform.  Sun has a bizarre mixture of vigorously pursuing cutting-edge technology at one time, and remaining excruciatingly passive on pressing issues at other times.

M. Fischer . www.digitprop.com
Offline William Denniss

JGO Coder


Projects: 2


Fire at will


« Reply #16 - Posted 2004-07-18 21:19:58 »

JWS in 1.5 is greatly improved I understand (from reading the ChangeLog and my own tests) - pity we'll have to wait a while for the average consumer to have 1.5.

As far as auto-updating goes, for a game you pretty much always want to be running the latest version as you won't be able to connect to the servers otherwise.  Bad luck if you perfered an older version, you couldn't play it online anyway.

For an application - why not just create a new release (i.e. new jnlp file) each time you make a new release?  Save JWS for bug fixes which you are sure won't break anything and make people unhappy.

If I ever get this game project of mine out, I plan on having two jnlp's - one for stable, and one for testing.

Will.

Offline blahblahblahh

JGO Coder


Medals: 1


http://t-machine.org


« Reply #17 - Posted 2004-07-19 06:25:13 »

Quote

As far as auto-updating goes, for a game you pretty much always ...


That's all sensible, BUT you're missing the big point here.

All the things you describe put the power and the decision in the hands of the programmer - the programmer has to decide which versions to release and maintain JNLP's for etc.

But this is a consumer-technology, not a programmer technology, and the power should be in the user's hands. If the programmer can't be bothered to do something, then the user should STILL have control over what happens on their own PC!

Since the vast majority of games are not online, I'm not sure what validity there is in the "you have to have the latest version to go online anyway" argument - just look at the games on JGF, and note that only one or two of them are online-only.

malloc will be first against the wall when the revolution comes...
Offline princec

JGO Kernel


Medals: 378
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #18 - Posted 2004-07-19 07:04:48 »

I agree wholeheartedly. The current Webstart model is disastrously broken, breaking a cardinal rule "Thou shalt not make the software on my computer behave differently unless I want you to".

Cas Smiley

Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

Dwinin (19 views)
2014-09-12 09:08:26

Norakomi (54 views)
2014-09-10 13:57:51

TehJavaDev (63 views)
2014-09-10 06:39:09

Tekkerue (31 views)
2014-09-09 02:24:56

mitcheeb (53 views)
2014-09-08 06:06:29

BurntPizza (37 views)
2014-09-07 01:13:42

Longarmx (23 views)
2014-09-07 01:12:14

Longarmx (27 views)
2014-09-07 01:11:22

Longarmx (26 views)
2014-09-07 01:10:19

mitcheeb (34 views)
2014-09-04 23:08:59
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!