Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
Introducción:
Felicitaciones por el excelente trabajo en Superb Survivor 2024 BETA. La mejora en la IA de los NPCs es notable y aporta un gran valor a la experiencia de juego. Esta propuesta busca llevar esa IA al siguiente nivel, creando NPCs que no solo reaccionen de forma inteligente, sino que también sean capaces de interactuar de manera significativa con el jugador y entre ellos, impulsando la narrativa y la jugabilidad emergente.
Visión:
Imaginemos un Project Zomboid donde los NPCs no son meros obstáculos o aliados genéricos, sino personajes con personalidades únicas, historias personales y motivaciones propias. NPCs que puedan formar relaciones complejas con el jugador, colaborar en misiones, traicionar, amar, odiar y, en última instancia, enriquecer la experiencia de juego con una narrativa dinámica y emergente.
Objetivos:
Transformar NPCs en compañeros de juego:
Dotar a los NPCs de personalidades únicas, trasfondos y motivaciones.
Implementar un sistema de relaciones dinámicas que evolucione con las acciones del jugador.
Asignar roles y habilidades específicas a los NPCs para fomentar la colaboración y la estrategia.
Permitir que los NPCs progresen y aprendan a lo largo del juego.
Crear un motor de historias interactivo:
Generar misiones dinámicas basadas en el contexto del juego, las relaciones entre personajes y las decisiones del jugador.
Diseñar historias personales para cada NPC que se desarrollen a lo largo del juego.
Incluir eventos mundiales y facciones que creen un mundo vivo y dinámico.
Implementar ramificaciones narrativas y consecuencias significativas para las decisiones del jugador.
Fomentar la interacción y la alianza con los NPCs:
Utilizar un modelo de lenguaje avanzado (como Bard de Google) para generar diálogos ricos y contextuales.
Implementar sistemas de reclutamiento, lealtad y romance.
Diseñar misiones conjuntas y objetivos compartidos para el jugador y los NPCs.
Implementación:
Aprovechar Braven's NPC Framework: Este framework modular y bien documentado proporciona una base sólida para crear NPCs complejos y personalizables.
Integrar un modelo de lenguaje avanzado: Utilizar un modelo como Bard para generar diálogos, tomar decisiones y crear historias dinámicas.
Desarrollar un sistema de IA sofisticado: Permitir que los NPCs aprendan, se adapten y tomen decisiones autónomas basadas en su personalidad, relaciones y objetivos.
Crear un motor de eventos y misiones: Generar eventos mundiales, misiones dinámicas y ramificaciones narrativas que respondan a las acciones del jugador y al estado del mundo.
Beneficios:
Mayor inmersión: Los jugadores se sentirán más conectados con el mundo del juego y sus habitantes.
Rejugabilidad: Las historias dinámicas y las relaciones cambiantes ofrecerán una experiencia de juego única cada vez.
Atractivo para nuevos jugadores: La posibilidad de jugar con compañeros controlados por IA atraerá a jugadores que no tienen amigos con quienes jugar.
Potencial para contenido generado por la comunidad: La flexibilidad del sistema permitirá a la comunidad crear sus propios NPCs, historias y misiones.
Conclusión:
Esta propuesta busca llevar la experiencia de Superb Survivor a un nuevo nivel, creando un mundo más vivo, dinámico e interactivo. Al combinar las fortalezas de Superb Survivor con las capacidades de un modelo de lenguaje avanzado y un sistema de IA sofisticado, podemos crear una experiencia de juego verdaderamente única y memorable.
Estoy a tu disposición para discutir esta propuesta en detalle y explorar posibles colaboraciones.
Atentamente,
[Tu nombre]
Lua
local bardAPI = require("bard_api") -- Asumiendo que tienes un módulo para interactuar con la API de Bard
function onNPCTalk(npc, player)
local context = {
npcName = npc:getName(),
playerHunger = player:getHunger(),
timeOfDay = getGameTime():getTimeOfDay()
}
local response = bardAPI.generateResponse(context)
npc:say(response)
end
En este ejemplo, antes de que un NPC hable, se recopila información contextual (nombre del NPC, hambre del jugador, hora del día) y se envía a Bard. Bard genera una respuesta adecuada al contexto, que luego el NPC dice al jugador.
-----------------------------------------------------------------------------------------------------------------------------------------
Ejemplo 2: Toma de decisiones basada en Bard:
Lua
function onNPCTurn(npc)
local options = {
"buscarComida",
"explorarZona",
"descansar"
}
local context = {
npcHealth = npc:getHealth(),
npcHunger = npc:getHunger(),
npcFatigue = npc:getFatigue()
}
local chosenAction = bardAPI.chooseAction(options, context)
if chosenAction == "buscarComida" then
npc:moveToClosestFoodSource()
elseif chosenAction == "explorarZona" then
npc:exploreNearbyArea()
elseif chosenAction == "descansar" then
npc:rest()
end
end
Aquí, el NPC tiene varias opciones de acción. Se recopila información sobre su estado (salud, hambre, fatiga) y se envía a Bard junto con las opciones. Bard elige la acción más apropiada según el contexto, y el NPC la ejecuta.
----------------------------------------------------------------------------------------------------------------------------------------
Ejemplo 3: Creación de una misión dinámica:
Lua
local bardAPI = require("bard_api")
function generateDynamicMission(player)
local context = {
playerName = player:getName(),
playerLocation = player:getLocation(),
currentWorldState = getWorldState() -- Información sobre el estado del mundo (eventos, facciones, etc.)
}
local mission = bardAPI.generateMission(context)
return mission
end
Esta función utiliza Bard para generar una misión personalizada para el jugador, teniendo en cuenta su nombre, ubicación y el estado actual del mundo del juego.
----------------------------------------------------------------------------------------------------------------------------------------
Notas importantes:
Estos son solo ejemplos básicos. La implementación real requerirá un desarrollo más complejo y personalizado.
Es importante tener en cuenta el equilibrio del juego y asegurarse de que la IA no sea demasiado poderosa ni predecible.
La integración con Bard requerirá el uso de su API y la gestión de posibles limitaciones de acceso o costos.