Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Tree [1f99d7] R_0_11 /
History



File Date Author Commit
docs 2003-12-12 miguel miguel [cf8e73] started the basic work on Gladiators
game 2003-11-29 miguel miguel [9dd106] Moved files.
images 2003-12-15 miguel miguel [154cf5] no message
net 2003-11-29 miguel miguel [9dd106] Moved files.
sounds 2003-12-15 root root [57004b] readded as binary
src 2003-12-22 miguel miguel [10e8aa] no message
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-12-21 miguel miguel [c87341] no message
README 2003-12-22 miguel miguel [1f99d7] no message
TODO.txt 2003-10-13 miguel miguel [dcfa5b] no message
build.xml 2003-12-21 miguel miguel [c3d911] no message
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-22 miguel miguel [7a21d3] no message
marauroad.bat 2003-12-21 miguel miguel [c87341] no message
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.11 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 in Marauroa to point to correct 
Junit.jar file.

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

Also if you want to use JDBC MySQL database please, modify also build.xml
 
  <property name="connectorJ" value="../../../classes/mysql-connector-java-3.0.9-stable-bin.jar"/>


Then save and run ant.

cd /foo/bar/marauroa
ant jar

You will have a marauroa-<version>.jar file in the lib folder.


Running
-------
Use the BAT files to run it:
- marauroad [-c configurationFile] is the server 
- JMarauroa is the client

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

Read simpleGame/README about how to play it.

Changelog
---------
0.11	Dic 21, 2003
- Maraurorized simpleGame
- Fixed several logical bugs in simpleGame
- Fixed bugs
   ˇ 863672	MakeMove before ChallengeAnswer	  
   ˇ 863460	Class cast at simplegame: GameBoard	
   ˇ 863459	More classcast exception, this in simpleGame
   ˇ 863456	Exception at MakeMove
   ˇ 863455	ClassCast exception at ChallengeAnswer	  
   ˇ 863451	ClassCast exception at Challenge action	 
   ˇ 862855	Challenge does not work correctly	 
   ˇ 862604	simpleGame server bug in new players
   ˇ 862597	attribute not found in simplegame
   ˇ 862582	Problem with CharacterList	 
   ˇ 862460	Problem when there are no more characters	
   ˇ 862450	iterator for both Attributes and CharacterList	
   ˇ 862441	Lack of copy constructor for RPObject	 
   ˇ 862430	classcast exception at SimpleGame	 
   ˇ 861298	NullPointerException thrown when no characters returned	  
   ˇ 860677	Fix usage of instanceof in simpleGame.	  
   ˇ 860676	Remove actionType and objectType
   ˇ 860671	Spell fixes
   ˇ 860668	Traces at data structures are a bad idea TM
   ˇ 860665	Postnuke does not allow images. Replace it!
   ˇ 860657	Call RPZone.modify at simplegameRPRuleProcessor
   ˇ 860655	Remove RPActionFactory
   ˇ 860651	Remove RPObjectFactory
   ˇ 860645	Attributes support for List
   ˇ 860634	Add connectorJ support in the build.xml file
   ˇ 860620	Recreate run scripts using Build.xml
   ˇ 860461	Server stop working with simpleGame
   ˇ 860459	Client fails to start simpleGame
   ˇ 860328	Modify build.xml to copy sounds
   ˇ 860324	simpleGame only runs once
   ˇ 859093	RPAction.Status lack of info	  
   ˇ 859090	Can't iterate Attributes	  
   ˇ 859075	How to understand Marauroa outdated
   ˇ 859004	RPServerManager is not scheduling correctly	  
   ˇ 857217	Bug found! NetworkClientManager related	  
   ˇ 857184	Timelimit the RunTest application	  
   ˇ 856879	Make simpler output at RunTest	  
   ˇ 856876	RunTest should be simpler to debug
   ˇ 856566	Client stopped working
   ˇ 856525	RunTests doesn't end
   ˇ 856332	Document Test cases
   ˇ 856328	Test cases fails

0.10 	Dic 16, 2003
- simpleGame working.
- sound support
- First steps of Gladiators

0.04 	Dic 11, 2003
- Fixed FATAL bug at NetworkServerManager and JMarauroa
- Added ServerInfo message

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