惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
B
Blog
博客园_首页
C
Check Point Blog
Microsoft Security Blog
Microsoft Security Blog
MyScale Blog
MyScale Blog
P
Proofpoint News Feed
Engineering at Meta
Engineering at Meta
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
B
Blog RSS Feed
M
MIT News - Artificial intelligence
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
量子位
V
V2EX
Y
Y Combinator Blog
Hugging Face - Blog
Hugging Face - Blog
Martin Fowler
Martin Fowler
Recent Announcements
Recent Announcements
I
InfoQ
博客园 - 【当耐特】

博客园 - 我们的游戏世界

最新贴图[Sumtec] [公告]Framework组的最新进展[Sumtec] 终于快忙出头了,开了个FTP给大家用[mikespook] 非常抱歉没有为大家做点什么[吹雪] 框架结构图(二)[Sumtec] DGF的详细解说[Sumtec] Framework组的工作报告[Sumtec] 提交了CsharpC&C DEMO的代码在cvs[steeven] 更加详细的ThreadPool测试报告[Sumtec] ThreadPool 测试结果的第一时间发布[Sumtec] GC的一个问题 [Koffer] [讨论] 分布式计算的Action,我的解决方案[Sumtec] [游戏]服务器和客户端之间的同步策略[steeven] 代码更新了。[Sumtec] Framework组最近的工作报告[Sumtec] 同学们,准备干活了[steeven] [引用资料][转帖] 玩家行为基本模式[[ IceSharK - PP.Poet ]] 微軟用.net開發的遊戲例子 mikespook 你的任务有没有进展啊?[Sumtec]
[工作报告] Framework组的工作报告[Sumtec]
我们的游戏世界 · 2004-05-31 · via 博客园 - 我们的游戏世界

这两天主要忙于对Action进行完善的工作,所谓的完善,也仅仅是最基本的完善而已。此外正在展开程序主循环的设计,这个主循环已经开始写了,不过仍然处于非常初期和非常幼稚的阶段。下一步需要做的是:
1、建立Action队列(用于执行动作)
2、建立Character队列(用于执行“呼吸”)
3、建立输入能力
4、建立输出机制(UI)

下面分别叙述一下:
1、建立Action队列,我一开始的时候打算使用Queue,但是后来考虑到这个Action队列会有很复杂的功能,例如某个Action可能要等待某些Action完成才能开始执行(比如星际里面按着Shift键点鼠标右键,或者攻击的时候因为范围不够需要首先完成Move动作,或者某个动作需要其他的一些动作完成了才有可能完成……)。再例如,某一个Action可能需要有更高的优先级,另外一个Action可能需要定时(比如星际地图编辑里面的定时动作等等)。因此这个Action队列我打算从头开始写。

2、Character队列就没有什么好说的了,不过这个实际上不能够算队列,应该是数组(ArrayList或者其他的什么东西)。当然,Character队列里面也许会有一些其他的要求(类似Action),但是目前我还没有想到,所以暂时不考虑了。

3、输入能力。这个嘛,我想也没有什么好说的,大概就是一种类似影射能力的东西。可能用Command方式完成?有没有谁有好的建议?

4、输出机制。这个我考虑使用Flyweight来实现,因为比如说角色可能就只有N种,但是游戏里面的对象则可能远远超过这个N。比如说星际,我想每个种族分别有100种不同的东西该差不多了吧?但是如果8个玩家每个人都几乎达到上限,那么就可能有几百个对象存在。怎么做我目前还没有想清楚,等我想清楚了再发一个Post。如果大家有什么别的想法,也可以来这里讨论一下,包括上面那几点。

ps: 代码再次更新了,更新时间:5月31日