作者PsMonkey (痞子军团团长)
看板java
标题Re: [问题] 单机版游戏如何写电脑人工智慧
时间Wed Jul 24 21:55:29 2013
※ 引述《iamflashman (没有昵称)》之铭言:
: 各位前辈好:
: 我自修JAVA的目标是想要写一个单机版的游戏,
: 目前的进度已经把富饶之城,桌上型游戏的游戏流程已经撰写完成了。
: 也就是说,能够让真实玩家选择牌组->执行玩家该回合可执行动作->
: 结束玩家执行回合->换下一位玩家执行动作->所有玩家执行完毕结束该局游戏。
: 目前我遇到有二个问题:
: 1.开发单机版游戏,不晓得电脑的AI要如何撰写?我Google了一些关键字後,
: 发现自己的知识不足,对网路的文章理解力不够,
: 因此想请教前辈们给予建议的单机版游戏人工智慧的学习方向,
: 或者推荐学习的书藉。
我狗了一下富饶之城的介绍
喵的,光角色卡就好复杂
我建议你可以从简单的游戏开始写起
例如井字游戏或是踩地雷 [奸笑]
规则越简单 or 越容易判断局面的游戏,AI 基本上会越好写
围棋 AI(据说)始终下不赢人脑,就是因为局面太难判断
但是收官(因为比较好判断?)所以可以跟人脑匹敌
另外,我记得 PTT 上头有讨论游戏开发的版面
可是我忘记版名叫啥了
游戏 AI 的部份可能去那里问会比较实在
: 2.因单机版卡关,就转个方向去研究线上版游戏的连线,
: 後来我就从最基本的多人聊天室开始练习,
: 但发现利用socket只能传递文字内容,
: 但是游戏中client端的所发出的请求,必需要由server端执行方法後回传数值,
: 才能继续执行游戏控制流程,若是利用socket是无法执行server端的方法,
: 所以我又开始研究RMI的远端呼叫模式,研读後觉得很不踏实,
: 感觉好像是弄错方向似的。
: 所以想请教一下前辈们线上版游戏要如何从基础开始学习起。
资讯领域第一(唬烂)法则:There is no spoon.
如果你从最原始的角度
其实电脑也没有文字、也没有数字
有的只是一堆 1 跟 0(喔不,是高电位跟低电位?)
网路传输基本上最後也是如此
不管内容是美女图还是木马程式
要说 RMI 只是超级进化版的 socket 程式
应该也不会太离谱
AJAX / websocket 好像很厉害,其实也还是 socket 程式
或着这麽说,如果踩地雷当中,player1 踩下 (3,5) 的位置
会有「踩到」or「落空」两种结果
那麽 socket 传输内容可以是这样:
request: nextStep=play1,3,5
response: true
当然,用原始的方法你就必须得要处理很多细节
而且没办法很 OO
那麽要用什麽 framework 还是 library 就又是另外一回事情
但是请记得本质
====
糟糕,我完全没有提到 Java [死]
--
钱锺书:
说出来的话
http://www.psmonkey.org
比不上不说出来的话
Java 版 cookcomic 版
只影射着说不出来的话
and more......
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.25.10.218
1F:→ tkcn:GameDesign 07/24 22:22
2F:推 ckfish:推踩地雷!! XD 07/25 04:53
3F:→ Killercat:富饶角色卡只是看起来复杂而已 其实行为都很简单 07/25 06:43
4F:推 cowbaying:正在想转录的问题 你这篇就提到GameDesign了 XDDDD 07/25 12:07
5F:→ PsMonkey:我也是刚刚才知道原来楼上是 GameDesign 版版主 囧> 07/25 12:53
6F:推 a60301:推版主 <(_ _)> 07/26 01:01
7F:推 if4:两位板主好(礼多人不怪XD) 07/26 17:12