Changes before M1 (uncomplete) *) Bugfixes (10-Dec-2001) - Remove a ConcurrentModificationException in player disconnections (thanks to Mathieu) - Fix the "command[space]" bug in the parser - Add omf.tests.TestParser [Benoît Sibaud ] *) Game Loading fixed (5-Dec-2001) - Game can now be reloaded. - replaced all [Float|Integer|Byte|..].TYPE with Float.class - singletons know how to find their instance after reload. [Cyril Hansen ] *) Game and Persistence (4-Dec-2001) - omfs.Game and omfp.Persistence are now singletons - omfp.Persistence is now the main object [Benoît Sibaud ] *) Load (3-Dec-2001) - omfr.RandomGenerator load/save corrected - omfe.IdServer load/save written - omfs.GameClock load/save written [Benoît Sibaud ] *) Cleaning (1-Dec-2001) - Add/update/correct Javadoc comments - Correct indentation - No more tabulation in code - Work on serialization and persistence (unfinished) - Removed omfe.BasicAction, omfe.ActionFactory and omfe.Action, obsoleted by omf.interact ones [Benoît Sibaud ] *) Cleaning (30-Nov-2001) - Add/update/correct Javadoc comments - Correct indentation - Change Instance() methods for getInstance() - Correct persistence implementation (unfinished) [Benoît Sibaud ] *) Commands (29-Nov-2001) - omf.command.Result.INAPPLICABLE and Result.UNKNOWN_ERROR - New command omf.command.Inventory [Benoît Sibaud ] *) Commands (28-Nov-2001) - execute() now returns a Result object - All commands check their parameters. [Benoît Sibaud ] *) More M1 functionality: write, buy (26-Nov-2001) - Implemented action omfi.actions.Write. - New commands and action "Buy": Implementation started. - BasicCharacterController now reports failed and succeeded actions. [Cyril Hansen ] *) Fixes (26-Nov-2001) - omf.parser.Parser now remove string delimiters from parameters (e.g. 'foo bar' becomes foo bar) - omfi.actions.Go now handles bad exits - omf.command.Go needs exactly one parameter [Benoît Sibaud ] *) Usability work (26-Nov-2001) - First usable implementation of Go and Read actions. - Added Creature influence to player characters. - Some debug output removed. [Cyril Hansen ] *) Fixes in omf.server.SimpleConnection (26-Nov-2001) - Close streams and socket if an error is encountered [Benoît Sibaud ] *) IdServer (25-Nov-2001) - omf.entity.IdServer replaces omf.entity.EIDServer (manages ActionId, ControllerId and EntityId) [Benoît Sibaud ] *) Interactions and more (25-Nov-2001) - Actions implementations list has been moved from ActionPool to the new file actionsImplementations. - New command omf.command.add_action allows to add action to Influences - World creation commands file updated. - Removed omf.AbstractFactory; created omfs.Factory, and interface omfs.PlayerCharacterSetup. - EIDs less than maxReservedEID are now reserved. - Created Special Place "limbo" as default place for character creation. - omf.controller.BasicCharacterController now sends descriptions back to the player connection. - small fix in SenseMemory for the memory fading system - started to investigate game saving issues (added lots of "implements Persistent" in omf.interact and omf.perceptions - Javadoc cleaning in omf.interact. [Cyril Hansen ] *) Perceptions (21-Nov-2001) - BasicEntity: added Senses - BasicPlace: Entity Senses are registered to StimuliDispatcher and descriptions are fixed. - Senses, Sense, SenseMemory, Stimulus: implemented descriptions reception by Senses. Descriptions can now be retrieved from a Sense. [Laurent Pereira ] *) Interactions (18-Nov-2001) - New ControllerCommands created. - Start of actions management in Entity & Influence - New Actions created (mostly stubs) - More fixes to ActionSimulationThread. Long actions support in the way. - Start of object recycling and stat engine in InteractPool. - Temporary changes in Entity & Game to send text back to player connection from action before the perception system comes into place. [Cyril Hansen *) World creation (18-Nov-2001) - Descriptions can be defined, added and removed - RFC/milestones/worldCreation.commands can be completely applied with success - Influences can be applied and removed - org.metacosm.tests.TestInfluences added [Benoît Sibaud ] *) Bug fix (17-Nov-2001) - Fix a stupid bug in omu.NonNumericProperty clone() [Benoît Sibaud ] *) Descriptions (11-Nov-2001) - Updated omf.entity.Place, BasicPlace and BasicEntity to move Entity from a Place to another. - Added a omf.perceptions.StimuliDispatcher in BasicPlace. [Laurent Pereira ] *) Interactions (11-Nov-2001) - Start of work in controller package [Cyril Hansen ] *) Bugfixes (29-Oct-2001) - Many bugfixes in org.metacosm.framework.command.AddInfluence, org.metacosm.framework.command.AddProperty, org.metacosm.framework.command.AddRandomAbsoluteModifier, org.metacosm.framework.command.NewProperty, org.metacosm.framework.command.Show, org.metacosm.framework.entity.BasicEntity, org.metacosm.framework.entity.Influence, org.metacosm.framework.server.Game and org.metacosm.util.NonNumericProperty (testing RFC/milestones/worldCreation.commands) [Benoît Sibaud ] *) NewProperty command (29-Oct-2001) - omfc.NewProperty modified to avoid an ugly bug [Mathieu Lacam ] *) Game (22-Oct-2001) - omfs.Game is now a singleton with createInstance() and getInstance() methods [Benoît Sibaud ] *) Bin2XML (22-Oct-2001) - New Bin2XML based on JSX package ( omf.persistent.Bin2XML) ( http://www.csse.monash.edu.au/~bren/JSX/ ) [Benoît Sibaud ] *) Property modification (22-Oct-2001) - Command omfc.AddRandomAbsoluteModifier completed. - omfr.TranslatedUniformDistributionLaw added. - omfe.Influence modified to allow modification of properties defined elsewhere. - omz.ZHeroeZ modified to comply with new omfs.Game creation process (see Benoît's work on the same date). [Mathieu Lacam ] *) Persistence (21-Oct-2001) - Command omfc.Save - Game can be saved (add transient fields). [Benoît Sibaud ] *) World creation commands (21-Oct-2001) - Command omfc.NewEntity [Benoît Sibaud ] *) AddRandomAbsoluteModifier (14-Oct-2001) - Command completed for Gaussian law. - omfr.RandomGenerator and omfr.GaussianDistributionLaw modified to allow mean/deviation specification. - RandomGenerator.getInstance() instead of Instance(). - Orthographical corrections about dice (with Benoît). [Mathieu Lacam ] *) World creation commands (13-Oct-2001) - All commands are completed for M1 except omfc.AddRandomAbsoluteModifier and omfc.NewEntity. - In omfe.Influence, several consistency controls (related to property modification) added or corrected. [Mathieu Lacam ] *) Administration console (13-Oct-2001) - Log failure in server manual start - Splash screen with the new Metacosm logo [Benoît Sibaud ] *) Distribution laws (13-Oct-2001) - omfr.UniformDistributionLaw now supports max limit. [Benoît Sibaud ] *) World creation commands (13-Oct-2001) - New command omfc.Show: display info about Controllers, Entities, Influences, Players, Properties and Worlds. [Benoît Sibaud ] *) World creation commands (10-Oct-2001) - Corrections and continuation of commands implementation. - Methods modifyProperty in class omf.entity.Influence now control consistency and throw UndefinedPropertyException. - Added a few more controls in omf.server.Game. [Mathieu Lacam ] *) Fixes (10-Oct-2001) - Fix the omfs.Player.getCommand() - Manage invalid logins in omfs.SimpleConnection [Benoît Sibaud ] *) World creation commands updated (07-Oct-2001) - Corrections and continuation of commands implementation. - Static instance() methods replaced by getInstance(). But Instance() methods are still there. - New methods in omfs.Game to handle adding of entities and adding influences in entities. [Mathieu Lacam ] *) Package Entity (07-Oct-2001) - Partial M1 support (omfe.Influence, omfe.Entity, omfe.BasicEntity, omfe.Item, omfe.BasicItem, omfe.Place, omfe.BasicPlace): properties, influences, absolute and relative modifiers. - Remove Type notion (omfe.Type, omfe.CreatureType, omfe.PlaceType, omfe.ItemType, omfe.UnknownTypeException, omfe.TypeRepository, omfe.EntityBuilder, omt.InfluenceTest, omt.EntityTest) - Remove unuseful instance classes (omz.Creature, omz.Item, omz.Place) - Code compiles [Benoît Sibaud ] *) New world creation commands (06-Oct-2001) - omfc.AddRandomAbsoluteModifier, omfc.AddRelativeModifier, omfc.AddDescription, omfc.AppendDescription, omfc.NewEntity, omfc.AddInfluence [Laurent Pereira ] *) Properties (03-Oct-2001): - Apply and remove RelativeModifier added to Property interface - Apply and remove RelativeModifier throw UnsupportedOperationException in NonNumericProperty [Benoît Sibaud ] *) Interaction (03-Oct-2001): - Some incomplete infrastructure for Decision Trees [Cyril Hansen ] *) Fix (03-Oct-2001): - Better handling of AdminConsoleConnection - Small fixes in ControlPanel. [Cyril Hansen ] *) Commands (02-Oct-2001): - New command: omfc.AddAbsoluteModifier - Catch an exception in omfc.NewCommand [Mathieu Lacam ] *) Fix (26-Sept-2001): - Useless exceptions removed in omfe.Influence. [Mathieu Lacam ] *) AddPropertyCommand (26-Sept-2001): - Properties can be declared in an omfe.Influence with omfc.AddProperty command, and omfs.Game has been modified accordingly. [Mathieu Lacam ] *) Character != Creature (26-Sept-2001): - Replace Character by Creature where needed [Benoît Sibaud ] *) ChangeLog (19-Sept-2001): - Written and imported [Benoît Sibaud ] *) Game class (18-Sept-2001): - Properties and Influences management [Benoît Sibaud ] *) Influences for M1 (16-Sept-2001): - Influence M1-compliant (except for Actions) - Ugly DescriptionProperty to compile [Benoît Sibaud ] *) Fix (16-Sept-2001): - Adapting omfc.NewProperty to take into account default value for omu.Property. [Mathieu Lacam ] *) Fix (16-Sept-2001): - '=' used for '==' in omfr.GaussianDistributionLaw [Benoît Sibaud ] *) New commands for players (16-Sept-2001): - New commands new_influence (omfc.NewInfluence) and new_property (omfc.NewProperty) [Laurent Pereira ] *) Unuseful files (16-Sept-2001): - Removals of omfe.CharacterizationLevel, omfe.AbstractCharacterizationLevel, omfe.CharacterizationPool [Benoît Sibaud ] *) RandomAbsoluteModifier (16-Sept-2001): - omu.RandomAbsoluteModifier support in omu.DoubleProperty and omu.LongProperty [Benoît Sibaud ] *) RandomAbsoluteModifier (03-Sept-2001): - First omu.RandomAbsoluteModifier test in omt.TestProperties - omu.NonNumericProperty with omu.RandomAbsoluteModifier support [Benoît Sibaud ] *) Random (03-Sept-2001): - Basic distribution laws added (omfr.DicesDistributionLaw, omfr.GaussianDistributionLaw, omfr.UniformDistributionLaw) [Benoît Sibaud ] *) Bad copyrights (03-Sept-2001): - Bad dates for Metacosm and ZHeroeZ copyrights in metacosm_general.properties file [Benoît Sibaud ] *) Control panel (02-Sept-2001): - Control panel less stupid [Cyril Hansen ] *) Compilation fix (02-Sept-2001): - Compilation fixes for omt.TestProperties [Cyril Hansen ]