Code Monkey home page Code Monkey logo

banana-soup's Introduction

BANANA SOUP

pygame game

how to banana soup:

  • clone repo
  • make sure dependencies are installed (see below)
  • open however you want

dependencies:

  • python 3
  • pygame

banana-soup's People

Contributors

jayx20 avatar pyro-source avatar darkwiiyou avatar commdrop avatar priyatham-sai-chand avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

commdrop

banana-soup's Issues

EntityHandler class

An EntityHandler class for easy creation, deletion and Pathfinding/entity movement.
This will need to work well with the Entity class and have scalability in mind. We will likely add more attributes to the Entity class soon

Input Handler config

add some configuration stuff for input handler, store inside of the class
be able to change what keys you are using to move with some nice methods to access it from a future options menu

Responsively resize screen

make the user able to resize the screen without causing horrible side effects,
after we make a camera system we will need to add some extra functionality so that may be a new issue down the line

Blob scalability update

Rewrite blob program to allow for more than 1 blob and also iteration through blob coordinates to allow for scaling:
Blob into list
Do normal location check but compare all the coordinates via for each loop

Eventually migrate to calculating closest blob while moving to help with workload
#5

Client based server for Pier > Pier or Dedicated server

Decide between a client side server system to allow players to connect to eachother or a dedicated server for players to connect to.

C# Might be the best option here and is something I plan to explore the upcoming days. A lot fo what I plan to do is essentially just location data and Object creation. Handling connect/disconnect with creation/deletion of entities.

Maps and collision?

Discuss how we want to handle maps (Scrolling map? Set boundaries with doors? Idk)
And rooms. This will decide A lot about our game.

inputHandler class

A class to handle inputs for character movement. As well as a tag along class that handles the input config (Likely through a text file/config file, just make sure to close the stream so we can easily access that file and make changes elsewhere)

Menu (Via esc)

Menu UI for closing the game, settings (Such as game resolution and screen size) as well as a menuHandler class.

Basic buttons needed:
Resume, Exit

Inventory creation and blob changes (Post Blob rebuil)

Add a button somewhere (Maybe a hotbar too) to show # of Items picked up/bought. When item is picked up remove blob from “entities” list THEN create a new instance (New instance creation shouldn’t be cooked into anything, for testing ofc). Maybe iterate through # to keep Blob IDs lower.
#5

Figure out how to package into like an .exe

Python makes this annoying
There are existing ways to package python applications into a .exe, however they

  • usually make a massive exe
  • might not work with pygame?

Pygame is based on SDL which is a C library, so it probably has to bring the .dll file along

Might be reasonable to create an installer that just installs python and downloads our scripts instead of an .exe file that contains all of python

One advanced idea would be to just compile the python with some like C compiler thing (that would be a whole different issue, this would give us a LARGE performance boost)

Sprite texture management

For now you could just cache what images have been loaded already
Dunno if pygame does that
We also should be able to make the entity constructor a bit easier to use / use this with entityhandler

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.