----------------------------------------
[ phpRPG Design Document for ph'@ntasy ]
----------------------------------------

Revision 1
Last Modified 29 April 2002

(c) 2002 Timothy TS Chung <ttschung at users.sourceforge.net>

I feel a lot of things are still rather vague at this moment. We will have to discuss this document over and set a more definite, clearer goal.


= OVERVIEW =
============

phpRPG is a web browser-based multiplayer fantasy role-playing game (RPG). This design document states the goals and purposes of codename ph'@ntasy (version 1.0). Every developer should always work from the latest version of the design document.


The User Experience
-------------------
The fundamental architecture of the game engine is based on gaming ideas from classic computer role-playing games (cRPG) we may have played on videogame consoles or computer.

I thoroughly enjoyed playing cRPGs - from character creation till the final encounters - the broad range of spells, skills and specialties, and more. I am simply fascinated by the extent of details and rich role-playing atmosphere.

As a player of phpRPG, he or she will experience a turn-based multiplayer game with extracts of the essentials from various cRPGs, combined with interesting ideas from other types of RPGs such as multiple user dungeons (MUDs), paper & pen RPGs (pnpRPGs).

phpRPG is written in PHP, a powerful dynamic server-side scripting language. A multiplayer environment is created by manipulation of the MySQL database. Every time a client accesses a page, PHP will access the database and dynamically generate the necessary HTML content.

Real-time interactions are limited by a tick-based system, in a form of stamina. A quick response along with some strategy is required. Although timing can be affected by the variable connection speeds, a forced delay is imposed on the player as a consequence of each action to balance the difference.

The basic interface to the role-playing environment consists of a character's view to the surroundings, known as "local view". A local view includes structures (such as shops, houses, dungeon entrances, etc.), objects (such as items) and players within the region. Interactions between players (visualisation, talk, trade or fight) are also usually limited to a particular region. A picture and description may be attached to special locations. Adjacent locations are joined together in a hexagonal manner to form a world. These locations are represented by square tiles (much like classic cRPGs).

Role-playing is encouraged in the game by relying on individual players' co-operation and respect. This can also be enforced by game rules and penalties, co-ordinated by players themselves.

A player starts off from absolutely nothing, not even a body. As a soul without a shell, the player will have to fight its way through the others and unfriendly habitats to survive. Where a new player will be born, is where everything begins and ends, known as the 'Realm of Souls'. To earn a shelter to the soul, the player has to gain enough experience to release itself to the real world. The path to this release determines what race he or she will be.

From that point onwards, the player takes hold of the destiny. He or she can be a solo player, or team up with other players to form a party, or get involved with politics and be part of a war competing for a piece of land.

Each player can equip with his or her own skills and develop a profession. Some may offer to build a house or a shop. Some may choose to heal the injured. Some with expertise may share their knowledge with you.


The Platform
------------
Server: Web server with PHP and MySQL
Client: Web browser with JavaScript / CSS / PNG support


The Users
---------
General audience, users with interest in the RPG genre.


Time
----
A basic average player is expected to spend approximately half an hour a day (limited by turns) as "maintenance" to his or her character. Experience users take part in more roles may spend an excess of one to two hours per day.

ph'@ntasy is a persistent world. However to maintain a balance between old and new players, an "aging" factor will be imposed on players. The aging process includes faster skills atrophy, greater chance of sickness, and eventually involving death.

As there is always a possibility to expand the worlds and implementing new things, I estimate the lifespan of the final product can last for a few years.



= CONCEPTS =
============

Design concepts and ideas are to be listed here.

SUBJECT: storyline
STATUS: draft
DESCRIPTION:
The world of ph'@ntasy is based on the belief of the Realm Of Souls. Lost newborn souls gather and compete with each other in this realm with the same goal - to be released into the real world.
--

SUBJECT: race
STATUS: important
DESCRIPTION:
Race selection is not entirely by choice but by the path the character follows. The race or form is determined by the soul's path to its release. Races known to the ph'@ntasy world are:

(Axolotl: A more descriptive input is required from you especially when I am not good at the language. The description should first concentrate on descriptive / qualitative approach first, then game attribute / quantitative. Which is obviously not what I am doing here.)

< Human >
Introduction: Humans are of a well-balanced race to which all others compare to, with no particular strengths or weaknesses.
Appearance: Characteristic human features.
Feature: Well balanced attributres.

< Elf* >
Introduction: Elves are mankind creatures with pointed ears who show advanced intelligence amongst other race.
Appearance: Pointy ears, usually tall in nature.
Feature: Greater intelligence. Better magical attributes.

< Faerie* >
Introduction: Faeries are small magical beings with pairs of wings like butterflies. Their wings and body size make them very agile and have the natural ability to fly.
Appearance: Small sized with wings like those of a butterfly.
Feature: Greater agility and magical attributes.

< Dwarf* >
Introduction: Dwarfs are small robust mankind creatures with remarkable amount of strength and vitality, making them a natural to combat-related professions.
Appearance: Short and robust. Long bearded?
Feature: Greater strength.

< Vampire* >
Introduction: Vampires are nocturnal mankinds with cold, pale grey skin and sharp incisor teeth used for draining opponent's health.
Appearance: As above. (need reorganising)
Feature: Greater agility and natural ability to drain opponent's health and stamina. Powerful but constrained by time of the day.

< Aquera* >
Introduction: Aquerae are deep-sea humanoid creature with porous blue-tanned skin that enable them to breath under water.
Appearance: As above. Appeared to be an evolution from fish. (need reorganising)
Feature: Natural swimming skills with enormous stamina and resistance to cold. Peaceful creature one-of-its-kind but very poor offensive power. (Suitable for beginners or those who prefer not to kill?)

< Vitesse* >
Introduction: Vitesses are creatures adapted to the arid desert environments. Their natural habitat have made them utilise wind and sand very well.
Appearance: Tall, brown skinny creatures with dark red eyes.
Feature: Resistance to high temperature. If environment allows, use of wind and gust.

* to be implemented at a later release
--

SUBJECT: skills and professions
STATUS: draft
DESCRIPTION:
Professions are again not selected specifically by the player but determined by what skills the character has developed. A reasonable amount of social involvement is required to establish a profession. This can ensure enough player-to-player interactions and provide players opportunities to meet new players to keep the game interesting.

A list of skills is yet to be determined.


SUBJECT: self and player-driven NPCs
STATUS: IMPORTANT
Non-Player Characters (NPCs), including encounters, are basically driven by the players themselves. Every time a page is loaded, a simple script will have to determine the character's next movement.

Some NPCs should also be controllable by players. Making a NPC controllable, by one of our staff or voluntary members, will create random surprises to players.

END OF DESIGN DOCUMENT