设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2224|回复: 39
打印 上一主题 下一主题

[讨论] 怎麼製作類似大富翁的遊戲?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
116 小时
注册时间
2012-10-4
帖子
193
跳转到指定楼层
发表于 2017-2-7 19:41:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
前幾天在網路上找到「すごろくプリンセス」這款大富翁遊戲
聽說是用RMVA製作的
試玩後我嚇了一跳,沒想到能做出這種品質的大富翁

我也想試試做出大富翁的遊戲
除了擲骰子前進,踩格子發生事件這基本功能以外
希望還加入跟主角競爭的NPC玩家,以及跟NPC玩家在同一格時會觸發事件的功能
請問這種大富翁要怎麼做,是不是需要腳本才行?

Lv5.捕梦者 (版主)

梦石
1
星屑
24004
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

7
发表于 2017-2-11 22:23:56 | 只看该作者
大富翁这种回合制的游戏,就按照顺序来嘛……

角色事件:
流程事件结束转移到某个角色事件
1. 回合开始
2. 使用道具
3. 投掷骰子
4. 开始移动(此时无法操作)
5. 单次移动(每1步触发)结束依次触发事件(自己定次序)
  5.1 地形事件,指在此地会触发的效果,比如过路费,银行
  5.2 碰撞事件,检测是否有其他棋子和自己在同一格,比如交易
  5.3 回合事件,行动步数到一定时候自动触发,比如加速卡,路障
6. 停止后的选择,同上
7. 回合结束,转移到流程事件

流程事件:
角色回合结束转移到流程事件
1. 回合事件,比如计算日期,发放奖励
2. 决定下一个玩家
3. 下一个玩家回合开始,转移到角色事件

此外加一个“随时暂停”查看菜单的功能就OK

点评

↓不知道,所以才说要把地图画大点嘛……比如每个格子都是2*2,然后不同的棋子站在格子的不同点,这样也就避免了多个棋子出现了同一点的问题。  发表于 2017-2-14 19:11
對了,我想問一下,如果帶入同一個座標的複數事件ID,會帶入數值大的還是小的ID?  发表于 2017-2-14 18:22
↓看5.1  发表于 2017-2-12 23:13
單獨一個事件啊....我再思考看看,那繞一圈後經過起點就得到金錢的觸發方式該怎麼做?  发表于 2017-2-12 23:08
↓建议是单独一个事件读取位置判断  发表于 2017-2-12 22:51
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv2.观梦者 (禁止发言)

梦石
0
星屑
653
在线时间
3774 小时
注册时间
2011-2-26
帖子
1839

开拓者

6
发表于 2017-2-11 19:34:34 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
24004
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

5
发表于 2017-2-11 14:47:59 | 只看该作者
意思是說半透明的玩家跟著旗子一起行走嗎?

对,全透明的玩家跟着棋子一起走,如果是我就会这么做
這樣的話格子事件判斷是靠獲得位置信息變量來判斷囉

大富翁可没说必须一格一格的走,你可以每次走三格,把地图画大些,然后获得目标位置附近的信息变量什么的……
那變量5(事件區域ID)的值是4.10還是兩邊加起來的14

事件区域ID,是地图上画上去的……打开区域编辑模式看看……

点评

那請問只要經過就發生事件(例如經過銀行時可以存領錢),跟玩家們停在同一格時發生玩家間的事件這兩種功能又該怎麼做呢?  发表于 2017-2-11 19:54
我大概明白停在格子上的事件發生判斷條件了  发表于 2017-2-11 19:52
具体的看个人的想法,我也只是大致说一下怎么实现。只要最后能玩就行。此外,纯事件大富最困难的地方是数据的存储和整理吧?做复杂了事件太多  发表于 2017-2-11 17:54
可是如果一個區域有好幾格事件格,不就無法辦別要觸發哪個事件了?  发表于 2017-2-11 17:20
↓差不多,但是事件ID太麻烦,直接获取区域ID更方便吧,然后根据区域ID判断发生的事件。  发表于 2017-2-11 16:57
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
24004
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

4
发表于 2017-2-10 22:22:43 | 只看该作者
本帖最后由 guoxiaomi 于 2017-2-10 23:46 编辑

利用事件和区块,完全不用脚本也有合适的方法~

(抬头看了一眼是VA区,吓得我立即补充了这个合适的方法)

这里拿环形地图举例:

1. 设置一个变量叫“行动数”,用来表示玩家or角色将要移动的步数
2. 地图绘制好,这样分区块:玩家在此位置下一步是向上走的,记为区块1,向左,记为区块2,向右记为区块3,向下记为区块4
3. 把玩家随便放在哪里,在地图上就行。
4. 设置这样的公共事件:循环:当“行动数”不为0时,判断角色脚下的标记,如果是1,角色向上走一步,如果是2,向左一步,3/4向右、下走一步,等待(or等待移动结束),“行动数” - 1。循环完毕
5. 每回合调用随机设置“行动数”,并调用4中的事件

这样就可以尽可能利用少的区块,然后做出固定路线移动的效果啦

如果地图有交叉的部分,对应的格子用区域5,需要每次移动后,把角色脚下的地图ID记下来“前一步的区块ID”,到了区域5,对“前一步的区块ID”进行分歧,再决定角色的行走方向。




范例已上传,请看看各事件的内容和地图区块的设制,左上角的事件不要漏掉。

大富翁比贪吃蛇坦克大战一类游戏更麻烦的地方在于:大富翁是要存档的……

此外,你应该还需要《事件仓库》

相同的部分可以放到公共事件里……我其实觉得大致思路说清楚就行

richman.zip

1.43 MB, 下载次数: 52

点评

如果是這樣的話我不太懂範例中事件區域ID的值,假如X座標4,Y座標10,那變量5(事件區域ID)的值是4.10還是兩邊加起來的14?  发表于 2017-2-11 14:17
這樣的話格子事件判斷是靠獲得位置信息變量來判斷囉  发表于 2017-2-11 14:15
區域ID我搞懂了,原來要當判斷移動方向標準,我還以為是當格子發生事件的判斷標準  发表于 2017-2-11 14:14
意思是說半透明的玩家跟著旗子一起行走嗎?  发表于 2017-2-11 14:11
顺便说一句,玩家不是用来走格子的,玩家设置为透明,在某事件的回合“跳跃”或“移动”到某时间旁边,在地图很大的时候用来拖动屏幕。  发表于 2017-2-11 11:27
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
4
星屑
2013
在线时间
442 小时
注册时间
2015-7-19
帖子
149
3
发表于 2017-2-10 20:30:27 | 只看该作者
@brackwind   多人问题  格数问题:一类地形用同一个区块,你能弄出65+个算你牛

点评

不是,我的意思是說假如大富翁一格用一個編號的區塊,那最多不就只能做63格?  发表于 2017-2-10 22:35
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
4
星屑
2013
在线时间
442 小时
注册时间
2015-7-19
帖子
149
2
发表于 2017-2-9 21:25:59 | 只看该作者
@brackwind 如图,玩家移动时就把X和Y轴坐标更新。比如玩家初始在(1.1)则设置变量x=1 y=1,若向右走,则x+=1

其实有脚本方便多。

未标题-2.png (27.92 KB, 下载次数: 29)

未标题-2.png

点评

另外加上NPC玩家也會行走,他停止的格子判斷也是問題,還有如何獲得所在地的區域ID我也不清楚  发表于 2017-2-10 20:22
這功能我還不清楚該怎麼用,像區域ID的話最多到63號,超過63格的大富翁應該沒法用  发表于 2017-2-10 20:19
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
4
星屑
2013
在线时间
442 小时
注册时间
2015-7-19
帖子
149
1
发表于 2017-2-7 21:43:30 | 只看该作者
用事件也可以做,只是有些麻烦,之前试过,用公共事件并行处理,不同地方的不同效果可以用不同区块表示,人物到达后,采集地图区块并执行相应公共事件。
流程大概是:
开始→判断(道具引发的停留或不能掷骰,(若不能行动,则跳至 * 处))→掷骰子或使用道具(用两公共事件分别处理)→判断(道具效果)→掷骰(公共事件随机点数),确定步数→确定剩余步数:若不为0,则判定(直行或左右转)并前进一格,然后重复执行此环节直至为0;若为0,则停止,进行下一步→ * 判断地图区块效果(收过路费或升级房屋买地之类)→完成(然后返回 开始 处)
抱歉,换人之类的(包括电脑制动执行)我没法了,猜测可以用事件,但脚本应该更方便。

还有,这个是原始大富翁的(伪)流程。你说的游戏的流程删删减减也就行了。

点评

要怎麼判斷停下的地圖區塊位置,本來想說或許能用變數得到位置座標,不過只能得到地圖ID而沒有獲取座標的方法,這樣就不曉得要怎麼判斷效果了  发表于 2017-2-9 18:25
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-4 03:04

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表