A MUD can stand for a lot of things, but the thing it means to me is multi-user dungeon. When networks were contained primarily an academic arenas, the invention of virtual worlds was not only novel, but exciting- something that no one had seen before. Up to that point. Especially one in which you could interact so organically with other players.
As a young individual I played a lot of Achaea, Dreams of Divine Realms and was enamored by the quality of these games.
They offered immersive role-playing unlike anything I had ever experienced up to that point and beyond that, the game mechanics were not simply mechanics but tied directly into the narrative overarching story of the entire game world.
It became increasingly obvious that this was an addiction as I spent the better part of 2 years playing.
It influenced every single aspect of what I value at a video games and storytelling and even to this day I have always dreamed of making my own MUD. I have even reached out a few times in the past to iron Realms Entertainment with hopes of possibly joining their team, when I was woefully underexperienced.
Even today, as good of a builder as I am, I am not that great of a coder and I don't know that I would be a good fit.
I am using the Evennia library in Python in order to attempt to make my own MUD after falling in love with the WrittenRealms engine that I highly recommend anyone interested in MUDs go check out.
It is an incredible engine for rapid prototyping and honestly making full games if you are okay with them occasionally breaking because of changes or not having full control over the logic of the game.
I personally believe that these trade-offs are very worth it in some cases, but for what I wanted to accomplish it simply was not accessible enough so I decided to do the much """"easier""""/s thing and learn to code.
A month into this journey and I don't think I can go back on shear principle of the sunk cost fallacy but honestly I wouldn't want to anyway. I am pursuing a career at this point, not just a hobby.
But that does beg the question... Have I gotten any progress done on it?
I had a completely functional and working prototype back in WrittenRealms that we were actively playtesting, it's been a month now and we haven't even touched the game. The most I've managed to do is put a coordinate system on rooms and even that is not useful for anything yet because it doesn't do anything- all it does is store coordinates on the room.
I can write loops, I can create small menus, I can do all sorts of stuff in native python but the minute I touch this library I start to struggle. I am no professional, I am very much a novice, so I am certain that many of the roadblocks that I am facing are simply due to my inexperience.
It has been a hair discouraging not to get anything done on the primary project that I started this journey for. I'm starting to realize that it is damaging my motivation a little bit because I really hoped that within a month I would be able to see some headway thanks to my training, but I'm starting to realize that perhaps the biggest issue is that I haven't really been putting my hands in it because I've been hoping that some sort of magic switch would come on and I would have the skill suddenly to do it.
That does not seem to be the case and the more that I study the more I realize it will never be the case because coding is something that you learn by doing not something that you learn by reading. You can understand the theory all day, but the practice is practice.
Ultimately, it is the separation of myself from the willingness to fail that is the problem. Some of my own stubbornness is absolutely at fault as well, I could 100% just copy and paste code from one of the chat bots online until eventually I get something functional but then I wouldn't understand how it works and all of the fun that came from WrittenRealms by logicing out how to solve everything would be gone. A machine would be doing it for me.
I don't mind assistance, but I don't want it to do the work. So now we stand at the crossroads, what happens next? Do I give up? Do I abandon my dream because I haven't made progress in what I consider a reasonable amount of time?
Fuck no! This is only the beginning of a massive journey. I just didn't realize how tall the mountain was until I started. But every time I learned something new, every little tiny mini terminal-based game that I make, every single time that I struggle against a functional programming concept or have to write a recursive loop. I am learning something that will help me achieve my dream.
I have acquired new dreams during this process that I didn't even have when I started.
I think that this is overall been one of the healthiest things for me, but I do want to see some progress on the goals that I set out with initially so I believe I will be getting to my project this weekend at least for an hour or so.
In addition to that, I'm learning basic math again, from the ground up. I wasn't taught very well in school and it fucking sucked. Now I'm having to rebuild my relationship with what is easily the most interesting subject in the world.
It's tricky, I feel very childish for having to scrape so hard against things that I once knew very easily, but I was never very good at some of these things and now that I'm trying to learn to code, I feel like it's more important than ever to master math.
If this interests anyone, I would be happy to tell you what my MUD is about and point you to some resources where you can learn more. Otherwise I will continue to work on it passively and report back about my goals.
I recently finished the functional programming chapter of Boot.dev and I'm looking forward to continuing. However, I have been stumped on this AI chat bot for like 4 days.