Tree [67f4a3] R_0_03 /
History



File Date Author Commit
docs 2003-12-08 miguel miguel [9825a3] Multiple parts messages working, please find bugs.
game 2003-11-29 miguel miguel [9dd106] Moved files.
images 2003-11-25 miguel miguel [eae5cf] Configuration file working
net 2003-11-29 miguel miguel [9dd106] Moved files.
src 2003-12-08 miguel miguel [403843] 1001 :-o
test 2003-10-07 miguel miguel [07c297] no message
.cvsignore 2003-11-27 miguel miguel [541fa5] no message
COPYING 2003-09-04 miguel miguel [b7a63b] Initial commit of a non-working server
JMarauroa.bat 2003-11-30 miguel miguel [521e67] getting ready for release 0.02
README 2003-12-08 miguel miguel [403843] 1001 :-o
TODO.txt 2003-10-13 miguel miguel [dcfa5b] no message
build.xml 2003-12-08 miguel miguel [67f4a3] 1001 :-o
marauroa.jcp 2003-10-13 miguel miguel [5e580e] no message
marauroa.jcw 2003-10-10 miguel miguel [e3dc5a] no message
marauroa_gantt.xml 2003-12-08 miguel miguel [403843] 1001 :-o
marauroad.bat 2003-11-30 miguel miguel [521e67] getting ready for release 0.02
marauroad.java 2003-10-07 miguel miguel [07c297] no message

Read Me

-------------------------------------------------------------------------------
| This program is free software; you can redistribute it and/or modify         
| it under the terms of the GNU General Public License as published by
| the Free Software Foundation.
| 
| This program is distributed in the hope that it will be useful,
| but WITHOUT ANY WARRANTY; without even the implied warranty of
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
| doc/GPL.license file for more details.
-------------------------------------------------------------------------------

Marauroa
--------

Marauroa is a implementation, using Java, of Arianne, but we are also 
extending some of the concepts implemented in Arianne to improve it.

Marauroa wants to be a massive multiplayer role playing game that you can 
access through your internet connection. It is a virtual world, and you have
an unprecedented degree of freedom to shape your own destiny. Social 
interaction, combat, or just hanging out with friends will all be parts of 
your experience.

Marauroa is also a Massively Multiplayer Engine, that you can use to build 
you own online games using Marauroa as a Content Management system.

You can find the latest version of Marauroa at: 
http://marauroa.sourceforge.net

Marauroa is a GPL project.

Version
-------
0.03 version 

Status
------
Marauroa is NOT playable.
It is now running a server that implements the FULL protocol and that is
able to connect to a MySQL database, also features the RP Engine in its 
first state.

Next version will contains a very simple game: Tic-tac-toe, implemented 
using the Marauroa engine.

Requirements
------------
Actually to compile Marauroa you need:
- Java SDK 1.4.2	( http://java.sun.com )
- JUnit 1.3.8		( http://junit.sourceforge.net )
- Ant 1.5.4			( http://ant.apache.org )

In order to get it working with MySQL you also need:
- MySQL Connector/J ( http://www.mysql.com/downloads/api-jdbc-stable.html )



Build
-----
You need ant properly installed on your system to build Marauroa.
Once you have ant running, simple move to marauroa directory and run ant.
Before running Ant you need to edit build.xml to point to correct Junit.jar file.

  <property name="junitlib" value="../../../classes/junit.jar"/>

The save and run Ant.

cd /foo/bar/marauroa
ant jar

You will have a marauroa-0.03.jar file in the lib folder.


Running
-------
Use the BAT files to run it:
- marauroad is the server 
- JMarauroa is the client 

Edit marauroa.ini to use JDBC Database.
Please refer to docs/JDBC Database HOWTO.txt


Changelog
---------
0.03	Dic 09, 2003
- Delta Perception
- Full RPZone and RuleProcessor
- Full test cases
- Multipacket UDP communication protocol
- Updated documentation
- Fixed bugs
   ˇ 851207	Test both MemoryPlayerDatabase and JDBCPlayerDatabase
   ˇ 852401	Website is not working
   ˇ 852887	MemoryDatabasePlayer don't throw GenericDatabaseException
   ˇ 852890	GameServerManager doesn't close properly
   ˇ 852946	Logout fails if login is incomplete
   ˇ 852947	JDBCDatabase allow us to setRPObject on a unexisting character
   ˇ 852951	CharacterNotFound catched on getRPObject
   ˇ 853333	RunTest test fails if database is empty
   ˇ 853388	Wrong table name in JDBCPlayerDatabase
   ˇ 853394	If Test Player exists in Database
   ˇ 853391	Perception can make test fails
   ˇ 853285	runtests wont stop
   ˇ 853426	RPObject putSlot use has instead of hasSlot
   ˇ 853680	marauroad fails to start if player exists
   ˇ 854075	Check in RPScheduler value returned by RPRuleProcessor
   ˇ 852891	build.xml should substitute @version@
   ˇ 854961	Document how the NEW perception system works
   ˇ 854951	Send one TOTAL perception between X delta perceptions
   ˇ 854946	Server keeps sending total perception
   ˇ 854937	Update documentation about Messages
   ˇ 854936	There is no method to process C2S Perception ACK
   ˇ 854878	Perception is sent if players doesnt' logout correctly
   ˇ 854840	Modify notification for RPZone needed
   ˇ 854373	Packet size is 1500 and bigger packets silently fails
   ˇ 854940	Update documentation about Timeouts in PlayerContainer
   ˇ 851232	Implement the timestamp handling
   ˇ 851215	Exceptions should have more info
   ˇ 854870	Update documentation at Sourceforge
   ˇ 851574	Concurrency problems in PlayerEntryContainer
   ˇ 855405	Lack of Test case for RWLock
   ˇ 854854	Lack of Test Case for MarauroaRPZone
   ˇ 851594	Concurrecy problem too in RPZone
   ˇ 854856	Lack of Test case in MarauroaRPRuleProcessor
   ˇ 854789	Lack of Test case for RPObjectFactory
   ˇ 854788	Lack of Test case for RPActionFactory
   ˇ 855553	Message bigger than 1500 bytes
   ˇ 855709	Test both directions in NetworkServerManager
   ˇ 855589	Client don't handle multipart messages
   ˇ 855584	Clean hacks done to implement Messages bigger than 1500
   ˇ 855696	in NetworkClientManager use same code
   ˇ 855768	Remove lost packets in NetworkClientManager
   ˇ 855767	Update UDP Packet format document
   ˇ 855581	Document modifications on Network*Manager
   ˇ 855688	new Constructors for Messages
   ˇ 854875	Problems with slots in JMarauroa
   ˇ 851768	PlayerNotFoundException is usually a hidden problem
   ˇ 851628	Enforce any rpzone and rpruleprocessor to implement


0.02	Nov 30, 2003
- Added Perception message
- Added JDBC Database
- Added RP Code: Hacked and Slashed 
- Fixed bugs:
   ˇ 835039	Messages are not arriving correctly to Server
   ˇ 838103	Client can log twice due to a logical bug
   ˇ 835222	Player can login twice without error
   ˇ 838373	PlayerEntryContainer is not safe
   ˇ 816411	Bug in protocol description
   ˇ 838592	Attacker can guess clientid using Action Message
   ˇ 846099	Forgot to set Character
   ˇ 846094	Logout doesnt' work correctly
   ˇ 847211	RPObject.ID equals method is wrong
   ˇ 847201	RPZone is not working correctly	
   ˇ 846197	Logging out doesn't clean the state correctly
   ˇ 847187	Ant build is not totally correct
   ˇ 847420	Logout ACK and NACK description is incorrect
   ˇ 847599	marauroad should create tables
   ˇ 847421	GameManager.txt doesn't consider Database
   ˇ 847863	setIconImage in JMarauroa doesn't work
   ˇ 847608	Verify on GameManager that messages come from client
   ˇ 847607	Clientid random number should be initialized correctly
   ˇ 849274	Message overwritting in NetworkServerManager
   ˇ 849299	Character name MUST be unique
   ˇ 849790	Passing null to JDBCPlayerDatabase parm
   ˇ 849655	JDBCPlayerDatabase is not working correctly.
   ˇ 849809	Fix SQL Code
   ˇ 849815	RPObject problem with Slots
   ˇ 849315	register method of Messages is not called
   ˇ 851130	setRPObject doesn't throw CharacterNotFoundException
   ˇ 851117	Adding a existing character does not throw any exception
   ˇ 850876	Use same char for same things in Traces
   ˇ 851134	reInit bug	
   ˇ 851161	initDB, dropDB and reInitDB should also throw exception
   ˇ 851129	getPlayerCount should throw an exception
   ˇ 851218	removeCharacter should drop CharacterNotFoundException
   ˇ 851160	createConnection should throw exception
   ˇ 851262	fix build.xml on CVS
   ˇ 851338	How client knows object id of the character?
   ˇ 851523	RPServerManager neeed to send messages
   ˇ 851572	There is no way to iterate on PlayerEntrycontainer
   ˇ 851596	Update MessageS2ChooseCharacterACK to print RPObject.ID
   ˇ 845807	clientid should be an int
   ˇ 851230	Enforce RPObject source in actions
   ˇ 851621	Forgot break in GameServerManager
   ˇ 851098	Login event is only added on success
   ˇ 851099	Test expect database to be empty
   ˇ 849306	RP Scheduler not fair
- Fixed Traces output

0.01	Nov 22, 2003
- Initial release
- Complete Network Protocol
- Memory Database


Legal
-----
Marauroa(c) is copyright of Miguel Angel Blanch Lardin, 2003
arianne_rpg at users dot sourceforge dot net