网络游戏中的货币系统

转载 2007年10月12日 09:03:00

现在 MMO 中经济系统往往是设计的关键。可能是网络游戏发展的时间较短,并没有形成系统的理论的缘故,我所了解的网络游戏中都没有特别好的处理好经济系统中货币的控制和流通问题。

我们知道,货币只是一种经济活动中一种媒介,货币本身是没有价值的。但是,网络游戏中却很难体现这一点。系统对游戏直接的货币投放是不可控制的,虽然很多设计人员企图控制,但只是收效不同而已。大体上,大家都是用玩家的在线时间换取系统货币总量的增加,而用玩家自身的修炼回收掉货币。还有一小部分是用上税和赌博的形式回收掉。

云风正在设计的游戏很不一样,是基于国家间的贸易和战争而不是个人修炼的。强调一种政府的管理,而非玩家自发组成的团体。我更希望做出一个战略感的游戏,而不是强调团体战术或者个人战斗。

国家间的竞争正是一种整体经济实力的竞争,所以经济系统尤其重要。我不得不慎重仔细的考虑这一块,方案考虑了好几次,这次总算有点条理了。

详细的策划案只能写在内部网络上,这里放出的只能是初期的一些构想,希望能给同好们一些启发。

首先只考虑单个服务器(单个国家)的发展:作为单个服务器,在没有政府的前提下,我们可只提供以物易物的手段。npc 不买卖物品,所以不需要提供货币。很多游戏经济崩溃后,其实又回到了这种状态,那么,还不如只提供这种手段。既而当政府成立后,再启动货币系统。

这个时候,系统发放给政府一笔货币,作为运作之用,之后系统不会平空给政府任何货币了。货币其实是没有价值的,在初期,我们也不可能发生进行周遍贸易或者掠夺,所以暂时把服务器看成一个独立封闭的状态。这笔货币就是作为一种经济活动的辅助工具使用,作为一个服务器玩家的群体,若想让整个服务器更快的发展,就应该让货币更频繁的流通。如果少部分玩家由于私心占有了大量货币不花出去,在宏观上会导致国家发展缓慢。

货币怎样在城市建设中发挥作用?这里以盖一幢建筑为例:

假设一幢建筑需要三天建成,每天需要 100 单位的木材。游戏系统强制木材只能从木材厂采购,而不能由玩家直接提供。木材的政府收购价格由政府的一个机构(由玩家担任)确定,但是不能任意指定。只能在一个范围做浮动,每天的浮动范围也被限制。收购价一旦定下来,货币先支付给木材厂,第二天,如果木材厂中有指定数量的木材,则强制收购;如果没有达到限定数量的木材,则延期。木材提供请求将被放入队列,队列满的时候,不能再接受预订请求。

对于木材厂,它本身拥有一定大小的现金库保存流动资金。每天木材厂可以在定额范围内向玩家征集木材(即木材厂的加工量是被限制的),价格由木材厂主根据现金存量标价。木材逐个单位的从玩家手头收购,每天的第一单位木材价格先被强制定为前一天收盘价,接着并允许木材厂主对其在小范围浮动。木材厂主每天注入一定数量的总金额,一旦这笔资金消耗干净,则不能再收购木材。每天可按一定时间周期(比如一小时或半小时)调整一次价格。如果一个时间单位没有人提供木材,木材价格会增长一个小幅度。在一个时间单位内提供超过一个单位的木材,从第2单位起,价格逐步下降。这个做法是让商品的价格一定程度上受到市场的影响。

通过以上流程,可以将政府的货币转移到玩家身上。玩家便可以用货币为媒介做交易了。同时,政府对玩家之间的经济活动征收交易税,以回收货币。其他回收货币的方法还有很多,比如传统的让玩家以提升自己能力的形式回收等。但是整个服务器内的总体货币在这个循环内不变。

额外的,我们设定一种特定的资源,比如金矿。只有政府自己可以把金矿制成货币。金矿可以由政府这个环节变成货币。私人是被禁止制币的。通过这个途径,整个国家的货币总量可以被得到增加。

而整个系统内的货币总量的消耗途径则是永久不再玩游戏的玩家带走的。

以上只是一些大略的构想,单从这点设计上,一定存在许多矛盾和不完善。想完整实施还需要很多的设计,文章仅仅是给有兴趣的朋友一些启发罢了。

 

网络游戏通信协议

1、 概述    游戏通信协议包含两种不同的部分:客户端和服务器(C-S)之间的交互协议,游戏内部服务器(S-S)之间的交互协议。前者为了降低延迟,应该尽可能减少报文长度。同时,为了防止外挂...
  • zh13544539220
  • zh13544539220
  • 2015年04月03日 16:19
  • 2498

网络游戏服务器构架设计

网络游戏服务器构架设计(一):前言 这篇blog题目涉及的范围真大!以至于在这里需要先写一篇前言把范围缩小。选择写这样一个系列的文章,主要是想给工作了两年的自己一个交代,或者说是一个阶段...
  • sharemyfree
  • sharemyfree
  • 2015年05月27日 16:44
  • 1641

《网络游戏核心技术与实战》读书笔记

零、快速入门【套接字API】 1. socket():因为还不会生成新的TCP连接,所以不存在TCP连接状态; 2. connect():SYN→SYN/ACK→ACK(三次握手); - 主...
  • jinnblue
  • jinnblue
  • 2017年02月22日 15:54
  • 1230

网络游戏数据传输:粘包的处理

网络传输大体上包含这四个协议type area command message,这四层协议是依次向下传递的。 所谓协议,说简单点就是服务器端和客户端的一个约定, 比如,向服务器发送(1,0,1,“...
  • Ymiku
  • Ymiku
  • 2015年05月23日 21:45
  • 700

网络游戏服务器开发(一)

在开发过程中,会先有一份开发大纲或是一份策划案,但是这些在我的开发中可能不会有,或者即使有,也很有可能是我随性写下来的,但是我会尽可能写好它。网络通信层,我会放到单独的SOCKET编程中去讲解,这里的...
  • yueding521125
  • yueding521125
  • 2014年11月19日 11:43
  • 12000

[四种]网络游戏外挂的制作方法

1、动作式,所谓动作式,就是指用API发命令给窗口或API控制鼠标、键盘等,使游戏里的人物进行流动或者攻击,最早以前的“石器”外挂就是这种方式。(这种外挂完全是垃圾,TMD,只要会一点点API的人都知...
  • liujiayu2
  • liujiayu2
  • 2015年05月14日 15:36
  • 1706

网络游戏的对时以及同步问题

大多数实时网络游戏,将 server 的时间和 client 的时间校对一致是可以带来许多其他系统设计上的便利的。这里说的对时,并非去调整 client 的 os 中的时钟,而是把 game clie...
  • w00w12l
  • w00w12l
  • 2015年04月16日 17:01
  • 832

网络游戏服务器架构设计

http://blog.csdn.net/awnuxcvbn/article/details/17397441 入手 假如,我现在接手一个新项目,我的身份还是主程序。在下属人员一一到位之前,在和...
  • zhaoguanghui2012
  • zhaoguanghui2012
  • 2016年07月14日 17:56
  • 1370

Lua游戏脚本热更新机制

一、设计要点        能够在服务器运行期间更新程序逻辑代码以实现修正程序Bug、修改游戏数据的目的。游戏框架代码的热更新暂不考虑。例如: 某个业务处理函数逻辑有Bug,服务器运营期间发...
  • cbbbc
  • cbbbc
  • 2015年04月20日 20:35
  • 1690

【cocos2dx网络游戏】搭建CS架构的基本通信框架(一)Client

新建空白win32项目MClient 新建main.cpp  #include using namespace std; #include "comm.h" void proc_data(s...
  • wenzi6886
  • wenzi6886
  • 2014年12月17日 23:54
  • 718
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:网络游戏中的货币系统
举报原因:
原因补充:

(最多只允许输入30个字)