From Arianne
Jump to: navigation, search

History of Arianne

Arianne is a project with a huge story behind it.

I have tried to write it as extensively and detailed as possible but if you think that i have missed something, please add it.


Where the name Arianne came from.

The name originated from the Greek name 'Ariadne'. (Latin; Arianna and from French; Arianne). Ariadne is a famous character in Greek mythology. She was the daughter of King Minos of Crete and she was in love with Theseus, the Athenian hero who killed the Minotaur ( a half human, half bull creature). Theseus married her, however, then later left her alone on the island of Naxos. Ariadne later married Dionisos the God of Wine. The name Ariadne originates from the ancient Greek words 'ari' which means intelligent and 'adnis' which means pure (as in a virgin). Hence, the daughters of the Romans and Greeks where often called by this name.

The begining

It all began when Miguel read a post on Linuxgames forum about "What I'd like to see in an RPG". Miguel saw the post and said, 'heh, there is not a single RPG for Linux, it would be nice to create one'. Of course, at the time Miguel didn't know about great games such as: Nethack, Crossfire or Altima.

So on July 27, 1999 someone posted what they would have like to have seen in such a game:

  Something in line with your thoughts is my concept of a sort of Sim Fantasy 
  game setting for an RPG. That is, a great deal of effort is done to create a 
  fantasy world that runs logically in a simulated sort of way, from politics 
  to economics to monster populations, and then let the player interact with that.

  You decide you want to become King of Generia? Perform services for a lord 
  until he knights you, then work your way up the noble ranks by marriage, 
  heroism, warfare or deceit. Or become a necromancer, build up a huge undead 
  army and attack the kingdom, making yourself ruler when they are defeated.
  A game that simulated the sort of thing you see in a generic fantasy world 
  is what I'm thinking of here, not an exact medaevil life sim. Incursions of 
  dragons, adventurers stirring up the goblins in the hills with their attacks,
  an ancient evil awakened by careless nomads in the desert, you name it, 
  it could happen.

  If you wanted to get really ambitious, the entire world might be random. 
  Use a world creator, run a crude form of Civilization on it until you hit 
  the right tech level, expand upon the basic parameters from the Civ 
  simulation to create the individual lands, peoples, and nations. Populate 
  it with random NPCs, run the world for 100 years or so to give it a bit 
  of history, and bingo.

  The advantage of this approach is that the game would be infinitely 
  playable. The obvious disadvantage is that it would be hard to get 
  anything like a coherent story out of the game without some pretty 
  sophisticated story mechanics in place. 

  Think if it as "Rogue" on a much larger scale. Heh.

Miguel replied asking for more details and got really interested with the idea. Around one month later the project page was setup and Miguel started looking for help from the hacker community.

  The coding of the game has begun. Project Arianne has just started. 
  Visit the page http://members.xoom.com/arianne_rpg/ .
  The page is in Spanish if enough people ask for it i will post an 
  alternative version in English. 
  E-mail yuor ideas,question or feelings about the project.


Year 1999

I have not been able to find this initial webpage, seems the hosting went down and I have no copy of it on my HD. All I have from that time is a short declaration of what Arianne should be:

  What is Arianne? 
  Arianne is an RPG project that will have the next set of features:
  * Infinite World
  * Online gameplay
  * Permanent world
  * Non hardcoded RPG engine
  * Open development model of items
  * Portable
  * The most important part of the game is the offline one.

  Ideas to add to project:
  Depending on the path of the player or NPC, it will do or be able to
  do some actions insteads of others, and as a result there will never 
  be two similar games.
  Every NPC will have a story, a ascendants, a set of goals and a 
  personality, so there is no two exact NPC.
  Items are added to the program using a interpreted language that ease 
  it load and that makes it independent of the operating system where 
  the server runs.
  Game will is ruled by laws, economical relations between states, 
  politic relations, weather, geography and so.
  To advance on experience points you don't need to kill, but to role play.

Sounds fun, doesn't it? Keep in mind that at the time when this was written, Java was a stupid language featuring version 1.0, no one knew about Python and XML was the name of a football team. Now that I re-read these ideas, I think most of the goals are clearly very hard, even with today's technology.

The official start day of the project is September 8, 1999. We will use this as the birthday date. The first webpage of this new era featured a much more interesting webpage

Webpage 1999.jpg

And the very first version of Arianne: a 2D Client.

Screenshot 1999.jpg

During that year, Arianne evolved anarchily and fast to a small working offline game where the player was able to move around a piece of terrain of around the size of 3 screens. The great achievement at this stage was the portability, as the game was runable on Windows, Linux and BeOS thanks to SDL which at that period an awesome 0.10 version

Year 2000

In the year 2000, Arianne reached version 0.3.0 and that was the first version to feature a real client-server framework. Everything was pretty hardcoded and was extremly difficult to either add new features or fix existing ones, however the framework was kept that way up to version 0.3.9

Screenshot 2000.jpg

Also a BeOS version was released and hence Arianne was one of the first BeOS open source games.

Screenshot 2000 BeOS.jpg

Around this time the website was rebuilt using Midgard, a strange content management system, but the result was a really clear and nice website.

Webpage 2000.jpg

The real achievements of this release was the creation of a nice core of developers, of whom I think the most relevant were Ulrich Eckhardt, Masahiro Minami and Dan Brown, and the fact that the client was running on Linux, Windows, BeOS and MacOS. The base still had the problem of being very hardcoded and the source was really, really badly written so we did what has been a constant in Arianne: to completely recode it, saving only the knowledge gained from our mistakes.

This was one of the greatest things about the Arianne project; we always knew we could do better. Hence we started to code it again from scratch, which unfortunately halted the project for around 6 months during which there was no significant progress. The project numbering was changed from the expected 0.4.0 version to 1.0.0 alpha 1. The whole Arianne project was extremely well documented, everything, from specification to design, was written down on webpages and made available to everyone. These design docs (ignoring big changes in the implementation) are still valid.

Miguel successfully managed to coordinate about 30 people and to make a standard image of the project, thus everything looked like part of a common project... of Arianne.

Year 2001

2001 was the year of Arianne. Many new and interesting people joined the project. However, unfortunately a new type of contributor appeared: the camper. These were people that joined the project, asked for tasks and vanished after that. It was a pity because they delayed the project a lot and made it much harder to keep adding new features. The first version of the alpha 1 releases where released under the name Pandora.

Webpage 2001.jpg

Screenshot 2001 MacOS.jpg

This version featured a basic server-client framework, that was easy to debug and expand, and that would create a base for the next project steps. This year also featured two more releases of tech previews of Galadriel which was the 1.2 version of Arianne. We started to add features such as a database backend, and a secure login procedure

Year 2002

In the year 2002 Arianne released a major version, named Galadriel, that added a python RP system, a database backend for accounts, a XML storage for the world and a small 2D client using Kyra, a sprite engine for SDL.

Screenshot 2002.jpg

The website was created again, this time using PHPNuke. (trust me, you don't want to run PHPNuke!). Olivier Milla and Djagg worked really hard on the website to make it unique and different, and they did a real good job.

Image of website in 2002 (Anyone has it?)

The progress on the project was awesome eventhough some of the core developers dropped out. Many great contributors joined of whom I can point out Skyflash and Brian Rowe. The project was number 1 on Sourceforge for around 1 month during July, 2002. That means very hard work. But then problem arose. The code was not as clean and nice as Miguel though it should be, and he suggested a re-code of the project. However some developers disagreed. This coupled with the fact that Miguel seemed to be the only truly active worker, (he was writting the code, the web pages, doing the PR, managing the project and just about everything else!) led to the inevitable result of a burn out and the project was declared dead around Sep, 24.

 Arianne is dead.

 This project is really exhausted and IMO it can"t continue anymore
 on the  actualy structure. There are 27 developers on Sourceforge 
 and only steve has  been working lately with PHP of developers site 
 and Skyflash with changing the sites content.

 So 24 of those 27 persons are doing NOTHING.

 And well, things are even worse if you take a look to the developers site.
 There are several people joined... around 20, I have dedicated several 
 hours of my personal time to create tasks and fill them with good 
 descriptions so that people can take them and just look what is the 
 reply... Only steve has used it. 
 None except again Steve and Skyflash has filled a single task.
 None of the GFX people has joined the site.

 Well, and about mailing lists... more of the same... I have do a CALL 
 for people to know what everyone is doing here... and the reply has been 
 nothing: None has had time to write a few lines explaining what they are doing.

 Project code needs a total clearing... I am writting test cases for 
 Arianne and it has found to be really instable on the Connection and 
 Thread related things, so the only way to continue is to clear it or recode it.

 If someone offers to take the leadership of Arianne I will transfer him 
 all the keycodes and all the rights over the code that I have written, 
 so that he can  continue Arianne as s/he thinks it is better, even 
 changing the license.

 If none offers to take it, I will meditate about either shutting down it, 
 or clearing ALL and start again from the begin of the begin in a new way 
 no developers, no website, no teams, no tasks, no contributions, no ideas.

 One of the biggest errors of Arianne has been to be too open, we have 
 accepted on the team people that is not really to take the task, we have 
 accepted tons of ideas that are really impossible to be done, I have failed 
 to motivate and coordinate this group of people into working on it. Also I 
 have written a huge ammount of documetation, several of you will say that 
 docs are a shit ( like Uli did ) but again, none has written a better one,  
 what Uli wrote was only a email long documentation in a very technical 
 language that hardly can help a newbie to understand it. I have created, 
 used and recommended sourceforge trackers but little people has really used it.

 I have tried to do an schedule of the project but people has not contributed
 a single line to inform me of what they are doing.
 You don't document anything... nor decisions, nor code.

 Personally, I still have the same motivation to create a MMOG as before 
 starting to work on Arianne, so I will for sure retry it, either on Arianne
 or  by my own with the experience that I have get on Ariane.

 Anyway, I really want to thank you all the 3 years of Arianne, I have meet
 real good friends, I have had great times and I have felt the proud of 
 being an open  source developer, I also have felt the sadness of getting 
 only bad words of  what you do, from inside and outside, I have also 
 understand that people always talk more than they can do. Anyway, Thanks to all.


Now that I re-read the letter, I see that I was really burnt out! :-D However, soon after that letter something happened that I really didn't expect; I got several request to transfer the leadership of the project. The only ones that I considered seriously were Euan Mee and Skyflash. After a month or so of internal debate a poll was taken and everyone agreed, even Skyflash, to transfer the leadership to Euan. Euan's period was really short in fact. Euan thought that a leader must not be the best and greatest developer but we soon found out that they must be in practice. There was lot of consulting about the project, it was evaluated on the whole and lots of changes where proposed. But Euan disappeared... After that Skyflash took the leadership and using the base work of both Euan's period and the previous years he started to work on a new version that featured a 3D client using plib.

Year 2003

In the year 2003, the project started to move again and without dropping the old code Skyflash managed to fix bugs and add new features, as a 3D client that allowed players to move, fight and cast magic. This version of Arianne featured a Lua scripting engine that made everything very interesting. This version was called Naxos thus starting a new version naming scheme.

Screenshot 2003.jpg

Image of 3D Client in 2003

The progress of the project was totally in Skyflash's hands, and he did a great job, but he had to move back to his home on Sep, 2003 and he requested someone to take over the project for at least 6 months to a year.

Meanwhile I started Marauroa, a java clone of Arianne that has the things I thought Arianne should have had; UDP, a database backend, persistent objects, scriptable, robustness. Around Dec, 2003 I had a version that was already superior to Arianne thanks to the help of Waldemar Tribus.

I asked Skyflash to pass leadership to me for the next 6 months, and so in October, 2003 I became leader again. Lots of things had to be fixed and I started work straight away. I first created a new webpage and removed the PHPNuke, (I used a previous website that Djagg had made for Arianne). I then wrote a revision of the project status to know what was working and how. The result was that the project was advanced but soon got blocked on all paths because the main developer assigned to each area was MIA. Since I had Marauroa in a stable status, and I was really amazed of how stable Java was, I suggested to use Marauroa as Arianne's server. And as there was no better idea, it was integrated.

Year 2004

In 2004, Marauroa joined Arianne as a single project. We redefined Arianne's goals so that now Arianne is a framework to create online multiplayer games, and Marauroa is the content management system of Arianne framework. Marauroa now features a fully scriptable RP engine using Python. Arianne was rewritten, but now only as a client side application able to connect to a Marauroa server. Arianne was simplified so it was extremely easy to write new games, and Python binding was added so that development of games in Python was made possible.

Screenshot 2004.jpg

Image of Gladiators in 2004

20040712 mapacman.jpg

Image of mapacman in 2004

Arianne heads now to begin a great framework for developing games. At the time of writting there are three games using the system in its alpha stage.

On 2004 Sep, 8 Arianne has been 5 years old.

Year 2005

In 2005, Marauroa reached the version 1.0 that implemented multizones and content streaming, making Arianne a solid and stable platform for MOG development platform.

We developed a new game called Stendhal, that was similar to in concept to Worldforge's Acorn but using old SNES like graphics.
Stendhal pushed Arianne engine exigencies to a new level of quality.

Figure: Example of stendhal in 2005

Year 2006

Marauroa was refactored to achieve more abstraction and was added a new persistence layer, making it a pro choosal for developing small online games. Stendhal kept evolving and featured a big play area with thousands of creatures interacting with players.

Year 2007


Marauroa was refactored to meet the requirements of an online roleplaying game like Stendhal better.

Year 2009

Marauroa now supports multi threaded database access using Data Access Objects and can now dynamically instantiate and destroy copies of zones to allow instantiated dungeons.

Year 2010

Development of Stendhal is going forward quickly. There is now a NPCs for trading between players and the sound system was completely rewritten, allowing much finer control and background music. See the Review Of 2010.