Archive for the 'Computers' Category

24
May
10

Starting a new site

Well, I’m off again…

I’ve had a couple of weeks off of work and as-is my typical nature, I started looking for other projects to code upon.

I’ve always wanted to write a dice roller that understood dice algebraic notation, but never seemed to find the time.  In particular, this kinf of a project is compelling since it feeds my liking to write small parsers and my love of role-playing games.

Needless to say, after finishing a rough version of the program, I decided to survey the web for a new site name.  Now, let me be clear.  I already have 11 other sites that I run (or really use to), so I’m not entirely sure why I would go off and look for another, but yet, here I was, looking for another site.

Wow! It amazed me just how many names were taken. I knew I wanted a .com address to keep things simple, and I didn’t want to always have to spell out the name and I wanted it to fit into the real of roleplaying. Sounds easy enough, right?  pfffft!

After almost three hours of searching, I finally found one that I was happy with (dungeonz.com). I had tried almost 200 other names prior to that name, and even taking the time to review the ‘suggested sites’, no luck.

Once found, I quickly registered the name.  Easy enough…  time for bed.

19
May
09

Getting started with Lua

While I begin my framework for creating the game using Lua as the scripting language, I thought I would discuss some of the other constraints I’m working under to put things into perspective.

I would like to utilize the following technologies:

  • .Net Framework, C# preferably, C++ as a fallback for necessary components
  • Lua as the scripting language
  • Silverlight as the client platform
  • Visual Studio 2008 as the development environment

Following is the list of initial resources I’m using to put together the scripting engine:

  • www.lua.org – Primary site for all things Lua.  Great starting spot containing links to many libraries and even a live demo that can be run from the browser.
  • lua-users.org – Community site containing extensions and discussions (Lua Addons)
  • Lua Socket library – Well, I need to get network connectivity somehow.  This seems to be a pretty standard library for doing so.
  • LuaForge – Source repository for a lot of Lua projects including the Sockets library
  • Generic Game Server v2.0.1 – Great little Lua generic game server.  Looks to be what I want already written along with sources should I need to enhance it.

Well, to my surprise, after downloading the Generic Game server and playing with it for a bit, I was actually able to get a very rudimentary MUD framework in place and it loaded, allowed connections, etc…  It took a little wrangling for me to get the Lua syntax down correctly and to have it work correctly with the software communication interfaces.

Based on this, utilizing Lua is a go!  Now to go get a domain name to host all this great information and the builds, etc…

17
May
09

Lua or LPC

One of my early decisions was to utilize a scripting language for the game.  The scripting language is interpreted allowing for changes at runtime without restarting the whole game. Well, most of the time…

When I use to code for a MUD, the MUD utilized LPC as its scripting language.  LPC was developed by Lars Pensjö for scripting in LPMuds.  I took some of the original code and specialized it for my own MUD, which was never released.  This was over 10 years ago, but I still have the code, a good base library and a basic understanding of the language still.

Lua is another scripting language known for its speed and its efficient garbage collection.  The other big benefit it has is that World of Warcraft uses Lua for programming its interface and thus has generated quite a few followers in the gaming community that know how to write code in Lua.

All that said, both languages are fairly similar on many levels.  The real power for both of these languages comes from the extensions that are built and specific to their running environment.  Given that 90% of the functionality comes from these extensions, it is not immediately clear which of these languages might be best suited.  Heck, for that matter, one could throw in JavaScript (or ECMAScript for the savvy) as a viable contender.

One of the other advantages that Lua has is documentation.  There have been many websites, articles, blogs and even a book or two written about Lua.  It is also under current development.  The only downside is that I’ve already got a significant amount of LPC code written for my old MUD.  Maybe it’s time to give up and just use the old code as a framework of ideas and start fresh.  The downside to doing so means an additional month or more of coding just to get a basic library of routines built up.

Well, that settles it.  In my opinion, the scorecard comes out in favor of Lua.

Expect to see more articles on how the adoption and learning of Lua is going.  I will post my sources of information and downloads so everyone has a chance to share.  When I finally get to some minimal level of code and framework, I will post that work for others.

16
May
09

Design, design, design

Over the last few days, I’ve been spending a significant amount of my mental resources thinking about the game and the features I would like to see in it.  This alone can be a dangerous line of thinking.  In the end, I could end up with a game that I absolutely love to play, but nobody else does.  That defeats the purpose, in my mind.  On the other hand, building a game that every else would enjoy, but that I won’t, doesn’t seem appealing or inspiring.

Balance…

I’ve been thinking about all of the different MMO’s and single player adventure games I’ve played over the last twenty-five years.  What are some of the things I was most fond of?  How many of those are for really great design versus nostalgia?  I tempered my thoughts with remarks my friends had made about the games and their design.  It’s easy to state the obvious.  It’s more difficult to identify the essence that actually made a particular game worthwhile.

I would like to design a worthwhile game.

This morning, I got up early thinking about the shape of the game.  It doesn’t have a name, it doesn’t have rules, it doesn’t have definition.  I decided to grab a pen and a pad of paper and a clipboard.  I walked the couple of blocks to my local coffee shop, ordered my drink, sat down and started to explore the shape of the game.

I recalled both the positive and negative aspects of games I’ve played.  I jotted notes into broad categories so I could retrigger the thought process.  I covered a very wide gamut of ideas and concepts from the different types of quests to banking, money, characters and their development, merchants, areas, expandability, items, transportation, community, story, crafting, grouping, etc…  When I was done, I had two full pages of very high-level ideas.

Shape…

I now have a very rough shape.  The idea now is to iterate through each of these areas and define the next level of detail.  These details will be written up and I will have some peers and friends review the thoughts and ideas.  This whole project started out with the notion of doing this in a very public manner and soliciting input from everyone.  While that doesn’t mean I’ll utilize everyone’s input, it does mean I will consider everyone’s thoughts and contributions.

There’s a part of me that hesitates to start coding anything without additional shape to the game.  While it might feel like a waste of time to start so early, it turns out there are many supporting framework pieces that can be started.  This includes a basic application framework and coding design documents.  Companion applications can be started and technology assessments can be done.

So much to do… So little time…

11
May
09

It’s all about scale

How times have changed. Here I am, sitting in my office at home at my desktop thinking about the programming project I want to work on.  It starts out simple enough.  Create a small dungeon crawl game that is lightweight fun.  I figure this would be a great opportunity to start writing a blog describing how I go about thinking, planning and coding such a project.  How hard could it be?

Twenty years ago, I would have simply started up an editor, wrote some code, stayed up way to late and ignored everyone and everything around me.  Today, I find myself in real contemplation assessing the size and scope of the project and asking a lot of questions that begin with ‘Why?’.

Part of me is disgusted by this.  Part of me is proud to show my maturity and experience in this matter. The end result is that it really doesn’t matter much if I don’t do anything.  So, I need to put a stake in the ground and start making some progress.

The thought process goes something like this.  If I’m only writing a small game or game framework to be utilized only as a learning process, then there is little reason to do anything other than jump right in and start coding.  The flip-side being that if I want to create something with great potential, then I need to have the necessary framework in place to make sure the project doesn’t implode on itself.

What’s the answer?  Well, I don’t know that yet.  Hopefully, I’ll find a happy middle-ground and get this thing started.  In the meantime, at least I have some topics that delve into my psyche.

08
May
09

Just another day at the office

Well, I had hoped to start blogging about some game development at this point.  Unfortunately, I work for a software development company that has interesting rules to protect itself. To make sure I don’t lose my intellectual rights or violate some disclosure agreement, I have had to place an inquiry to understand the bounds and rules and get any permissions in order.

What does that mean? Well, it means I can’t discuss my thoughts quite yet regarding game design and software development.  Bummer.

While that process is underway, I’ll have to just start writing down items on my local system and have them ready to publish when the time is right.  In the meantime, I’m sure I can fill plenty of dead space talking about all the other nonsense I think up or encounter everyday.




 

May 2012
M T W T F S S
« Jun    
 123456
78910111213
14151617181920
21222324252627
28293031  

Follow

Get every new post delivered to your Inbox.