Technical Details

After the first art overview by Daniele I wanted to share a few technical details about the game:

Programming Language: C# over mono. I find C# a very nice language, less idiosyncratic than Java, more than fast enough for an indie game without millions of objects and particles flying around and very well supported (I would have chosen D if not for the lack of good and complete IDEs).


Input/Output: the game will have 2D Accelerated graphics and will be playable using only the mouse or a mouse and keyboard combo. SFML will be used to handle I/O, it is a nice library and it won me over SDL because it is, in fact, very simple to use and contains everything I need out of the box.

Scripting: I am still unsure about this one. Scripting will definitely be in, but I am still evaluating the different alternatives, specifically I am limiting the choice to:

  1. Javascript. I know it well, it is well known and it is quite well supported. I have heard good things about JINT.
  2. Lua. It is fast and small, probably the fastest around, and it has a large use base (just to name a game using Lua think about World of Warcraft).
  3. Python. Well I only mention it because it is one of my favorite languages… I think it is not so easy to embed in C# plus it can be quite slow.

Target platforms: Windows, MAC and Linux. One of my development goal is also to try and keep a door open for a future port on mobile devices. Xamarin (by the way, I use the Xamarin studio IDE) enables C# code to run on Android and iOS, SFML will probably have a mobile port by the end of development and Javascript can be very easily embedded on mobile application (or so I hear). I have not chosen a more easily portable alternative like Java+SDL because I am well aware that some development will have to be made for a mobile port, and I didn’t wanted a feature in the “maybe” category to dictate my every move.

Almost everything is decided, but scripting is still a huge question mark. What do you think about my choice of scripting languages?


Leave a Reply

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

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

Facebook photo

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

Connecting to %s