Skip to content

Commit

Permalink
first push of more fixes & enhancements
Browse files Browse the repository at this point in the history
  • Loading branch information
ats committed Dec 17, 2019
1 parent 4fb82a7 commit 4b1d020
Show file tree
Hide file tree
Showing 64 changed files with 19,551 additions and 0 deletions.
24 changes: 24 additions & 0 deletions INSTALL.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
Below are instructions on how to configure, build and install Larn. I am assuming whoever decides to compile it themselves is capable of doing it without help.

On a *NIX system (BSD, OS X etc..)

1. Ensure cmake is installed on your platform of choice
2. 'cd' into the 'build' folder and type 'cmake <whatever makefile you want> -DCMAKE_BUILD_TYPE=Debug '.' (or Release)
3. Then type 'make'
4. Larn will be built in the 'build' folder, cleanly.
5. 'mv' or 'cp' the 'larn' binary to ../ so it is in the same directory as the 'data' folder.
6. './larn' to execute it and play :)

On Windows

You can use the CMAKE GUI on Windows or follow the *NIX instructions, replacing the commands with their Windows counterparts.

1. in the 'win' directory under src/libs copy the 2 .h files to your TDM installation directory and put them in 'include'
2. Copy the .a library and place it in the TDM installation 'lib' directory.
3. Configure the build (source directory is 'build' and where you want it will be the same directory that the folder 'data' is in. Configure for whatever makefiles or build system you are using.
4. Click on 'Generate' and then type 'mingw32-make'
5. Double-click 'larn.exe' to play (it will be in the same directory as data anyway on Windows).

You can also use the 'Larn' Visual Studio project (for those who use VS). If you do, you'll need the .libs in the src/libs/winvc directory and the includes (in the same directory).

Enjoy playing Larn!
99 changes: 99 additions & 0 deletions MANUAL.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@


LARN version 14.0.0
-------------------

Table of contents
-----------------

1. Introduction
2. System requirements
3. Files Supplied
4. Installation
5. Command line options
6. WIZARD mode
7. History and other Information

1. Introduction
---------------

LARN is a dungeon type adventure game similar in concept to HACK, ROGUE
or MORIA, but with a different feel and winning criteria. LARN was
released for the UNIX environment in 1986 by Noah Morgan. It was
subsequently ported to the MS-DOS environment by Don Kneller. Kevin
Routley has been working on enhancements to LARN on and off for the
past two years. This version is for OSX, BSD, GNU/LINUX and WINDOWS environments.

2. System requirements
----------------------

Any GNU/Linux, OSX, BSD or Windows Machine with ncurses or pdcurses.

3. Files supplied
-----------------

README.txt This documentation.
docs/CHANGELOG.txt Changes made since LARN V12.2

Binaries and 'data' folder included in this directory (same as README.txt)

4. Installation
---------------

Decompress LARN into a directory of your chosing. LARN is self contained
and does not write any crap to your registry or system.

5. Running the Game
-------------------

Open the install directory in a command window and type "larn", or double
click .exe file inside the directory. If you are using Windows Explorer.

If you're using *nix systems then cd into the directory and ./larn

6. Command line options
-----------------------

There are several command line options that can modify the behavior of
LARN. You can run these through larn.bat as well. The options are:

-s Show scores.
-i Show all scores including the inventories of dead
players.
-# Where # is a number from 0 to 9. This sets the
difficulty of LARN to this level. Normally, LARN
starts out with difficulty 0 and increases in
difficulty by 1 when you win at the current level.
Thus the game automatically gets more difficult.
-h A help screen that shows the command line arguments.

7. WIZARD mode
--------------

There is a WIZARD mode for testing features of the game. To get into
WIZARD mode, type in an underscore "_".
Wizards are non-scoring characters that get enlightenment, everlasting expanded
awareness and one of every object in the game.

8. 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).

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.

Gibbon has implemented many fixes and enhancements and taken it to 14.0.0. Which is
multi-platform.

Other editions of Larn have been distributed by others, namely
LARN13 and Ultra-Larn.

I hope you enjoy this version of LARN.
22 changes: 22 additions & 0 deletions build/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
cmake_minimum_required(VERSION 2.8.6)
if(WIN32)
add_definitions(-DWINDOWS -DMULTIPLE_SCORE_ENTRY -DTERM_DARK_BACKGROUND)
else()
add_definitions(-DNIX -DMULTIPLE_SCORE_ENTRY -DTERM_DARK_BACKGROUND)
endif()
project(Larn)

find_package(Curses REQUIRED)

add_definitions(-DEXTRA)

set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -pipe -Wall -Wextra -pedantic -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wdeclaration-after-statement -Wshadow -Wmissing-declarations -Wold-style-definition -Wredundant-decls -g -std=c18")

set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -pipe -Wall -fomit-frame-pointer -std=c18")

include_directories(../src/includes)
include_directories( ${CURSES_INCLUDE_DIRS})
file(GLOB SOURCES "../src/*.c")
add_executable(larn ${SOURCES})
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lm")
target_link_libraries(larn ${CURSES_LIBRARIES} ${CMAKE_DL_LIBS})
36 changes: 36 additions & 0 deletions data/forts.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
gem value = gem * 2 ^ perfection
sitting down can have unexpected results
don't pry into the affairs of others
drinking can be hazardous to your health
beware of the gusher!
some monsters are greedy
nymphs have light fingers
try kissing a disenchantress!
the Eye of Larn improves with time
hammers and brains don't mix
what does a potion of cure dianthroritis taste like?
hit point gain/loss when raising a level depends on constitution
healing a mighty wizard can be exhilarating
be sure to pay your taxes
are Vampires afraid of something?
some dragons can fly
dos thou strive for perfection?
patience is a virtue, unless your daughter dies
what does the Eye of Larn see in its guardian?
a level 25 player casts like crazy!
energy rings affect spell regeneration
my, aren't you clever!
difficulty affects regeneration
control of the pesty spirits is most helpful
don't fall into a bottomless pit
dexterity allows you to carry more
you can get 2 points of WC for the price of one
never enter the dungeon naked! the monsters will laugh at you!
did someone put itching powder in your armor?
you klutz!
avoid opening doors. you never know whats on the other side.
infinite regeneration ---> temptation
the greatest weapon in the game has not the highest Weapon Class
you can't buy the most powerful scroll
identify things before you use them
there's more than one way through a wall
Loading

0 comments on commit 4b1d020

Please sign in to comment.