Agony Forge is a modern, web-based MUD. https://www.agonyforge.com
  • Java 98.4%
  • JavaScript 0.8%
  • FreeMarker 0.6%
  • CSS 0.2%
Find a file
2026-04-22 19:23:01 -07:00
.github Update FUNDING.yml 2023-09-03 17:07:18 -07:00
agonyforge-mud-core build(deps): bump io.projectreactor.netty:reactor-netty 2026-04-20 09:08:40 +00:00
agonyforge-mud-demo task dependency was reversed 2026-04-03 00:59:57 -07:00
codebuild just kicking off another build 2026-03-26 23:41:20 +09:00
docs/images add a screenshot to the readme 2022-12-04 01:08:02 -08:00
gradle/wrapper Bump gradle-wrapper from 8.11.1 to 9.4.1 2026-03-26 10:37:47 +00:00
src/main/resources/rabbitmq switch from activemq to rabbitmq 2023-04-25 16:12:22 -07:00
.editorconfig initial commit - it's bare bones and a bit rough but it works 2022-11-04 01:19:33 -07:00
.gitattributes add git attributes to preserve line endings on .sh files 2024-04-27 14:21:39 -07:00
.gitignore fix: make admin flags case-insensitive 2025-10-09 20:51:23 -07:00
build.gradle don't delete pgdata for each build since ddl-auto can do it better 2024-12-24 21:06:21 -08:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2022-12-03 23:44:09 -08:00
CONTRIBUTING.md Create CONTRIBUTING.md 2022-12-04 00:19:16 -08:00
docker-compose.yaml produce correct error messages 2026-03-25 21:51:00 +09:00
gradlew Bump gradle-wrapper from 8.11.1 to 9.4.1 2026-03-26 10:37:47 +00:00
gradlew.bat Bump gradle-wrapper from 8.11.1 to 9.4.1 2026-03-26 10:37:47 +00:00
LICENSE Update LICENSE 2022-11-25 14:41:12 -08:00
mud.EXAMPLE.env this should work for local setups without custom DNS 2025-01-12 09:16:43 -08:00
README.md fix typo 2026-04-03 16:47:56 -07:00
settings.gradle remove dynamodb 2024-12-13 17:02:08 -08:00

Matrix Discord

Agony Forge

An open source MUD.
Agony Forge is a web based Multi User Domain, or MUD. It is written using Java and Spring Boot using modern security and technology to provide an experience that feels like a telnet session from the 90s in your browser.

Core Module

The core module in Agony Forge provides a lightweight framework that handles security, session management, server clustering, and WebSocket transport for connections between players' browsers and the MUD server. It also provides a small set of standard objects and utilities to use as a platform for building a game.

The core module provides these functionalities:

  • Low level management for network connections
  • Framework for interpreting user commands
  • Customizable menu framework
  • Timer events
  • Messaging from server to players
  • Interpretation of color codes
  • Flexible dice rolling

Agony Forge MUD

The second module is the MUD. It uses the core module and builds a game around them. It is also where new core features are incubated and developed before they get extracted back into the core module.

Here is where you will find:

  • Rooms, Objects and Mobs
  • Commands, menus and in-game editors
  • Persistence of objects to the database

Quick Start

$ git clone git@github.com:scionaltera/agonyforge.git
$ cd agonyforge
$ cp mud.EXAMPLE.env mud.env
# set up an OAuth2 application in GitHub
# add GitHub details to mud.env, see wiki for details!
$ ./gradlew clean build
$ docker-compose up
# go to http://localhost:8080 to see the MUD!

Please check the Wiki for more detailed setup instructions. If you get stuck, feel free to ask for help in the GitHub Discussions on our Discord by clicking the badge at the top of this README.

A screenshot of a simple Agony Forge play session