reedlaw / ruby-mmo

Ruby MMO: massively multiplayer online programming challenge
274 stars 102 forks source link

Strength & defence #16

Closed strax closed 10 years ago

strax commented 12 years ago

Instead of having these as constants, it'd be better to increase strength by a small amount with each attack and, naturally, lower defence after taking damage. Defence could also recover when resting, but with a slower pace than health.

reedlaw commented 12 years ago

Yes. There is a lot we could do to make this more like a traditional MMO. For example, when a player is killed, the experience points could be given to the player who dealt the most damage. I'm not sure of the best rules for implementing such rules, but maybe we could use BrowserQuest for inspiration.

vitaly-pushkar commented 12 years ago

Strength and defense should increase when user gets level up. It should be based on user fights history: if user attacked others a lot - he receives more strength on level up, if user was attacked more than he attacked others - he receives more defense on level up.

There should also be such variable as 'agility' which indicates some percent of possible flee when user is attacked so not every attack of enemy is successful, and 'dexterity' on other side which decreases the power of agility.

Each time user kills a monster he should have a change to randomly take some weapons (increasing of attack power) or armor (increasing of defense) and potions to drink to get health back immediately without need to rest.

You should also provide other types of monsters with different skills.

There should be aggressive monsters (attacking when see player), passive (not attacking players until was attacked), supportive (attacking if see the player attacking other friendly monster)

reedlaw commented 12 years ago

These are all good suggestions. The idea was to build a minimal viable MMO, but adding more traditional RPG elements would make the strategy more interesting. Still debating if a spatial aspect needs to be introduced. If so, each round would have to allow for a certain amount of travel, and players would have to be in close proximity in order to attack each other. This would decrease the amount of attacking dramatically.