Java-Gaming.org    
Featured games (79)
games approved by the League of Dukes
Games in Showcase (477)
Games in Android Showcase (106)
games submitted by our members
Games in WIP (533)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1] 2 3 ... 6
  ignore  |  Print  
  Distributing Sun server-vm  (Read 23515 times)
0 Members and 1 Guest are viewing this topic.
Online Riven
« League of Dukes »

JGO Overlord


Medals: 743
Projects: 4
Exp: 16 years


Hand over your head.


« Posted 2005-10-16 18:02:42 »

For a large game I'm working on, I need to do math directly on native FloatBuffers. (Think: transforming vertices to write into a vertex-array for particle-engines) Converting back and forth between float[] and FloatBuffer to do the math just takes too much time, and math on float[] in the Sun client-vm is kinda slow anyway, as there is no bound-check elimination. So I really need to run this app with the Sun server-vm, and distribute it to everyone using this game.

The problem is the JRE license. For this game, it's just no option to let players download the JDK/SDK, it's just too big (59MB). Further, the JRE license allows no modification whatsoever on a distributed JRE, so I can't replace the client-library with the server-library (DLLs in this case). Adding the server-vm-library in the right directory does the job also, but still would be "modification" of the JRE.

Now, is it legal to distribute the Sun client-vm, and let the game download the server-vm library writing it to /bin/server/ and using it the next time the game is launched by changing the vm-args?

I can't wait for Java 1.6 which might (or might not) have two-tired compilation (client+server), and I don't really want to break the JRE distribution license. What are my options?

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Offline Matzon

JGO Knight


Medals: 19
Projects: 1


I'm gonna wring your pants!


« Reply #1 - Posted 2005-10-16 18:17:28 »

Unless it's some big app for large company usually in the spotlight I would just ship it with the modified VM. The modification does not change the runtime in any negative way - and still consists of sun components. IANAL!

Online Riven
« League of Dukes »

JGO Overlord


Medals: 743
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #2 - Posted 2005-10-16 18:37:59 »

Yeah, that's only reasonable. But it would break the license.

IIRC what Cas said, "puppygames"-games also break the license, but there is no way to prove it, as it's nicely packed by MoleBox. Might be worth the $59, dunno yet.

What if my game would be a hit (~0.01% chance of that happening), would I even be allowed to distribute the JDK, or only the JRE?

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline princec

JGO Kernel


Medals: 342
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #3 - Posted 2005-10-16 18:38:48 »

I don't break any licenses Wink

FWIW you are freely allowed to distribute the server VM with the JRE.

Cas Smiley

Online Riven
« League of Dukes »

JGO Overlord


Medals: 743
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #4 - Posted 2005-10-16 18:41:49 »

Okay, thanks!

I wonder when Jeff comes around and mentions the legal-advice-thingy again Smiley

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Offline Raghar

Junior Member




Ue ni taete 'ru hitomi ni kono mi wa dou utsuru


« Reply #5 - Posted 2005-10-22 17:43:20 »

You are alowed to freely distribute add ons to JVM like MIDI databank, server VM, and ... additional libraries required by your application. (IIRC if your application would require part of SDK like appletviewer, or pack, you are alowed to distribute it too.) Only restriction I recall is requirement to don't break existing Java installation.

Using a simple program that prints a stupid text on console as an excuse to distribute 5MB worth of MIDI databank used by Java unrelated program would be practice to be frowned uppon.

If you look around you'd find a resource that explicitly names an examples of Java parts that are for sure alowed to distribute with your application. (Server VM, and MIDI databank are named in that document.)
Online Riven
« League of Dukes »

JGO Overlord


Medals: 743
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #6 - Posted 2005-10-22 20:59:28 »

My plan was to remove the client vm DLL then, as it's not used, but that would be modification... oh well, the moment Sun sues me for it, I'll add it back...

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Offline Vorax

Senior Member


Projects: 1


System shutting down in 5..4..3...


« Reply #7 - Posted 2005-10-22 21:20:25 »

I'e stripped several things out of rt.jar and a few other places to reduce my download size.  Is this breaking the license?  The embedded JRE doesn't do an install, so it can't break any existing JRE's - infact, the user would pretty much have no idea it's there.

Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #8 - Posted 2005-10-22 21:36:13 »

I'e stripped several things out of rt.jar and a few other places to reduce my download size.  Is this breaking the license?

Yes.

Offline kevglass

JGO Kernel


Medals: 120
Projects: 23
Exp: 18 years


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #9 - Posted 2005-10-22 21:53:54 »

Slightly more wooly if you were to molebox your VM including a launcher that could only ever run your game?

1) There wouldn't be any implication that your "VM" was a Java VM
2) It would be difficult to prove that the executable was actually Java (since molebox encrypts the whole sherbang)
3) It wouldn't be break the core reason for not wanting stripped VMs to be distributed (dilution of the the Java brand in relation to the Java VM Spec)

I'd be interested to know what people think, or even better a formal answer. I mean, effectively, isn't this equivilent to native complialtion from an external point of view?

Kev

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #10 - Posted 2005-10-22 22:04:17 »

The molebox idea is quite evil Smiley.

It is effectively "stealing" the JRE binaries, or the bits you care about.  I can't see anything in the license that allows you to do it.

Offline kevglass

JGO Kernel


Medals: 120
Projects: 23
Exp: 18 years


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #11 - Posted 2005-10-22 22:55:49 »

Agreed, definitely not explicitly allowed - but explcitly denied?

Its a real shame if it is - it would allow games writers round here to produce sub 5meg games for windows (with version for Mac and Linux made available), drawing people into the idea that Java can be used for good games - while still maintaining the ideal and intent of the license..

Its not like the license is intended to prevent distribution - since thats explicitly allowed.

Shame Shame.

Kev
[goes off to delete his 4.4 meg install of his latest casual game]

Offline Vorax

Senior Member


Projects: 1


System shutting down in 5..4..3...


« Reply #12 - Posted 2005-10-22 23:40:20 »

Yes.

Well, I thought so Sad

What's the point of a programming language if the things you build with it won't be used?  No one wants to download a JRE and no one wants to download 15MB of bloat either.

Sun should put together an ultra-light distro that can be included with downloadable applications.  Either that or they should officially acknowledge and aprove solutions like Molebox.

Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #13 - Posted 2005-10-23 02:18:27 »

What's the point of a programming language if the things you build with it won't be used?  No one wants to download a JRE and no one wants to download 15MB of bloat either.

Sun should put together an ultra-light distro that can be included with downloadable applications.  Either that or they should officially acknowledge and aprove solutions like Molebox.

Sun made Java Web Start so the VM is shared in a safe way.   It's actually going to cause less downloading in the long run.  Even if your customized JRE is only 35% of the original size, that's only 4 downloaded games until you start wasting bandwidth again.

Online Riven
« League of Dukes »

JGO Overlord


Medals: 743
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #14 - Posted 2005-10-23 02:31:15 »

Sun made Java Web Start so the VM is shared in a safe way.   It's actually going to cause less downloading in the long run.

The problem is that there won't be a long run! The initial JRE never gets downloaded because it's so damn big. We are talking about casual gamers here, and 56k modems.

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Offline kevglass

JGO Kernel


Medals: 120
Projects: 23
Exp: 18 years


Coder, Trainee Pixel Artist, Game Reviewer


« Reply #15 - Posted 2005-10-23 02:38:31 »

Yeah, the lose target that indie developers throw around is 5meg for the demo version.

Kev

Offline Vorax

Senior Member


Projects: 1


System shutting down in 5..4..3...


« Reply #16 - Posted 2005-10-23 03:33:21 »

Sun made Java Web Start so the VM is shared in a safe way.   It's actually going to cause less downloading in the long run.  Even if your customized JRE is only 35% of the original size, that's only 4 downloaded games until you start wasting bandwidth again.

If they don't have a JRE, they don't have Web Start. 

sarcasm warning...

Do you think RealArcade, MSN Games, Big Fish, etc. will mind including a link to Sun's website to download the JRE?  They of course will have to support users trying to install the JRE as well, because they have to support the visitors to their site (some of them are paying members).  Do you think RealArcade has a launch wrapper for Web Start?  Big Fish?  MSN, since they are owned by Microsoft, surley they won't mind supporting a Sun JRE or making the launch wrapper for it.  Infact, I am sure all those sites will be willing to make a WebStart wrapper for us Java developers.  Java pwns the market in gaming, so they will have to support it.

Do you think the customers will mind downloading Java, installing it, then returning to the page to download my game with WebStart?  It'll probably only take 15-40 minutes total (depending on internet connection and speed reading EULA's) to get my game installed, with just a few web sites to visit and a dozen or so clicks.

....or do you think the customers would go to the next game on the list of hundreds and download "BeChuzzled" at 4.2MB?  I doubt they would skip past my game, simply because the portals would have told me to take my months of work and redo it in a "normal" programming language and the customers would have never seen it. Sad


Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #17 - Posted 2005-10-23 04:23:03 »

Sun made Java Web Start so the VM is shared in a safe way.   It's actually going to cause less downloading in the long run.

The problem is that there won't be a long run! The initial JRE never gets downloaded because it's so damn big. We are talking about casual gamers here, and 56k modems.

People still use 56k modems? Smiley

I think the majority of internet users have high speed now.  Sun has done some work to get vendors to pre-install the JRE, surely that has helped some.  They have indicated that they are looking into ways to reduce the JRE download size and possibly make it download 'chunks' in an on-demand manner... but quite frankly there isn't much point.

Downloading the JRE (15MB) takes so little time these days that it doesn't really matter.   If the user chooses to launch your game it will probably take less than three minutes to download (often less than one minute).  I would wait that long to see what a game was like if it caught my attention enough to press the "launch" button in the first place..

Online Riven
« League of Dukes »

JGO Overlord


Medals: 743
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #18 - Posted 2005-10-23 10:45:25 »

>50% in the USA is using dail-up connections.

So much for 1-3minutes, think 50 minutes. You certainly don't want to loose 50% of your sells, would you?

The other 50% that's left often don't want to install Java. "Nah, it will make my whole computer slow and unstable". And since the GC runs in insane high priority, they're sometimes even right, not to mention the browser plug-in loadtimes on <1GHz computers. Even my friends had to be convinced. "Maybe tomorrow...", and we all know what that means. Only showing screenshots could convince them to head to Java.com, which used to be like a portal with the JRE download-button somewhere 'hidden' inside a bloated layout and a Flash movie. I'm kinda surprised they seem to have a 1 button site now. Good thing.

I'm afraid Java will never loose it's bad reputation, so you're left distributing it behind their backs, hoping for betters days.


Last but not least: at indiegamer.com they seem to have a few rules from years of experience:
  • With every additional 10MB over the initial 5MB install-size you'll loose 50% of your players
  • With every additional step required to play your game, you'll loose 50% of your players

This is for the casual-gamer market, ofcourse.

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings
Offline princec

JGO Kernel


Medals: 342
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #19 - Posted 2005-10-23 17:18:22 »

Etc. etc. etc. Strip the JRE bare, Molebox it, and no-one is any the wiser. Except Sun lose another opportunity to pimp their Java brand because you can't mention it any more. I removed all references to Java from my splash screens etc. It's their own fault. In fact I don't even try to convince anyone that Java is good for games development any more because of this glaring issue.

Cas Smiley

Offline g666

Junior Member





« Reply #20 - Posted 2005-10-23 17:55:04 »

I removed all references to Java from my splash screens etc.

Really? I thought i had seen a java logo on the alien fluz splash screen.

Moleboz sounds like a good idea, but it would be better if people were more educated into having the jre installed anyway, I read on a blog of the idea of a jre running a daemon on startup (multi tasking vm) and this seems like a god idea as long as it isnt to intrusive. (sun would probably make a "JAVA LOADING" splash on ur screen at startup tho....)

desperately seeking sanity
Offline princec

JGO Kernel


Medals: 342
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #21 - Posted 2005-10-23 21:35:17 »

Couldn't be bothered to change Flux. Spent far, far too long on that game.
The JRE does not need to be pre-installed by end users. It needs to be pre-installed by Microsoft. Or very small. Or have a more useful license.

Cas Smiley

Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #22 - Posted 2005-10-24 02:47:43 »

>50% in the USA is using dail-up connections.

So much for 1-3minutes, think 50 minutes. You certainly don't want to loose 50% of your sells, would you?

Well I couldn't find any exact data, but based on the information here:
http://www.internetworldstats.com/am/us.htm

The projection for 2005 would indicate that 2005 is the year that broadband overtakes dial-up.

"At the national level, 36 percent of US online users accessed the Web through a high-speed connection in the fourth quarter of 2003"

My interpolation is admittedly crude.  Taking the 26.2 million high-sped households from 2003 as 36% and multiplying by the appropriate factor to  get the project 41 million households in 2005, I get 56% of the users having broadband in 2005.  I had thought that I heard the 50% mark was passed already because of the lowering costs of broadband etc.

At any rate the trend is clear.  The dial-up market is shrinking and the broadband market is growing. And it is reasonably safe to assume we are somewhere near the 50% mark now.  So it makes sense NOW to target broadband users.

Not that I excuse Sun for not reacting fast enough to serve the dial-up users, but it is clear that even if they did nothing, that particular problem would eventually take care of itself.  I think we are at that point.  Sun is a bit late, sure it will be great to get the dial-up market as well, since they are still significant, but the majority of your customers are likely on broadband in North America.

I disagree with PrinceC's strategy.  By removing Java from any mention, and still using it internally I consider that stealing the JRE or the bits he likes.   I do agree that Sun didn't react fast enough with a legal solution, but I stop short of endorsing the moleboxing of the JRE simply because I think it is in clear violation of the license.

All Sun needed to do was to ADD a stipulation to the license that if you bundled a private JRE, stripped down or not, that you are required to display a "powered by Java technology" message and logo clearly on your product.  That would start to put a much more positive spin on Java, particularly as a gaming platform.  Now Cas' has gone and done the opposite (removing mention of Java) and obviously that only hurts Sun's efforts.  Time to wake up, Sun!



Offline princec

JGO Kernel


Medals: 342
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #23 - Posted 2005-10-24 11:07:31 »

I disagree with my strategy too, and I completely agree with your final summary about what to do, but it leaves Sun in the thornily difficult position of allowing some numpty to produce a PuppyGames Java VM and actually sell it without having given Sun a bean. I did ask Chris about licensing the VM but the price was going to be hundreds of thousands of dollars, and seeing as I've made a staggering total of $3000 out of Puppygames ever, that wasn't going to happen.

Cas Smiley

Offline swpalmer

JGO Coder




Where's the Kaboom?


« Reply #24 - Posted 2005-10-24 15:20:51 »

... but it leaves Sun in the thornily difficult position of allowing some numpty to produce a PuppyGames Java VM and actually sell it without having given Sun a bean.

Distributing a complete yet private to the application JRE still doesn't require that you give Sun a bean, and you don't even have to mention Java is used at all.  So it's hard to imagine what Sun's hang-up is.  They could be getting the Java brand some significant screen time if they tweaked the license.

Offline princec

JGO Kernel


Medals: 342
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #25 - Posted 2005-10-24 21:41:10 »

Ok then, I'll sell my cut-down VM, and call it Puppygames VM. The private launcher executable takes two parameters, one is a comma separated list of URLs, the other looks suspiciously like the name of a class that might implement public static void main(String[] args). It won't be called Java, nor will it run Java code, officially. In fact most Java code will break because it'll rely on AWT and other stuff I don't supply. Think again about it.

Cas Smiley

Offline g666

Junior Member





« Reply #26 - Posted 2005-10-24 21:52:45 »

Tthis is of topic but why is it called puppy games / shaven puppy, it really puts me off from even thinking about buying the games (which actually are not all that bad).

desperately seeking sanity
Offline Jeff

JGO Coder




Got any cats?


« Reply #27 - Posted 2005-10-24 22:30:58 »

Sun's "hang-up" has always been fear of platform fracture.
(Look at the mess in the J2ME space were we allowed that to happen if you want some idea why its a bad thing...)

Having said that, I did my best with the JGP JSR to try to cram a properly blessed reasonably minimal and game specific variation down management's throats.

Woudl have worked too if anyone had cared enough to pony up the resources to build it.  **sigh**

May yet come around to that again some day but Im not going to try myself again before I see signs that management will give it the necessary support.


Got a question about Java and game programming?  Just new to the Java Game Development Community?  Try my FAQ.  Its likely you'll learn something!

http://wiki.java.net/bin/view/Games/JeffFAQ
Offline erikd

JGO Ninja


Medals: 16
Projects: 4
Exp: 14 years


Maximumisness


« Reply #28 - Posted 2005-10-24 22:40:41 »

Until that's going to happen, swpalmer's solution sounds like a good deal and very easy to accomplish.

Quote
to ADD a stipulation to the license that if you bundled a private JRE, stripped down or not, that you are required to display a "powered by Java technology" message and logo clearly on your product

Offline princec

JGO Kernel


Medals: 342
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #29 - Posted 2005-10-24 23:51:46 »

Woudl have worked too if anyone had cared enough to pony up the resources to build it.  **sigh**
Hey Jeff man, I've got that damned VM spec sitting here and it runs all my games :/ Why don't you wave Ultratron or Tribal Trouble under some top brass' nose and see if they smell the coffee? You never know they might see the light. I've said that as a product you could flog my mini-VM for $100 each as a "boxed product" to game devs around the world and it'd be a nice little earner with bugger all impact on the rest of J2SE.

Cas Smiley

Pages: [1] 2 3 ... 6
  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.

pw (24 views)
2014-07-24 01:59:36

Riven (24 views)
2014-07-23 21:16:32

Riven (18 views)
2014-07-23 21:07:15

Riven (21 views)
2014-07-23 20:56:16

ctomni231 (50 views)
2014-07-18 06:55:21

Zero Volt (45 views)
2014-07-17 23:47:54

danieldean (36 views)
2014-07-17 23:41:23

MustardPeter (39 views)
2014-07-16 23:30:00

Cero (54 views)
2014-07-16 00:42:17

Riven (55 views)
2014-07-14 18:02:53
HotSpot Options
by dleskov
2014-07-08 03:59:08

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:58:24

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:47:22

How do I start Java Game Development?
by ra4king
2014-05-17 11:13:37

HotSpot Options
by Roquen
2014-05-15 09:59:54

HotSpot Options
by Roquen
2014-05-06 15:03:10

Escape Analysis
by Roquen
2014-04-29 22:16:43

Experimental Toys
by Roquen
2014-04-28 13:24:22
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!