Changes for version 0.94 - 2011-07-15

  • gamelogic: pattern storage handling was broken in corner cases of full inventory.
  • code: remove more debugging output from server.
  • code: documented purpose of each file and removed unneccesary POD.
  • world: expanded the world a bit to be infinite again. The sphere hull is sitting in the center of a giant void box now, which is 400x400x400 sectors big.
  • engine: properly read the initial player position from the resource file.
  • gameplay: the player is not teleported to void sectors anymore when he is randomly teleported.
  • world: rethought light distribution a bit. The world is now a bit brighter in general due to many more placed lights. I hope the iterative server light calculation does not overwhelm anyone's computer.
  • Moved configure dependency to runtime dependency for now. Just want to see the effect on the test results on CPAN.
  • Removed EV dependency and usage, there really was no reason for a direct dependency.
  • client documentation fix for space key.
  • Redesign of the world. The World is now a gigantic sphere hull which is 100 sectors thick. There is a center at sector 0,0,0 from which X, Y and Z axises are expanding 131 sectors in each direction. The center has a nice golden pyramid with a diamond core at the moment. The player starts at the top of the sphere at Sector 1,130,1.
  • Fixed teleportation to places without floor.
  • Made space ignite the upward booster the whole time space is pressed down. This allows flying upwards.
  • added ui_small_entry for small text entry.
  • replaced debugging output in server with a proper logging interface.
  • added client connection log messages.
  • fixed some spellings, thanks go to Zaba for spotting!
  • added maximum queue length for server player chunk queue, so the server has a fighting chance to keep up.
  • raised max ambient light.
  • remove M::I.
  • Changed client side logging (and part of the server) to use the new logging interface.
  • Implemented logging module.
  • fixed Makefile.PL, added lore to 10million trophy and fixed typo in changes.
  • moved back to ExtUtils::MakeMaker. added bio energy intake feedback.
  • Added lore to the last earnable trophy.
  • Added feedback for eating bio energy stuff. A small little box is now displayed right next to the bio energy now.
  • I had it with Module::Install, so I switched back to ExtUtils::MakeMaker. The problem was the outdated META.json generation (non existing one maybe fits more). And with File::ShareDir::Install any reason for me for Module::Install just vanished into thin air. Now I can also specify the C build flags much more straight forward.

Modules

A 3D game written in Perl, which is actually playable!
Client Networking Implementation
Client Rendering, Physics, Keyboard handling and UI management
Manage textures and object type attributes for the Client
Client GUI implementation
Client collision detection and world utilities
This module takes care of logging construder client and server output.
Client-Server Protocol Utility Functions
Server side networking and player management
Implementation of Object Type specific behaviour
Programming Language implementation for the PCBs
Generic handling of Inventory and Storage
Implementation of Player central Game Mechanics (the heart of the game)
Server side Resource manangent and balancing
Server-side Userinterface for Player interaction
Server side world management and utility functions
Construder Userinterface Theme Definition
Vector Math Utilities

Provides

in lib/Games/Construder.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder/Server/UI.pm
in lib/Games/Construder.pm
in lib/Games/Construder.pm