Code Monkey home page Code Monkey logo

cat_attack's Introduction

Cat Attack!

Cat Attack is a 1v1, two player fighting game in which players duel in a 2D environment.

Written completely in Java, Cat Attack! is a game still under development. Build as apart of the AP Computer Science Game Collaboration Project, this game was an original idea proposed by group members highly inspired by Street Fighter. As it is still in the works, the game may be rough around the edges, with any branch other than main not guaranteed to be functional.

In addition, Working Function + Future Proposed Functions may be out of date, please check the latest release for more up to date info.

Note: Main is the main release repository, should be the most stable version - suggested to use the files from release for most stable. Please check the latest release for work in progress/buggy functions

⚙️ Technical Info

Developed & Tested on Macbook M1 Air Written on Eclipse IDE using Java JRE 1.8 Was Tested + Co-Developed on Windows as well, has minor issues with Window tickspeed

Please run GraphicMain.java in the SRC to start the program Preference, use eclipse on mac for intended performance + gameplay

Quick Guide

  1. Download latest release from github, unzip the zip file, open the unzipped folder

  2. Create a java project in Eclipse, must be JRE 1.8

  3. Drag the downloaded src + bin folders into your project

  4. If prompted, overwrite any previous src + bin folders in the newly created java project

  5. Open src/lib, right click on the jl1.0.1.jar

  6. Select build path -> Add to build path

🎮 Controls

Player One - Katze

  • A - move left
  • D - move right
  • W - jump
  • S - attack
  • Q - shield
  • 1, 2, 3: different stats

Player Two - Skin Walker

  • ⬅️ - move left
  • ➡️ - move right
  • ⬆️ - jump
  • ⬇️ - attack
  • SHIFT - shield
  • 8, 9, 0: different stats

Main Menu

  • ESC - will bring up controls, similar to how control button behaves in the pause game menu?
  • Start button - starts the game

In Game

  • ESC - pauses the game, can also be used to unpause if paused - brings up pause game menu
    • restart button: resets the game & return players to Main Menu
    • resume button: resumes the game, you can also press ESC to do the same
    • controls button: will open a window that allows you to understand the controls + game End Screen
  • automatic bring up, 500 counter (will play when victory music ends) - game over options
    • restart button: resets the game & return players to Main Menu
    • quit button: closes the program and exits

Note: Shield allows for temporary invulnerabilituy to enemy attacks + maintains own ability to attack

✅ Working Features

  • Background - main background, with the carpet seperate as an "item" to appear like character has a walk cycle + floor is carpet like
  • Movement - able to complete basic movement, gravity + jump is working
  • Controls - basic controls for abilities + movements, see above for keybinds
  • Sound Effects - graphicPanel function, playSound() - this function will play the sound with "filePath" once when called
  • Music - playMusic.java, contains two functions, run() + close() - this function will play sound on loop until close()
  • Character Stats Select - check above at controls for more info, able to change individual character stats for buffs/debuffs tradeoffs
  • Health Bar - basic health bar, proned to be revamped ASAP
  • Animations - check Sprite.java + ImageResource.java, able to call functions for animations
  • Shield - character ability to shield, temp-allows protection against attacks + retain ability to attack, has cooldown time that is not apparent visibily in game
  • Attack - character ability to attack, currently one basic attack
  • Win/Loss System - has a win + loss conditions, with respective screens, ends game
  • Menu - basic menu with [play button] working
    • Added pause game menu with [controls button] [restart game button] [resume button]
    • Added controls menu, allows players to take a look at control keybinds
    • Added game over options, allow users to restart or quit the game
  • Combo System - a combo system, a specific combination moves will be able to enable a certain actions or effects towards an enemy

🔮 Future Proposed Features

  • Sound Effects - certain sound effects being buggy, overlayed - walking sounds removed
  • Damage Animation - removed due to a visual glitch, function .damage()
  • Menu Cont. - able to mute music + sfx
  • Health Bar - revamp health bar for both visual and functional purposes
  • Profile Picture - add profile picture next to character to symbolize each character + current used stat
  • Character Stats Select - prevent players from changing stats once in game
  • Character Select Screen - when adding more characters, and allows them to select their stats as they wish

Credits:

Developers: Simon N, Mason Z, Esan Y, Tyler G

Artist: Alex F.

Music Composer: Monica M.

cat_attack's People

Contributors

emperormurfy avatar s021777 avatar 12egg avatar simoncarternickerson avatar

Stargazers

 avatar  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.