For the complete documentation index, see llms.txt. This page is also available as Markdown.

Funciones sociales

All Out ofrece chat de texto y, opcionalmente, chat de voz para que lo uses en tus juegos

Leyendo el chat

Usa core_globals.server_on_chat_message_received cuando el código del juego necesita reaccionar a los mensajes normales del chat en el servidor:

ao_before_scene_load :: proc() {
    core_globals.server_on_chat_message_received = on_chat_message;
}

on_chat_message :: proc(player: Player, message: string) {
    log_info("% said %", {player.get_username(), message});
}

Referencia de la API de chat

Chat :: struct {
    Mode :: enum {
        DEFAULT;
        BUBBLE_ONLY;
    }

    set_mode :: proc(mode: Mode);
    server_send_message :: proc(message: string, player: Player = null);
    is_open :: proc() -> bool;
}

Chat.server_send_message es para código del lado del servidor, como los controladores de comandos de chat. Pasa jugador para dirigirte a un jugador, o déjalo null para enviarlo de forma general. Usa Chat.set_mode(.BUBBLE_ONLY) en el cliente local para juegos que quieran chat en burbujas sin el panel de chat estándar.

Comandos de chat

Los comandos de chat son sobre todo una herramienta para desarrolladores/administradores para pruebas y operaciones en vivo:

  • Iniciar rondas antes de tiempo / saltar oleadas

  • Otorgar conjuntos de objetos de prueba o moneda

  • Activar eventos del juego para depuración

Para crear un comando, escribe una proc y anótalo con @chat_command.

Los jugadores pueden escribir comandos en el chat anteponiendo /:

  • /start_round

  • /grant_test_loadout

  • /trigger_event meteor_shower

Los comandos de chat se ejecutan en el servidor. Usa Notifier.notify(player, "...") para enviar retroalimentación de vuelta a un solo jugador.

Comandos comunes de desarrollo/administración

Permisos

Usa anotaciones de permisos para controlar quién puede ejecutar un comando:

Anotación
Quién puede usarlo

@any

Todos los jugadores

@vip

Jugadores VIP y administradores

@youtuber

Jugadores youtuber y administradores

@owner

Propietario del juego y administradores

@owner_or_editor

Propietario del juego, editores y administradores

(ninguna)

Solo administradores

Al iniciar desde el editor, se permiten comandos de chat para iterar/probar más rápido.

Argumentos y parámetros opcionales

El primer parámetro siempre debe ser Player. Después de eso, puedes añadir argumentos (y asignarles valores predeterminados para hacerlos opcionales).

Por defecto, los comandos son solo para administradores.

Los tipos de argumento compatibles son string, tipos enteros, tipos de punto flotante, bool, y Player.

Los administradores pueden ejecutar:

  • /give_currency → da 100 monedas

  • /give_currency 500 → da 500 monedas

Cadenas con espacios

Encierra las cadenas entre comillas si contienen espacios:

Ejemplo:

Obtener el uso del comando

Los jugadores pueden añadir ? a un comando para ver la información de los parámetros:

Activación del chat de voz

Los jugadores controlan el chat de voz mediante la configuración de su cuenta y dispositivo. Los juegos no pueden activarlo por la fuerza ni eludir el permiso del micrófono, el control parental ni las restricciones de moderación.

La voz es posicional. El rango audible predeterminado es de 10 unidades del mundo:

Establece un rango positivo al iniciar la escena:

Voice.set_range cambia el rango de toda la escena. Los valores no positivos se ignoran.

Canales de comunicación

Cada jugador tiene máscaras de habla y escucha que se aplican tanto al chat de voz como al de texto. Dos jugadores pueden comunicarse cuando la máscara de habla del emisor se solapa con la máscara de escucha del receptor.

Los jugadores escuchan y hablan en todos los canales de forma predeterminada.

Moderación

All Out supervisa automáticamente el chat de texto y de voz para detectar comportamientos que violen nuestras directrices de la comunidad y desactivará las funciones sociales para las primeras infracciones o aplicará suspensiones a los reincidentes.

Si ves conductas inapropiadas repetidas o conductas que se cuelan por nuestra detección automática, informa al jugador usando el sistema de denuncias del juego o desde su perfil.

Si un jugador ha sido suspendido por error, indícale que vaya a contáctanos para revertir la acción.

Última actualización