cat-400

授权协议 MPL-2.0 License
开发语言 C/C++
所属分类 游戏/娱乐、 游戏模拟器/工具/引擎
软件类型 开源软件
地区 不详
投 递 者 郝昊天
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Cat 400

"Cat 400" (c4) is a game framework for Nim programming language.

Brief overview

"Cat 400" is a cross-platform framework designed to provide nice experience in game development. Written in nim language, it benefits from the language's elegance and expressiveness, as well as compilation to fast native code.

Core of "Cat 400" is platform-independent and may be run on every target platform supported by nim. However, default systems (which are optional) have external dependencies which may restrict their usage on some platforms.

Key features:

  • client-server multithreading architecture (even for single-player games) with network support
  • modularity: all code is split into "systems" (video/user input/networking etc) which work independently
  • systems communicate only by sending messages, thus avoiding tangled code
  • ECS (entity-component-system) with custom user components support
  • simple overwriting of existing systems and ability to create custom systems
  • templates which include some reasonable defaults for specific game genre

Status

Current milestones

Is 2D/3D supported?

Yes, 2D via SDL, 3D via SDL+Ogre3d. Also note that C4 is a framework, which means that you can use any backend for any of your systems. So, unlike game engines, you can make a 2D, 3D or even 4D game using any graphics library of your choice.

GUI / Game Engine

Cat 400 is not a game engine (and will never be), and everything is quite low-level - there's no gui and every aspect of game is done within source code. No level editor, too.

Feel free to create high-level tools on top of Cat 400 and share them with community if you have such an opportunity.

Documentation

Tutorials

Visit docs/tutorials folder - it's the best place to learn Cat 400.

Reference generation

In order to make repo clean, autogenerated reference is not included. You may generate it yourself: from repo root run

nimble genDocs

Generated reference files will be located in docs/ref folder.

Examples

All examples are available in examples folder.

You may also check templates folder. Templates are just app skeletons which contain initialization and minimal game environment, like a movable player and couple of enemies.

Submodules

Although these modules are part of Cat-400, they may be used separately in any project.

c4.entities module - entity-component system, allowing to create lightweight entities and attach any user-defined components to them, with some basic CRUD operations.

c4.messages module - Message type and any user-defined subtypes, which may be packed and unpacked using msgpack, correctly preserving type information.

c4.threads module - module for spawning named threads and sending messages between them; allows programmer to focus on his multithreaded app, not on settings up connection between threads.

Wrappers

There are several wrappers which are subpackages of "Cat-400" and may be installed and used separately:

Other

  • 1、Kinetics-400数据集简介 Kinetics-400是一个大规模,高质量的YouTube视频网址数据集,其中包含各种以人为本的行动。该数据集包含 400 个人类动作类,每个动作至少有 400 个视频剪辑。每个剪辑持续大约 10 秒,并且取自不同的 YouTube 视频。这些动作以人类为中心,涵盖广泛的类别,包括演奏乐器等人与物体的交互,以及握手等人与人的交互。 官方网站:https:/

  • 一、取出/etc/passwd文件中shell出现的次数 问题:下面是一个/etc/passwd文件的部分内容。题目要求取出shell并统计次数,shell是指后面的/bin/bash,/sbin/nologin等,如下面/bin/bash出现12次,/sbin/nologin出现3次。 hyn:x:525:500::/home/hyn:/bin/bash   ljlxx:x:526:500::/

  •   hashcat官网:https://hashcat.net/hashcat/ GitHub项目:https://github.com/hashcat/hashcat   使用语法: hashcat.exe [选项] <哈希> <密码字典>     Hash id对照表: 因为实在是太多了,所有我就贴一部分常见的hash类型,要想了解所有的参数可到hashcat的Wiki上去看,或者直接hash

  • 一、取出/etc/passwd文件中shell出现的次数 问题:下面是一个/etc/passwd文件的部分内容。题目要求取出shell并统计次数,shell是指后面的/bin/bash,/sbin/nologin等,如下面/bin/bash出现12次,/sbin/nologin出现3次。 hyn:x:525:500::/home/hyn:/bin/bash   ljlxx:x:526:500::/

 相关资料
  • Bash Cat With Cat The classic cat command but with a cat. Perfect as an alias. It fallbacks to the original cat if the command is used with pipes.The delimiters adapt to your terminal size. Take a loo

  • CAT

    CAT 由大众点评开发的,基于 Java 的实时应用监控平台,包括实时应用监控,业务监控。 CAT 支持的监控消息类型包括: Transaction 适合记录跨越系统边界的程序访问行为,比如远程调用,数据库调用,也适合执行时间较长的业务逻辑监控,Transaction用来记录一段代码的执行时间和次数。 Event 用来记录一件事发生的次数,比如记录系统异常,它和transaction相比缺少了时间

  • 总览 我们目前支持以下编程语言: Java C C++ Python Go Node.js 以下编程语言在我们的支持计划中: PHP C# (.net) 名词解释 消息类型 Transaction Event Heartbeat Metric 消息属性 type 表示一种类型的消息,比如 SQL,RPC 或 HTTP。 name 表示一个特定的行为,举例来说: 如果 type 是 SQL, nam

  • CAT,全称Cryptographic Algorithm Tool,是一款小巧的Java加密与解密算法调用工具包。主要整合了以下加密算法的调用: 1.AES 2.MD5 3.RSA 4.国密SM3 5.国密SM4

  • Cat Library 是一个 C++14 函数库。

  • 一个基于 Forge 的 Minecraft 作弊 Mod。 目前提供方块透视、夜视、创造模拟 Give、本地观察者模式四个功能。 且有中英双语言。