Giter Club home page Giter Club logo

majik3's Introduction

Foreword
--------

This repository contains legacy source code, but may be of historical
interest to someone. 

The code is written in LPC, which is a C-like scripting language. It
requires LPC driver to run it. Originally, Majik used MudOS v22.1b22 to
run it. Today, FluffOS is able to run it:

	https://github.com/fluffos/fluffos

Before compiling, copy 'local_options' file to fluffos's src directory.
For compiling FluffOS, the following cmake options were used:

	cd build && cmake .. \
		-DMARCH_NATIVE=OFF \
		-DSTATIC=ON \
		-DPACKAGE_MUDLIB_STATS=ON \
		-DPACKAGE_PARSER=OFF \
		-DPACKAGE_EXTERNAL=OFF \
		-DPACKAGE_DB=OFF \
		-DPACKAGE_SOCKETS=ON \
		-DPACKAGE_MATRIX=OFF \
		-DPACKAGE_MATH=ON \
		-DPACKAGE_DEVELOP=ON \
		-DPACKAGE_CONTRIB=ON \
		-DPACKAGE_UIDS=ON \
		-DPACKAGE_COMPRESS=OFF \
		-DPACKAGE_PCRE=OFF \
		-DPACKAGE_TRIM=OFF \
		-DPACKAGE_SHA1=OFF \
		-DPACKAGE_ASYNC=OFF

Please note, the majik.netti.fi or majik3d.org URLs no longer exist.
A new site has been set up for providing the old content:

	https://majik3d-legacy.org/

You can also use https://archive.org :

	https://web.archive.org/web/20000918015419/http://majik.netti.fi/majik3.html
	https://web.archive.org/web/19981212015504/http://majik.netti.fi/
	https://web.archive.org/web/20000603091141/http://majik.netti.fi/
	https://web.archive.org/web/20030725230727/http://www.majik3d.org/
	https://web.archive.org/web/20060424051359/http://www.majik3d.org/

Also, the e-mail addresses no longer work. For contacting the original
development team, you can try namhas at gmail . com.

The later open source versions of Majik are available from:

	https://github.com/tleino/majik4
	https://github.com/tleino/majik4-client
	https://github.com/tleino/majik4-client-drac
	https://github.com/tleino/majik3d-client
	https://github.com/tleino/majik3d-simple-server

The original open source final release tarballs are archived at:

	https://majik3d-legacy.org/attic/

What is Majik 3, this mud library?
----------------------------------

Majik 3 is the Majik Project's third incarnation which was up and
running within years 1997 and 1998. The purpose of Majik 3 and the
whole Majik project has always been to provide an actual, working
roleplaying enviroment that would be completely player-controlled
and self-sustaining, without the need of outside administration and
control. Majik 3 was a third try. It would have been a success as a
MUD, but we saw that a text-based model consisting of rooms instead
of grids was inadequate for our purposes. This copy of Majik 3 is
taken from a backup just before a big conversion to make the MUD
playable using telnet but would be a roguelike, a gridmap based
game anyways. The date of the backup is January or February, 1998
and the state of Majik at the time was alpha testing, not playable
at all, except you could grow carrots, make money and do some
exploring. See http://majik.netti.fi/majik3.html for an old web page
made for Majik 3 when it was up and running and still maintained by
Majik Development Team. There you'll find for example, a world map.

Why did you release the source code?
------------------------------------

We saw it more fun to release the source code than leaving it to stay
on our shelf without use. We hope that this would make Majik's ideas
and history more widely known and to give many MUD admins something
to play with and for some, possibly a base where to build a game on. We
would really like to see that our code would be useful for someone when
it is no longer of any use for us. It would be great to see Majik 3
up and running somewhere once again with active coders trying to make
it playable. You are allowed to do whatever you wish with the source,
this is our contribution to the Open Source community.

The Majik Development Team is now concentrating on making Majik's fifth
incarnation, the Majik 3D project, an online role-playing environment
using modern 3D-technology and thus doesn't have time to maintain its
predecessors anymore. If you want to find more about our current project,
or even join the project, you should see the webpage: http://majik.netti.fi,
you could also send some mail to [email protected] and tell us if you
are using parts of this pile of source code or even building a MUD on top
of it. We would really like to hear if our previous work is still useful
for someone.

So how to get started then?
---------------------------

First you need to compile a mud driver. The library is made for MudOS
but should be possible to convert to any other lpmud library, but it
would need work, a lot of work. To get a suitable MudOS driver you do
the following if /majik is the directory where you keep your copy of
Majik 3 and v22.1b22 is the current beta version of MudOS.

  $ cd /tmp
  $ ftp ftp.aragorn.uio.no
  ftp> cd pub/LPC/servers/MudOS/
  ftp> get beta.tar.gz
  ftp> quit
  $ tar zxf beta.tar.gz
  $ cd v22.1b22/
  $ cp /majik/local_options .
  $ ./build.MudOS
  $ make
  $ strip driver
  $ cp driver /majik/bin/
  $ rm -rf /tmp/v22.1b22
  $ cd /majik
  
At this point you need to edit "majik3.conf" file and replace the lines
"mudlib directory" and "binary directory" with a correct path and then:

  $ bin/driver majik3.conf &

The driver should be now up and running and you should be able to telnet
localhost 7600, if you didn't change the port in the configuration file.
It this didn't work you should double-check everything and if still you
have trouble and no clue, send mail to the Majik Development Team.

Admin character
--------------

To make an admin character for you, you need to make a mortal character
first, then log out and edit file /data/player/<first letter>/<your name>.o
and add a line "security 100" at the end of the file and then make a home
directory. For example if you name would be "Admin" you would do the
following after you have made a mortal character and logged it out using
"quit" command.

  $ echo >>/lib/data/player/a/admin.o "security 100"
  $ mkdir lib/home/admin

This same applies to all the other characters, except that for the others
you might not want to give security level 100, just start from 1 and give
more levels when you see it appropriate.

Extending the world
-------------------

To build new areas you might want to read all doc/lpc-tutorial files to
learn LPC programming and then read as many doc/majik files as you dare,
and files from doc/majik/handbook too. Build yourself a workroom and
then you might want to try "redit" command also, a nice room editor
which you can use actually for most of the tasks. Whether or not continuing
using the redit (there is also iedit, the item editor), you'll need to
make a new directory to /world and build your area there. Then just link
it to world using an exit from some already existing area and/or add a
link to your area directly from worldmap using a scenic location. Go
there using goto command for example: "goto /world/y200x200" and modify
the environment to your taste using "designate" command, you can see
the symbols using "describe" command and then finally transform one grid
to scenic location "?" and save the changes, "designate save". Then cd
to /world/virtual/ and list your area in AREAS file and copy some existing
y<n>x<n>.c to a new name with your coordinates (y200x200.c for example)
and edit it. So simple. If problems, the address is below.

-- 
Majik Development Team
[email protected] http://majik.netti.fi

majik3's People

Contributors

tleino avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

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.