Final Project Bootcamp Zero

Overview

The Quest (Pygame)

Descripción

Este es el repositorio de código The-Quest para el proyecto final Bootcamp Zero de KeepCoding.

El juego consiste en la búsqueda de nuevos planetas para colonizarlos. Durante el transcurso del viaje aparecerán desafíos, ya sean naves enemigas u oleadas de meteoritos. Cada nivel constará de 1 minuto más de viaje y cada desafío aumentará en número y velocidad. El jugador dispondrá de munición de balas y carga de misiles para afrontar los desafíos durante el viaje. Propulsor que reducirá el tiempo de viaje a la mitad aunque no podrá moverme mientras esté activo. Y una barra de salud más 3 vidas extra. Si consume todas las vidas perderá la partida.

Informacion del repositorio

Realizado por:

Nombre Email
Sergio Fuentes (Seven) [email protected]

En el transcurso de las 3 semanas para realizar el proyecto final del curso he completado The Quest v1.0. Utilicé varias herramientas objeto prediseñados para una funcionalidad mejorada y eficiente durante el desarrollo del juego. De los más útiles a destacar fue el objeto Sprite sheet que me facilitó la descarga de cualquier imagen y la creación de instancias heredando todas sus características como objeto base. Un objeto con 4 tipos diferentes de temporizadores múltiples. Un algoritmo muy reducido que me permitía moverme entre las escenas del juego en cualquier sentido. Un objeto que controla consultas CRUD con SQLite registrando los datos de cada jugador en todo momento. También creé botones, barras, tablero y teclado entre otros para facilitar y mejorar la interactividad del usuario. Y múltiples ideas que preferí mostrar y sorprender durante la experiencia del juego.

Para abrir el juego, hay que lanzar run.pyw, teniendo previamente descargados todos los archivos del repositorio.

Estructura del repositorio

  • Assets: Carpeta que contiene todos los activos del juego.

    • Audio: Contiene la música de cada escena y los sonidos fx del juego en formato .ogg.

    • Data: Contiene .db como base de datos de jugadores. La tabla almacena estilo y modelo de barco, último nivel y nivel máximo, último puntaje y puntaje máximo.

    • Fonts: Diferentes .ttf para los estilos de fuente proporcionados por el juego.

    • Images: Tiene las imágenes .png y .jpg tipo hojas de sprite.

    • Scripts: Aquí están todos los códigos .py que utiliza el juego para generar los datos del código del juego.

      • controller: Controla todas las escenas a través de sus bucles principales. Les da los atributos que a su vez recoge de la escena anterior.
      • database: Clase DataBase donde conecta los datos del juego a la base de datos a través de las funciones CRUD.
      • documents: Guarda los documentos credits, history y guide en forma de string, se muestran en el menú principal del juego.
      • enemies: Clase Enemy que estructura todas las características de los enemigos. Hay 3 tipos de IA: patrulleros, velocistas y kamikazes.
      • environment: Contiene las clases Foreground, Background, Farground, Planet y Portal. Se encargan de la ambientación y acompañan el movimiento del jugador.
      • manager: Importador de todas las cargas de música, sonidos e imágenes del juego.
      • obstacles: Clase Meteor que estructura toda la funcionalidad de los meteoros.
      • players: Clase Player que estructura todas las características y funcionalidades del jugador según el estilo que elijas. Hay 3 estilos: Daño, Defensa y Curación.
      • scenes: Contiene las clases Main, Menu, Game y Record que heredan de la clase Scene. Se encargan de controlar el comportamiento del juego en cada escena.
      • settings: Guarda todas las constantes del juego. Los ajustes se especifican desde aquí.
      • tools: Contiene las clases Timer, Sprite_sheet, Button, Board, Bar, Keyboard, Canvas, Icon, HealthBar y Screen_fade. Se utilizan como herramientas y componentes accesorios.
      • weapons: Contiene las clases Bullet, Missile y Explosion. Tipos de armas que puede utilizar cualquier personaje. Explosion es una extensión de Missile.
    • main: Archivo .py como lanzador alternativo del juego.

  • commits: Archivo .md registra todos los commits del repositorio.

  • requirements: Archivo .txt registra los requisitos para abrir el juego: pygame v2.0.2.

  • run: Archivo .pyw es el lanzador principal del juego.

Owner
Seven-z01
Seven-z01
✨Fast Coreference Resolution in spaCy with Neural Networks

✨ NeuralCoref 4.0: Coreference Resolution in spaCy with Neural Networks. NeuralCoref is a pipeline extension for spaCy 2.1+ which annotates and resolv

Hugging Face 2.6k Jan 04, 2023
String Gen + Word Checker

Creates random strings and checks if any of them are a real words. Mostly a waste of time ngl but it is cool to see it work and the fact that it can generate a real random word within10sec

1 Jan 06, 2022
Unsupervised Language Model Pre-training for French

FlauBERT and FLUE FlauBERT is a French BERT trained on a very large and heterogeneous French corpus. Models of different sizes are trained using the n

GETALP 212 Dec 10, 2022
Non-Autoregressive Predictive Coding

Non-Autoregressive Predictive Coding This repository contains the implementation of Non-Autoregressive Predictive Coding (NPC) as described in the pre

Alexander H. Liu 43 Nov 15, 2022
Active learning for text classification in Python

Active Learning allows you to efficiently label training data in a small-data scenario.

Webis 375 Dec 28, 2022
GraphNLI: A Graph-based Natural Language Inference Model for Polarity Prediction in Online Debates

GraphNLI: A Graph-based Natural Language Inference Model for Polarity Prediction in Online Debates Vibhor Agarwal, Sagar Joglekar, Anthony P. Young an

Vibhor Agarwal 2 Jun 30, 2022
Generate product descriptions, blogs, ads and more using GPT architecture with a single request to TextCortex API a.k.a Hemingwai

TextCortex - HemingwAI Generate product descriptions, blogs, ads and more using GPT architecture with a single request to TextCortex API a.k.a Hemingw

TextCortex AI 27 Nov 28, 2022
Simple translation demo showcasing our headliner package.

Headliner Demo This is a demo showcasing our Headliner package. In particular, we trained a simple seq2seq model on an English-German dataset. We didn

Axel Springer News Media & Tech GmbH & Co. KG - Ideas Engineering 16 Nov 24, 2022
An easy-to-use Python module that helps you to extract the BERT embeddings for a large text dataset (Bengali/English) efficiently.

An easy-to-use Python module that helps you to extract the BERT embeddings for a large text dataset (Bengali/English) efficiently.

Khalid Saifullah 37 Sep 05, 2022
Geometry-Consistent Neural Shape Representation with Implicit Displacement Fields

Geometry-Consistent Neural Shape Representation with Implicit Displacement Fields [project page][paper][cite] Geometry-Consistent Neural Shape Represe

Yifan Wang 100 Dec 19, 2022
A simple tool to update bib entries with their official information (e.g., DBLP or the ACL anthology).

Rebiber: A tool for normalizing bibtex with official info. We often cite papers using their arXiv versions without noting that they are already PUBLIS

(Bill) Yuchen Lin 2k Jan 01, 2023
A PyTorch implementation of VIOLET

VIOLET: End-to-End Video-Language Transformers with Masked Visual-token Modeling A PyTorch implementation of VIOLET Overview VIOLET is an implementati

Tsu-Jui Fu 119 Dec 30, 2022
spaCy plugin for Transformers , Udify, ELmo, etc.

Camphr - spaCy plugin for Transformers, Udify, Elmo, etc. Camphr is a Natural Language Processing library that helps in seamless integration for a wid

342 Nov 21, 2022
A list of NLP(Natural Language Processing) tutorials built on Tensorflow 2.0.

A list of NLP(Natural Language Processing) tutorials built on Tensorflow 2.0.

Won Joon Yoo 335 Jan 04, 2023
Code for "Generative adversarial networks for reconstructing natural images from brain activity".

Reconstruct handwritten characters from brains using GANs Example code for the paper "Generative adversarial networks for reconstructing natural image

K. Seeliger 2 May 17, 2022
NLP Text Classification

多标签文本分类任务 近年来随着深度学习的发展,模型参数的数量飞速增长。为了训练这些参数,需要更大的数据集来避免过拟合。然而,对于大部分NLP任务来说,构建大规模的标注数据集非常困难(成本过高),特别是对于句法和语义相关的任务。相比之下,大规模的未标注语料库的构建则相对容易。为了利用这些数据,我们可以

Jason 1 Nov 11, 2021
This repo is to provide a list of literature regarding Deep Learning on Graphs for NLP

This repo is to provide a list of literature regarding Deep Learning on Graphs for NLP

Graph4AI 230 Nov 22, 2022
An official repository for tutorials of Probabilistic Modelling and Reasoning (2021/2022) - a University of Edinburgh master's course.

PMR computer tutorials on HMMs (2021-2022) This is a repository for computer tutorials of Probabilistic Modelling and Reasoning (2021/2022) - a Univer

Vaidotas Šimkus 10 Dec 06, 2022
ChessCoach is a neural network-based chess engine capable of natural-language commentary.

ChessCoach is a neural network-based chess engine capable of natural-language commentary.

Chris Butner 380 Dec 03, 2022