Requisitos mínimos y mejores prácticas

Para garantizar una calidad constante de las hojas de personaje en el repositorio, todas las presentaciones deben cumplir con los requisitos mínimos que se indican a continuación. 

1. Código de conducta

  • No infringir la propiedad intelectual. Las hojas de personaje de la comunidad no deben incluir la creación o el avance de personajes debido a posibles restricciones de derechos de autor. Las fichas 'By Roll20' pueden incluir este contenido gracias a nuestra colaboración con creadores de juegos. Las hojas que se desarrollen a partir del código de una hoja "Por Roll20" tendrán que asegurarse de que se elimine cualquier código de creación de personaje o de opciones de avance. Está bien tener atributos que se autocalculen en función de otros atributos (incluido el nivel actual). Le informaremos si su ficha presentada infringe esta norma.
  • Hay un requisito específico para las Hojas de Personaje. Todas las presentaciones de nuevas solicitudes de extracción para cualquier hoja de personaje que contenga un área para “género” deberán convertirlo en una entrada de texto abierta (en lugar de un menú desplegable que contenga una lista predefinida de opciones). Esta pauta refleja nuestros esfuerzos continuos para ser inclusivos en nuestro enfoque para facilitar el juego, queremos que la mayor cantidad de personas puedan jugar de la manera que les brinde más diversión. En este caso, tomarse el tiempo para abordar este pequeño cambio de programación hace una gran diferencia para nuestra comunidad.

2. Buen Código

  • Estilo mínimo. Todas las hojas de personaje deben tener una pequeña cantidad de estilos CSS & HTML para que sean estéticamente agradables y utilizables. Por ejemplo, los elementos no deben superponerse de forma no intencionada cuando se cambia el tamaño de una ventana. La hoja debería ser familiar para los jugadores que están acostumbrados a ver la versión impresa de esa hoja. No es necesario que sea idéntica a la versión en papel y debe evitar violar cualquier derecho de autor, pero tampoco debe estar diseñada de una manera tan loca que los jugadores tengan dificultades para entender cómo usarla. Diseñar para facilitar el uso en primer lugar.
  • Sintaxis HTML correcta. Se recomienda utilizar una sintaxis HTML correcta para aumentar la accesibilidad y hacer que el código sea mantenible para las contribuciones de la comunidad. Se espera que todas las hojas nuevas utilicen elementos de contenedor adecuados como <⁠div> y <⁠span> . Tu archivo HTML no debe usar la etiqueta  <⁠head> o <⁠body> , de lo contrario tu hoja de personaje podría no cargarse en la mesa de juego virtual.
  • Se requiere compatibilidad con servidores Unix.Se requiere que todos los archivos CSS, HTML y JSON se envíen con terminaciones de línea Unix (LF). Una búsqueda en Google puede decirte cómo configurarlo en tu editor de texto favorito. Además, cada envío debe incluir un archivo sheet.json válido y una imagen de vista previa. Las instrucciones para crear un sheet.json adecuado se pueden encontrar en el GitHub README.
  • Chrome & Firefox compatible. Los dos navegadores oficiales compatibles con Roll20 son Chrome & Firefox. Todas las hojas de personaje deben ser probadas para funcionalidad y estilo en estos dos navegadores.

3. Una Experiencia Satisfactoria

  • Las Hojas de Personaje deben ser independientes por defecto. All basic sheet functionality must be usable without external requirements such as images or fonts hosted outside Roll20, and Mod (API) companion scripts. Mod (API) companions are a welcome supplement for character sheets, but to ensure accessibility & functionality to community members at all of subscription levels, the sheet must be usable by default without outside requirements.
  • Botones de lanzamiento funcionales. Las mejores hojas no solo realizan un seguimiento de las estadísticas de los personajes, sino que también tienen los lanzamientos más comunes del sistema de juego incorporados en ellas. Esto facilita mucho a los nuevos jugadores jugar el juego al agregar funcionalidad intuitiva. Si bien no es necesario incluir todos los lanzamientos del sistema completo, incluir lanzamientos frecuentemente utilizados cuando corresponda puede elevar tu hoja al siguiente nivel. Los juegos que no tienen tiradas, comoAmber Diceless Roleplaying Juego, no están obligados a cumplir con este estándar. Si estás diseñando una hoja para un sistema en el que no se aplica este requisito, incluye un comentario en tu pull request.
  • Entradas & campos de texto para el seguimiento de datos. Las hojas de personaje para sistemas de juego que tienen atributos y estadísticas deben incluir elementos<input>para que los usuarios puedan realizar un seguimiento de sus datos. Siempre que sea posible, utiliza nombres estándar para los atributos, escritos completos. Por ejemplo, "inteligencia", "fuerza" y "sabiduría". Esto es importante para que, si un personaje se importa a un juego con una hoja diferente, la mayoría de los valores puedan hacer la transición. Si los nombres de los atributos son todos diferentes, entonces nada se puede importar. Lo mejor es mirar las hojas existentes para ese sistema y, siempre que sea posible, utilizar los mismos nombres de atributos que ya se utilizan. De manera similar, se deben incluir etiquetas<textarea>cuando corresponda para que los usuarios puedan agregar notas o descripciones. Este requisito es altamente variable según el sistema y si este requisito no es aplicable al sistema de juego para el que estás creando una hoja, por favor incluye un comentario en tu solicitud de extracción.
  • Las reglas deben estar fácilmente disponibles. Las hojas pueden ser enviadas para juegos independientes y sistemas caseros. Los juegos caseros deberán asegurarse de no violar los derechos de autor de sus respectivos sistemas de juego. En ambos casos, las reglas deben estar fácilmente disponibles en línea para el público.

Más allá del mínimo

Las sugerencias a continuación no son requeridas para nuevas hojas de personaje que deseen ser agregadas al repositorio. Los autores de hojas de personaje nuevos en el desarrollo de front-end deben enfocarse en cumplir con los requisitos mínimos mencionados anteriormente para la versión uno de su hoja. Sin embargo, una vez que te sientas cómodo con lo básico, las sugerencias a continuación pueden llevar la hoja un paso más allá y hacerla realmente destacar.

  • CSS Wizardry. Nuestra comunidad de autores de hojas de personaje es excepcionalmente inteligente y creativa. Aquí ofrecen ejemplos de formas de aprovechar el sistema de hojas de personaje.
  • Plantillas de Tiradas Personalizadas. Las plantillas de rollo pueden personalizarse para que coincidan con el esquema de colores & estilo de su hoja de personaje. Además, se pueden utilizar para ayudar a los usuarios a obtener un resultado de lanzamiento que coincida con las mecánicas específicas del sistema de juego.
  • Claves de Traducción. La internacionalización de las Hojas de Personaje te permitirá diseñar tu Hoja de Personaje de tal manera que nuestra comunidad de traductores pueda traducir tu hoja a su idioma, haciendo ese idioma disponible para cualquier persona en Roll20. A partir de septiembre de 2016, ya no aceptamos nuevas Hojas de Personaje que sean simplemente traducciones alternativas de hojas de personaje ya existentes.
  • Configuraciones Predeterminadas de la Hoja. Las opciones seleccionables se pueden especificar en el archivo sheet.json proporcionado con tu Hoja de Personaje Personalizada. Estas opciones proporcionan la configuración por defecto para todos los Personajes cuando su Hoja de Personaje está en uso.
  • Integración del Compendio. Al designar que su hoja es compatible con un Compendio, los jugadores tendrán acceso directo a ese Compendio en la barra lateral derecha durante el juego. Los compendios todavía son una función en crecimiento en Roll20 y la integración aún no está disponible para la mayoría de los sistemas de juego.
  • Incluir nombres de atributos en títulos. Agregartítulo=@{attribute_name}ayuda a los creadores de macros a encontrar más fácilmente el nombre de los atributos. Los títulos ocasionalmente se utilizan para otros propósitos, así que usa tu mejor criterio.
  • Enlace a la página wikiSi has creado una página wiki para tu hoja, puedes enlazarla en elsheet.jsonde lasinstrucciones.

Mejores prácticas

Estas son pautas de mejores prácticas para ayudar a aumentar la consistencia entre los autores de hojas con el fin de proporcionar un repositorio de código mantenible para la comunidad.

Atributos/Entradas

  • Los nombres de atributos deben estar en minúsculas. Por el bien de la consistencia, todos los que lo hagan facilitan un poco la programación.
  • Los juegos de rol tienen palabras extrañas. Utilizaspellcheck="false"para entradas de texto y áreas de texto para evitar que el navegador indique errores de ortografía.
  • Utiliza menos atributos & en las entradas. Cuanto más atributos y entradas tengas, más lenta se cargará la hoja. Esto no es una preocupación para la hoja media, pero las hojas robustas como laD&D 5E Hoja por Rolloo laPathfinder (Comunidad)exceso de atributos & entradas pueden dar lugar a problemas de rendimiento si no se gestionan.

Chapistas & Plantillas de rollos

  • Evite las cascadas asíncronas. Siempre que sea posible, evita las cascadas asíncronas para los trabajadores de la hoja. Un ejemplo de esto es, getAttrs -> calculations -> setAttrs -> getAttrs -> calculations -> setAttrs… Una mejor manera de hacer esto es obtener todos los atributos que necesitarás, hacer todos los cálculos necesarios y luego usar un solo setAttrs.
  • Trabajadores de hojas sobre atributos calculados automáticamente. Los trabajadores de hojas se activan cuando ocurren eventos que mejoran el rendimiento de las hojas de personaje sobre atributos calculados automáticamente, ya que estos eventos ocurren con menos frecuencia.

Detalles de estilo del modo oscuro

  • Cambio de tema
    Cuando un usuario cambia al modo oscuro, el tablero virtual agrega la clase CSS específica .sheet-darkmode al elemento <body>. Al volver a encender el interruptor, esa clase desaparece.
  • Cambio de tema
    Al agregar opciones de color al final de tus hojas de CSS, envueltas en un body.sheet-darkmode { } , los usuarios verán el cambio cuando cambien.

Otro específico de Roll20

  • Evita !important. Siempre que sea posible, evita usar!important en CSS, ya que puede crear un efecto en cascada de cada vez más !important.
  • No incluyas hoja- para los nombres de clase de CSS en el HTMLhoja- se añade automáticamente a las clases de CSS en el HTML, por lo que es redundante repetirlo allí. Omitirlo también aumenta la legibilidad si se utilizan muchas clases.
    • Por ejemplo, en el HTML, en lugar de class="sheet-strRow", simplemente haz class="strRow". ADVERTENCIA: lo anterior no es cierto para las clases de elementos <rolltemplate>. Para esos, necesitas especificar el nombre completo de la clase (es decir, comenzando consheet-) o tus rolltemplates simplemente dejarán de funcionar.
  • Incluye un ancho mínimo. Incluir un ancho mínimo en la hoja ayudará con el redimensionamiento. Intenta no exceder el ancho predeterminado cuando se abre una hoja por primera vez, aproximadamente 800px-900px. Las hojas de personaje con una vista de NPC pueden ser más pequeñas y las hojas de PC elaboradas a veces son más grandes.
  • Utiliza ^{ } para traducciones en macros de botones. En tus macros de botones, al usar ^{key} se insertará la tecla correspondiente del archivo de traducción del idioma correspondiente. Esto hace que las plantillas de lanzamiento sean más adaptables a otros idiomas.

GitHub/Envío de hoja

  • Utilizagit branchpara tu trabajo en progreso. Crea una nueva rama para almacenar tu trabajo en progreso. Sólo fusione el código terminado en la rama maestraroll20-character-sheetscuando esté listo para un pull request. Esto ayudará a evitar enviar solicitudes de extracción con código incompleto, lo cual puede retrasar la fusión de tu código. Mejor aún, bifurca el repositorio roll20-character-sheets y envía tus solicitudes de extracción a través de GitHub. 
  • Incluye todas las imágenes en el repositorio de Git. Las imágenes deben incluirse en el repositorio de GitHub para facilitar el acceso, reducir las dependencias externas y simplificar las actualizaciones.

Lee más en Guía para Principiantes de GitHub.

HTML/CSS/Codificación General

Consejos generales que se aplican más allá de la creación de hojas de personaje para Roll20.

  • Intenta estar cerca del estándar XHTML. Por ejemplo, termina los elementos con una barra inclinada como esta<input ... />.
  • Usar estilos en línea como último recurso. Los estilos en línea son código menos mantenible y las hojas de estilo externas son casi siempre una mejor opción. Mantenga los atributos de estilo= en el HTML lo más reducido posible.
  • Escriba código legible. Si el código es más legible, es más fácil para los demás contribuir y colaborar. 18 consejos sobre cómo escribir código legible
  • Siga las guías generales de estilo de HTML/CSS. Cuando no haya contradicción con las mejores prácticas específicas de Roll20, siga las guías de estilo recomendadas para mantener su código consistente y más legible, como:
¿Fue útil este artículo?
Usuarios a los que les pareció útil: 25 de 37