O Steam notifica o usuário que ele precisa do Java para um jogo quando o compra / baixa / instala?

8

Meu companheiro e eu vamos fazer um jogo para o Steam e eu, como programador, queremos usar Java, pois essa é minha linguagem favorita atual. Então, eu preciso saber, o Steam notifica o usuário de que ele precisa do Java para um jogo quando o compra / baixa / instala?

DreddTrekkiter
fonte
4
Estou votando para encerrar esta questão como fora de tópico, porque é mais sobre um recurso do Steam do que sobre desenvolvimento de jogos.
Mand
8
Francamente, eu ficaria chateado se o jogo que eu comprasse me forçasse a instalar o Java. É uma linguagem muito poderosa e parabéns a você por amá-la, mas é mais uma relação de ódio e ódio para qualquer usuário comum que precise ser exposto ao Java. Espere comentários inflamatórios surgindo na página da loja do seu jogo que digam coisas como "Simulador de vírus 2016" ou "Não instalar, isso força uma versão desatualizada do Java em sua máquina".
MonkeyZeus 29/01
@MonkeyZeus É exatamente por isso que coisas assim devem ser abstraídas dos usuários - eles literalmente não têm idéia do que estão falando. As vulnerabilidades estavam apenas no plug-in do navegador da web (o que nunca foi uma boa ideia). De qualquer forma, empacote seu jogo para incluir todos os recursos necessários para sua execução ... não assuma que o usuário tem alguma coisa. Siga a rota do Minecraft como exemplo, use launch4j ou install4j para criar um instalador / executável em pacote com o JRE incorporado. Sem vulnerabilidades de segurança e sem problemas para o usuário.
SnakeDoc
3
Alguns jogos instalam o .NET para você no primeiro lançamento.
precisa saber é o seguinte
11
@immibis Você está certo, mas leva apenas um usuário semi-educado que teve uma experiência ruim com vírus Java em um site obscuro para postar um comentário que é altamente votado ou recebe o status "engraçado". Se você nunca ouviu um cara de TI murmurar "Java ruim" como um homem das cavernas, você é uma exceção neste mundo. Além disso, pedir ao usuário que baixe alguma coisa está sugerindo muita disponibilidade, especialmente considerando quantos sites tentariam convencê-lo a instalar um vírus em vez da coisa real.
precisa saber é o seguinte

Respostas:

18

Para responder sua pergunta diretamente, o Steam não notifica o comprador de que o jogo precisa do Java Runtime Environment da Oracle instalado para jogar. Isso porque não deve haver necessidade, qualquer jogo que dependa do JRE fará o download e o instalará como parte do procedimento normal de instalação do Steam. Isso não é diferente dos jogos que têm dependências no tempo de execução do Microsoft Visual Studio, DirectX ou .NET. Existe até um depósito JRE padrão que você pode usar.

Dito isso, eu pessoalmente me recuso a comprar ou instalar qualquer jogo que dependa do JRE da Oracle. Não quero ter que lidar com essa bobagem. Uma rota alternativa seguiria a liderança do Minecraft e incluiria uma Java VM como parte do próprio jogo. Ou seja, em vez de instalar uma VM para todos os aplicativos Java na máquina usarem, como no Oracle JRE, você instala uma VM lado a lado no seu jogo que somente o seu jogo usa. Eu não acho que você pode fazer isso com o Oracle JRE, acredito que o Minecraft usa um baseado no OpenJDK.

Por outro lado, se você está apenas começando, provavelmente deve seguir o caminho mais fácil e usar a instalação padrão do Oracle JRE, e apenas aceitar que algumas pessoas não gostarão disso.

Ross Ridge
fonte
2
+1 para a resposta direta. Como um adendo, há uma lista de JVMs alternativas @ en.wikipedia.org/wiki/List_of_Java_virtual_machines
Pikalek
14

Isso não é de forma alguma uma resposta, mas alguns pontos a serem considerados. Não cabia na caixa de comentários.

Eu pensaria que, mesmo que você usasse c ++, seria necessário enviar seu jogo com um monte de Redistributable , pelo menos no Windows. A menos que você consiga não usar as ferramentas do Visual Studio e tal. Não sei o que acontece com usuários de Mac.

E se você for com Java, acredito que haveria uma maneira de enviar a JVM com o seu jogo. Isso aumentaria o tamanho do download, mas garantiria

  1. que o cliente tem uma jvm e
  2. que o cliente tem a versão jvm correta para o seu jogo

Observe que já é necessário enviar a JVM com o jogo se você estiver distribuindo pela Mac App Store; portanto, se planeja distribuir além do Steam, isso pode ser necessário.

Vaillancourt
fonte
11
Provavelmente. Eu não sou tão conhecedor nesse campo, no entanto. Eu pesquisaria um pouco mais na web. Talvez isso possa ser do seu interesse.
Vaillancourt
2
Ou simplesmente usar rápido, de baixo nível de C. Ele e uma dor de material gráfico código.
wizzwizz4
2
@AlexandreVaillancourt Você disse "Acredito que haveria uma maneira de enviar a JVM com o jogo". Isso é absolutamente possível. Embora não seja um jogo, faço-o com meu aplicativo Java usando o launch4j . Eu sei que existem outras ferramentas por aí que podem fazer o mesmo.
Thunderforge
3
A maioria das vulnerabilidades Java se refere apenas a applets java e ao executar código não confiável. Se você baixar e executar um jogo localmente, já precisará confiar que ele não fará nada malicioso. Eu não acho que exista mais risco inerente no uso de java do que em qualquer outra estrutura / mecanismo / tecnologia.
Kapex
2
kapep SnakeDoc Atualizei a resposta.
Vaillancourt