<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;C04BQHw8cCp7ImA9WhdREEs.&quot;"><id>tag:blogger.com,1999:blog-6504461882544205984</id><updated>2011-07-30T17:39:11.278-04:00</updated><title>SiLo.dev</title><subtitle type="html">Capricorn Development Log</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://silo-dev.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://silo-dev.blogspot.com/" /><author><name>SiLo</name><uri>http://www.blogger.com/profile/12009029409258280461</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>5</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/Silodev" /><feedburner:info uri="silodev" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;C04CR3c9fyp7ImA9WxFQFUo.&quot;"><id>tag:blogger.com,1999:blog-6504461882544205984.post-6208124244039994157</id><published>2010-05-11T05:59:00.000-04:00</published><updated>2010-05-11T05:59:26.967-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-11T05:59:26.967-04:00</app:edited><title>Network Encryption Algorithm</title><content type="html">I've started up a wiki of Dark Ages reverse engineering information so that the developer community can benefit from the more organized and centralized location of documentation. Right now it's only hosting this single page, but I'll be adding them as I go along so I too have a good reference as well as everyone else.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://da-dev.wikispaces.com/Network+Encryption+Algorithm"&gt;Dark Ages Developer Wiki&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
The funny part is I started out typing the documentation in normal text and soon became quite frustrated when it constantly removed my formatting or didn't take it properly. It was really annoying when it came down to the sequences and C# code, until I found out I could use LaTeX for math and a code tag for C#. Doh! Needless to say, I was went from very annoyed to quite pleased within a matter of minutes. There are a few odd issues with formatting that required me "reformatting" some sections so they would properly render but the major issues were resolved.&lt;br /&gt;
&lt;br /&gt;
As the wiki develops more pages I'll go back and add links to the newer pages (for example dialog encryption, packet formats, etc).&lt;br /&gt;
&lt;br /&gt;
Feel free to bookmark the site and leave me any comments/suggestions.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6504461882544205984-6208124244039994157?l=silo-dev.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/H20vitoBgt2UGbN9VQLc4BamG_w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/H20vitoBgt2UGbN9VQLc4BamG_w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/H20vitoBgt2UGbN9VQLc4BamG_w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/H20vitoBgt2UGbN9VQLc4BamG_w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Silodev/~4/0WvPFEETGQU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://silo-dev.blogspot.com/feeds/6208124244039994157/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://silo-dev.blogspot.com/2010/05/network-encryption-algorithm.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/6208124244039994157?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/6208124244039994157?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Silodev/~3/0WvPFEETGQU/network-encryption-algorithm.html" title="Network Encryption Algorithm" /><author><name>SiLo</name><uri>http://www.blogger.com/profile/12009029409258280461</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://silo-dev.blogspot.com/2010/05/network-encryption-algorithm.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0QDSHo5eSp7ImA9WxFSE0w.&quot;"><id>tag:blogger.com,1999:blog-6504461882544205984.post-6943349493026802678</id><published>2010-04-15T03:51:00.005-04:00</published><updated>2010-04-15T04:16:19.421-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-15T04:16:19.421-04:00</app:edited><title>DALoader v1.0.0 Released -- The first of many to come!</title><content type="html">&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;As I've made a good amount of progress on the server and patch 7.27 rolling around, I feel the need for a good, flexible tool for launching Dark Ages without having to hard-edit the file. I really only needed host/port redirect along with multiple instances. Since I plan on integrating a basic version of the server as part of the map editor for loopback testing, I figured "no wall" would be a decent addition for testing some maps.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Like I said, the main feature is that the loader should not modify the executable on disk so that the patcher doesn't complain and also in case Dark Ages tries to be funny with hash checks on itself someday (doubtful). That and it's just more programatically elegant. I also wanted something that could work with various file versions just in case I needed to use a previous client version.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Thus, DALoader was born as you can see below:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://img717.imageshack.us/img717/4561/daloader1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="222" src="http://img717.imageshack.us/img717/4561/daloader1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.megaupload.com/?d=NLIUFDZB"&gt;Download Link (MegaUpload) ~ 91.1 KB&lt;/a&gt;&amp;nbsp;(7.26 &amp;amp; 7.27 profiles included)&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Requires&amp;nbsp;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=333325fd-ae52-4e35-b531-508d977d32a6&amp;amp;displaylang=en"&gt;.NET 3.5 Runtime&lt;/a&gt;&amp;nbsp;(pre-installed in Windows 7)&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Now, I had originally posted this over at &lt;a href="http://www.planetda.net/"&gt;PlanetDA&lt;/a&gt;, mostly because I figured people were looking for a multiple instance tool that worked with 7.27. It was soon removed due to the "no wall" part making it a hack tool and possibly giving players an&amp;nbsp;unfair advantage over others. While I can see the rationale to a point, this is not the first tool to do so and furthermore not the first tool hosted/advertised on PlanetDA to do so. What is even funnier to me is that while this tool requires you to close the "no walled" DA instance and run it again with walls, several other tools allow it changed at runtime and (at one time) hosted on PDA quite recently. So somehow, my "test feature" hack is not allowed while other very convenient and single-purpose tools are.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;I'll just say, you use what you use at your own risk and you be the judge. You've been warned, even though no one is going to know you're doing it anyways. Just for emphasis, you can &lt;u&gt;not&lt;/u&gt; toggle the "no walls" portion at runtime (though that may become a feature if needed with the map editor integration later).&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;I'm pretty sure the usage of this program is straightforward. You select where your DA executable is, which client version you want to use, and then what options you go. The nice part is that the profiles include file size and MD5 hashes so it will attempt to automatically chose the right client version based on your file. If this is incorrect or you want to manually set it, you can do so. Since it uses MD5 hashes, if you have modified your&amp;nbsp;executable, this feature more than likely will &lt;u&gt;not&lt;/u&gt; work in detecting the version.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;The settings are saved so when you open the program it should be just like when you left it. Do be sure that you extract the &lt;b&gt;profiles&lt;/b&gt; directory to the application path. If you don't (or don't have any profiles) you won't be able to use it as it has no idea where to apply the changes.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;So how does it work? The program creates a suspended process of DA. That means it loads the process into memory and is immediately frozen indefinitely. The changes are then made in memory and the program is resumed, of course this all happens in a matter of milliseconds. Since the changes are made in memory and not on the actual file itself, your DA executable is left untouched. Each client version has a profile which lists where each change should be made in memory so that it doesn't have to be hard-coded for a single version in the program itself.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Anyhow, feel free to report any bugs or possible suggestions! Do keep in mind that this project was intended to be a quick utility to serve a small but important purpose so I am quite reluctant to add any more functionality to it.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;P.S. For the curious, the profile XML files refer to the address in &lt;b&gt;process memory&lt;/b&gt;, in decimal (base 10). If you plan on making your own profiles, be sure to use the process address (file address + 0x400000).&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6504461882544205984-6943349493026802678?l=silo-dev.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/sIXIy17lFcR5Ga-6MHQrN3WJexw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sIXIy17lFcR5Ga-6MHQrN3WJexw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/sIXIy17lFcR5Ga-6MHQrN3WJexw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sIXIy17lFcR5Ga-6MHQrN3WJexw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Silodev/~4/pqD7g7xP4Zs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://silo-dev.blogspot.com/feeds/6943349493026802678/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://silo-dev.blogspot.com/2010/04/daloader-v1000-released-first-of-many.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/6943349493026802678?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/6943349493026802678?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Silodev/~3/pqD7g7xP4Zs/daloader-v1000-released-first-of-many.html" title="DALoader v1.0.0 Released -- The first of many to come!" /><author><name>SiLo</name><uri>http://www.blogger.com/profile/12009029409258280461</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total><feedburner:origLink>http://silo-dev.blogspot.com/2010/04/daloader-v1000-released-first-of-many.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUACSXg4eCp7ImA9WxBbE00.&quot;"><id>tag:blogger.com,1999:blog-6504461882544205984.post-1676326210380314367</id><published>2010-03-11T06:37:00.001-05:00</published><updated>2010-03-11T06:42:48.630-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-11T06:42:48.630-05:00</app:edited><title>So Close, Yet So Far</title><content type="html">That's the feeling I get every single time I use the next Ubuntu release. It's closer and closer each time to becoming everything I need with app support and whatnot, but always falls short of one or two critical things. Previously, I had converted to 9.10 and dual booting Windows 7 for any purposes requiring it (read: games). For a while I was really happy with Ubuntu and it did everything I needed, and I was ok with some of the differences in programs.&lt;br /&gt;
&lt;br /&gt;
And then I just couldn't do it. Now, I won't dog Linux or Ubuntu in particular, it's not their fault in this case. The problem is with MonoDevelop. While I commend their efforts greatly, it still falls too short of Visual Studio for me to switch, mainly in the debugger. The IDE itself is nice and offers most of the features I'd want in an IDE, including code folding and code completion (though auto-formatting would be nice for the OCD/lazy me). However, the debugger still has a ways to go. It does work much, much better and fluid than the last time I tried it, it doesn't quite make it in my books for my impatient self. Long(er) wait times for program execution to hit the debugger, flaky edit and continue support, slow/unhelpful mouseovers while breaking, and odd stepping at times made me miss VS too much.&lt;br /&gt;
&lt;br /&gt;
Another slight issue which again isn't Ubuntu's fault is the fact that some of my programs require native DLLs invoked via C#'s platform invoke. This works fine under Windows but trying to do so in Mono with Win32 DLL's and Wine is a nightmare. I looked at the Mono documentation if it was possible to do so but it seemed like it was not, and I had figured as much as the Win32 subsystem is indeed not running on Ubuntu! Like I said, slight issue and easy enough for me to work around it by developing the programs under the Windows 7 boot.&lt;br /&gt;
&lt;br /&gt;
The issue comes down to what am I getting out of developing under Ubuntu? Cross-platform is the real main answer. That and the self-satisfaction of running Linux and enjoying breaking from Windows, but that's more a personal preference. What I would be losing is time, as it takes me much more time to get used to MonoDevelop, deal with its issues in the debugger, and work in an environment that I'm less familiar with. Is it worth it? That's the harder question to answer. Obviously, the first and third issues would go away with time, hopefully the second as well with newer releases, but not a true&amp;nbsp;guarantee. I figured C# code is almost by-nature, very portable. Not too much of the code is Win32-specific, I could easily &lt;a href="http://www.mono-project.com/Compiling_Mono_VSNET"&gt;compile it under Mono in Windows under VS&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
It seems, at this point, I have very little reason to break away from the Windows platform at this time. Sticking to it does not mean I believe it's the only operating system in use and I can respect (and develop for) other platforms as well. Dark Ages is a Windows game so with that slight bias, I do realize that some hackery may be best under Windows though that could be virtualized under other OS's too.&lt;br /&gt;
&lt;br /&gt;
So really this is about me developing under Windows again on Visual Studio. However, when I do release binaries, there will be ones for Windows/Mono side-by-side (where applicable). For example, the 2D isometric engine that I develop to be used in the map editor and then a possible standalone client will be coded in SDL.NET which uses OpenGL, not DirectX. This makes it much easier to port to other platforms as Ubuntu and Mac OS X both support OpenGL and SDL.NET has ports for both of them as well.&lt;br /&gt;
&lt;br /&gt;
The good news is that I have gotten a good bit of the core done for the server. Network code is done, encryption/security code is done, and packet formats are on their way. I'm really liking how this is turning out and I can't wait to see the fledgling server up and running (again). I won't be releasing source code (at first) but I will be releasing the libraries that all my projects are using so that other developers can work on DA-related projects with great ease. Of course, the libraries will be released as I develop them too, so don't expect the 2D engine out just yet!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6504461882544205984-1676326210380314367?l=silo-dev.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1gXEcQ2KwoyvSGLJ2VYa-__KwPI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1gXEcQ2KwoyvSGLJ2VYa-__KwPI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1gXEcQ2KwoyvSGLJ2VYa-__KwPI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1gXEcQ2KwoyvSGLJ2VYa-__KwPI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Silodev/~4/bDTaJBNckpQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://silo-dev.blogspot.com/feeds/1676326210380314367/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://silo-dev.blogspot.com/2010/03/so-close-yet-so-far.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/1676326210380314367?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/1676326210380314367?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Silodev/~3/bDTaJBNckpQ/so-close-yet-so-far.html" title="So Close, Yet So Far" /><author><name>SiLo</name><uri>http://www.blogger.com/profile/12009029409258280461</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><feedburner:origLink>http://silo-dev.blogspot.com/2010/03/so-close-yet-so-far.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUYMSXg-cSp7ImA9WxBUEU8.&quot;"><id>tag:blogger.com,1999:blog-6504461882544205984.post-199686449502229786</id><published>2010-02-25T14:41:00.001-05:00</published><updated>2010-02-25T14:46:28.659-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-25T14:46:28.659-05:00</app:edited><title>A Good Start is Half the Battle</title><content type="html">At least that's what they say right? Anecdotes aside, one of the reasons for the delay since the last posting is deciding how the project should be developed and maintained. Whether it should be open or closed source, C# or C++, Mono or Microsoft, cross-platform or Windows-based, and the list goes on.&lt;br /&gt;
&lt;br /&gt;
Another issue I have been debating is whether or not to allow others to help me work on it at the same time. The reasons I am for it should be obvious, though the reasons for me being against it maybe not so much. The issue truly comes down to having code that complies with the standards I would like. This is a huge project and I know it will only grow even larger as times goes on. I want the code to be a certain way and I don't want to waste time trying to enforce that on others and go back 'checking' code and such. It's much easier if I do it myself and then I have no one else to blame except myself if it isn't as I wanted it. That, and setting up source control, relying on people using it correctly, and whatnot creates more overhead that I don't want at this moment.&lt;br /&gt;
&lt;br /&gt;
Going forward, if I decide to allow others it will be much easier as I can just throw the code I have in a repository and then others can look from my work and see how it should be when they code their additions. It's much easier to learn from example rather than lengthy documentation.&lt;br /&gt;
&lt;br /&gt;
In the past I have been mostly Windows-based. For most, this is not a problem as Dark Ages runs on Windows and most users run that OS. That, and Dark Ages runs fairly well on Wine/Parallels, so there's not too big of an issue on that either. However, I would like to make the transition to cross-platform using Mono. Previously, I was hesitant on this due to Mono-Develop's debugger not working properly for me, but it seems they have fixed these issues since 2.2. Of course, Windows users can still run the program but now Mac OS X and Linux users also have an option without having to rely on other&amp;nbsp;compatibility&amp;nbsp;and emulation layers.&lt;br /&gt;
&lt;br /&gt;
I see no reason to use C++ over C#, as the latter offers outstanding performance and I am very familiar with it. Not to mention development time is far less with C#. Honestly, I see few reasons to use C++ anymore in most situations unless you really need some interop layer or low-level access, but that is just my opinion!&lt;br /&gt;
&lt;br /&gt;
The main project itself is the server, but that requires a lot of tools development as well. I plan on using custom maps, so that means a map editor is required. I also will use custom metadata for items, so that means a metafile editor too. Debugging network packets is no fun, so that's going to be another tool I'll need to get data from the server for reverse engineering as well as testing my own server. As you can imagine, this list just grows and grows. For this, I plan on making a base library which will contain code for interacting with various Dark Ages-related types and functionality, one of which will be a rendering engine for the map editor. The engine will also be recycled in a stand-alone client to be released later but that's very tentative.&lt;br /&gt;
&lt;br /&gt;
So no, the project is not dead by any means! It is true that real life duties get in the way of things, but I am trying to devote a large amount of time into this project when I can. Keep checking back for updates!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6504461882544205984-199686449502229786?l=silo-dev.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Kc-12Wa0N5yR7ndC-rfh1dD27Fs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Kc-12Wa0N5yR7ndC-rfh1dD27Fs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Kc-12Wa0N5yR7ndC-rfh1dD27Fs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Kc-12Wa0N5yR7ndC-rfh1dD27Fs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Silodev/~4/imjJdN_BfkY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://silo-dev.blogspot.com/feeds/199686449502229786/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://silo-dev.blogspot.com/2010/02/good-start-is-half-battle.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/199686449502229786?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/199686449502229786?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Silodev/~3/imjJdN_BfkY/good-start-is-half-battle.html" title="A Good Start is Half the Battle" /><author><name>SiLo</name><uri>http://www.blogger.com/profile/12009029409258280461</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><feedburner:origLink>http://silo-dev.blogspot.com/2010/02/good-start-is-half-battle.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkQGQ34-eyp7ImA9WxFSE0w.&quot;"><id>tag:blogger.com,1999:blog-6504461882544205984.post-3574338108849304899</id><published>2010-01-22T05:31:00.011-05:00</published><updated>2010-04-15T03:58:42.053-04:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-15T03:58:42.053-04:00</app:edited><title>A New Year's Resolution for a New Decade</title><content type="html">&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;2010. Why this year stands out as more important than the last nine may remain a mystery. Perhaps it is the turn of a decade or the fact that we're one step closer to the ominous 2012 doomsday predictions. What I do know is that it marks another year of the Capricorn project bearing no real fruit. This always comes as a depressing reminder and this year I have decided to do something about that.&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt; &lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;While I have many projects, both related to Dark Ages and others not, the Capricorn project is by the far the most ambitious and rewarding of them all. It is one project that I have always wanted to see realized and working as I had envisioned. There have been other private servers in the works by other individuals and such, which have been admirable efforts as well but seem to have eventually suffered the same fate as Capricorn.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt; &lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;The current state of the US server also worries me. How long Dark Ages will continue to go on? Many years ago the Malaysian Dark Ages (Legends) was shut down and the Japanese version (Yami) soon followed. The US Dark Ages server is still up and running but for how long it will continue remains unknown. While I do not speculate it going down permanently anytime soon, the current game and how it is run does not bode well.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt; &lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;One main goal of the Capricorn project was a completely customizable game down to the classes, items, maps, mundanes and monsters --&amp;nbsp;&lt;/span&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;a&lt;/span&gt;&lt;/i&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;server emulator, not&amp;nbsp;&lt;/span&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;the&lt;/span&gt;&lt;/i&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;server emulated. The greatest part about Dark Ages is that even though it is over a decade old, it still has so much potential. Unfortunately, that potential does not lie in its current form and will require a good bit of tweaking but the potential is there nonetheless. That same potential is what keeps this project going.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt; &lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;So to end this post, I welcome 2010 and look forward to a lot of exciting milestones being reached for the Capricorn project this year!&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6504461882544205984-3574338108849304899?l=silo-dev.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/FpBZRBeQ55RGGzhsGJ4ujvYgYuk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FpBZRBeQ55RGGzhsGJ4ujvYgYuk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/FpBZRBeQ55RGGzhsGJ4ujvYgYuk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FpBZRBeQ55RGGzhsGJ4ujvYgYuk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Silodev/~4/7N0GLrv6-tY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://silo-dev.blogspot.com/feeds/3574338108849304899/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://silo-dev.blogspot.com/2010/01/new-years-resolution-for-new-decade.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/3574338108849304899?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6504461882544205984/posts/default/3574338108849304899?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Silodev/~3/7N0GLrv6-tY/new-years-resolution-for-new-decade.html" title="A New Year's Resolution for a New Decade" /><author><name>SiLo</name><uri>http://www.blogger.com/profile/12009029409258280461</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><feedburner:origLink>http://silo-dev.blogspot.com/2010/01/new-years-resolution-for-new-decade.html</feedburner:origLink></entry></feed>

