LiamKarlMitchell / InfiniteSky

InfiniteSky is an open-source mmorpg project, It is written in Node.JS
GNU General Public License v3.0
33 stars 42 forks source link

Leveling Function #185

Open Blackyyyy opened 9 years ago

Blackyyyy commented 9 years ago

A menu in the game that could be accessed by pressing a specific key which gives you the choice of what level you would like to ascend. The options would contain m33, g4,g12,r12. This tool would allow for players to not have to spend the vast amount of time grinding and could instead pvp as soon as they begin their journey.

LiamKarlMitchell commented 9 years ago

No one would choose a lower level.. they would just instantly want to be max level.

Probably could just make /level 145 available or add a zone on connect script which checks if the character is the level you want. If not it gives them exp to become that level.

Example:

var WantedLevel = 145;
Zone.onConnect(function (cilent) {
// Get exp to character next level
function LevelUp() {
if (client.character.Level < WantedLevel) {
  db.Exp.findByLevel(client.character.Level+1, function(err, expinfo){
    Zone.giveEXP(client, client.character.Experience - expinfo.startExp);
    LevelUpTo();
  });
}
}

if (client.Character.Level < WantedLevel) {
  client.sendInfoMessage('Server is automatically leveling you to Lv '+WantedLevel);
 }
LevelUpTo();
)};

So its not really needed to be implemented in the main InfiniteSky code its more of a custom server thing :).

Blackyyyy commented 9 years ago

What i mean is people are still going to want sitters as it is still a popular way for people to play different wars. Those options give people the option to pick whether they want to m33 or g12.

LiamKarlMitchell commented 9 years ago

Why not just modify the level entry for the wars on such a server ;) So that anyone can enter if everyone starts off at say M1

Almar1 commented 9 years ago

@LiamKarlMitchell I think what @Blackyyyy means is that you are able to lock your character into a certain level. So for example if I have a 30-49 war sitter, I would like it to keep 49. So basically a level lock. For your information Blackyyyy this is a Twelvesky 1 server so no God levels, max level would be m33.

On second thought, he doesn't mean a level lock, he means an instant level, Which is a terrible idea, it would destroy the whole grinding system. But a level lock on the other hand would be nice.

LiamKarlMitchell commented 9 years ago

Add a gm command that is like /noexp or /nolevel And have it set

client.character.ignoreEXP = !client.character.ignoreEXP;
client.sendInfoMessage( 'Ignoring EXP is '+ (client.character.ignoreEXP ? 'On' : 'Off') );

Add ignoreEXP to the db/character.js somewhere as a boolean.

in Zone.giveExp do

if (client.character.ignoreEXP) {
  return false;
}