27
Mar
10

About programming this nonsense

So I’ve been thinkin’ about the approach I was taking previously towards the programming of all this nonsense, and I have come to the conclusion that I wasn’t going about it in a very flexible or scalable manner. I’m throwing out the old code and starting over, or rather, not restoring the old code from before I wiped my computer and upgraded to win7.

Here’s the new approach -

A three “tier” software development model: Interface, backend, database. I’ll be tackling the back-end first, because that’s where the real “meat” of the code is.

  • The backend communicates between the database and the user interface, but operates independently from any given implementation of either. This allows for easy testing and reusing of the engine in different situations. If it’s modular enough, it may even be reusable between different RPG sub-genre. It would be really convenient from a programming point of view to be able to reuse significant chunks of code between a turn based strategy rpg and a quasi-real-time action rpg.
  • The database tier will probably not actually be an actual SQL(or something similar) database, but instead some text files(or maybe XML files) loaded into representative objects in memory to be retrieved by the backend. This will hopefully keep the backend from being dependent on a specific data storage scheme, and make things all around more scalable, reusable, and flexible.
  • The interface tier will be developed last. At first, for basic testing purposes I’m going to use a simple text based interface, that can later be expanded to just about anything, because it will just get info from and send info to the backend.

As I actually set out in writing this code I’ll put up some less vague information. My currentĀ conundrum is figuring out what language to program it in. The more I think about it, the more I think it’s stupid to be hating on XNA for not having the ability to draw 2D geometric primitives, because the finished product of this whole thing should be entirely sprite based anyway. It’s not like we’re making a vector graphics based system here. With the work that I’m doing in C# at my jorb and the requests that I’ve gotten for ‘troller support, XNA currently seems like the logical choice, but it makes cross-platform nigh impossible. Do we really need it to be Mac/Linux compatible when it will be Windows, xbox360(If I get one to develop on) and windows phone 7 compatible?

Advertisement

0 Responses to “About programming this nonsense”



  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s


Follow

Get every new post delivered to your Inbox.