Code Monkey home page Code Monkey logo

morsemadness's People

Contributors

alejoasd avatar berithpy avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

nguoianphu

morsemadness's Issues

Fix win/lose state.

Now when you win or loose the game sends you back to the main menu without any input or anything, we should at least freeze it until you press something.

Rethink when lava starts

9/10 times you can't get past the first 15 seconds or so of the game because lava gets to you before opening the firsts doors or advancing enough horizontally.

Classify patterns by difficulty

Some ideas that came during discussion that the pattern length does not necessarily imply difficulty so we should classify them by the time that it takes to input the code with the number of errors.

Normalize terms used throughout the codebase.

Different objects are called various names throughout the code. I'm opening this issue to converge on some names and update the codebase accordingly.

The three main objects we need to name are:

  1. Signals sent by the operator.
  2. Signal Arrows.
  3. Groups of signal arrows.

Some terms I found sprinkled everywhere:

  • Signal → Usually used for Signals sent by the operator.
  • Transmission → Used for both arrows and signals sent by the operator.
  • Pattern → Usually used for Signal Groups.
  • Morse → Usually used for Signal Arrows.

Activating a door when the signal queue is full leads to a deadlock.

When activating doors with the operator signal queue full, the condition check to generate the transmission morse codes only if there's enough room in the operator queue is checked after activating the door. This leads to the door activating and not creating the morse codes. Since the last morse code in the transmission should open the door and is never created, the door can never be opened.

Deal with the mysterious chin

For some reason the maze generator dies when you shrink the canvas. I'm looking into it and it dies when the maze generator is setting the corner down right to the wall.
Another thing i realized is that it does not happen if you set the y offset to 0.
The first question that comes to my mind is why do we deal with offsets instead of absolutes?
I'm still looking into it using this issue as a log!

Keymap/Gamepad selector menu!

I already implemented a crude eye catcher menu, i think we should do it in that state or add an extra settings state!

Continuous integration

Itch.io has a cli software that we can use to update our game, since GKE is free now im pretty sure we can run a jenkins instance there that builds on master push events.

Represent stun visually

When the game swaps the gamepads it stuns you for some time, it'll be nice to show that somehow

Implement items.

Design and implement items.

The code for the Item class, dweller, item collision (through gActors), and generation of items in the maze are already in place.

Implement score system

This is up to discussion to figure out what will be scored and how it will be.
For the maze part we need a timer and for the operator part we need a score system that counts hits and misses and maybe time the shots.

Remove the button press delay limitation.

When playing as the operator, keys are only polled 250ms after the last key was pressed.

The gamepad rework removes this limitation with the keyJustPressed helper function. This poll delay should be removed in favor of this new method.

Fix menu screen.

Right now when you press any button the game starts, it should end the intro animation and let you choose if you want to play the original game or training mode.

Separate controller/keyboard inputs into different groups in keymaps.

Keymaps now hold both keyboard and controller button/key configurations in the same array. This makes it so that overlapping codes can trigger unexpected actions. Splitting this into groups would allow to check each set of buttons/keys with its own, input-specific function.

I'm adding this to #16.

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.