
DikuMUD 3 Is Released - bovermyer
https://github.com/Seifert69/DikuMUD3
======
freediver
I am thankful to Diku and it's derivatives for many important lessons in life.
The situation when a mob kills you, takes your exp and all your equipment and
you are faced with dire reality of starting all over again from nothing - is
the one that we are facing in life ever so often. MUDs have taught me to
persevere, focus on what is important and keep going. I am thankful for every
friend I met via MUD and every friend I will make. As a matter of a fact I am
in the middle of MUD renaissance right now - rebuilding the MUD I created in
1995 and playing it with a handful of buddies - all of us now in our forties
and we are having the time of our lives chasing down mobs and magic items (and
of course playing only after the kids go to sleep). On top of that I get to
code in C again. Life is good. Wish the best of luck to DikuMUD 3.

~~~
YZF
Luckily I've yet to face mob kills me and takes all I got in real life ;) But
then I used to play MUDs at some point in the 90's so maybe that's because of
the lessons I learned there!

~~~
astrobe_
When a bug or a mistake wipes irremediably many days of work, you need that
kind of perseverance.

------
duskwuff
Holy crap. Now there's a name I haven't heard in a long, _long_ time.

To give some perspective, the last public release of DikuMUD was in 1991.

~~~
beobab
Weirdly, my initial thought there was "that's only 9 years ago", and then did
a quick double take when I realised that it wasn't.

------
philipov
Downloading and trying to figure out the code for DikuMUD-based distributions
is what drove me to learn C as a kid.

~~~
birdyrooster
Same here! I remember making my own port of DikuMUD because I wanted to start
my own community but quickly learned how daunting the writing workload is and
I sadly never finished my beginning city but it felt magical to have a friend
from AlterAeon join me and enter this world I had built. It was all so
accessible if you could just put in the time to world build.

~~~
uglygoblin
Ditto! Digging through Diku and the derivative Smaug codebase was my gateway
to programming and I am forever thankful that such software existed and was
available for a young teenager to dive into.

~~~
tmn007
Me too. Learnt a lot about Unix, c, networking and compilers getting it
working in 1992.

------
hlieberman
Interesting. When I dealt with the problem of wanting to give people access to
my MU* through a web-browser, I worked around the problem by building an ANSI-
aware bridge between the existing MU* and the browser.

[https://gitlab.com/hlieberman/webmu](https://gitlab.com/hlieberman/webmu)

~~~
aurelius12
Check out Iron Realms' MUD client. Nobody else's web client comes even close,
I think.

[https://nexus.ironrealms.com/Main_Page](https://nexus.ironrealms.com/Main_Page)

~~~
berkeleynerd
[https://writtenrealms.com/](https://writtenrealms.com/) client is pretty
nice.

~~~
Ataraxy
This client is what I think of in my minds eye for a modern day MUD that still
stays true to what a MUD is but has an accessible interface. Whoever designed
the UI did a nice job.

------
jerrysievert
it's nice to see so much of the original DikuMUD surviving this far into
version 3, but don't understand why raw html is being generated instead of
something to be parsed on the client given that the client is a web browser
using web sockets.

as an aside, I have a nicely working copy of sillymud hanging out in my
GitHub, and local copies of phoenix (the successor to sillymud), and epic
(another highly customized mud that ran off of goldman.ai.mit.edu).

~~~
duskwuff
> ...don't understand why raw html is being generated instead of something to
> be parsed on the client given that the client is a web browser using web
> sockets.

Looking at the repository, the impression I get is that this codebase had a
web interface grafted onto it relatively recently. Most of the code looks like
it was written with the expectation that it'd be used over a line-mode
interface. (A lot of it also looks like it was converted from C to C++ very
late in the development process -- outside of the WebSockets library, there's
hardly any code which uses even basic STL features like string or vector.)

~~~
jerrysievert
> _Looking at the repository, the impression I get is that this codebase had a
> web interface grafted onto it relatively recently. Most of the code looks
> like it was written with the expectation that it 'd be used over a line-mode
> interface._

yes, if you know the history of muds, and diku specifically, you would know
that, but where those changes were made it could more easily have been changed
to respond either as text, and styled in the browser without adding all of the
html elements, or as json. it was a very weird decision to be made given its
history and the new goals of the project.

------
nvarsj
DikuMUD is _the_ influential mud code base. So many derivatives came from it -
including my favorite, CircleMUD. There were also rumors that Everquest was
directly inspired (and perhaps even some code lifted!) from DikuMUD. Millions
of hours of gameplay across MUDs and MMORPGs owes its life to this C codebase
built by a handful of university students in Denmark.

------
swiftausterity
Hey look we interviewed Seifert about this.. months ago :)

[https://www.titansoftext.com/28](https://www.titansoftext.com/28)

~~~
freediver
You do a fine job with that podcast.

------
hestefisk
Is DikuMUD by any chance affiliated with the Department of Computer Science at
Uni of Copenhagen (Datalogisk Institut Københavns Universitet)? FWIW that’s
where Peter Naur did most of his work on formal grammars.

~~~
mikkom
Yes.

[https://en.wikipedia.org/wiki/DikuMUD](https://en.wikipedia.org/wiki/DikuMUD)

~~~
hestefisk
Geeky. The owner also wrote Sitecore, a very expensive CMS.

------
bargle0
This brings me back. I wasted so much time on MUDs when I was young. I had
_the best_ TinyFugue scripting when everyone else was dragging with zMUD.

~~~
StavrosK
MUSHclient represent! I spent so much time on Realms of Despair, it's
basically where I learned to program.

Being text-based, MUDs were basically made for scripting. I have very fond
memories of that entire world and its people.

------
kstenerud
I got my start on a DikuMUD running from the pulmonary labs at UBC (AoD, if
you're still out there, thank you). I was still a high school student at the
time, but fortunately there was an unprotected dialup (604-822-2222) into the
NIM system, from which you simply typed in the IP address of the machine you
wanted to connect to.

This was my gateway into serious programming. I'd already learned some C, but
the idea of a networked multiplayer RPG really stoked my interest in network
programming as I tried to write my own MUD from scratch, and it's because of
this that I chose BCIT to study in the datacomm program.

------
RubberMullet
Fond memories of playing my warrior and cleric at the same time using a
program called tintin++. An early form of multiboxing only with unix shells
instead. The server was Apocalypse which appears to still be running.

~~~
moron4hire
Tintin was amazing. I kept a copy on a zip disk so I could use it in the
computer labs at college.

------
johnbellone
This is extremely cool. I cut my teeth on C by writing code for a DikuMUD
derivative, SMAUG, and used it to learn a whole lot: socket programming,
parsing files, basic interpreter scripting languages.

------
myself248
Inquiring minds want to know: Are the fidos still beastly?

~~~
duskwuff
The beastliest.

[https://github.com/Seifert69/DikuMUD3/blob/master/vme/zone/m...](https://github.com/Seifert69/DikuMUD3/blob/master/vme/zone/midgaard.zon#L7483)

------
holtalanm
used to play MUDs back in junior high / high school. DartMUD, Seventh Circle
MUD, along with a few others (I think there was a Dragonball Z MUD at some
point that I played, too).

Never played DikuMUD, but I honestly miss those days playing DartMUD for hours
on end. I looked up DartMUD a while back, but it doesn't appear to be very
active, if it is even online anymore.

~~~
holtalanm
Just tried getting on DartMUD. Their character registration process is so
hostile with their requirements (no free email providers???)

Yup. DartMUD will remain squarely in my memory, and I won't bother trying to
play it now.

------
2snakes
I still sometimes log in to a MUD, Diku as well! Fond memories of roleplaying
and PK.

~~~
jerrysievert
I still relish my time as a darkside member.

------
r0rshrk
This can be hosted online right ?

------
armitron
C++ is the worst possible choice for something like this.

I tried compiling it and got flooded with screens full of incomprehensible
errors of the sort:

    
    
        /usr/include/c++/v1/type_traits:1547:38: error: implicit instantiation of undefined
          template 'std::__1::owner_less<boost::weak_ptr<void> >'
        : public integral_constant<bool, __is_empty(_Tp)> {};

~~~
ebg13
> _incomprehensible errors_

Maybe incomprehensible if you don't know C++ or don't bother to read them or
carve them entirely out of context (like you've done here). Every error tells
you both where the error occurred, how the compiler got to that file location,
and what the problem was. Literally what more do you want?

But, yeah, everything is incomprehensible if you don't comprehend it.

~~~
sharken
I hardly think that an error such as this one points to a solution

../../build//vmc/vmc.o: In function `fix(char _) ':
/home/user/DikuMUD3/vme/src/vmc/vmc.cpp:254: undefined reference to
`init_lex(char_)'

~~~
moron4hire
I don't have a lot of experience with C++ and even I know that the most likely
cause of that error is not having the linker configured correctly. It's
probably something simple like a common library not being linked in.

