Giter Site home page Giter Site logo

pacman_mp's Introduction

pacman_mp

Remake of the multilplayer pacman game from my old group project in PSis.

I decided to make this project because:

  • I want to explore more the capabilities of my ESP32;
  • I wanted to implement one of my favourite group projects with concepts and skills that I lacked at the time of development;
  • I like embedded systems;
  • I like automation and electronics;

The final goal is a more efficient implementation of the game to allow the creation of a small network of ESP32 to play a multiplayer pacman (like a classic gameboy in a local network).

Concepts

This project requires knowledge in:

  • Programming in C
  • Efficient memory usage
  • Valgrind and gdb usage
  • Multithreading
  • Networking (sockets, pipes)
  • FreeRTOs

Stages of development

1. Implementation in a UNIX desktop (CURRENT)

The game must at least work in a computer, having in mind efficiency. The implemented makefile works ras follows:

  • make to build everything
  • make s to build only the server
  • make c to build only the client
  • make clear to clean some build files

Read the config.h before using anything. The current usage is as follows:

  • ./server to run the server
  • ./client 127.0.0.1 3000 for the client connection to the specified port and IP.

2. Implementation in a desktop - ESP32 network

This stage will require the biggest effort in optimization. Here the relation between the designed arquitecture and the hardware will expose the main bottlenecks. Here the main effort will be in:

  • memory usage
  • processing power
  • best FreeRTOs usage

3. Implementation only in FreeRTOs usage

Essentially the previous stage but without the desktop component as a server or client.

4. Hardware choosal

Mainly the batteries, display and controls. This stage will focus on the best equilibrium in affordability, performance and usability.

pacman_mp's People

Contributors

helder-pb avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.