Coder Social home page Coder Social logo

davesmith00000 / roguelike Goto Github PK

View Code? Open in Web Editor NEW
13.0 4.0 0.0 20.62 MB

My Generic Roguelike

Home Page: https://davesmith00000.github.io/roguelike/

GLSL 0.63% Scala 99.15% JavaScript 0.02% Nix 0.20%
roguelike-game roguelike scala scalajs gamedev indigo roguelikedev ultraviolet

roguelike's Introduction

My Generic Roguelike

Click here to play!

Browser compatibility:

Browser Status Comments
Chrome โœ… Please use Chrome!!
Firefox ๐Ÿข Works, slower than Chrome
Safari โš ๏ธ Dude... where's my mini-map?
Opera โœ… Seems... fine?
Edge / Other ๐Ÿ‘ฝ Unknown...

Check out the project board to see what I'm working on!

Controls

Keyboard

The key controls are somewhat in flux, but current key bindings are listed in the game at the top right of the screen or in the key-mappings data file.

Mouse

Moving and attacking

You can click on the map to move in that direction. As long as there are no enemies visible on the screen the player will keep moving towards the square you clicked on, otherwise only one move will be performed. Note that the path finding is currently rather ...unintelligent, and will get stuck up against large walls that are in the way.

Zooming

You can use the mouse wheel to zoom in and out.

What is this?

This is a reworking of the Indigo Roguelike-Tutorials I produced in the summer of 2021.

Current status: Working, but ugly and unbalanced.

The plan is to take the game made by following the roguelike tutorials at face value, because that allows me to remove many game design considerations like: Premise, names of things, theme, purpose, core mechanics, and so on.

This is: My Generic Roguelike!

That said, the plan is to ultimately polish up as much as possible. The ASCII terminal has already been replaced with placeholder graphics, some rudimentary animations have been added, there is a camera. Time will reveal how far I get.

Eating my own dog food

Although I had a wonderful time producing that repository and was greatly satisfied to have completed the tutorials, the more I looked at the end result, the more I realised that the solution was ...poor. There was lots of interesting stuff in there, but it didn't serve as a good example of how to write games in Indigo, or of what Indigo can do.

This version is a work in progress I'm producing in public, that has two goals:

  1. Produce a well coded, idiomatic, game in Indigo to serve as a reference for other budding game builders.
  2. To take a game as far to the point of completion as I can, and drive out engine and ecosystem issues.

Local build

The game is a completely ordinary and largely self-contained Scala project, with one exception:

You will need to do a local publish of the roguelike-starterkit. Instructions in the README, it is not difficult. ๐Ÿ™‚

roguelike's People

Contributors

davesmith00000 avatar hobnob avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

roguelike's Issues

Look around is totally broken!

However, this is a hangover from the original implementation. Maybe just remove it as is and put in camera movement controls to move around and re-center?

Fix broken tests

I think I broken them when I was messing about with the actor position code.

Render the mini-map with 1/4 the data.

Or in four sections that make up the total.

Or reduce the map size from: 80*50=4000 to sqrt(1024) = 32*32. Increasing to 64 x 64 and rendering the minimap in four equal quarters could be straightforward...?

(This is the get around the Safari data limit of 1024.)

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.