Programação visual
Uma introdução baseada nas informações disponíveis sobre o sistema de programação visual do Hytale.
Introdução
O Hytale pretende implementar a Programação Visual como uma ferramenta para expandir o acesso a lógicas complexas e fluxos de controle para um público mais amplo. Esse sistema não estará disponível no lançamento, mas deve chegar em seguida.
Visão geral
O sistema de programação visual em Hytale foi projetado para funcionar de forma semelhante aos Blueprints na Unreal Engine. Isso possibilita que os designers criem lógicas complexas usando uma interface visual que se alinha a sua maneira de raciocinar sobre a mecânica do jogo, sem a necessidade de escrever o código diretamente.
Principais recursos
- Subconjunto da funcionalidade Java: a programação visual oferece uma parte do recurso que se pode alcançar com os plugins Java
- Amigável aos designers: "os designers são capacitados por meio de uma linguagem visual que corresponde à maneira como pensam sobre os comportamentos"
- Extensível por programadores: os desenvolvedores conseguem expandir e otimizar o sistema adicionando novos nós visuais e implementações sensíveis ao desempenho
- Ambiente de compartilhamento seguro: oferece um ambiente isolado e protegido para o compartilhamento de código entre os desenvolvedores de mods
Vantagens em relação à programação tradicional
A programação visual torna a escrita de lógica personalizada mais acessível ao remover obstáculos comuns encontrados ao se desenvolver em Java:
- Configuração de ambiente simplificada: não é necessário se preocupar em instalar as ferramentas corretas ou em configurar ambientes de desenvolvimento
- Desenvolvimento sem sintaxe: não exige que o desenvolvedor domine ou memorize a sintaxe de programação
- Compartilhamento seguro: a existência de malware é praticamente impossível na programação visual
- Mais acessível: reduz a barreira inicial para pessoas que não tem experiência com a programação
Relação com Java
A programação visual e os plugins Java são projetados para funcionarem em conjunto:
- Extensão do Java na programação visual: os programadores podem criar nós visuais utilizando Java
- Otimização de desempenho: embora a programação visual não possua a eficiência do Java, os programadores podem implementar a lógica mais crítica nessa linguagem e, em seguida, disponibilizá-la como nós visuais
- Equilíbrio perfeito: o sistema mantém a maioria da lógica no ambiente fácil da programação visual, enquanto assegura a máxima otimização para operações pesadas
O Hytale recomenda a programação visual porque ela é mais acessível e mais segura para compartilhar e baixar. No entanto, permanecer apenas em Java ainda funcionará para aqueles que o preferirem.
Programação visual 3D
Uma das características únicas do Hytale é levar a programação visual para o mundo 3D:
- Edição dentro do jogo: conecta alavancas, portas, geradores, gatilhos e outros elementos de forma direta dentro do jogo
- Criação de mapas de aventura: ideal para construir mapas de aventura e encontros desafiadores sem precisar sair do Hytale
- Semelhança com DOOM SnapMap: proporciona uma experiência de desenvolvimento já conhecida por quem utilizou plataformas semelhantes
- Integração completa: o sistema funciona de forma lógica com todo o conjunto de ferramentas de ativos e programações
Sem programação textual
O Hytale preferiu não incluir linguagens de programação baseadas em texto. Os motivos são:
- Falso compromisso: a programação baseada em texto é oferecida para ajudar os usuários que não são programadores, mas continua exigindo o aprendizado de conceitos fundamentais de programação
- Complexidade aumentada: os programadores são forçados a lidar com duas linguagens, sendo que uma é menos poderosa
- Requer sintaxe: os designers ainda precisam aprender os conceitos de sintaxe e programação
- Baixa inclusão: essa abordagem não soluciona o problema principal de acessibilidade
- Fragmentação: evitar a "fragmentação da lógica em várias linguagens incompletas"
Portanto, o Hytale considera a programação visual a solução ideal, capaz de levar a lógica de jogo a uma audiência maior, sem comprometer o poder e a flexibilidade.