CN102571695B - 一种数据同步方法和游戏服务器 - Google Patents
一种数据同步方法和游戏服务器 Download PDFInfo
- Publication number
- CN102571695B CN102571695B CN201010591045.2A CN201010591045A CN102571695B CN 102571695 B CN102571695 B CN 102571695B CN 201010591045 A CN201010591045 A CN 201010591045A CN 102571695 B CN102571695 B CN 102571695B
- Authority
- CN
- China
- Prior art keywords
- client
- game
- managing function
- input parameter
- currency
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种数据同步方法和游戏服务器,用于经营类网络游戏中,该方法包括:服务器端从客户端获取经营函数的输入参数的当前值,其中,所述经营函数的输入参数包括使用所述客户端的用户的基础参数;所述服务器端根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,所述输出结果包括所述游戏的当前经营绩效数据;当所述客户端启动所述游戏时,所述服务器端向所述客户端发送所述经营绩效数据供所述客户端显示。采用本发明,使得服务器不会因为在线用户过多需要同步数据导致压力增大,而且在数据同步上杜绝了用户利用外挂篡改用户游戏数据的可能。
Description
技术领域
本发明涉及一种网络游戏领域,尤其涉及一种数据同步方法和游戏服务器。
背景技术
现有的网络经营类游戏中,客户端需要和服务器保持长连接或者频繁与服务器进行数据交互,这样客户端才能将客户端前台的游戏动画表现作为用户行为上报给后台服务器作为数据变更的依据。
比如在餐厅经营网络游戏中,当用户通过客户端运行游戏时,客户端前台中的动画动态的显示餐厅的上菜、收银等情况,并当动画中发生经营绩效数据变化动作时(如,服务员向就餐者进行收银并完成收银的动画发生时),根据该动作的发生实时改变客户端前台场景中显示的经营绩效数据,如经验值、金币值、剩余主菜数目等;同时,客户端会将这些经营绩效数据实时的发送给服务器端,服务器端保存这些数据。如根据完成收银动画的显示,客户端会向服务器发送收银完成动作触发的数据,告诉服务器消耗了一道菜肴,并且获得了多少金币,服务器接收到客户端发来的数据后会将此数据更新服务器上的用户数据。
现有技术的数据产生和同步模式,给服务器造成了很大的压力,特别是当用户数量达到一定数目时,其数据的上报会非常频繁,这样游戏的运营成本就会增多。
而且,在客户端运行游戏的时候,经营绩效数据是客户端发送给服务器存储的,客户端就可能通过外挂模拟用户行为非法获取经验或者金钱,对其他不通过作弊外挂正常运行游戏的用户不公平,不利于游戏的健康发展。
发明内容
本发明实施例所要解决的技术问题在于,提供一种数据同步方法和游戏服务器。使得服务器不会因为在线用户过多需要同步数据导致压力增大,而且在数据同步上杜绝了用户利用外挂篡改用户游戏数据的可能。
为了解决上述技术问题,本发明实施例提供了一种数据同步方法,用于经营类网络游戏中,该方法包括:
服务器端从客户端获取经营函数的输入参数的当前值,其中,所述经营函数的输入参数包括使用所述客户端的用户的基础参数;
所述服务器端根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,所述输出结果包括所述游戏的当前经营绩效数据;
当所述客户端启动所述游戏时,所述服务器端向所述客户端发送所述经营绩效数据供所述客户端显示。
其中,该方法还可进一步包括:
当客户端启动所述游戏时,从所述服务器端获取所述经营函数的输入参数的当前值和所述经营绩效数据以进行游戏状态显示;
当客户端运行所述游戏时,所述客户端根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,并显示所述输出结果中的经营绩效数据。
其中,所述经营函数的输入参数还包括时间参数。
另一方面,本发明实施例还提供了一种游戏服务器,用于经营类网络游戏中并与客户端连接,该游戏服务器包括:
参数输入模块,用于从客户端获取经营函数的输入参数的当前值,其中,所述经营函数的输入参数包括使用所述客户端的用户的基础参数;
函数计算模块,用于根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,所述输出结果包括所述游戏的当前经营绩效数据;
第一数据发送模块,用于当所述客户端启动所述游戏时,向所述客户端发送所述经营绩效数据供所述客户端显示。
其中,游戏服务器还可进一步包括:
第二数据发送模块,用于当客户端启动所述游戏时,向所述客户端发送所述经营函数的输入参数的当前值和所述经营绩效数据以便所述客户端进行游戏状态显示。
其中,所述经营函数的输入参数还包括时间参数。
相应的,本发明实施例还提供了一种游戏运行客户端,用于经营类网络游戏中,该客户端包括:
获取模块,用于当启动所述游戏时,从所述服务器端获取所述经营函数的输入参数的当前值和所述经营绩效数据以进行游戏状态显示;
运行模块,用于当运行所述游戏时,根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,并显示所述输出结果中的经营绩效数据。
其中,所述经营函数的输入参数还包括时间参数。
该客户端还可进一步包括第三数据发送模块,用于向所述服务器端发送经营函数的输入参数的当前值。
在本发明实施例中,当客户端运行游戏时,服务器端根据从客户端获知的经营函数的输入参数的当前值和经营函数来自行生成经营绩效数据,而不需要客户端实时的上报,一方面减少了与客户端通过通讯传输的数据,另一方面也杜绝了客户端利用外挂篡改用户游戏数据的可能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的数据同步方法的一个具体流程示意图;
图2是本发明实施例中客户端计算绩效和实时显示动画的一个具体流程示意图;
图3是本发明实施例中的游戏服务器的一个具体组成示意图;
图4是本发明实施例中的游戏运行客户端的一个具体组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对于经营类网络游戏,通常用户对实时性操作的要求不高,而是重在设定经营的方式和状态等。如,对于餐厅经营游戏,用户一般只需要维持服务员、厨师数目、准备可经营的主菜和配菜、对餐厅进行个人偏好的设置等即可,并不需要用户进行具体餐厅经营活动的实时操作,而用户也通常比较关心的是一段时间后根据之前设定的经营策略所得到的经营绩效。那么在考虑游戏数据同步时,可以不必实时的根据前台动画显示的经营活动来更新服务器的数据。
本发明人研究发现了上述的经营类网络游戏的特点,并据此提出根据不同的经营类游戏来制定不同的盈利公式(或可称为经营函数,该函数的输入通常为用户设定的经营策略的参数,输出则为经营绩效),比如餐厅通过用户的雇员数量,桌椅数量和摆放方式这几个因素(这些因素即体现了用户的经营策略)来制定一条公式,此公式在服务器上运行,这样即使前台正在运行游戏,服务器(即后台)也不需要实时的获取客户端(即前台)上的经营绩效数据就可以获得根据用户设置的经营策略所能够达到的经营绩效。为了能使用户的体验更逼真,还可以在客户端也采用相同的公式来计算绩效,并根据该公式的计算结果在其前台的动画表现中进行实时播放。以下则结合具体实施例进行描述。
如图1所示,本发明实施例提供了一种数据同步方法,用于经营类网络游戏中,该方法包括:
101、服务器端从客户端获取经营函数的输入参数的当前值,其中,所述经营函数的输入参数包括使用所述客户端的用户的基础参数。如,对于餐厅经营游戏,该基础参数可包括:当前正在工作的厨师数目、服务员数目、可提供的主菜、餐厅桌椅数目、餐厅桌椅摆放位置等。上述的参数可根据用户的喜欢在一定范围内进行设置。
102、服务器端根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,所述输出结果包括所述游戏的当前经营绩效数据。其中,该输入参数还可包括一时间参数,这样服务器就只需要在一定时间点才进行经营绩效的计算,该绩效结果可模拟出经过一定时间之后的绩效情况。
103、当所述客户端启动所述游戏时,所述服务器端向所述客户端发送所述经营绩效数据供所述客户端显示。由于绩效数据是以服务器根据经营函数计算获得的为准,所以当每次客户端启动游戏时,都需要从服务器载入最新的绩效数据。
进一步具体来说,采用了本发明中的实施例后服务器和客户端之间在动画过程中不进行任何通信,在如餐厅经营等经营类游戏中,依照公式:
金钱=时间长度*业务具体的函数(因素1,因素2,因素3)
来计算“时间长度”段时间内增加的金钱数目,其中,因素是根据具体的业务逻辑可以是桌椅的数量,服务员的数量,以及路径的因素等等。
服务器端会在客户端每次访问主页的时候计算一次这个金钱数值(根据上一次访问的时间点和这一次访问的时间点得出时间长度,进而得出获得的金钱),并将该金钱数值发送给客户端。
即对于服务器端来说,不论客户端是否运行该游戏,服务器都会根据既定的函数计算当前的经营绩效。当然,考虑到服务器的负担,服务器可以每隔一段时间进行绩效的计算,或是只有当客户端启动游戏进行显示时才进行计算。
当然,如前所述,为了获得更逼真的游戏体验,客户端也可以采用同样的函数和输入值来计算绩效,则本方法还可进一步包括:
A、当客户端启动所述游戏时,从所述服务器端获取所述经营函数的输入参数的当前值和所述经营绩效数据以进行游戏状态显示;
B、当客户端运行所述游戏时,所述客户端根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,并显示所述输出结果中的经营绩效数据。
如图2所示,以餐厅经营为例,说明客户端计算绩效和实时显示动画的过程,该过程包括:
201、在客户端动态显示餐厅进入一个顾客。
202、利用公式计算距离上一个顾客进来时到现在的盈利额度。
203、判断该盈利额度是否已达到消耗一份菜肴的要求,若是则转入步骤204、否则转入步骤205。
204、对201步骤中进入的顾客进行正常服务,动画显示为顾客找到凳子、等待上菜、就餐等。
205、等待下一个顾客进入,对201步骤中进入的顾客显示为找不到凳子或等待时间超时、顾客走出餐厅等。
在本发明实施例中,当客户端运行游戏时,服务器端根据从客户端获知的经营函数的输入参数的当前值和经营函数来自行生成经营绩效数据,而不需要客户端实时的上报,一方面减少了与客户端通过通讯传输的数据,另一方面也杜绝了客户端利用外挂篡改包括经营绩效数据在内的用户游戏数据(如,用户利用外挂刷游戏经验值、金币值等)的可能。
另一方面,本发明实施例还提供了一种游戏服务器,用于经营类网络游戏中并与客户端连接,该游戏服务器1包括:
参数输入模块10,用于从客户端获取经营函数的输入参数的当前值,其中,所述经营函数的输入参数包括使用所述客户端的用户的基础参数;
函数计算模块12,用于根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,所述输出结果包括所述游戏的当前经营绩效数据;
第一数据发送模块14,用于当所述客户端启动所述游戏时,向所述客户端发送所述经营绩效数据供所述客户端显示。
其中,游戏服务器1还可进一步包括:
第二数据发送模块16,用于当客户端启动所述游戏时,向所述客户端发送所述经营函数的输入参数的当前值和所述经营绩效数据以便所述客户端进行游戏状态显示。如图3显示,为上述各模块均包括的情况。
相应的,本发明实施例还提供了一种游戏运行客户端,用于经营类网络游戏中,该客户端2包括:
获取模块20,用于当启动所述游戏时,从所述服务器端获取所述经营函数的输入参数的当前值和所述经营绩效数据以进行游戏状态显示;
运行模块22,用于当运行所述游戏时,根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,并显示所述输出结果中的经营绩效数据。
其中,所述经营函数的输入参数还包括时间参数。
由于用户可能在客户端2修改当前的经营策略,即修改输入参数,因此,当该参数修改后客户端2应将该参数发送给服务器1,以便服务器1在后台计算绩效数据。相应的,则该客户端2还可进一步包括第三数据发送模块24,用于向所述服务器端发送经营函数的输入参数的当前值。如图4所示,为客户端还包括第三数据发送模块24的情况。
在本发明实施例中,当客户端运行游戏时,服务器端根据从客户端获知的经营函数的输入参数的当前值和经营函数来自行生成经营绩效数据,而不需要客户端实时的上报,一方面减少了与客户端通过通讯传输的数据,另一方面也杜绝了客户端利用外挂篡改包括经营绩效数据在内的用户游戏数据(如,用户在游戏中的经验值、金币值等)的可能。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (9)
1.一种数据同步方法,其特征在于,所述方法包括:
当客户端运行游戏时,服务器端从客户端获取经营函数的输入参数的当前值,其中,所述经营函数的输入参数包括使用所述客户端的用户的基础参数;
所述服务器端根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,所述输出结果包括所述游戏的当前经营绩效数据;
当所述客户端启动所述游戏时,所述服务器端向所述客户端发送所述经营绩效数据供所述客户端显示。
2.如权利要求1所述的方法,其特征在于,所述方法包括:
当客户端启动所述游戏时,从所述服务器端获取所述经营函数的输入参数的当前值和所述经营绩效数据以进行游戏状态显示;
当客户端运行所述游戏时,所述客户端根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,并显示所述输出结果中的经营绩效数据。
3.如权利要求1或2所述的方法,其特征在于,所述经营函数的输入参数还包括时间参数。
4.一种游戏服务器,其特征在于,所述游戏服务器包括:
参数输入模块,用于当客户端运行游戏时,从客户端获取经营函数的输入参数的当前值,其中,所述经营函数的输入参数包括使用所述客户端的用户的基础参数;
函数计算模块,用于根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,所述输出结果包括所述游戏的当前经营绩效数据;
第一数据发送模块,用于当所述客户端启动所述游戏时,向所述客户端发送所述经营绩效数据供所述客户端显示。
5.如权利要求4所述的游戏服务器,其特征在于,所述游戏服务器还包括:
第二数据发送模块,用于当客户端启动所述游戏时,向所述客户端发送所述经营函数的输入参数的当前值和所述经营绩效数据以便所述客户端进行游戏状态显示。
6.如权利要求4或5所述的游戏服务器,其特征在于,所述经营函数的输入参数还包括时间参数。
7.一种基于权利要求4-6中任一所述的游戏服务器的游戏运行客户端,其特征在于,所述客户端包括:
获取模块,用于当启动所述游戏时,从服务器端获取经营函数的输入参数的当前值和经营绩效数据以进行游戏状态显示;
运行模块,用于当运行所述游戏时,根据所述经营函数和输入参数的当前值获得所述经营函数的输出结果,并显示所述输出结果中的经营绩效数据。
8.如权利要求7所述的客户端,其特征在于,所述经营函数的输入参数还包括时间参数。
9.如权利要求7或8所述的客户端,其特征在于,所述客户端还包括第三数据发送模块,用于向所述服务器端发送经营函数的输入参数的当前值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010591045.2A CN102571695B (zh) | 2010-12-16 | 2010-12-16 | 一种数据同步方法和游戏服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010591045.2A CN102571695B (zh) | 2010-12-16 | 2010-12-16 | 一种数据同步方法和游戏服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102571695A CN102571695A (zh) | 2012-07-11 |
CN102571695B true CN102571695B (zh) | 2016-08-03 |
Family
ID=46416183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010591045.2A Active CN102571695B (zh) | 2010-12-16 | 2010-12-16 | 一种数据同步方法和游戏服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102571695B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577677A (zh) * | 2012-08-07 | 2014-02-12 | 腾讯科技(深圳)有限公司 | 一种网络游戏的反外挂方法和*** |
CN104307174B (zh) * | 2014-10-14 | 2016-05-11 | 腾讯科技(深圳)有限公司 | 用户游戏数据展示方法及装置 |
CN104410632B (zh) * | 2014-11-26 | 2018-01-16 | 广州华多网络科技有限公司 | 一种同步业务数据的方法及装置 |
CN104598832B (zh) * | 2015-01-08 | 2018-01-09 | 盟游(北京)科技有限公司 | 网络游戏中游戏数值防篡改的设备和方法、网络游戏*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005022397A1 (en) * | 2003-08-28 | 2005-03-10 | Trihedron Co., Ltd. | Method of data synchronization in multiplayer network games |
CN1743043A (zh) * | 2005-06-19 | 2006-03-08 | 珠海市西山居软件有限公司 | 一种网络游戏***及其实现方法 |
CN101370013A (zh) * | 2008-07-10 | 2009-02-18 | 诸松涛 | 网络游戏反外挂的方法 |
CN101741653A (zh) * | 2008-11-21 | 2010-06-16 | 爱思开电讯投资(中国)有限公司 | 客户端服务器、智能终端、网络游戏***和方法 |
CN101841538A (zh) * | 2010-04-16 | 2010-09-22 | 上海亚图软件有限公司 | Cs架构下的物理计算网络同步方法 |
-
2010
- 2010-12-16 CN CN201010591045.2A patent/CN102571695B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005022397A1 (en) * | 2003-08-28 | 2005-03-10 | Trihedron Co., Ltd. | Method of data synchronization in multiplayer network games |
CN1743043A (zh) * | 2005-06-19 | 2006-03-08 | 珠海市西山居软件有限公司 | 一种网络游戏***及其实现方法 |
CN101370013A (zh) * | 2008-07-10 | 2009-02-18 | 诸松涛 | 网络游戏反外挂的方法 |
CN101741653A (zh) * | 2008-11-21 | 2010-06-16 | 爱思开电讯投资(中国)有限公司 | 客户端服务器、智能终端、网络游戏***和方法 |
CN101841538A (zh) * | 2010-04-16 | 2010-09-22 | 上海亚图软件有限公司 | Cs架构下的物理计算网络同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102571695A (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Brynjolfsson et al. | GDP-B: Accounting for the value of new and free goods in the digital economy | |
CN103049667B (zh) | 能运行多种不同类型棋牌类游戏的竞技*** | |
US7873485B2 (en) | Indicating physical site energy usage through a virtual environment | |
CN113599803A (zh) | 一种基于边缘计算的数据处理方法、设备及可读存储介质 | |
CN107146085B (zh) | 一种异常应用行为监控方法和装置 | |
CN105354133B (zh) | 一种游戏日志数据的处理方法及装置 | |
CN104967607A (zh) | 一种信息处理方法、终端及服务器 | |
CN108460627A (zh) | 营销活动方案推送方法、装置、计算机设备及存储介质 | |
Prange | Ambidextrous internationalization strategies: The case of Chinese firms entering the world market | |
KR20190070218A (ko) | 가상 화폐 투자 및 분배를 위한 시스템 및 방법 | |
CN102571695B (zh) | 一种数据同步方法和游戏服务器 | |
CN110599178A (zh) | 一种基于智能合约的数据处理方法、装置以及存储介质 | |
EP3852014A1 (en) | Method and apparatus for training learning model, and computing device | |
CN108211352A (zh) | 一种调节画质的方法及终端 | |
Dattée et al. | Dynamics of social factors in technological substitutions | |
CN104065672A (zh) | 广告推送方法、客户端及广告推送*** | |
CN104281510A (zh) | 应用程序耗电程度的获得方法、***及节能方法、*** | |
CN109615200A (zh) | 虚拟互动道具发放方法、存储介质、电子设备及*** | |
CN108668147A (zh) | 一种优化直播应用的方法以及移动终端 | |
CN111185014A (zh) | 对象匹配方法、装置和计算机可读存储介质 | |
CN106358057A (zh) | 广告的投放方法及装置 | |
CN106454958A (zh) | 一种网络资源分配方法及装置 | |
Sun et al. | Games of miners | |
CN105260906A (zh) | 互动链接推送方法及装置 | |
Avinadav et al. | Value of information in a mobile app supply chain under hidden or known information superiority |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |