TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

The Unum Pattern

45 点作者 andyjpb超过 5 年前

5 条评论

boardwaalk超过 5 年前
I’m not convinced solving the data replication technique once, as briefly alluded to, is not a good idea vs. this model of addressing multiple “presences” and having different messaging topologies.<p>In particular, doing synchronization for realtime gameplay (not an adventure-style game like Habitat) requires a lot of tricks (like prediction, rollback, etc) and I think it makes a lot of sense to extend that synchronization over all gameplay, not just the physics state of object. Although I suppose you could have a hybrid system.<p>Further, there’s not really a reason you can’t have your data replication mechanism replicate inputs (with states as a fallback) rather than just states (which would indeed take more bandwidth).<p>It’s interesting to read about the “division of responsibilities” (paraphrasing). I think in a “modern” game, this would simply be done by specifying that components in an entity-component-system have a policy that say whether they are local-only or if not, who they should be replicated to (everyone, just the player who owns the object, etc). This would give you the “data-hiding” (the player shouldn’t know what’s in the treasure chest, the player shouldn’t know exactly* what the monster is going to do next, etc, player shouldn’t be able to read each other’s chat log, etc).<p>All in all, I think I’d definitely take a more data-driven approach than an “objects sending messages to each other ala Smalltalk”, at least in a game I’d like to write. The describe system likely works great for what it was meant for, though.<p>I do think it is enormously useful, re: unums, to pick the right vocabulary or even pick “new” words, within reason. Even if you’re just thinking in your own head, it can make things more clear.<p>* This is actually an interesting one. Having a “dummy” AI for clients that doesn’t know&#x2F;do everything the server version does seems like an option
yoklov超过 5 年前
For anyone else who was a little confused, this seems to be entirely unrelated to <a href="https:&#x2F;&#x2F;en.m.wikipedia.org&#x2F;wiki&#x2F;Unum_(number_format)" rel="nofollow">https:&#x2F;&#x2F;en.m.wikipedia.org&#x2F;wiki&#x2F;Unum_(number_format)</a>
eximius超过 5 年前
&gt; One obvious pattern to look into is a pure peer-to-peer model, where all presences are equally authoritative and the “true” state of reality is determined by some kind of distributed consensus mechanism.<p>Makes me wonder if you could model Mage: The Awakening as a distributed reality consensus MMO. Sybil attacks would be the primary weakness. Though, if it was a paid game you&#x27;d _somewhat_ mitigate that.<p>The thoughts about clients being authoritative on different unums is very interesting. For larger worlds, it could lead to some interesting scalability results. If I&#x27;m exploring a region with no one else, the server can simply let the client decide whats happening and offload that work. For more dense situations, clients would need to communicate with each other. A server could detect cheaters via sampling, maybe? Of course, the problem might be that a cheater might only need to cheat a proportionally small amount of time. For sparse situations, you could just do the full computations later and punish harshly if cheating is detected. For dense situations, it becomes difficult to determine how you could roll back fairly.<p>It&#x27;s very interesting. I&#x27;d love to build something like this. I think it could have very compelling, novel gameplay mechanics. Not quite sure what the story would need to be to drive players into those mechanics though.
mojomark超过 5 年前
&quot;World object&quot; seems pretty self explanetory to me, implying the holistic embodiment of an object in every dimension in which it exists. It&#x27;s in the same family as &quot;world model&quot; (for robotic systems) or &quot;world reference point&quot; (for dynamic systems), etc.<p>Introducing a new term &quot;unum&quot; seems an unnecessary abstraction, but I like thinking about the superpositional nature of virtual objects. That&#x27;s a pretty fascinating topic and probably an area that can be mined to achieve efficiency improvements.
评论 #20843351 未加载
评论 #20843785 未加载
VonGuard超过 5 年前
If you find all of this fascinating and want a bit more history, Chip and Randy&#x27;s original game, Habitat, is now playable at neohabitat.org<p>You can even sign in with an original C64 if you have one! Probably easier to emulate though, and <a href="https:&#x2F;&#x2F;neohabitat.org" rel="nofollow">https:&#x2F;&#x2F;neohabitat.org</a> offers everything you need to witness their incredibly revolutionary creation in the flesh, today, live and free.