For a while now I have been playing around with the idea of bringing back the IRC RPG I was planning on developing back in 2016/2017. It's been a while since I have tried my hand at making an IRC RPG given that my last big project was most likely around 2009-2010. IRC RPGs have always been a fascination to me ever since I stumbled upon an RPG named "GameWars".
GameWars was originally developed by someone named Dramon on MediaDriven. It was an interesting concept as it essentially was Super Smash Bros. in text-based form. He gave the original code to a few people including myself, and I proceeded to try to add new features to make the game more interesting.
In the past I have taken the original code and modified it to the way that I wanted the game to run. Instead of going that route, my goal with this IRC RPG is to actually build it from scratch. I am not entirely sure if I am going to plan to actually code it in something like Python, or if I am going to once again rely on mIRC to do the heavy lifting.
The positive side of using mIRC is that it already has a lot of internal functions within the scripting system and file management is quite simplistic. If I were to go with Python, I would need to find some sort of way to enable IRC connectivity and would most likely be needing to save information within a database rather than in a file format. It would be entirely possible to save things in a file format, but I would ultimately want to do it right if I were to go that route.
This new concept is to produce more of a turn-based approach for the game and to make it into more of an exploration game rather than just entering an arena to fight things. I would like to build something that actually has progression and story within it, not that it's going to be a huge narrative-driven masterpiece or something. I drew a lot of inspiration from games like RuneScape and SanctuaryRPG in terms of how to actually make an interesting yet simple game.
Exploration will be handled through random events that are tied to different locations in the game. Players will explore different areas of the game to level up their character, find story events, and unlock new areas within the game. Loot will be rather simple in concept, but I plan for there to be a lot of different types of loot that players can get from enemies. The idea is to offer players a lot of viable options for how they approach both combat and exploration and to give players a lot to be able to explore within the game.
One of my biggest efforts is going to be in the combat system. I want to develop enemies that adapt as certain things happen in combat. I really like the concept of some enemies becoming more dangerous as they lose health or becoming more powerful if you use the wrong type of magic on them. While I am not expecting to design the world's most sophisticated AI in a video game, I am certainly looking to make enemies that can be challenging and smart when they are battling the player.
For example, I want to be able to script it so that enemies can start using new attacks once they have reached below a certain amount of health. Some enemies will be smart enough to cure themselves of poison or other ailments if they are targeted with them. In other cases, some enemies may buff other enemies and debuff players.
I'll follow this post up with more information and the complete planning docs for before I start the development process. I am leaning towards coding the bot in mIRC as a means to make development a bit faster, but would certainly be willing to go the Python route if I find someone knowledgeable enough to help me out with learning and building the engine for the bot.
Update: I've decided to do a full write-up on how I envision the bot to operate and what features I want to prioritize and will post it on the blog by the end of the week. It shouldn't be too in-depth, but does give some information on how I expect the bot to work. Not all of the features have really been decided on, but the general features and how the bot should be organized will be written up to make it easier to review when actually building it. I think I am going to decide on Friday if I am going to go the mIRC route, or if I am going to explore the option that I have in Python.