Skip to content

Instantly share code, notes, and snippets.

@miere
Last active November 15, 2022 05:43

Revisions

  1. miere revised this gist Nov 15, 2022. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion BlindWarriorI.md
    Original file line number Diff line number Diff line change
    @@ -24,7 +24,7 @@ What the game should output to the user:
    * Ziska will attack every people he finds on his way
    * Ziska could use any weapon, whereas this weapon could not took more than 39% of an enemy health/life
    * Enemies could have any weapon, whereas this weapon could not took more than 59% of an enemy health/life
    * All weapon have no usage limit ( _auto-infinity weapon cheat :P_ )
    * All weapon have no usage limit ( _unlimited weapon ammo_ cheat turned on :P )
    * Citizens have no weapon or its weapon could not hurt Ziska
    * The _characters_ Ziska will fight should be shufled before the game starts
    * The game is a survivor: no life recharge for Ziska until the end of game.
  2. miere revised this gist Nov 1, 2022. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions BlindWarriorI.md
    Original file line number Diff line number Diff line change
    @@ -23,9 +23,9 @@ What the game should output to the user:
    * All Ziska actions in the game are played by the computer
    * Ziska will attack every people he finds on his way
    * Ziska could use any weapon, whereas this weapon could not took more than 39% of an enemy health/life
    * Enemies could has any weapon, whereas this weapon could not took more than 59% of an enemy health/life
    * All weapon has no usage limit ( _auto-infinity weapon cheat :P_ )
    * Citizens has no weapon or its weapon could not hurt Ziska
    * Enemies could have any weapon, whereas this weapon could not took more than 59% of an enemy health/life
    * All weapon have no usage limit ( _auto-infinity weapon cheat :P_ )
    * Citizens have no weapon or its weapon could not hurt Ziska
    * The _characters_ Ziska will fight should be shufled before the game starts
    * The game is a survivor: no life recharge for Ziska until the end of game.

  3. miere revised this gist Oct 26, 2022. 1 changed file with 5 additions and 3 deletions.
    8 changes: 5 additions & 3 deletions BlindWarriorI.md
    Original file line number Diff line number Diff line change
    @@ -38,10 +38,12 @@ The game will be considered finished when:
    * Ziska killed an innocent citizen.

    ## Considerations about the game development
    It is expected that the game developed should have fits the following considerations:
    This is team practice, rather than a solo endevour. The scope of this game is so simple that one can make it in a few minutes with 100% of test coverage. However, based on my experience applying this challenge to different teams, it is unberably hard to coordinate and finish when the team is bigger than 3 memebers.

    Ideally, this challenge must respect all Lean Architecture principles. However, the bare minumim requirements would be as follows:
    * The entire software should respect the [4 rules of Simple Design](https://www.martinfowler.com/bliki/BeckDesignRules.html) from Ken Beck.
    * Classes should respect the [Law of Demeter](http://en.wikipedia.org/wiki/Law_of_Demeter)
    * Methods should have no more than 10 lines
    * Classes should respect the [Single Responsibility Principle](http://en.wikipedia.org/wiki/Single_responsibility_principle)
    * It could be possible to run with a single ( and simple ) command
    * It could be possible to build the game with a single ( and simple ) command
    * It must be possible to run with a single ( and simple ) command
    * It must be possible to build the game with a single ( and simple ) command
  4. miere revised this gist Oct 26, 2022. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion BlindWarriorI.md
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    # Blind Warrior I
    An easy to dev game to practice SOLID and other OOP Principles. In this game, only a few features will be implemented.
    An easy to dev game to practice SOLID and other Clean Architecture Principles. In this game, only a few features will be implemented.

    ## Description
    __Blind Warrior__ is a command line game. It tells a history where a blind warrior named ZISKA. Some day, during his daily morning coffee at the Queen Sophia's Cafeteria, the entire city was invaded by the army of the German Empire. A noble hero does not flee without a fight: Ziska took a weapon and starts to fight against all enemies.
  5. miere revised this gist Apr 6, 2020. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion BlindWarriorI.md
    Original file line number Diff line number Diff line change
    @@ -39,7 +39,7 @@ The game will be considered finished when:

    ## Considerations about the game development
    It is expected that the game developed should have fits the following considerations:
    * The entire software should respect the [4 rules of Simple Design](http://agile.dzone.com/articles/4-rules-simple-design) from Ken Beck.
    * The entire software should respect the [4 rules of Simple Design](https://www.martinfowler.com/bliki/BeckDesignRules.html) from Ken Beck.
    * Classes should respect the [Law of Demeter](http://en.wikipedia.org/wiki/Law_of_Demeter)
    * Methods should have no more than 10 lines
    * Classes should respect the [Single Responsibility Principle](http://en.wikipedia.org/wiki/Single_responsibility_principle)
  6. miere revised this gist May 8, 2014. 1 changed file with 9 additions and 0 deletions.
    9 changes: 9 additions & 0 deletions BlindWarriorI.md
    Original file line number Diff line number Diff line change
    @@ -12,13 +12,22 @@ The game will have no input options. Here what it will do:
    * *the game* will auto start the game
    * *the game* will play all rounds until face the __"game over conditions"__

    What the game should output to the user:
    * Which _character_ the player are fight with
    * What was the fight final result: who wins/loose and remaning player health
    * At the end of game should be printed:
    * the reason of the end of game
    * how many enemies was killed

    ## Game Rules
    * All Ziska actions in the game are played by the computer
    * Ziska will attack every people he finds on his way
    * Ziska could use any weapon, whereas this weapon could not took more than 39% of an enemy health/life
    * Enemies could has any weapon, whereas this weapon could not took more than 59% of an enemy health/life
    * All weapon has no usage limit ( _auto-infinity weapon cheat :P_ )
    * Citizens has no weapon or its weapon could not hurt Ziska
    * The _characters_ Ziska will fight should be shufled before the game starts
    * The game is a survivor: no life recharge for Ziska until the end of game.

    The game starts with Ziska, the citizens and the army enemies with their respectives weapons. So, Ziska fight ( one-by-one ) with every one he finds in the city. The game finishes when found one of the __"game over conditions"__.

  7. miere created this gist May 8, 2014.
    38 changes: 38 additions & 0 deletions BlindWarriorI.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,38 @@
    # Blind Warrior I
    An easy to dev game to practice SOLID and other OOP Principles. In this game, only a few features will be implemented.

    ## Description
    __Blind Warrior__ is a command line game. It tells a history where a blind warrior named ZISKA. Some day, during his daily morning coffee at the Queen Sophia's Cafeteria, the entire city was invaded by the army of the German Empire. A noble hero does not flee without a fight: Ziska took a weapon and starts to fight against all enemies.

    ## The Game Interface
    The game will have no input options. Here what it will do:
    * *the player* will start the game
    * *the game* will create the player
    * *the game* will create the enemies
    * *the game* will auto start the game
    * *the game* will play all rounds until face the __"game over conditions"__

    ## Game Rules
    * All Ziska actions in the game are played by the computer
    * Ziska will attack every people he finds on his way
    * Ziska could use any weapon, whereas this weapon could not took more than 39% of an enemy health/life
    * Enemies could has any weapon, whereas this weapon could not took more than 59% of an enemy health/life
    * All weapon has no usage limit ( _auto-infinity weapon cheat :P_ )
    * Citizens has no weapon or its weapon could not hurt Ziska

    The game starts with Ziska, the citizens and the army enemies with their respectives weapons. So, Ziska fight ( one-by-one ) with every one he finds in the city. The game finishes when found one of the __"game over conditions"__.

    ## Game Over Conditions
    The game will be considered finished when:
    * There's no enemies to kill
    * Ziska is dead ( has no health/life available )
    * Ziska killed an innocent citizen.

    ## Considerations about the game development
    It is expected that the game developed should have fits the following considerations:
    * The entire software should respect the [4 rules of Simple Design](http://agile.dzone.com/articles/4-rules-simple-design) from Ken Beck.
    * Classes should respect the [Law of Demeter](http://en.wikipedia.org/wiki/Law_of_Demeter)
    * Methods should have no more than 10 lines
    * Classes should respect the [Single Responsibility Principle](http://en.wikipedia.org/wiki/Single_responsibility_principle)
    * It could be possible to run with a single ( and simple ) command
    * It could be possible to build the game with a single ( and simple ) command