Sign in to follow this  
Lee_Hillvith

A mmo related programming issue , unlock game features

Recommended Posts

Lee_Hillvith    143

Hi, guys

 

Currently I am having a tactical issue on some server programming stuff, really would like some suggestions

 

Basically I want to implement a module to unlock specific game features for players, say unlock blacksmith shop for all players who reach Lv 10. I am doing this by reading server config files.

 

Considering the following situation: A player reached Lv 8 and went offline and some game designers decide to change the config file during a server upgrade (Note: Now blacksmith shop unlock at Lv.5). So when this player come online again, he will discover that he is never going to unlock the blacksmith shop.

 

Is there any smart solution to this issue?

Of course I can keep the old config info with player data and compare it with the new data when player goes online, but that's definitely a awful idea since making thousand of players keep a portion of same data would be stupid.

 

Cheers

 

Ben

 

 

 

 

Share this post


Link to post
Share on other sites
conq    735

You're approaching this the wrong way. Enforce using the blacksmith at the client level, and check the transactions on the server.

 

The user's client should say (if he's under leveled) "You aren't high enough level to use the blacksmith". But if he sends the transaction anyway via cheat, the server should say "He shouldn't be able to try using me" and reject it. Log that event so you can debug/ban hackers of course.

 

Pretty much all your systems will need to work like this is you're making an MMO.

 

Check if possible on client > send transaction > Check if possible on server >

Share this post


Link to post
Share on other sites
tharealjohn    453

I agree with conq. 

 


So when this player come online again, he will discover that he is never going to unlock the blacksmith shop.

 

Notify the user when they log back in "Hey, the blacksmith is now available to you". However you implement that is up to you. With doing that, they will at least now know it has changed and available. 

Share this post


Link to post
Share on other sites
wintertime    4108

To me it seems much simpler to only compare the character level on the server for a single npc only at the moment a user clicks it, than exchanging large config files for the vast number of all the different npc on the whole world every time something changes and do double/triple checking.

Share this post


Link to post
Share on other sites
Lee_Hillvith    143

Thank you guys, you guys are inspiring! I have discussed with our client guy, turns out they have already wrote a re-check method for this

 

player online -> Server send unlock info -> Client Compare it with new client config -> Client Send transaction  -> Server check again ->unlock blacksmith

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this