【问题标题】:Javascript (or similar) gaming scripts for C# XNAC# XNA 的 Javascript(或类似)游戏脚本
【发布时间】:2010-12-20 21:33:57
【问题描述】:

最近我准备自己用 XNA C# 开发另一个游戏。

我上次使用 XNA C# 开发游戏时遇到了必须将地图和可自定义数据添加到游戏中的问题。每次我想添加新内容或更改游戏角色的某些值或其他内容时,我都必须重建整个游戏或其他内容 - 这可能需要相当长的时间。

有什么方法可以编写游戏脚本来加载可以由我的 XNA C# 游戏解释的内容,而无需编译?我希望看到 Javascript。

我希望我可以添加可以从外部游戏脚本调用的函数和其他小 API,以操作游戏或加载数据等。我不担心游戏被黑,因为现在还很早 - 开发是重中之重。

任何帮助将不胜感激。

【问题讨论】:

  • 你看过 Lua 吗?它似乎是一种有用的脚本语言。
  • 我确实看过 Lua。 =)

标签: c# javascript xna


【解决方案1】:

IronPython 会更合适吗?这应该在“完整”框架上运行良好 - 但它看起来可能not work (yet) on xbox 360(使用紧凑框架)。

对于 IronPython / xna 示例,see here

【讨论】:

    【解决方案2】:

    紧凑的框架不包含 System.Reflection.Emit,这意味着您不能使用 IronPython。我推荐LUA,你可以找到一个开源的XNA解释器实现here

    【讨论】:

    • 看起来不错。但我无法让它在 Visual C# 2008 上运行。该项目似乎很旧。
    • 如果你不想让它编译,他提供了预编译的二进制文件 - 只需在你的游戏中添加对 dll 的引用。
    【解决方案3】:

    你可以试试Jint,这是一个用 C# 编写的开源 Javascript 解释器

    【讨论】:

    • 这看起来是一个非常酷且简单的想法。但是如何定义可以调用以运行某些 C# 方法的预定义函数呢?
    • 嗯,我认为 Jint 也支持这一点,正如 jint.codeplex.com/… 所写的那样
    • 老问题,我知道,但这正是我最近所做的,而且效果非常好,我什至能够创建一些调试功能。这是一些代码(免费使用 ofc):roy-t.nl/index.php/2012/06/05/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多