All Projects → ftsf → Nico

ftsf / Nico

Licence: mit
Nim Game Framework based on Pico-8

Programming Languages

nim
578 projects

Projects that are alternatives of or similar to Nico

Excalibur
🎮 An easy to use 2D HTML5 game engine written in TypeScript
Stars: ✭ 892 (+251.18%)
Mutual labels:  game-development, game-engine, game-framework
Rizz
Small C game development framework
Stars: ✭ 428 (+68.5%)
Mutual labels:  game-development, game-engine, game-framework
Goluwa
a game framework written in luajit
Stars: ✭ 173 (-31.89%)
Mutual labels:  game-development, game-engine, game-framework
Gameproject3
游戏服务器框架,网络层分别用SocketAPI、Boost Asio、Libuv三种方式实现, 框架内使用共享内存,无锁队列,对象池,内存池来提高服务器性能。还包含一个不断完善的Unity 3D客户端,客户端含大量完整资源,坐骑,宠物,伙伴,装备, 这些均己实现上阵和穿戴, 并可进入副本战斗,多人玩法也己实现, 持续开发中。
Stars: ✭ 655 (+157.87%)
Mutual labels:  game-development, game-engine, game-framework
Html5 Canvas Game Boilerplate
Provides a set of default code that makes getting up and running with an HTML5 canvas game very easy.
Stars: ✭ 182 (-28.35%)
Mutual labels:  game-development, game-engine, game-framework
Octopuskit
2D ECS game engine in 100% Swift + SwiftUI for iOS, macOS, tvOS
Stars: ✭ 246 (-3.15%)
Mutual labels:  game-development, game-engine
Blah
A small 2d c++ game framework
Stars: ✭ 212 (-16.54%)
Mutual labels:  game-engine, game-framework
Sucle
Common Lisp Voxel Game Engine
Stars: ✭ 239 (-5.91%)
Mutual labels:  game-development, game-engine
Luascript
Lua language support for Godot Engine
Stars: ✭ 240 (-5.51%)
Mutual labels:  game-development, game-engine
Babylon.js
Babylon.js is a powerful, beautiful, simple, and open game and rendering engine packed into a friendly JavaScript framework.
Stars: ✭ 15,479 (+5994.09%)
Mutual labels:  game-development, game-engine
Lumixengine
3D C++ Game Engine - yet another open source game engine
Stars: ✭ 2,604 (+925.2%)
Mutual labels:  game-development, game-engine
Awesome Haxe Gamedev
Resources for game development on haxe
Stars: ✭ 213 (-16.14%)
Mutual labels:  game-development, game-engine
Frag
A cross-platform 2D|3D game framework for the Nim programming language
Stars: ✭ 210 (-17.32%)
Mutual labels:  game-development, game-engine
Joymachine Public
All sorts of random publicly-available information, assets, scripts, and more as we (Joy Machine) work on our projects.
Stars: ✭ 210 (-17.32%)
Mutual labels:  game-development, game-engine
Gdevelop
🎮 GDevelop is an open-source, cross-platform game engine designed to be used by everyone.
Stars: ✭ 3,221 (+1168.11%)
Mutual labels:  game-development, game-engine
Flaxengine
Flax Engine – multi-platform 3D game engine
Stars: ✭ 3,127 (+1131.1%)
Mutual labels:  game-development, game-engine
Atomicgameengine
The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript
Stars: ✭ 2,541 (+900.39%)
Mutual labels:  game-development, game-engine
Foster
a simple cross-platform game framework made in C# dotnet core
Stars: ✭ 221 (-12.99%)
Mutual labels:  game-engine, game-framework
Gamedev Resources
An updated collection of useful resources to resources to design, develop and market games.
Stars: ✭ 219 (-13.78%)
Mutual labels:  game-development, game-engine
Entitas Cpp
Entitas++ is a fast Entity Component System (ECS) C++11 port of Entitas C#
Stars: ✭ 229 (-9.84%)
Mutual labels:  game-development, game-engine

NICO Game Framework

test

NICO is a simple game framework for the Nim programming language inspired by the PICO-8 API and built on top of SDL2 or the web.

What it does:

  • Paletted Bitmap Graphics (you can load a custom palette up to 256 colors)
  • Fixed or flexible custom display resolution with pixel scaling
  • Sprite drawing, load png spritesheets, specify tile size per sheet (can load multiple and switch between them)
  • Tilemap drawing, import json from Tiled
  • Drawing primitives: pixels, lines, rectangles, circles, triangles
  • Input: Keyboard, Gamepad, Mouse, Touch
  • Sfx playback: load and play ogg vorbis files, configurable number of mixer channels.
  • Built in chip synth
  • Music playback: stream ogg vorbis files.
  • Custom audio callback for generating your own sounds via code.
  • Text drawing: load and draw fonts from png, supports variable width fonts.
  • Export animated gifs

Installation

  • You will need to have the Nim compiler installed
  • Run nimble install nico
  • Run nicoboot <projectname> to create a new directory with an example base ready to start working with.
  • You can watch a quick tutorial here
  • Make sure you have the required dependency: SDL2 for native builds, no dependencies for web builds.
  • From your project directory run nimble runr to build and run the example as a native build.
  • From your project directory run nimble web to build for web.

Learning

Why should you use NICO?

  • It's fun and easy to use
  • Learn Nim the fun way! It's a great new statically typed programming language that compiles to C.
  • You can build for Web, Windows, Linux, Mac, Android, and potentially other platforms.

Future work:

  • API Documentation
  • More examples
  • Tests
  • Utility modules for common higher level tasks
  • Browser to browser networking using WebRTC
  • Immediate mode GUI
  • 3D Utils and Rasterizer

Games made using NICO:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].