Sign in to follow this  
Followers 0
CCook67357

Database-Driven MUD design

1 post in this topic

I have relatively recently began coding a proprietary MUD game engine based upon a database backend (due to the wrapping of ADO.NET compliance it is a kind of non-issue having to plead fealty to one database solution rather than another).  There are many different scenarios to consider in the design of the table structure but I believe I could very realistically use SQL in place of an accessory scripting language processed through an interpreter.  Does it sound realistic to store every specific piece of data in the multi-user world in the database to the point of all interaction taking place ( as well as all displayed information ) through the dynamic manipulating of that data asynchronously by queries sent from each thread? 

 

My current framework has both a 'Commands' and a 'States' table of which both have related records in the 'Effects' table.  Ideally I would like to have all of the queries for database manipulation stored in the 'Effects' table.  A command would trigger a related effect and an entity would have a state that would trigger a related effect on an interval of main game loop ticks in terms of that particular players thread and scope.

 

Could anyone think of any sort of action I would not be able to accommodate through abstracting away from this foundational system?  If I am unclearly communicating anything just let me know and I would be more than happy to answer any questions or elaborate! (I am new to the whole forum thing).

0

Share this post


Link to post
Share on other sites

My current framework has both a 'Commands' and a 'States' table of which both have related records in the 'Effects' table. Ideally I would like to have all of the queries for database manipulation stored in the 'Effects' table. A command would trigger a related effect and an entity would have a state that would trigger a related effect on an interval of main game loop ticks in terms of that particular players thread and scope.

 

It kinda sounds there like you're trying to make your backend database into more of a middle end core of capabilities.  Can you give an example of a specific command?  IE, if I enter "attack target", what records in what tables are used to resolve that command?

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0