Code Monkey home page Code Monkey logo

zenzizenzizenzic-rl's Introduction

Zenzizenzizenzic

Release Status

A traditional roguelike with mechanics that mimic those found in fighting games.

Screenshot

Combat Basics

An attack can be one or more of four types: Low, Mid, High, or Grab. Conversely, a character can be in one of three stances: Crouch, Stand, or Tech. The way an attack interacts with a target depends on the stance that the target is in, as shown in the following table.

Low Mid High Tech
Crouch Block Block Hit Hit
Stand Hit Block Block Hit
Tech Hit Hit Hit Block

If an attack hits, the target takes full damage and enters a stunned state. If an attack is blocked, the target takes only partial damage and is not stunned.

System Requirements

This is a console-based roguelike written in plain C. A moldering potato can probably run this game. The potato, however, must be equipped with the following:

  • Ncurses

To download the game, find the latest release. Download the version that corresponds to your operationg system and unzip it to a new folder. Launch the game in the build directory.

Building from Source

Zenzizenzizenzic is built using CMake.

In order to compile the game for local testing, run the following commands:

cmake --preset=dev
cmake --build build

The game binary and necessary data files will appear in the newly-created build directory. In order to compile the game with release-level compiler optimizations, replace "dev" with "release." Note that this will disable most compiler warnings and debug hooks.

FAQ

Is this Playable Yet?

While both the win and lose state are reachable, the game is still very far from what I would consider playable.

Why C?

This is a traditional roguelike, and follows the Berlin Interpretation fairly closely. Why not make it even more traditional by writing it in pure C?

In all honesty, though, I simply like C.

Are save files compatible across computers?

Short answer: No.

Long answer: It depends. Save files are written in binary with fwrite(). This means that the save file architecture depends on one's platform, operating system, the compiler that the binary was compiled with, and a host of other factors. It's easiest to assume that a save file made on one computer will not be compatible with a save file made on another.

In the future, I would like to refactor save files to be in human-readable json, but that's a long way off.

Influences

Zenzizenzizenzic was influenced by numerous games, the most prominent of which appear here:

zenzizenzizenzic-rl's People

Contributors

nullcgt avatar

Stargazers

 avatar

Watchers

 avatar

zenzizenzizenzic-rl's Issues

Automated builds?

Hi, I'd love to build and try this game but I'm not able to on Ubuntu 22.04. The version of cmake is too old. Any chance you can add some automated builds or cut a release?

Thanks!

NCurses windowport renders improperly on WSL.

Describe the bug
The Ncurses port is covered by enormous boxes of blank space when run on WSL.

To Reproduce
Steps to reproduce the behavior, if possible.

  1. Compile the game using WSL.
  2. Execute the game.

Expected behavior
The game should run normally.

Desktop:

  • OS: Windows (WSL)
  • Version: 0.1.0-alpha

Port:

  • Curses

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.