Skip to content
forked from ChatTheatre/SkotOS

Open Source version of the SkotOS narrative prose library, using the DGD driver.

License

Notifications You must be signed in to change notification settings

shentino/SkotOS

 
 

Repository files navigation

SkotOS Open Source Game Library

Remember MUDs? Early massively-multiplayer network games, sometimes pre-Internet? Text-input, text-output?

Skotos Tech, from 1999 to 2020, made MUDs "that were more social, more dynamic, more interactive, more realistic, and more story-focused than anything that had been seen before." They were a critical success but never a commercial powerhouse. Eventually they stopped...

But the MUD world's loss is your gain. Skotos Tech released their twenty-year game engine as open source.

SkotOS is that game engine. ChatTheatre is the organisation maintaining it.

Twenty years of good ideas and bad, authors and programmers, interesting failures and enjoyable successes have been built on this code and its (many) earlier versions. You can find fragments of those attempts in various ChatTheatre repositories on GitHub. There are others, hidden away in dark corners that may be added as we locate them.

You can use SkotOS to build your own games, probably starting from a simple one. You should start from the extensive documentation in GitHub Pages.

SkotOS's technical foundations are built atop a somewhat-bizarre interpreted language called DGD which combines MUD-specific origins with features so advanced no mainstream language has them yet and a paid premium version that presents multiple cores as a much faster single core in a way that is generally considered impossible. You can download the binaries for free right now and try it for yourself if you'd like to fact-check that claim.

If you just want to play a SkotOS-based game, these are good choices:

You can also try out a small SkotOS-based stage at The Gables.

Status

The SkotOS codebase has transitioned from "unreleased, unsupported and nearly unusable" to "usable by the brave and determined." As the description above suggests, this is not a smooth and easy experience. You'll have an easier time if your team includes at least one skilled developer and at least one skilled writer willing to use annoying interfaces. Those two can be the same person if they have a lot of free time.

SkotOS does not require great sophistication in modern web technologies. There's just enough of that to wrap an old-style monolithic application server and attach it to the current internet.

We'd be happy to accept any code changes you feel like contributing back. In the mean time we'll keep rehabilitating, exploring and documenting, little by little. You can also help out by putting together your own game that uses SkotOS even if you're not really messing with the core of SkotOS. Documentation is good too. We can always use more of that.

Dev Installation

Are you on a Mac? If you run deploy_scripts/mac_setup/mac_setup.sh, the script will check out the other repos you need such as DGD itself, the websockets tunnel and the dev-mode authentication server. It will even patch DGD for you before building it. All those repos will wind up under your checked-out SkotOS Git repo.

We don't currently support a Linux or Windows local dev install. We do support a Linux production deployment using Linode Stackscripts as an example. You can easily reuse those shell scripts to install on your VM provider of choice, or on physical hardware.

There's also a Docker installation, used for purposes like CI.

Docs

See SkotOS-Doc.

Copyright & Open Source Licenses

The library (SkotOS) and the shared game code and objects in this repository or copyright © 1999-2018 by Skotos Tech, Inc..

The library itself (all the portions written in LPC) and library documentation are licensed under the GNU Affero General Public License 3.0. All other documentation, the shared game code and common objects (written in a combination of Merry code & XML data) are licensed under the Creative Commons Attribution Share-Alike 3.0 license. There is no requirement to release your own game code and objects under any open source license, but any derivative works of the library (AGPL) or contributions to the shared game code and objects (CC-SA) must be released under the same license. All uses of this code must prominently give attribution to "Skotos Tech, Inc" and link to https://www.skotos.net .

Contributions

We welcome contributions back to this library and to shared game code and objects, but we do require a Contributors License to be signed by any contributor. The contributors license is still a work-in-progress, contact Shannon Appelcline [email protected] for more information.

About

Open Source version of the SkotOS narrative prose library, using the DGD driver.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 88.1%
  • JavaScript 5.4%
  • Yacc 2.5%
  • Shell 2.5%
  • CSS 0.6%
  • HTML 0.3%
  • Other 0.6%