3r Reto (SSC 2019). La grieta del invocador

Lol

Enunciado:

Bienvenidos seáis todos a la grieta del invocador. En esta ocasión no intentaremos destruir el nexo del equipo rival, sino que emplearemos programación en Shell Script para recoger inteligencia que nos ayudará en nuestras próximas batallas en la grieta del invocador. En este desafío, vamos calcular cuáles son las 10 parejas de personajes más frecuentemente empleadas en partidas de ranking ganadas en las últimas temporadas de League of Legends.

Ficheros de trabajo:

Para poder realizar este pequeño programa, vamos a trabajar con varios ficheros.

El fichero champions.csv contiene una pequeña base de datos de campeones de League of Legends. Más concretamente, cada línea contiene registros de campeones de League of Legends con el identificador numérico del campeón y su nombre. Por ejemplo, las primeras líneas de este fichero son:

1,Annie
2,Olaf
3,Galio
4,Twisted Fate
5,Xin Zhao

El fichero games.csv contiene estadísticas de más de 50.000 partidas de ranking de League of Legends en los últimos años. En cada partida, se enfrentan dos equipos (1 contra 2) formados por 5 componentes cada uno. En este fichero, la información también está organizada en filas y columnas. Cada fila contiene el registro de una partida de ranking de League of Legends, mientras que cada columna contiene uno de los campos de del registro que representa a la partida de League of Legends. Más concretamente, contamos con las siguientes columnas:

  • gameId: El identificador de la partida de ranking
  • creationTime: Marca de tiempo de creación de la partida
  • gameDuration: Duración en segundos de la partida
  • seasonId: Identificador de la temporada de juego
  • winner: Equipo ganador de la partida (1 si ha ganado el primer equipo, 2 si ha ganado el segundo)
  • firstBlood/Tower/Inhibitor/Baron/Dragon/RiftHerald : Equipo que realizó la primera sangre, torre, inhibido, barón, dragón, o heraldo (0: ninguno, 1: primer equipo, 2: segundo equipo)
  • t1_champXid: Identificadores de los 5 componentes del primer equipo.
  • t2_champXid: Identificadores de los 5 componentes del segundo equipo.
  • t1_champX_sumY: Identificador del Y-ésimo hechizo seleccionado por el X-ésimo componente del primer equipo.
  • t2_champX_sumY: Identificador del Y-ésimo hechizo seleccionado por el X-ésimo componente del segundo equipo.
  • t1_ELEMKills: Número de elementos destruidos por el primer equipo durante la partida, donde ELEMpuede ser tower, inhibitor, baron, dragon, riftHerald.
  • t2_ELEMKills: Número de elementos destruidos por el segundo equipo durante la partida, donde ELEMpuede ser tower, inhibitor, baron, dragon, riftHerald.
  • t1_banX: El identificador del X-ésimo personaje prohibido por el equipo 1 para la partida.
  • t2_banX: El identificador del X-ésimo personaje prohibido por el equipo 2 para la partida.

En total, cada registro tiene 61 columnas o campos, aunque evidentemente no todos serán útiles para computar la solución buscada. Parte de tu trabajo será identificar qué columnas resultan interesantes para el cálculo de la solución final.

Deberás escribir un Shell Script que genere un archivo llamado result.csv con el siguiente formato de ejemplo:

Ahri,Ashe,1502
Camille,Ezreal,892
Ekko,Dr. Mundo,777
Fizz,Caitlyn,650
Gnar,Ezreal,578
Fiora,Irelia,452
Janna,Graves,321
Jax,Jinx,245
Ashe,Corki,151
Katarina,Lee Sin,102

Se trata de un fichero de 10 filas con las 10 parejas que han coincidido más veces en equipos ganadores. En cada fila tenemos el nombre de una pareja y el número de veces que dicha pareja ha coincidido en equipos ganadores. A modo de ejemplo, la primera línea significa que Ahri y Ashe han coincidido en 1502 equipos ganadores. Es decir, en 1502 batallas, Ahri y Ashe formaban parte de los equipos que ganaron.

Como puede apreciarse, cada uno de los campos de información está separado por comas (sin separación de espacios entre ellos). Además, el fichero lista las parejas en orden descendente de uso en partidas ganadas. Por tanto, el resto de parejas que pueda haber, habrán coincidido en menos de 102 equipos ganadores. El ejemplo proporcionado es simplemente un ejemplo y por tanto no es la solución final específica del script.

Evaluación del script:

Para evaluar el script realizado se tendrán en cuenta los siguientes aspectos:

  • El fichero generado como resultado debe llamarse result.csv.
  • Que las 10 parejas identificadas en el fichero se correspondan con las 10 parejas que más hayan formado parte de equipos ganadores
  • Que el valor de cada pareja sea el correcto
  • El tiempo empleado en computar la solución

Importante:

  • Cuando termines, deberás enviar un único fichero con extensión “.sh” a través del siguiente enlace Envío de scripts.

  • No pongas tu nombre dentro del fichero, puesto que se realizará una revisión a ciegas.

2º Reto (SSC 2019)

Enunciado:

En este reto tendrás que implementar un Shell Script que permita gestionar los libros de la biblioteca del centro a través de 3 ficheros: libros.bd, usuarios.bd y prestamos.bd, los cuáles deben de tener el siguiente formato:

  • libros.bd:
    • id_libro,título,autor,genero,año,estantería,prestado
  • usuarios.bd:
    • id_usuario,nombre,apellido1,apellido2,curso,num_préstamos
  • prestamos.bd:
    • id_prestamo,id_libro,id_usuario

El Shell Script deberá ofrecer las siguientes operaciones a través de un menú:

  • Gestión de libros:
    • Alta
    • Baja (a través del id)
    • Consulta (a través del id o nombre)
  • Gestión de usuarios:
    • Alta
    • Baja (a través del id)
    • Consulta (a través del id o nombre)
  • Gestión de préstamos:
    • Alta
    • Baja (a través del id)
    • Listado
    • Consulta (a través del id de usuario o del id de libro)
  • Salir

Algunas aclaraciones:

  • Los id de cada fichero serán autoincrementados y no se repetirán.
  • Puedes separar los campos como quieras, pero en un mismo campo, puede haber espacios en blanco, por lo que no puedes utilizar el espacio en blanco como separador de campos.
  • Las consultas se podrán hacer a través de los campos arriba indicados. Por ejemplo, para libros, se ofrecerán dos opciones: buscar por id buscar por nombre.
  • El listado de préstamos devolverá todos los préstamos realizados.
  • Los libros prestados, no se podrán volver a prestar.
  • Un mismo usuario, sólo podrá tener 3 pedidos al mismo tiempo.
  • No se podrán dar de baja usuarios o libros con préstamos pendientes.
  • Cuando se borra un libro, un usuario o un préstamo, sus ids (que quedan libres) no hace falta que se vuelvan a reutilizar en un futuro.

Se valorará positivamente:

  • Que en el alta de préstamos, se muestren facilidades para elegir un libro y un usuario. Por ejemplo:

Libros:

    1. La isla del tesoro (id: 001)
    2. El Hobbit (id: 002)
    3. El Justicia (id: 003)

Elige un libro: _

  • Cualquier otro tipo de aspecto positivo que se incluya adicionalmente.

Importante:

  • Cuando termines, deberás enviar un único fichero con extensión “.sh” a través del siguiente enlace Envío de scripts.

  • No pongas tu nombre dentro del fichero, puesto que se realizará una revisión a ciegas.

¿Quieres aprender a crear videojuegos?

Florida Universitària lanza siete nuevos cursos para principiantes y de especialista para profesionales del sector

Florida Universitària lanzará este verano siete cursos diseñados para principiantes que desean explorar este sector y profesionales de la industria que necesitan instruirse en las técnicas más avanzadas. El profesorado de Florida Replay, el área dedicada a Videojuegos de Florida Universitària, ha diseñado dos itinerarios: El primero de ellos, son los cursos Fundamentos, diseñados para futuro alumnado y público interesado en aspectos como la creación de gráficos, animaciones, videojuegos y entornos interactivos.

A través este primer itinerario, el alumnado conocerá en qué consiste la creación de videojuegos multiplataforma utilizando software profesional. Durante las sesiones, los participantes descubrirán las fases de creación de un videojuego, generarán modelos 3d con 3ds max, una de las herramientas más utilizadas en el desarrollo de escenarios y personajes, aprenderán a crear imágenes y texturas con Photoshop y podrán moverse por Unity, el motor gráfico con el que se han desarrollado títulos como Super Mario Run, Ori and the Blind Forest, Hearthstone: Heroes of Warcraft o Cuphead.

Cursos Profesionales

En este caso, los cursos están dirigidos a personas ya experimentadas y profesionales del sector que necesitan adquirir conocimientos en las herramientas más innovadoras.

Substance Painter. Crea acabados impresionantes para tus modelos, aprende a utilizar la herramienta de texturizado líder en el sector y exprime al máximo los shaders PBR. Substance Painter acerca a los artistas los últimos avances tecnológicos en la representación de modelos en tiempo real. Domina las herramientas de Substance Painter y haz que tu trabajo llame la atención.

Modelado de personajes con Zbrush. Utiliza el programa de escultura líder en el sector para dar vida a tus personajes. Las herramientas de Zbrush te permitirán obtener el detalle y la calidad que estabas buscando. Crea personajes estilizados con el aspecto de las grandes producciones. Aprende nociones sobre anatomía y utilízalas con criterio para conseguir un acabado profesional.

Programación de Shaders. Ve un paso más allá en la programación e introdúcete en el scripting de GPU shaders. Con ellos podrás alterar el comportamiento estándar de las tarjetas gráficas antes de la visualización por pantalla. Con estos conocimientos podrás generar efectos de movimiento/deformación en la geometría 3D, trabajar con cantidades de geometría que computacionalmente no sería óptimo tratar en la CPU, customizar efectos de iluminación, generar efectos de pantalla… y todo ello en paralelo entre sí y en paralelo con la CPU.

Pixelart. Este estilo no pasa de moda. El pixelart es el aspecto visual por excelencia de los videojuegos. Aprende a crear tus gráficos pixelart y no permitas que el legado se pierda. Conoce la técnica y aprende los trucos para que tus sprites no dejen indiferente a nadie. Crea escenarios complejos y personajes animados. Mételo todo en motor, no descuides el apartado técnico, tiene más miga de lo que te imaginas. 

Curso de narrativa interactiva: Del lore a las misiones secundarias. En este curso, vamos a trabajar para mejorar nuestro perfil y portfolio como creative writer o narrative developer, uno de los roles que más importancia está cogiendo en los estudios de videojuegos en los últimos años. Diálogos, lore, misiones secundarias, perfiles de los personajes… El ámbito de actuación de un escritor para videojuegos es muy amplio y es importante conocer las particularidades de cada uno de esos ámbitos.  De un modo práctico y divertido, vamos a crear diferentes piezas narrativas para juegos con un doble objetivo: mejorar vuestro portfolio y conocer las herramientas profesionales más extendidas.  Cada una de las sesiones tendrá tres partes: análisis de juegos comerciales, explicación de fundamentos y mini-proyecto.

Animacting. Mos Teatre ha creado el proyecto Animacting, un programa formativo específico para animadores en el que podrán encontrar las herramientas necesarias para enfrentarse a un personaje o situación desde las claves de un actor mediante la conciencia corporal y expresiva, para que más tarde puedan trasladar ese trabajo al ordenador.

PLAZAS LIMITADAS. LA ADMISIÓN SE REALIZARÁ POR ORDEN DE INSCRIPCIÓN

1er Reto (SSC 2019)

Enunciado:

En este reto tendrás que implementar el juego de cartas “A pescar” con una baraja española de 8s y 9s y sin comodines, siguiendo las siguientes reglas y objetivos.

Reglas:

  • Las cartas se tienen que barajar.
  • Juega la máquina contra el usuario.
  • Al inicio de la partida, se repartirán 7 cartas a cada uno.
  • Las cartas sobrantes, se distribuyen en una pila que será compartida por ambos.
  • Se juega por turnos, empezando por el usuario.
  • En cada turno, un jugador solicitará una carta al otro (por ejemplo, un 4).
    • Si el jugador que recibe la petición, tiene una o más cartas de las solicitadas (en este caso, un 4 o varios), se las tiene que dar al otro jugador. En este caso, el jugador solicitante, continuará pidiendo.
    • Si el jugador que recibe la petición, no tiene ninguna carta como la que le piden, entonces tiene que mostrar el mensaje “A pescar!”.  En este caso, el jugador solicitante, robará una carta de la baraja y pasará el turno al oponente.
  • Cuando un jugador consigue reunir las 4 cartas del mismo valor (los cuatro doses, los cuatro treses…), las retira del juego.

Objetivo

  • La partida termina cuando ya se han retirado las 4 cartas de todos los valores.
  • Gana la partida el jugador que más grupos de 4 cartas haya hecho.

Algunas aclaraciones:

  • Al inicio del script, deberá haber una pantalla para que el usuario pueda elegir entre comenzar una partida o salir.
  • Cuando empieza una partida, el usuario interaccionará con el juego sólo para elegir la carta que pide a la máquina en cada turno que le toque.
  • Cuando termina la partida, se muestra los grupos que ha obtenido cada participante y quién ha ganado, y se vuelve a la pantalla inicial.
  • Se valorarán aspectos añadidos, como control de errores.

Importante:

  • Cuando termines, deberás enviar un único fichero con extensión “.sh” a través del siguiente enlace Envío de scripts.

  • No pongas tu nombre dentro del fichero, puesto que se realizará una revisión a ciegas.

IV Shell Script Challenge en Florida Universitària (SSC-2019)

¿Qué es?
Shell Script Challenge es una competición destinada a alumnos de DAM, DAW, ASIR y TSMR. Durante tres fines de semana, los participantes reciben 3 retos que han de ser resueltos utilizando Shell Scripts.

¿Cómo funciona?
Durante los días que está activa la competición, los participantes recibirán retos que deberán resolver y entregar antes de la fecha límite indicada para cada reto. Dichos retos serán publicados en este mismo blog en las fechas y horas determinadas. Los retos serán los mismos para todos los participantes y al mismo tiempo sólo se dispondrá de un reto a resolver. Cuando acabe un reto se planteará y publicará otro nuevo.

Participación
La competición está abierta a alumnado de los primeros cursos de las titulaciones de DAM, DAW, ASIR y TSMR de Florida Universitària y de otros centros. La participación es gratuita y sólo será necesario registrarse a través del siguiente Formulario de registro. La inscripción estará abierta hasta el 27 de marzo o hasta cubrir el límite de registros, momento en que se cerrará.

Fechas y desarrollo de los retos:
1er Reto: Del 29 de marzo (23:00h) al 1 de abril (23:00h)
2º Reto: Del 5 de abril (23:00h) al 8 de abril (23:00h)
3º Reto: Del 12 de abril (23:00h) al 15 de abril (23:00h)

Entrega y valoración
Los participantes deberán enviar un único fichero con extensión .sh con cada reto resuelto a través del enlace que se proporcionará en cada reto.

Los retos serán valorados por un comité formado por profesorado de titulaciones TIC que puntuarán cada solución aportada según criterios como: corrección, estilo, identidad propia, rendimiento, u orden de entrega, entre otros. Al acabar la competición se publicará el ranking de los participantes según las puntuaciones obtenidas.

Premios
Los tres primeros clasificados recibirán un premio, diploma y reconocimiento público en el acto de clausura y entrega de notas de final de curso. El resto de participantes que terminen los tres retos, recibirán un obsequio.

Contacto
Juan Miguel Alberola (jmalberola@florida-uni.es)

Florida Universitaria alcanza un nuevo acuerdo de formación en empresa con NUNSYS para alumnado de ciclos tecnológicos

Las empresas reclaman cada vez más profesionales especializados y capaces de aportar valor a las organizaciones. Florida Universitària ofrece una formación innovadora capaz de adaptarse a los nuevos desafíos del mercado. Por ello, ajusta su oferta educativa a las necesidades de las empresas impulsando experiencias reales en su etapa formativa.

En el marco de relaciones y colaboraciones con las empresas del sector tecnológico, el departamento de TIC’s de Florida Universitària  ha celebrado un encuentro con la empresa Nunsys, con la que se ha establecido un nuevo marco de colaboración.

El alumnado de Florida Universitària podrá acceder a un programa de formación de 200 horas y trabajar en proyectos de otras 200 horas dentro de las prácticas de Formación en Centros de Trabajo (FCT).

Esta nueva colaboración supone una gran oportunidad para el alumnado de los ciclos formativos de Desarrollo de Aplicaciones Multiplataforma (DAM) y Desarrollo de Aplicaciones Web (DAW), que tendrán una oportunidad más de continuar formándose, a la vez que trabajan en proyectos reales.

Tech & Beer

Alumnado del ciclos formativo de grado superior en Desarrollo de Aplicaciones Multiplataforma tanto de la modalidad presencial como semipresencial, se dan cita el evento Tech & Beer.

Al encuentro acudieron también diversos profesores de la Unidad TIC y un ex alumno del ciclo de DAM semipresencial Xavier Rodríguez, que nos relató en 1ª persona, su evolución profesional y cómo, el estudiar este ciclo en modalidad online, le dio la posibilidad de reinventarse.

Xavi, actualmente está trabajando en Geekshubs (http://geekshubs.com/).

Además, el evento sirvió como punto de encuentro y de sociabilización para los estudiantes de la modalidad online tanto de 1º como de 2º, así como un referente para encontrar sinergias entre los diferentes grupos.

El alumnado de Ciclos explora nuevas oportunidades de Berlín, el Silicon Valley de Europa

Berlín se ha convertido en una de las ciudades con grandes oportunidades profesionales. En los últimos años la capital alemana se ha consolidado como uno de los entornos tecnológicos punteros en Europa. La revista Forbes destaca es una ciudad imán para  jóvenes con inquietudes tecnológicas y en ella nace, aproximadamente, una startup cada 20 minutos. De hecho, su ambiente creativo, tecnológico y multicultural ya han llevado a calificarla como el Silicon Valley europeo. Además, la ciudad destila cultura, talento y arte e historia. En ella se mezclan las viejas calles de los 50 con una grandiosa arquitectura moderna.

El alumnado de los ciclos de Desarrollo de Aplicaciones Multiplataforma, Desarrollo de Aplicaciones Web y Administración de Sistemas Informáticos en Red  de Florida Universitària han viajado a la capital alemana. Durante la estancia, los estudiantes han podido explorar nuevas oportunidades profesionales para estancias Erasmus y han conocido empresas con las que se podrían establecer oportunidades para desarrollar futuras prácticas, e incluso un futuro laboral.

A lo lago de los seis días de viaje, los distintos grupos han podido vivir experiencias desde cuatro perspectivas distintas. “Una de ellas, para promover sus valores éticos y el pensamiento crítico, a través de diversas visitas históricas y sociales. Por otro lado, han estado embebidos en un ambiente real para una posible estancia de prácticas. Para este propósito contamos con el apoyo de un antiguo estudiante que actualmente trabaja en Berlín, después de un periodo de prácticas”, han destacado Vicente Monfort y Pau Mendoza, docentes del área de TICS de Florida Universitària.

La tercera visión, la han obtenido al visitar empresas del sector. “En este caso han podido conocer qué oportunidades laborales reales existen en su sector”, han indicado los profesores, que han destacado que los estudiantes también han visitado una institución educativa. Con estas jornadas, Florida Universitària potencia el perfil internacional de su alumnado interactuando con otras universidades europeas.

La práctica de otros idiomas y el fomento de programas de intercambio de estudios y prácticas en el extranjero son elementos dinamizadores de sus oportunidades formativas que contribuyen a multiplicar su empleabilidad.

El alumnado de ASIR conoce cómo funciona un ‘DATA CENTER’

EL ALUMNADO DE ASIR CONOCE COMO FUNCIONA UN ‘DATA CENTER’

El alumnado de segundo curso del ciclo formativo de Administración de Sistemas Informáticos en Red  ha visitado  junto al  profesor Toni Ruiz la empresa valenciana NIXVAL. La firma, que cumple diez años de trayectoria en el sector  tecnológico, presta servicios de centro de datos con la máxima calidad y seguridad. NIXVAL proporciona soluciones flexibles capaces de adaptarse a múltiples requerimientos de clientes en el sector de los operadores de telecomunicaciones, ISPs locales y PYMEs.

Durante la visita, el grupo de estudiantes de Florida Universitària ha podido explorar la nueva realidad de las instalaciones, que se han convertido en centro de alojamiento neutral y han incrementado significativamente sus capacidades.

NIXVAL aloja a los principales operadores de telecomunicaciones y servicios tecnológicos del mercado, siendo uno de los centros de referencia a nivel nacional, tanto por volumen de negocio como por número de operadores presentes.

“Excelentemente. El mentalista en la empresa”

El alumnado de 1º del Grado en Desarrollo de Videojuegos y Experiencias Interactivas tuvo la oportunidad de realizar un taller sobre cómo conectar con el inconsciente creativo, practicando técnicas que facilitan llegar a un estado adecuado para crear. El taller fue conducido por Dario Piera, formador, consultor y coach de la empresa “Excelentemente. El mentalista en la empresa”, quien explicó al alumnado que el pensamiento creativo abre a otras perspectivas, puntos de vista e ideas no convencionales. A mayor libertad permitida a nuestros pensamientos y cuanto más confiemos en nuestro inconsciente, más fácil cambiará nuestra forma de pensar.

A partir del supuesto de que existe una válvula entre nuestro consciente e inconsciente que regula la transferencia e intercambio de pensamientos entre ambos, la apertura de esta válvula determina la cantidad de conexiones, opciones, posibilidades, pensamientos que pueden emerger sin ser descartados por nuestros patrones habituales de pensamiento. La reprogramación mental o hipnosis, permite abrir la válvula creativa y encontrar estados de soluciones y abordajes creativos con resultados sorprendentes en el campo del desarrollo personal y profesional, que conocieron y practicaron en el aula con alguna demostración de las técnicas más asombrosas, como la visualización, mentalismo, hipnosis, acompañado todo ello de magia y humor, que ayudó a vivir una tarde diferente.

El pase de diapositivas requiere JavaScript.