Kioreco / The-Shop-Next-Door

Juego creado para la asignatura de Juegos para Web y Redes Sociales
Apache License 2.0
0 stars 0 forks source link

The Shop Next Door - un juego por el equipo de Kioreco

Versión 0.1.0 2022.3.48f1 -> LTS


ÍNDICE


1. Cambios

1.1. Revisión 1: Prototipo

1.2. Revisión 2: Beta

1.3. Revisión 3: Gold Master

2. Introducción: The Shop Next Door

2.1. Descripción breve del concepto

2.2. Descripción breve de la historia y personajes

2.3. Propósito, público objetivo y plataformas

3. Monetización y modelo de negocio

3.1. Información sobre los usuarios de Kioreco

3.2. Modelo de negocio de Kioreco

3.3. Monetización de The Shop Next Door

3.4. Mapa de empatía

3.5. Caja de herramientas

3.6. Modelo de liezo

3.7. Tablas de productos y precios

4. Planificación y Costes

4.1. El equipo humano

4.2. Estimación temporal del desarrollo

4.3. Costes asociados

5. Mecánicas de Juego y Elementos de Juego

5.1. Descripción detallada del concepto de juego

5.2. Descripción detallada de las mecánicas de juego

5.2.1. Vida en la tienda

5.2.2. Vida personal

5.2.3. Resolución de la semana 16

5.3. Controles 16

5.4. Clientes y productos

5.5. Comportamiento de personajes

6. Trasfondo 25

6.1. Descripción detallada de la historia y la trama

6.2. Personajes

6.2.1. Telma

6.2.2. Gemma

6.2.3. Emma

6.3. Entornos y lugares

7. Arte

7.1. Estética general del juego

7.2. Concept Art

7.2.1. Hermanas

7.2.2. Madre

7.2.3. Clientes

7.2.4. Escenarios

7.3. Modelos 3D

7.3.1. Hermanas

7.3.2. Clientes

7.3.3. Escenarios

8.1. Diagrama de flujo

8.2. Menú de título e inicio de sesión

8.3. Menú de inicio

8.4. Menú de créditos

8.5. MatchMaking

8.6. InGame

8.7. GameOver

8.8. Menú de Pausa

8.9. Menú de Personalización

8.10. Tienda

9. Sonido

9.1. Sonido ambiente y música

9.2. Efectos de sonido

9.3. Lista de sonidos

10. Hoja de ruta del desarrollo

10.1. Hito 1: Prototipo

10.2. Hito 2: Beta

10.3. Hito 3: Gold Master

10.4. Hito 4: Lanzamiento

11. ANEXO:


1. Cambios

Aquí se incluirán todos los cambios que se realicen en el proyecto en las respectivas revisiones.

1.1. Revisión 1: Prototipo

28 de octubre de 2024

Objetivos alcanzados:

Objetivos en proceso:

Objetivos deseados para el próximo hito:

1.2. Revisión 2: Beta

Cosas revisión 2

1.3. Revisión 3: Gold Master

Cosas revisión 3


2. Introducción: The Shop Next Door


2.1. Descripción breve del concepto

The Shop Next Door es un juego competitivo de dos jugadores donde se debe mantener un buen equilibrio entre el trabajo y la vida personal para complacer a una madre de buena familia.

Cada jugador será representado por una hermana distinta, regentando su propio negocio. En el local tendrán que realizar varias tareas relacionadas con su tienda: atender clientes, limpiar el local, comprar suministros, reponer estantes… Al mismo tiempo, podrán manejar su horario de la tarde con las distintas labores a las que quiera dedicar su tiempo. Lo que decida hacer afectará de diversas maneras su trabajo en la tienda el día siguiente y principalmente servirá para crecer como persona.

Una partida completa, de una duración aproximada de 15 a 20 minutos, contemplaría una semana laboral de 5 días con sus respectivas tardes, un día de descanso y el domingo como día final. En este se evaluarán los resultados de ambas hermanas en torno a la labor hecha en la tienda y la evolución de su vida personal, donde será la madre quién dará la victoria a una de sus hijas.


2.2. Descripción breve de la historia y personajes

En The Shop Next Door se sigue la historia de dos hermanas, Gemma y Emma, y su madre, Telma. La madre tenía una tienda grande en la que vendía todo tipo de productos, pero ya se está haciendo mayor y no puede seguir regentándola. Fue entonces cuando decidió construir un muro y dividir la tienda en dos, dándole cada una de las mitades a sus hijas.

Les dijo que quien consiguiera sobrellevar mejor el negocio se iría llevando parte de su herencia. Además, no solo le importaba el negocio, sino que quería verlas crecer hacia mujeres de bien como ella, así que valoraría si también consiguen un buen balance con su vida personal y romántica.


2.3. Propósito, público objetivo y plataformas

The Shop Next Door es un juego de partidas cortas y consecutivas orientado a un público casual. Está enfocado para páginas web y dispositivos móviles, con la posibilidad de ser ejecutado en PC.

Tiene el objetivo de proporcionar momentos de diversión y entretenimiento entre amigos o desconocidos. Pretende diferenciarse del resto de juegos del género por la originalidad de la propuesta de la vida personal, generando situaciones cómicas y originales, así como no dejar de lado todo lo que supone dirigir un pequeño comercio.


3. Monetización y modelo de negocio


3.1. Información sobre los usuarios de Kioreco

Los usuarios a los que están dirigidos los juegos de Kioreco podrían ser definidos por su búsqueda de experiencias creativas. Además, serían jugadores casuales que dediquen un corto tiempo diario a un entretenimiento frenético y divertido. No necesitarían equipos con grandes requisitos, pudiendo lanzar los juegos en navegadores web y dispositivos móviles.

Aun así, se buscaría una base de jugadores menos casuales (midcores) que se viesen más incentivados a invertir su dinero en objetos o servicios especiales, lanzando además los juegos para PC.


3.2. Modelo de negocio de Kioreco

Kioreco busca la fidelización de los jugadores dentro de sus juegos, creando una base de usuarios adeptos dispuestos a invertir su dinero en productos ingame. Además, usará un sistema de donaciones / PWYC (paga lo que puedas) en el que se ofrecerán los juegos gratis como norma general para que los usuarios puedan conocer la empresa y sus creaciones, y afiliarse si el contenido es de su agrado. El sistema principal de distribución sería en itch.io, aunque se buscaría la expansión a plataformas como Steam. Se tendría un sistema de donaciones a parte en nuestras redes sociales y dentro del juego mediante plataformas como Ko-fi.

Por la búsqueda de clientes casuales y, en el caso específico de The Shop Next Door, compañeros contra los que puedan jugar, dicho modelo de negocio ayudaría a atraer una base amplia de usuarios que se asienten primeramente sobre las mecánicas del juego, y luego se vean incitados a invertir en productos dentro de la tienda. Además, dependiendo de la acogida de la empresa y sus productos, se desarrollarían una serie de productos de merchandising que ayuden a la financiación de los proyectos. También existirá un servidor de Discord de acceso público y moderado donde los usuarios podrían conversar y quedar para jugar en conjunto. Este tendría canales exclusivos para los donantes donde tendrían acceso a ventajas varias como avances exclusivos y contacto con los desarrolladores.


3.3. Monetización de The Shop Next Door

The Shop Next Door se plantea como un juego gratuito en el que se incluirían ciertos servicios y productos que se podrían comprar con una moneda de juego, que a su vez se podría adquirir mediante compras reales de manera más rápida. Esta moneda de juego se correspondería a la herencia que la madre otorgaría al final de cada partida a la hermana ganadora. Se incluirán anuncios opcionales que permitirá a la persona que lo desee duplicar sus ganancias.

Entre los productos que se ofrecen, aparte de un sistema de donaciones y canales exclusivos de Discord, entrarían productos como aspectos exclusivos y rotatorios (considerando colaboraciones con otras marcas) para el local, las hermanas y el teléfono que irían cambiando semanalmente, incluyendo nuevas skins cada cierto tiempo.

Para potenciar la fidelización de los usuarios y su permanencia en el juego se ofrecerían retos semanales donde el jugador deberá completar ciertas misiones, obteniendo objetos o dinero que mejoren la experiencia.


3.4. Mapa de empatía

El mapa de empatía de los usuarios de The Shop Next Door sería el siguiente:

Mapa De Empatia


3.5. Caja de herramientas

La caja de herramientas de Kioreco sería la siguiente:

imagen


3.6. Modelo de liezo

El modelo de lienzo o canvas de The Shop Next Door sería el siguiente:

imagen


3.7. Tablas de productos y precios

Por determinar.**


4. Planificación y Costes


4.1. El equipo humano

El equipo principal se compone de 6 miembros cada uno con una especialización diferente, pero con habilidades en distintas aptitudes. Las competencias quedarían resumidas en la siguiente tabla.

El control del progreso se realizará mediante los proyectos de GitHub, encargándose cada uno de los miembros de sus tareas asociadas y de crear nuevos issues cuando se necesiten. El proyecto contaría con los siguientes hitos:

Proyecto visto en GitHub:

imagen


4.3. Costes asociados

Se ha realizado un estudio de los costos estimados asociados al desarrollo de los cuatro meses del videojuego, desglosándolos entre costos directos e indirectos.

imagen


5. Mecánicas de Juego y Elementos de Juego


5.1. Descripción detallada del concepto de juego

The Shop Next Door es un juego de simulación y estrategia de carácter competitivo orientado a dos jugadores. Cada uno tomará el rol de una de las hijas de Telma, una madre con un negocio próspero que, debido a su edad y el tiempo que lleva regentándolo, ha decidido no trabajar más. Telma toma la decisión de dividir su tienda en dos partes iguales para poner a competir a sus hijas (Emma y Gemma), para ver quien es la más capaz de gestionar su propia tienda. Al final de la semana, junto con la gestión de sus vidas privadas, se determinará quien recibe la herencia de la madre.

El objetivo principal del videojuego es equilibrar las responsabilidades laborales y personales para asegurar el éxito del negocio, sin olvidar y descuidar las relaciones personales. Cada jugador deberá gestionar el día a día en su tienda, con tareas como atender a clientes, gestionar el inventario de la tienda, limpiar, contratar empleados y/o tomar decisiones sobre que suministros comprar y reponer. También, cada día, los jugadores tendrán que gestionar su tiempo libre, tomando decisiones que afectarán a lo largo de la semana a su desarrollo personal.

El juego se desarrolla en el transcurso de una semana laboral, que termina con una valoración final por parte de su madre Telma, la que decidirá quién de sus dos hijas merece esa ansiada herencia, haciendo un cómputo global de los dos aspectos en la vida de cada hija. Cada partida se estima en un tiempo de 15/20 minutos la cual es ofrecida a base de una experiencia rápida, competitiva, divertida y con situaciones un tanto cómicas a lo largo de esa apasionante semana.


5.2. Descripción detallada de las mecánicas de juego

Las mecánicas de The Shop Next Door se dividen en dos grandes bloques: vida en la tienda y vida personal.


5.2.1 Vida en la tienda**

Cada jugador deberá realizar diferentes tareas diarias para mantener la tienda y poder darle una gestión adecuada:


5.2.3. Resolución de la semana

Tras el transcurso de 5 días y 5 tardes, el juego se terminaría con una charla entre ambas hermanas con la madre. Ella decidirá teniendo en cuenta todo el cómputo de vida personal (pareja, amigos, tiempo libre...) y vida laboral (felicidad de los clientes, dinero, éxito de la tienda...) a quien dejará la herencia del negocio de su vida. Dicha herencia se corresponderá a la moneda de juego que luego se podrá utilizar para comprar en la tienda real.


5.3. Controles

The Shop Next Door es un point and click ligado al jugador, su cámara y su vida personal. Todos sus controles van ligados al ratón por lo que va a ser fácilmente jugado en móviles mediante un paso de controles a touchpad con el nuevo InputManager de Unity. Ratón:

TouchPad:


5.4. Clientes y productos

Se disponen de diferentes perfiles de clientes, se explica de forma superficial el tipo de clientes puesto que se desarrollan por completo en el apartado de comportamiento de personajes:

Se disponen de varios productos por categoría:


5.5. Comportamiento de personajes

Cliente básico:

Entra a la tienda una vez haya hecho la lista de la compra y busca la primera estantería a la que ir. Se acerca a la estantería, coge el elemento y siempre que tenga más elementos que comprar, busca la siguiente estantería a la que ir. Cuando no le queden más productos que comprar se acercará a la caja donde, si hay gente en la caja esperará su turno, si no hay gente, pasará a pagar y se irá de la tienda. Si es su turno en la caja y no tiene quien le atienda, esperará a que alguien venga. Si no tuviera hueco en la cola, independientemente de su estado emocional, se irá de la tienda disminuyendo su felicidad.

Si mientras está cogiendo algún elemento de la estantería tiene alguna duda con alguno de los elementos irá a preguntar a alguien. Una vez acabe, seguirá haciendo la tarea por donde la dejó.

Este cliente tiene un estado emocional compuesto de 2 estados: feliz y enfadado.

Sobre la felicidad y el enfado, se dispone de una variable perteneciente al intervalo [0, 1], donde 0 es estar feliz y 1 estar enfadado e irse. Irá aumentando en 0.05 con interacciones que lo propicien. Estos datos se modificarán atendiendo al comportamiento que esté teniendo el npc, por ejemplo, que tenga demasiada poca tolerancia y no acabe de comprar ningún cliente por esta razón. 

La transición entre ambos viene dada por los siguientes eventos:

Se ha elaborado una FSM y, para algunas transiciones se ha hecho una SFSM para favorecer la escalabilidad en un futuro, si se requiriera, del comportamiento básico de un NPC


Karen:

Es la variación 1 del cliente genérico. Tiene el mismo comportamiento básico a excepción de que es mucho más irascible e impulsiva que el resto de los clientes, por lo que tiene menos tolerancia a los sucesos que alteran sus emociones. Además, cuando esto suceda se irá a quejar al trabajador que tenga más cerca en la tienda (nunca al que está cobrando), o al propio jugador, a excepción de cuando esté en la cola y ya haya pagado.

Si no hubiera trabajadores contratados y el jugador está cobrando, este se acercará a quejarse igualmente al cajero, aunque no interrumpirá su tarea.

Si llegase a enfadarse por completo, se acercará a cualquier empleado, se quejará una última vez y saldrá de la tienda sin comprar.

Sobre la felicidad y el enfado, se dispone de una variable perteneciente al intervalo [0, 1], donde 0 es estar feliz y 1 estar enfadado e irse. Irá aumentando 0.10 cada vez, dado que se enfada más rápido que el cliente genérico.

Estos datos se modificarán atendiendo al comportamiento que esté teniendo el npc, por ejemplo, que tenga demasiada poca tolerancia y no acabe de comprar ningún cliente por esta razón.

Se ha realizado de forma similar al anterior: una SFMS.


Tacaño:

Es la variación 2 del cliente genérico. Este entra a la tienda, va a estanterías aleatorias cogiendo elementos, también aleatorios y cuando se canse, pagará y se irá de la tienda. Se enfadará únicamente con el dinero en la caja, el resto de los eventos (tienda sucia, esperar en la cola…) no le enfadan, a excepción de si no tiene hueco en la cola.

Tiene un presupuesto establecido, y su reacción en la caja dependerá de cuánto se pase de ese presupuesto:

En lo que respecta al comportamiento visual se va a comportar muy parecido al cliente normal, ya que la única diferencia es su reacción en la caja. Debido al tipo de demostración elegida al jugador de algunas reacciones o emociones de los clientes, más allá de su apariencia física y que no va a ser tan habitual como el cliente genérico se acompañará de sonido espacializado (de gritos) cuando suceda este comportamiento.

Se ha implementado un FSM.


El niño:

Entra, se mueve muy rápido, irá moviéndose a pasillos aleatorios manchando todo hasta que el jugador le eche de la tienda.

Si pasa cierto tiempo sin que el jugador le eche de la tienda, este irá aumentando la frecuencia de manchas en la tienda y su velocidad hasta que llegue a su límite (minuto y medio) y se vaya.

La frecuencia de manchas irá aumentando cada 30 segundos que pase en la tienda, pasando de 1 mancha en cada posición, a 1 en la posición y otra de camino, a 1 en la posición y dos en el camino.


Trabajador:

El trabajador tiene 3 labores que desarrollar: reponer estanterías, cobrar a los clientes en la caja y limpiar el suelo cuando esté sucio. Cualquiera de sus acciones puede verse interrumpida en cualquier momento por algún cliente, cuando la interrupción termine volverá con la tarea que estaba realizando.

La acción prioritaria siempre será atender en la caja, donde, si no tiene que hacer ninguna actividad (tienda limpia, nadie en la caja y todo repuesto), se irá a la caja a esperar a que vengan clientes

Su comportamiento se basa en una SFSM y HFSM

FSM primer nivel:

FSM segundo nivel:

La imagen representa la condición obligatoria para poder cambiar a ese estado, pero a la elección del estado, o la permanencia en el mismo, al que se cambie se hará de la siguiente forma:

En atender caja:

En el caso de limpiar y reponer: siguiendo con la norma establecida de que se cumpla la condición para que la transición suceda, tenemos las mismas situaciones:

Los valores elegidos podrán ser modificados si una vez implementado se observa un gran balance de las decisiones, como puede ser que esté mucho tiempo cobrando y el resto de las acciones no las haga, o se quede en un estado, aunque no tenga que hacer nada más en ese estado.

De esta manera, cabría la posibilidad de que desde un estado pudiera cambiar a otro o permanecer en el estado.

La representación visual al jugador de estados de los clientes tales como enfado, felicidad, duda, queja… se mostrará encima de los clientes, como sucede en los sims:


6. Trasfondo


6.1. Descripción detallada de la historia y la trama

Telma es una señora de bien. Tiene dos hijas y un marido sepultado. A su edad está empezando a dolerle en la espalda, las piernas, las manos y en ocasiones en las cejas, pues el ceño fruncido y sus respectivas arrugas cuestan llevarlas todos los días. 

Telma tenía una tienda. Era grande, coqueta y tenía una clientela asegurada, en definitiva, un negocio exitoso. El problema vino cuando sus manos ya no podían ni contar el dinero de la caja. Fue entonces cuando decidió deshacerse de todo. No habría más ropa que doblar, libros que colocar ni empleados que gritar. 

Claro está que no quería que su negocio acabase enterrado bajo el polvo, así que empezó a susurrar a sus hijas. A Gemma le dijo que con la tienda conseguiría el dinero suficiente para comprarse aquella buena casa que vio a las afueras. A Emma simplemente le dijo que podría comprarse las chuminadas que quisiera. Aquello fue solo la semilla, pero no fue hasta que habló de herencias que sus hijas no se agarraron de los pelos para coger las llaves de la tienda. 

Entonces construyó un muro y duplicó las llaves. Cada una de sus hijas regentaría una tienda, y la que consiguiese volver a florecer su negocio se llevaría con él la herencia que tanto ansiaban. 


6.2. Personajes


6.2.1. Telma

Telma es una mujer mayor cuyo marido murió hace años. Es una persona seria y recatada, educada en una familia de dinero y con sus costumbres bien arraigadas. Siempre ha sido independiente y capaz de regentar su negocio con éxito, pero los efectos de la edad le han limitado sus capacidades motrices, teniendo que jubilarse. Tiene personalidad y apariencia similar al personaje de Emily Gilmore, no manteniendo una relación afectuosa con sus hijas, sino más supervisora y controladora.


6.2.2. Gemma

Gemma es una de las hermanas que el jugador podrá controlar. Tiene una personalidad seria y cansada, siempre consumida por todos los aspectos de su vida por querer tenerlo todo bajo control. Tiene el pelo corto por los hombros, oscuro con reflejos morados y un estilo simple y clásico, alisado casi a diario. Es la hermana mayor y por tanto tiene una necesidad superior de agradar y complacer a su madre. Tiene una relación complicada con su hermana, con quien se lleva pocos años y, por tanto, se compara con ella continuamente.


6.2.3. Emma

Emma es la hermana pequeña que el jugador podrá controlar. Tiene una personalidad mucho más desenfadada y aparentemente despreocupada, pero en realidad siente una desilusión e inquietud por no saber cómo llevar la vida. Siente que ha fracasado y que no ha conseguido cumplir los estándares que debería con su edad, sin embargo, se siente tan abrumada por estos pensamientos que no es capaz de ponerse a trabajar en dichos aspectos. Intenta mantener una apariencia y posición en la vida desinteresada como medida protectora para que su mundo no se le eche encima. Siente interés por su hermana y desearía llevarse mejor, pero la siente inaccesible y tampoco sabe cómo relacionarse con ella pues siempre la nota enfadada. Tiene una apariencia alegre, con el pelo ondulado teñido pelirrojo con las raíces oscuras asomando, y suele llevar ropa colorida en cierta medida.


6.3. Entornos y lugares

La tienda que ambas hermanas regentará debe ser grande y simétrica, dividida por un muro. Las paredes exteriores serán cada una de los colores representativos de cada hermana (rosa y amarillo), y las interiores azules. En las vecindades se verán tiendas que hagan referencias a juegos realizados con anterioridad por el equipo de desarrollo.

Habrá mínimo cinco modelos de tienda diferentes que se elegirán aleatoriamente al principio de cada partida. Cada uno de estos tendrán zonas asignadas donde se podrán vender productos de distintos tipos: ropa, comida, entretenimiento y libros y papelería.


7. Arte

7.1. Estética general del juego

La estética general del juego sería cartoon, simple y acogedora. Tanto el escenario como los personajes mantienen una estética lowpoly destacada por su diseño sencillo y adorable. Este estilo se utiliza en contraste con la historia de familia desestructurada y la agresividad que suelen tener los juegos competitivos. Aparte de ser visualmente más interesante para el público objetivo, ofrece la posibilidad de simplificar los escenarios y personajes para evitar bajadas de rendimiento al lanzarlo en navegadores web.


7.2. Concept Art


7.2.1. Hermanas

Las hermanas Emma y Gemma, presentan una apariencia opuesta definida por sus respectivas personalidades.

Gemma siendo la más seria y responsable de las dos, muestra físicamente más formalidad que su hermana. Siempre viste casual, con una camiseta sencilla y unos vaqueros, pero con la dignidad propia de su madre. Tiene el pelo corto, liso y negro desde nacimiento y así se lo ha dejado. Es una persona algo irritable y que suele evitar los cambios bruscos.

Por otro lado, Emma es algo alocada y despreocupada. Tiene el pelo rizado, largo y teñido de rojo cobrizo, en contra de las opiniones de su madre ya que seguir las normas no es algo que le guste hacer. De las dos, también es la más expresiva, aunque a veces no le convenga serlo, por esa razón siempre viste con un mono gris y una camiseta blanca con rayas amarillas.

Referencias para Gemma:

imagen

Referencias para Emma:

imagen

Primeros bocetos:

imagen

Hoja de expresiones de Gemma:

imagen

Concepts de los modelos ingame de las hermanas:

imagen


7.2.2. Madre

La madre, Telma, es una señora regia. Tiene el ceño constantemente fruncido y el pelo corto platino. Se caracteriza por tener un rizo rebelde en el centro de la cara y pendientes dorados. Su forma debe ser triangular para representar la estabilidad y presencia que tiene al presentarse en una sala, y debe demostrar el dinero y el estilo adinerado que la representa. Una clara referencia para su diseño y personalidad es Emily Gilmore de Gilmore Girls.

imagen

Concepts:

imagen

Hoja de Expresiones:

imagen

No haría falta crear el modelo 3D ya que no va a aparecer dentro de este hasta el final y su aparición será en escenas dibujadas.


7.2.3. Clientes

Para los clientes se ha decidido crear unos modelos generales para agilizar el proceso y añadir algún tipo de característica distintiva en alguno de ellos que cuentan con una mecánica única.

imagen

Turn around del modelo genérico

imagen


7.2.4. Escenarios

El escenario en el que se jugará deberá ser amplio y representar una tienda. Ambas tiendas deben estar conectadas pared con pared, pero sin poder pasar de una a otra. Tendrán estanterías y muebles para poder exponer los productos, y una caja registradora donde cobrar los clientes. Habrá mínimo 5 variaciones de tiendas con secciones diferentes, las paredes interiores serán azules y las exteriores rosas (para el host) y amarillas (para el cliente).

Un boceto de la primera tienda es el siguiente:

imagen


7.3. Modelos 3D

Los modelos deberán simple para no añadir sobrecarga de geometría y apoyar el estilo simple y adorable que se necesita.

7.3.1. Hermanas

Las hermanas dentro del juego mantendrán una apariencia similar a los clientes, pero diferenciada por sus modelos más llamativos. Además, sobre sus cabezas tendrán un señalador como el plumbob de los juegos de Los Sims.

Los modelos sin texturizar son los siguientes (Emma y Gemma):

imagen


7.3.2. Clientes

Los clientes deberán ser diferenciables entre sí según los distintos arquetipos que representen. Además, deberá haber varias variaciones de colores y géneros de cada uno.

imagen

7.3.3. Escenarios

El primer modelo de tienda simple que permitirá vender comida y ropa sería:

imagen


8. Interfaces


8.1. Diagrama de flujo

El diagrama de flujo entre pantallas y durante una partida quedaría de la siguiente manera:

imagen


8.2. Menú de título e inicio de sesión

Un boceto de como irían los distintos menús sería:


8.3. Menú de inicio

Un boceto de cómo sería el menú de inicio sería:


8.4. Menú de créditos

Concepto por realizar.


8.5. MatchMaking

Un boceto de cómo sería la escena de matchmaking sería el siguiente:


8.6. InGame

Un boceto de cómo se vería la escena de juego con la interfaz ingame sería:


8.7. GameOver

Un boceto de cómo se vería la escena Game Over sería:


8.8. Menú de Pausa

Concepto por realizar.


8.9. Menú de Personalización

Concepto por realizar.


8.10. Tienda

Concepto por realizar.


9. Sonido


9.1. Sonido ambiente y música

Hay dos temas diferenciados, uno para la parte de menú y otra ingame. El primero se caracteriza por ser una música tranquila que incite a jugar, el segundo es un poco más animado para no perder el objetivo del juego: una competición.

Música por concretar: sin derechos de distribución ni uso.


9.2. Efectos de sonido

Los efectos de sonidos servirían como feedback auditivo para el jugador, sobre todo en ocasiones importantes, como puede ser: Que un cliente entra en la tienda, que los clientes empiezan a molestarse y a murmurar que se van a ir de la tienda, comprar un empleado nuevo.

Sin concretar: sin derechos de distribución ni uso.


9.3. Lista de sonidos

Por concretar.


10. Hoja de ruta del desarrollo


10.1. Hito 1: Prototipo

Para este hito debe tenerse el juego planteado y bien definidas las mecánicas cores del juego. Pueden existir errores, pero debe ser estable y estar bien concretado en el GDD. Además, se debe empezar con el marketing con la creación de redes sociales y tener preparada una página web que sirva como porfolio.


10.2. Hito 2: Beta

Para este hito se deben tener la mayoría de los assets definitivos y los bugs importantes corregidos. También se tiene que ver una evolución clara con respecto a la versión anterior en cuanto a mecánicas y estética.


10.3. Hito 3: Gold Master

El juego debe estar preparado para su lanzamiento, tanto por el equipo de producción como el de marketing. No debe existir ningún error crítico y tiene que haber una mejora considerable de jugabilidad /rejugabilidad, siendo un producto atractivo y listo para ser comercializado.


10.4. Hito 4: Lanzamiento

Para el lanzamiento se deberá organizar una última campaña de lanzamiento que involucre la publicación del juego. Esta se compondrá de varios anuncios en redes sociales y promociones que ayuden a dar a conocer al juego.


11. ANEXO:

Tabla de percepciones cliente básico:

Nombre Implementación Acceso
Tiene la lista hecha Cuando tenga la lista completa (el número de elementos sea mayor que 0) podrá comenzar su objetivo en la tienda PULL
Buscar estantería donde está el producto Pide a un script (el encargado de gestionar la tienda: TiendaManager) la posición de qué estantería tiene ese producto PUSH
Tiene más productos que comprar Consulta la extensión de la lista de la compra y mira si es mayor que 0 PULL
Puedo coger toda la cantidad de este producto TiendaManager gestiona el coger elementos de una estantería, si no puede coger todos se le devuelve -1 PUSH
Tengo alguna duda de los productos De forma aleatoria, dirá si un tiene duda o no (número aleatorio entre 0 y 1, false o true) PULL
Quién está cerca para preguntar Calcula la distancia a cada trabajador y va al más cercano PULL
Está en destino Comprueba la distancia a la posición a la que se le ha mandado PULL
Hay hueco en la cola Le dice al TiendaManager que quiere ponerse a la cola y esta le devuelve la posición que le toca. Devuelve -1 si no tiene hueco PUSH
Puedo avanzar en la cola Para el resto de los clientes de la cola se lanza un evento cuando alguno de los clientes haya abandonado su sitio PUSH
Estoy primero en la cola Consulta su posición en la cola y mira si es 0 o no PULL
Hay cajero Cuando haya alguien en la caja se lanza un evento para actualizar la variable del cliente PUSH
Puedo dar propina Consulta su estado de ánimo y mira si puede darla o no PULL
Cuánto tiempo ha pasado El cliente calcula su tiempo de espera, por ejemplo: espera mientras paga, antes de irse PULL
Estoy feliz / enfadado Consulta su propio estado de ánimo y mira si ha cambiado en algún momento PULL
Me tengo que enfadar Espera a recibir un evento que le cambie el estado de ánimo PUSH
He tocado un charco Se lanza un evento que ralentice el movimiento del cliente al coger el charco PUSH

Tabla de acciones cliente básico:

Nombre Implementación Efecto
Andar El navmesh se encarga de mover al agente a la posición que se le mande El personaje se mueve hasta el destino
Buscar estantería Coge el primer elemento de la lista de la compra y le pide al TiendaManager la posición de esa estantería
Coger de la estantería Le dice al TiendaManager la cantidad de productos y el nombre del producto que va a coger El número de productos a coger se actualizará en el stock de la estantería. Nunca será menor a 0
Preguntar al empleado Espera 2 segundos al lado del empleado, este ha interrumpido durante ese tiempo su tarea. Interrumpe la tarea del empleado influyendo en la tienda
Esperar turno en la cola Espera en su posición en la cola hasta que este cambie Se añade un cliente a la cola
Pagar Se actualiza el dinero del jugador, la UI del dinero, y espera el tiempo de cobro antes de irse El dinero del jugador aumenta
Enfadarse Aumenta la variable de estado de ánimo del cliente acercándose al umbral del enfado. Si este llega al límite, se va de la tienda.
Dar propina Si el cliente se mantiene feliz, pagará un 21% extra, a modo de propina, de lo que haya supuesto la compra Aumenta aún más el dinero del jugador

Tabla de percepciones Karen:

Como es una variación del anterior, las percepciones del anterior están marcadas en gris para diferenciarlo de las nuevas percepciones y facilitar la lectura.

Nombre Implementación Acceso
Tiene la lista hecha Cuando tenga la lista completa (el número de elementos sea mayor que 0) podrá comenzar su objetivo en la tienda PULL
Buscar estantería donde está el producto Pide a un script (el encargado de gestionar la tienda: TiendaManager) la posición de qué estantería tiene ese producto PUSH
Tiene más productos que comprar Consulta la extensión de la lista de la compra y mira si es mayor que 0 PULL
Puedo coger toda la cantidad de este producto TiendaManager gestiona el coger elementos de una estantería, si no puede coger todos se le devuelve -1 PUSH
Tengo alguna duda de los productos De forma aleatoria, dirá si un tiene duda o no (número aleatorio entre 0 y 1, false o true) PULL
Está en destino Comprueba la distancia a la posición a la que se le ha mandado PULL
Hay hueco en la cola Le dice al TiendaManager que quiere ponerse a la cola y esta le devuelve la posición que le toca. Devuelve -1 si no tiene hueco PUSH
Puedo avanzar en la cola Para el resto de los clientes de la cola se lanza un evento cuando alguno de los clientes haya abandonado su sitio PUSH
Estoy primero en la cola Consulta su posición en la cola y mira si es 0 o no PULL
Hay cajero Cuando haya alguien en la caja se lanza un evento para actualizar la variable del cliente PUSH
Puedo dar propina Consulta su estado de ánimo y mira si puede darla o no PULL
Cuánto tiempo ha pasado El cliente calcula su tiempo de espera, por ejemplo: espera mientras paga, antes de irse PULL
Estoy feliz / enfadado Consulta su propio estado de ánimo y mira si ha cambiado en algún momento PULL
Me tengo que enfadar Espera a recibir un evento que le cambie el estado de ánimo PUSH
He tocado un charco Se lanza un evento que ralentice el movimiento del cliente al coger el charco PUSH
Quién está cerca para quejarse Calcula la distancia a cada trabajador y va al más cercano PULL
Cuantos empleados hay Pregunta los empleados trabajando para saber a quién ir a quejarse PUSH
Puedo quejarme Comprueba si se ha enfadado y si está en una condición donde se puede enfadar (no está en la cola ni ha pagado todavía) PULL

Tabla de acciones Karen:

Nombre Implementación Efecto
Andar El navmesh se encarga de mover al agente a la posición que se le mande El personaje se mueve hasta el destino
Buscar estantería Coge el primer elemento de la lista de la compra y le pide al TiendaManager la posición de esa estantería
Coger de la estantería Le dice al TiendaManager la cantidad de productos y el nombre del producto que va a coger El número de productos a coger se actualizará en el stock de la estantería. Nunca será menor a 0
Esperar turno en la cola Espera en su posición en la cola hasta que este cambie Se añade un cliente a la cola
Pagar Se actualiza el dinero del jugador, la UI del dinero, y espera el tiempo de cobro antes de irse El dinero del jugador aumenta
Enfadarse Aumenta la variable de estado de ánimo del cliente acercándose al umbral del enfado. Si este llega al límite, se va de la tienda.
Dar propina Si el cliente se mantiene feliz, pagará un 21% extra, a modo de propina, de lo que haya supuesto la compra Aumenta aún más el dinero del jugador
Quejarse al empleado Cuando se haya enfadado, espera 2 segundos al lado del empleado, este ha interrumpido durante ese tiempo su tarea. Interrumpe la tarea del empleado influyendo en la tienda

Tabla de percepciones Tacaño:

Tabla de percepciones:

Al igual que con Karen, las nuevas percepciones de este NPC estarán en blanco para facilitar la lectura.

Hay algunas percepciones del NPC básico que no necesita tener como, por ejemplo: tiene la lista de la compra hecha, puesto que este no tiene una lista, si no que tiene un presupuesto.

Por otro lado, hay algunas percepciones que comparte con el NPC general, pero la implementación es diferente, como es el caso de dar propina.

Nombre Implementación Acceso
Buscar estantería donde está el producto Pide a un script (el encargado de gestionar la tienda: TiendaManager) la posición de qué estantería tiene ese producto PUSH
Tiene más productos que comprar Consulta la extensión de la lista de la compra y mira si es mayor que 0 PULL
Puedo coger toda la cantidad de este producto TiendaManager gestiona el coger elementos de una estantería, si no puede coger todos se le devuelve -1 PUSH
Tengo alguna duda de los productos De forma aleatoria, dirá si un tiene duda o no (número aleatorio entre 0 y 1, false o true) PULL
Está en destino Comprueba la distancia a la posición a la que se le ha mandado PULL
Hay hueco en la cola Le dice al TiendaManager que quiere ponerse a la cola y esta le devuelve la posición que le toca. Devuelve -1 si no tiene hueco PUSH
Puedo avanzar en la cola Para el resto de los clientes de la cola se lanza un evento cuando alguno de los clientes haya abandonado su sitio PUSH
Estoy primero en la cola Consulta su posición en la cola y mira si es 0 o no PULL
Hay cajero Cuando haya alguien en la caja se lanza un evento para actualizar la variable del cliente PUSH
Cuánto tiempo ha pasado El cliente calcula su tiempo de espera, por ejemplo: espera mientras paga, antes de irse PULL
Me tengo que enfadar Espera a recibir un evento que le cambie el estado de ánimo PUSH
He tocado un charco Se lanza un evento que ralentice el movimiento del cliente al coger el charco PUSH
Tengo presupuesto Comprueba si tiene un presupuesto establecido PULL
Cuánto ha sido mi compra Comprueba cuánto le cuestan los productos que ha cogido PULL
Cuánto me ha sobrado Comprueba si la cantidad de dinero comprada es menor que el presupuesto. Necesario para saber cuánta propina da PULL
Cuánto dinero me he pasado Comprueba cuánto dinero se ha pasado del presupuesto inicial PULL
Puedo dar propina Consulta cuánto dinero le ha sobrado PULL
Estoy enfadado Si se ha pasado mucho dinero del presupuesto se enfada por completo y se va PULL

Tabla de acciones Tacaño:

Nombre Implementación Efecto
Andar El navmesh se encarga de mover al agente a la posición que se le mande El personaje se mueve hasta el destino
Buscar estantería Coge el primer elemento de la lista de la compra y le pide al TiendaManager la posición de esa estantería
Coger de la estantería Le dice al TiendaManager la cantidad de productos y el nombre del producto que va a coger El número de productos a coger se actualizará en el stock de la estantería. Nunca será menor a 0
Esperar turno en la cola Espera en su posición en la cola hasta que este cambie Se añade un cliente a la cola
Pagar Se actualiza el dinero del jugador, la UI del dinero, y espera el tiempo de cobro antes de irse El dinero del jugador aumenta
Enfadarse y quejarse / Hacer un escándalo Si se enfada sucede un evento de sonido y espera en la caja hasta que haya acabado. Se va sin pagar y sin comprar
Dar propina Si le ha sobrado dinero devuelve la diferencia entre el presupuesto y el precio de la compra Aumenta aún más el dinero del jugador

Tabla de percepciones del niño:

Nombre Implementación Acceso
Buscar punto donde ir De una lista de checkpoints de posiciones donde puede ir elegirá uno aleatorio PUSH
Hay mancha en el punto Una vez esté en el punto comprueba si ya hay una mancha o no (raycast en su posición) PULL
Me han echado Recibirá un evento que le diga si ha sido echado de la tienda por el jugador. PUSH
Ha pasado el tiempo Comprueba si ya ha pasado minuto y medio para irse o si ha pasado el tiempo para aumentar su velocidad PULL
Me puedo ir Comprueba si reúne todos los requisitos para irse PULL
Aumento manchas por movimiento Comprueba si reúne todos los requisitos para aumentar la cantidad de las manchas (no solo mancha en el destino si no también en el camino al destino) PULL

Tabla de acciones del niño:

Nombre Implementación Efecto
Andar El navmesh se encarga de mover al agente a la posición que se le mande El personaje se mueve hasta el destino
Buscar punto aleatorio Coge una posición aleatoria de la lista de puntos que puede visitar. Siempre será diferente del punto al que se encuentra En ese punto aparecerá una mancha
Manchar Generará en un punto intermedio o en el destino final (según la frecuencia de mancha) una mancha Ralentiza a los NPCs, los enfada y aumenta el % de suciedad de la tienda, y, por ende, entrará mucha menos gente

Tabla de acciones Trabajador:

Nombre Implementación Acceso
Está la tienda sucia Consulta el % de suciedad PUSH
Hay clientes en la cola Consulta la extensión de la cola del TiendaManager PUSH
Estantería vacía Recibe un evento cuando una estantería esté baja de suministros (menor que 8 unidades por producto) PUSH
Es interrumpido Recibe un evento cuando es interrumpido PUSH
Sigo cobrando Comprueba si sigue cobrando o si se va a otra a otra tarea siguiendo una fórmula PULL
Sigo limpiando Comprueba que el % de suciedad no sea 0 o si se va a otra tarea de acuerdo con la fórmula PULL
Sigo reponiendo Comprueba si quedan más estanterías que reponer o si se va a otra tarea siguiendo la fórmula PULL
Hay alguien cobrando Consulta si no hay nadie cobrando para ir él PUSH

Tabla de percepciones Trabajador:

Nombre Implementación Efecto
Andar El navmesh se encarga de mover al agente a la posición que se le mande El personaje se mueve hasta el destino
Reponer estantería Va al almacén, coge la cantidad de producto que necesite rellenar la estantería y lo rellena. El stock de la estantería aumenta y disminuye el del almacén
Cobrar Realiza una animación Avanza la cola de los clientes
Limpiar Anda hacia la posición de la mancha y salta la animación Disminuye el % de suciedad de la tienda
Escuchar cliente Espera quieto al lado del cliente a que acabe la interacción

2