Giter Club home page Giter Club logo

xeon-eoh's Introduction

Hello there, I'm Tim โœ‹

I am a student from Germany. Currently learning different languages and tools to become a front-end web developer.

xeon-eoh's People

Contributors

benedicthomuth avatar derechtenap avatar

Watchers

 avatar  avatar

xeon-eoh's Issues

Connect JS-Files

As it is right now, the "Player" and "Enemys" Stats can not interact with each other.

To fix it, I would use Import / Export in order to communicate damage / health etc.

Future Refactor:
Make the architecture Object Oriented.

--> Player.js (Would be just a class prototype)
--> Enemy.js (Would also be just a class prototype)
--> Fight.js Instantiate Player and Enemy, and calls the different class functions

Create A Main Menu

The Menu will use the index.html

Clickable Actions

  • Start Game (Start a new game...)
  • Load Save (Load pre-saved Settings e.g. per JSON or LocalStorage)
  • Credits

Notes

  • Left-sided Menu with buttons
  • Top right corner -> Display News or maybe current loaded Profile...
  • Bottom -> Version + Changelog etc.
  • Maybe a button to exit the game (๐Ÿค”) (Not necessary)

How To Store The Enemy Data?

1. Which file format should we use?

There are many possible options. Like XML or JSON. I personally would prefer JSON over XML. Since the syntax is pretty straight forward and it works with JavaScript. Are there any other good formats (Maybe YML)?

2. How to store the data?

As I mentioned in #17, I like the System which is used in The Elder Scrolls V: Skyrim. It used one base unit and adds some stronger variants trough the story and level progress.

I created a small example file (bandit.json), which stores two different bandit variants:

{
    "id": 1,
    "activ": false,
    "enemy": {
        "tier_one": {
            "name": "Bandit",
            "base_attack": 5,
            "base_hp": 100,
            "xp": 10,
            "weapon_pool": [
                "sword",
                "bow"
            ],
            "drop_pool": {
                "gold": {
                    "item_id": 1,
                    "percantage": 90,
                    "min_amount": 1,
                    "max_amount": 5
                }
            },
            "image": "<url>"
        },
        "tier_two": {
            "name": "<tier_two_name>",
            "base_attack": 7,
            "base_hp": 120,
            "xp": 15,
            "weapon_pool": [
                "sword",
                "bow"
            ],
            "drop_pool": {
                "gold": {
                    "item_id": 1,
                    "percantage": 90,
                    "min_amount": 1,
                    "max_amount": 5
                }
            },
            "image": "<url>"
        }
    }
}

Update Placeholder Images

We can update the placeholder images which are currently provided by placehold.it to our current self-made placeholders

Current situation

<img id="enemyOne" src="https://placehold.it/280x300" alt="Enemy" draggable="false">

<!-- Updated code -->
<img id="enemyOne" src="../frontend/img/bandit.svg" alt="Enemy" draggable="false">

Tweak SCSS Framework

There are several possible improvements. I will research the SASS documentation for further information. The following list should be completed before finishing the next milestone.

  • Add a small logo
  • Specify better breakpoints
  • Split the _global.scss into several files
  • Optimise the Flex Grid system
  • Add more utility classes

Grid system

CSS Flex

  • SCSS integration
  • Row and cols
  • Testing

Fight Screen UI

image

TODO

  • Create HTML markup
  • Write SCSS Classes
  • Find an Color scheme

Create a Fight-Scene Content Model

In order to make the game more unique every level should has its own style. (Enemys, Difficulty, "Dungeon").

We need a way to store all those information to dynamically load this content onto the webpage.

Vision No. 1:

  • General Idea:
    Make it a JSON-Object which itself can maybe be stored in a document-oriented database.

    Depending on which "level" the user clicked, load the specific object (--> POST-Arguments)

  • What we need to store:
    Enemys:
    Health, Attack-Damage, Drops (or a drop table), XP, Sprites (per enemy)

    World-Info:
    Which background should be displayed.
    How many dungeons are there in this specific level.
    Did the user already played or beat the level. (Needed?)

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.