Coder Social home page Coder Social logo

primeau / larn Goto Github PK

View Code? Open in Web Editor NEW
37.0 6.0 6.0 3.15 MB

A JavaScript port of Larn and Ularn available on larn.org

Home Page: https://larn.org

License: MIT License

HTML 1.96% JavaScript 97.35% CSS 0.69%
larn ularn roguelike roguelike-game game

larn's Introduction

JS LARN Version 12.5.2

Play Online

You can play Larn online at larn.org

To Play Locally

Build Instructions For Development

$ git clone https://github.com/primeau/Larn.git
$ cd Larn
$ npm install
$ npm run build
$ python3 -m http.server 8000
$ http://localhost:8000/dist/larn/larn.html

Introduction

LARN is a dungeon type adventure game similar in concept to HACK, ROGUE or MORIA, but with a different feel and winning criteria.

History and Other Information

Noah Morgan originally created LARN 12.0 and released the UNIX version to the USENET in 1986. Don Kneller ported the UNIX version to MSDOS (both IBM PCs and DEC Rainbows).

Other contributors from this era include:

  • James McNamara: UNIX install notes, source and patch distribution
  • Fred Fish: Termcap support for VMS port
  • Daniel Kegel: Enhanced ansi terminal decoding for DOS
  • Alexander Perry: Port for Linux 2.x kernel and GCC 3.x

Kevin Routley contributed various LARN enhancements. Version 12.1 had a limited distribution. Version 12.2 was distributed to the Usenet community. Version 12.3 was the last version released by Kevin.

Someone made 12.4 through 12.4.2, possibly copx according to roguebasin. Edwin Denicholas took 12.4 alpha 2 and caressed it into 12.4.3 for Win32. Version 12.4.4 includes a bugfix from Joe Neff.

Ularn was written in 1987 by Phil Cordier at UC Santa Cruz. Version 1.5.1 was released by David Richerby and future 1.5.x versions were developed by Josh Brandt. Version 1.6 was a Windows 32 conversion and refactor by Julian Olds. Ularn is currently maintained by Josh Bressers.

Other editions of Larn have been distributed by others, namely LARN13, dLarn, NLarn, ReLarn, and XLarn.

JSLarn 12.5.2 is a JavaScript port of Larn and Ularn, by Jason Primeau. It primarily references the Larn 12.4.4 and Ularn 1.5.4 codebases but takes inspiration from other versions as well. It includes bug fixes, a global scoreboard, watching live replays, mobile support and updates to balance the game at higher difficulties.

I hope you enjoy this version of LARN.

Larn's version history can be found here

WIZARD mode

There is a WIZARD mode for testing features of the game. To get into WIZARD mode, type in an underscore '_' and answer the prompt for the password with 'pvnert(x)' (do not enter the quotes). Wizards are non-scoring characters that get magic mapping, everlasting expanded awareness and one of every object in the game.

Since it's easy to lose your game due to a browser crash, accidental back button press, or closed tab, there are 2 new 'wizard' passwords. Using the password 'checkpoint' will load a backup of a checkpoint file, and 'savegame' will resurrect a previous save game. These games are excluded from the scoreboard due to rampant cheating.

larn's People

Contributors

chrisyewchuk avatar dependabot[bot] avatar primeau avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

larn's Issues

Too many lemmings in built 484, game is often unplayable

This is weird, because I can't see any commits that would cause this, but... when I play the Beta (b484), I am frequently (~60% of the time, more than often 1 in 2 games) swarmed by lemmings in the first few levels, and they look like they're behaving as though I've cast Aggravate Monster, to the point I'm now just giving up and quitting games on a regular basis.

Did something change? Or am I just getting the most bizarre possible string of luck out of rand()?

"@" vanishes when using Modern font

[playing Beta version, as shown in the screencaps]

DOS font looks fine:
image

but Modern font is missing the "@" character:
image

I don't understand - the only difference is the font???

Using the browser's Inspect function shows that it's just using Courier New:
image

However, selecting that character, copying it, and pasting it into anything else gives me a โ–“ glyph, not a @, so there really is a problem in the code somewhere.

Feature request: add logic to prevent elevator/trap creation immediately inside dungeon entrance

I had a chuckle this morning when my brand-new, freshly-created character set foot inside the dungeon and was immediately whisked down to level 9 and whacked by a poltergeist.

I appreciate it's random, with long odds against, and it did amuse me. Only last week I was musing to myself about what might happen if an elevator was in the first square the player hits when entering the dungeon...

Would it be possible to add some logic to the code to prevent elevator (both up and down) creation as well as trap creation in the 5 squares immediately adjacent (horizontally, vertically, diagonally) to the dungeon entrance, please? Give the poor medicine-hunting sap some chance to survive beyond the first footstep, eh?

I figure no such safety net is needed in the volcano; if the player is competent (or foolish) enough to venture down the volcano then the player can get what's coming.

VLarn

Hi there - For some years I've maintained VLarn, which is essentially just a re-balancing and clean-up based on Julian's Amiga ULarn - you might want to add to your very cool Larn website.

Wearing rings?

From 12.0.b I remember there was an odd command for "wearing" rings.
I cannot find a command for that in the help text in your version.

Feature request: allow user-specified font strings

It's great that I can flip between dos437 and ... eh, whatever "Modern" was, I've already forgotten, but neither of them look good on my screen. I can use my browser's developer tools to change the font, but it doesn't seem to persist through a game.
I would like to be able to just enter the font string directly.
Not sure what the best way to do this would be, and I can't write JS so am not able to try implementing it myself.

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.