nimgame2

A simple 2D game engine for Nim language.
授权协议 View license
开发语言 C/C++
所属分类 游戏/娱乐、 游戏模拟器/工具/引擎
软件类型 开源软件
地区 不详
投 递 者 景鸿晖
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Nimgame 2

A simple 2D game engine for Nim language.

For more information check home page.

Coding style guide for the contributors.

All pull requests should be done into the devel branch.

Status: v0.6.2 alpha

Requires:

  • sdl2_nim package (v2.0.14.2 or newer).
  • Runtime libraries for:
    • SDL 2.0.12 or newer
    • SDL_gfx 1.0.1
    • SDL_image 2.0.2
    • SDL_mixer 2.0.2
    • SDL_ttf 2.0.14(see SDL2 links)

Optional dependencies:

  • For plugin/mpeggraphic
    • mpg123 runtime library (dll is distributed within SDL_)
  • For plugin/tar:
    • zip
    • zlib runtime library (dll is distributed within SDL2_image builds)
  • For plugin/zzip:
    • zip
    • zlib runtime library (dll is distributed within SDL2_image builds)
    • zzip runtime library

Installation through Nimble:

  • stable version: nimble install nimgame2@#head
  • development version: nimble install nimgame2@#devel

Recommended compilation flags:

--multimethods:on -d:release --opt:speed

Links:

Changelog:

v0.6.2 alpha (2021-08-20)

  • Maintenance release to keep up with the current versions of Nim and sdl2_nim until v0.7 is ready

v0.6.1 alpha (2019-06-15)

  • Nim v0.20.0 transition

v0.6 alpha (2019-01-21)

  • new modules: typewriter
  • new plugins: mpeggraphic (+demo22), tar, zzip
  • new utils procedures: textureFormat, textureFormats, toSeq, neg, new rand procedures
  • color constants
  • audio: playing template
  • emitter: emission areas, procedure argument for emit
  • entity: animation callback, blinking, scale parameters, dim template (by CodeDoes)
  • input: mouse wheel events (by CodeDoes)
  • icon surface init option
  • RW loading procedures
  • simplified time counters
  • demo23 (transform) (by CodeDoes)
  • various minor changes and upgrades, code refactoring
  • Nim v0.19.0 transition

v0.5 alpha (2017-08-01)

  • changed physics and logic systems
  • platformer physics
  • CoordInt type
  • now collider module is autmatically included into the entity module
  • group collider
  • huge Tilemap optimizations
  • various utility Tilemap procedures
  • TextureGraphic.drawTiled
  • GUI:
    • GUIProgressBar
    • widget actions
  • various minor changes and upgrades
  • Nim v0.17.0 transition
  • documentation, snippets, and demos update
  • second tutorial

v0.4 alpha (2017-05-04)

  • GUI:
    • RadioGroup
    • RadioButton
  • IndexedImage
  • PerspectiveImage
  • TextureAtlas
  • joysticks support
  • window management procedures
  • 4 new demos
  • first tutorial

v0.3 alpha (2017-03-10)

  • camera property (Scene)
  • new collision procedures
  • reworked input
  • Mosaic
  • parallax property (Entity)
  • TextField
  • GUI:
    • Widget
    • Button
    • TextInput
  • 3 new demos
  • home page, snippets, and documentation

v0.2 alpha (2017-01-31)

  • collider optimizations
  • music playlists
  • random procedures
  • tilemaps
  • tweens
  • emitters
  • various fixes
  • 4 new demos

v0.1 alpha (2017-01-16)

  • base scene/entity system
  • assets manager
  • basic sound and music
  • colliders (point, box, circle, line, and polygon)
  • fonts (bitmap and TrueType) and text output
  • keyboard and mouse input
  • vector drawing procedures
  • 巴什游戏只有一堆石头,尼姆游戏将堆数扩展到n堆 规则是: 有n堆石子,数量分别是:{a1,a2,a3,....,an},两个玩家轮流拿石子,每次可以在任意一堆中拿走任意数量的石子,拿到最后一个石子的玩家获胜 有一个极其简单的方法来判断胜负: 若(a[1]^a[2]^a[3]^....^a[n)==0,那么先手必败,否则必胜 证明: 1.必定能从N状态转化到P状态。也就是说,先手处于必胜点,可以拿走

  • 1. problem description You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones. The one who removes the

  • 292、Nim 游戏(Nim Game) 题目: 你和你的朋友,两个人一起玩 Nim 游戏: 桌子上有一堆石头。 你们轮流进行自己的回合,你作为先手。 每一回合,轮到的人拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。 假设你们每一步都是最优解。请编写一个函数,来判断你是否可以在给定石头数量为 n 的情况下赢得游戏。如果可以赢,返回 true;否则,返回 false 。 示例 1: 输

  • You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones. The one who removes the last stone will be the

  • 1.问题描述 You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones.The one who removes the last stone will

  • You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones. The one who removes the last stone will be the

  • Description Nim is a mathematical game of strategy in which two players take turns removing objects from distinct heaps. On each turn, a player must remove at least one object, and may remove any numb

  • 你和你的朋友,两个人一起玩 Nim 游戏: 桌子上有一堆石头。 你们轮流进行自己的回合, 你作为先手 。 每一回合,轮到的人拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。 假设你们每一步都是最优解。请编写一个函数,来判断你是否可以在给定石头数量为 n 的情况下赢得游戏。如果可以赢,返回 true;否则,返回 false 。 You are playing the following

  • 你和你的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。 你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。 示例: 输入: 4 输出: false 解释: 如果堆中有 4 块石头,那么你永远不会赢得比赛;   因为无论你拿走 1 块、2 块 还是 3 块石头,最后一

  • 题目: You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones. The one who removes the last stone will be

  • 题目: You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones. The one who removes the last stone will be

  • You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones. The one who removes the last stone will be the

  • 给定 N 堆物品,第 i 堆物品有 A i 个。两名玩家轮流行动,每次可以任选一堆,取走任意多个物品,可把一堆取光,但不能不取。取走最后一件物品者获胜。两人都采取最优策略,问先手是否必胜. 我们把这种游戏称为 Nim 博弈。把游戏过程中面临的状态称为局面。整局游戏第一个行动的称为先手,第二个行动的称为后手。若在某一局面下无论采取何种行动,都会输掉游戏,则称该局面必败。 我们只需要证明 a1⊕a2⊕

相关阅读

相关文章

相关问答

相关文档