Order of Implementation
-
This thread is for establishing an order of modules to be implemented, whether written from scratch or ported over from the old MUD. Here's what I have come up with so far, in order of necessity:
<list type="decimal">4. Data structures/dynamic memory management
A header file comprising the most basic data structures we will need to establish gameplay. Seems like the most sensible place to start since in writing this we will plan out a lot of the codebase.-
Sockets & game input/output loop
Handle incoming connections, allow other people than whoever started up the program to log in. A simple loop to accept and process input, and issue output. Includes prompt.
-
File I/O
Although a database may be preferable to many files written at once, this would have to be extensively debugged to ensure it's not easily corruptible. It's best to have file IO just in case.- Logging
Essential to establish early to keep the game as bug-free as possible.- Command interpeter.
Allow people to interact with the game world (send input).- Player account system
Can be very simple to start with, so that the game remembers who you are.- Coordinate system
__- Port: wilderness__ Allows for a "tangible" world instead of floating around in limbo.- In-game communication
Things like channels and heads-up display for immortals (wiznet but less lame).- Online editing
__- Port: projects - Port: staff - Port: scripts - Port: help editor__ Necesarry to build our world from inside.- Event queue/scheduling
So that the game isn't based on the dreaded "tick" system.- Transportation
With coordinates, people will be have places to go, so they must be able to do it. This will start with very basic walking around and eventually will encompass flying, boats, etc.- Character stats
The ideal implementation of this will include both the classic-RPG features we all grew up with and love, as well as some interesting new shit to allow things to be done after you've "maxed" your character out.- Skill trees
Gives people something to work towards, instead of slaughtering NPCs for levels. This describes the skill-tree system itself, not any particular skills.- Combat
An essential part of any MUD (at least, for bloodthirsty folks like meself). This encompasses fighting styles, combat skills, PVP specifics, and anything else related to kicking ass.- Magic
A large part of any RPG. I hope to make this much more interesting than "X spell does Y and costs Z mana points".- Crafting
Allow people to do useful stuff without having to resort to violence. Includes: herbalism, metalwork, alchemy, and so on.- Game stats
A code module for keeping track of all sorts of things about the game. This will eat the current stats lists (Most quests, Most PKs, etc.) as well as adding many new ones - one I've always wanted to add was gold flux in/out of the game to keep track of money when it is "created" and "destroyed". Hopefully we can cut down on some of these by actually implementing a game economy - e.g. when you buy something from a shopkeeper, the money doesn't just magically vanish but goes into said shopkeeper's account.- Questing
A much, much better and more expanded quest generation system than what we have now (the same 3 tasks randomly repeated over and over). This will be semi-random to allow for variation in quests, but also structured so that you get a reasonable quest rather than "Obtain X, sacrifice X, kill Y".- Everything else
To be continued when I return home after 5 :) Including but not limited to: items, movement, combat, magic, skill trees, chat, groups/organizations and a plethora of other stuff.</list>Feel free to contribute and criticize, since I'm sure there's a heap of things I haven't considered yet. We can't start doin' stuff until we plan out what to do and who is coding what – I'll moderate this thread and edit in changes into this original post.
-
-
Looks good to me so far, dude. I would suggest making topics for each, and linking to them from the list as they're made, though. That way we have something of an index in here. Also, we will need to look at a plugin/module system to allow others to add systems into the games, which should be factored into what we're doing right from the start.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login