Happy New Year
by Subby on Jan.24, 2009, under Conceptualisation
Course of Action after the long weekend:
- We should all install Microsoft Visual C# 08 Express + XNA Game Studio 3.0
- Dennis and Chow will help install these on several PCs in Media Lab 2 (yay)
- Still PC development with plans for 360 porting but we should still try to loan out a 360 from school to test porting early on.
- Complete the tutorial from Innovative Games shape up the engine
- I believe the Creators Club paid account by the school should give premium download access, should try to get our hands on both Robot and Ship game
- Discuss, re-evaluate and streamline what we want. Should aim lower and finish a complete game. We can always go back to rework on it after the semester.
- This means revising our product and release backlogs.
- Arrange meeting with Claude on Thursday
Conceptualisation 2
by cyunxu on Jan.22, 2009, under Conceptualisation, Meeting Outlines
Reference Books
Went to Clementi Book Store to look for reference books. Tenatively we will be deciding on this book: Microsoft Xna Unleashed : Graphics and Game Programming for Xbox 360 and Windows.
Game Engine
We took a look at a few ready 3D XNA game engines, but could not find a suitable one. We decided to use the tutorial for building a 3D XNA game engine at http://innovativegames.net/ to start a game engine from scratch. This will enable us to understand the internals of a game engine better.
Conceptualisation I
by Subby on Jan.18, 2009, under Conceptualisation, Meeting Outlines
Follow-up
Platform
School only has 2 Xbox 360 for possible loan. Anselm’s still on the way. I might be able to loan one from friend who works at Microsoft. We’d try to develop for PC with Xbox 360 controllers first. At least for initial few releases until we can settle deployment problems for the Xbox. Worst case scenario would be to fully develop on PC and port to 360 at the end of the day.
Meetings
Meeting timing with Dr Ashraf is tentatively set for Thursdays or Fridays. To check with Claude.
Game Design
To-Do
- Check pricing of Xbox controller + bluetooth dongle
- Update: 75.90 per piece w/o dongle
- Arrange fixed timing for meetings with Claude & Dr Ashraf as well as free time for group programming/discussion. To be confirmed once tutorials are allocated.
Release 1 planned
Current prototype map
by anselm on Jan.16, 2009, under Game Features
- Current state of the map generated using a height map and code
- Attempting to add in tree using a tree map
- Adding more assets like buildings and bridges
Traps
by cyunxu on Jan.15, 2009, under Game Features
Traps are currently only for outdoor part of the map. The map will have environmental materials that will be used to build traps. A trap-builder will be able to survey the surroundings and determine what materials are available and thus which traps are able to be built. However, the game does not require the player to go gather these materials. The trap-builder will then be able to choose the best choice of available traps to be build at the best location automatically. For example, the trap-builder will give a high rating for a boulder trap put on a slope and low rating for a boulder trap on flat land. A trap is triggered by the opposing party once it touches the trap, and a penalty will be given. Traps will be visible to the opponent, but the visibility (alpha value?) of the trap will have an inverse relationship to the goodness of the trap. That means a trap with higher rating value will be less visible to the opponent.
Given below is a rough list of the materials, traps and their attributes, which may be amended and expanded.
Types of materials:
Environmental Materials:
- Water
- Sand
- rocks
- wood
- leaves
Default materials (inexhaustible):
- spade (hole digging)
- trip wires
Types of traps:
| Trap | Materials Needed | Build Time | Penalty |
|---|---|---|---|
| Quicksand | Water + Sand |
10s | Morale -10%, 10s delay |
| Pit Trap | Leaves + Spade | 10s | Morale -10%, 10s delay |
| Pit Trap with Spikes | Leaves + Wood + Spade | 15s | Morale -10%, 10s delay, -10HP |
| Boulder Trap | Rocks + Tripwire | 5s | Morale -5%, -10HP |
| Log Trap | Wood + Tripwire | 5s | Morale -5%, -5HP |
Map
by boro84 on Jan.14, 2009, under Game Features
In order to balance the game, the monster layout will be something like below

monster distribution
TBC. Add any map related stuff here!
Monsters
by boro84 on Jan.14, 2009, under Game Features
Monsters are catergoried into a few types, namely
- physical / magical / hybrid
- side a* / side b* / neutral
Some of the monsters, when nearby with another type of monster, might be able to execute a combined skill attack.
Monster table
| Side A* | Neutral | Side B* |
| Archer(P) | Farmer(P) | Wraith(M) |
| Barbarian(P) | Yeti(H) | Bat(H) |
| Spearman(P) | Spider(H) | Necromancer(M) |
| Pyromancer(H) | Treant(M) | Salamander(M) |
* to be changed to an appropriate name for the side
(P), (H), (M) denote physical, hybrid and magical types respectively
In addition to these monsters, there will be passive creatures, chicken and goats, roaming the game world.
Beastiary
Archer
ranged attacker
combo: fire arrows (Pyromancer)
Barbarian
fast melee attacker
attacks to the death
Spearman
stabs enemies
combo: flaming javelin (Pyromancer)
Pyromancer
burns enemies
combo: fire arrows (Archer)
Farmer
attacks with fork
skill: turns goats aggresive
Yeti
crushing attack (20% reduce defence to 0)
Spider
cast spider webs (slows speed by 50%)
Treant
fires magical branches
Wraith
skill: scares away all enemy troops
Bat
combo: turn into Vampire(Necromancer)
skill: sucks blood (Vampire)
Necromancer
shoots magical missle
skill: turns chicken into kamikaze exploding chicken
skill: turns bats into vampires
Salamander
amphibious monster
shoots missles (20% poison)
Character
by boro84 on Jan.14, 2009, under Game Features
This section describes features of the character class in the game.
The current version is not final. Numbers and formulas are now simplistic and subject to testing in order to balance the gameplay.
Attributes
The character itself does not have a level. The strength of the character is dependent solely on its attributes described below.
Visible Attributes
- HP
Determines the health of the character.
Possible UI Implementation is a health bar on top left corner of screen.
Formula: Max 100/100. Regeneration rate 1HP/10s. - SP
Required to use character skills.
Formula: Max 5/5. Regeneration rate 1SP/10s. - Vigor
Determines the character’s attack, defence and capacity.
Formula: Start 10. Alternatively, class dependent. - Sorcery
Determines the character’s magic attack, magic defence and capacity.
Formula: Start 10. Alternatively, class dependent. - Capacity
Determines the number of Items that the character can carry.
Formula: Vigor * 1.5
Hidden Attributes
- Attack
Determines the damage of the character using physical attacks.
Formula: Vigor * 1.5 - Magic Attack
Determines the damage of the character using magical attacks.
Formula: Sorcery * 1.8 - Defence
Determines the damage suffered by the character against physical attacks.
Formula: Vigor * 1.2 - Magic Defence
Determines the damage suffered by the character against magical attacks.
Formula: Sorcery * 1.5 - Speed
Movement Speed of character. Determined by the amount of free capacity character has.
Formula: TBC - Fury
Determined by the amount of damage suffered by the character. A fury meter will be maintained.
Character will be able to release a special “Fury Skill” upon suffering enough damage.
Fury meter will decrease if a character does not engage any enemy within a timeframe.
Fury meter resets to 0 once skill is used.
Formula: Fury Meter 0/100. Increase by 1 per damage suffered. Decrease by 1 after 1st 10 seconds of not engaging enemies, and every 5 seconds there-after.
External Attributes
- Morale
Morale will have a direct impact on the character’s attributes (as well as of all friendly troops).
Formula:
Morale 50% (Default) -> Vigor, Sorcery 100%
Morale 0% (Minimum) -> Vigor, Sorcery 50%
Morale 100% (Maximum) -> Vigor, Sorcery 150%
Attribute Gain
Attribute gain will be hidden from player. Players do not need to assign any of their character’s attributes.
Player’s action however will have a direct consequence on the growth of their attributes. This allows for many different possible character builds.
Players will increase their vigor and sorcery attributes when attacking monsters or enemies. This will in turn affect the other attributes.
Formula:
Each point of vigor / sorcery will require 20 points of experience to level up. The rules which governs the gain of attribute experience is described below.
- Attacking using physical / magical skills will increase 1 experience in vigor / sorcery
- Killing an enemy of physical type will increase 3 experience in vigor
- Killing an enemy of magical type will increase 3 experience in sorcery
- Killing an enemy of hybrid type will increase 2 experience in vigor and 2 experience in sorcery
Skills
Skills will be unlocked based on the character’s vigor and sorcery attribute.
The fury attack is a special attack which can be used when the fury meter is maxed out.
Skills list:
| Name | Requirement | Cooldown | Damage | Description |
| Slash | 10 Vigor | 0.2s | ||
| Fireball | 10 Sorcery | 0.5s | ||
| TBC |
Squad Party Members
TBC
Finalizing prototype requirements
by anselm on Jan.11, 2009, under Meeting Outlines
- magic/fantasy (eg. drawf vs globins)
- start with a 1 unit vs 1 unit prototype
- troops + turrets for bases
- traps
- 1-2 general type of unit?
- feed back and UI
- controls -> xbox controller will be better
- Indoor(castle, tunnel) + outdoor(forest, mountain, river, plain)
- weather -> global effect ( rain = mass slow?, reduce in visibility)
- terrain height map (affect the movement speed in up hill and down hill)
- tentatively will be on PC for prototype 1

2d version of the prototype map
Pre-Conceptualisation 4: Building towards initial prototype
by boro84 on Jan.02, 2009, under Meeting Outlines, Pre-Conceptualisation
Agenda
- finalise roles
- come up with all possible game features
- preparing for initial prototype
Discussion
Implementation – OOP?
The chosen platform XNA has a class ‘Game1′ which holds the bulk of the code the team has seen so far after looking through XNA tutorials and code.
For a medium size game, this could get messy. Without OOP, objects will have to be stored as structure data types. Alternatively, to implement OOP several methods can be used. 1 of the method is to create classes seperately for each object. An alternative is to code the classes inside the ‘Game’ class. The team will research on this and come to a decision in the following week.
Scrum?
The team decided to research on the Scrum development process and will most likely follow a similar workflow.
Shao Chong will be in charged of maintaining the processes. The team will create a product backlog over the next week, which will contain the list of features which could be included in the game. This list will be trimmed into a release backlog where the team will prune away features that are not necessary or ideal.
The first release, or prototype is targeted to be released by 18th Jan 2009.
Roles
Below are the team’s finalised roles for the project:
Shao Chong – Project lead
Anselm - Lead designer
Boon Pin – Documentation
Yunxu - QA
Every team member will be developers as well, involved in the coding of different aspects of the game.
Roles as developers:
Shao Chong
- combat system
- damage locality
- damage feedback
Boon Pin
- Enemy AI including tactics, behaviour, action
- Pathfinding
Anselm
- visual effects
- weather system
Yunxu
- procedural environment
- trap system
Team members may work together (pair programming) or help out each other during the course of the development.
Other discussions
- discussed on the map requirements for initial prototype (start small, build gradually)
- to finalise on version control software by next meeting
- discussed on implementation of trap system
- to research and try on portability of code between PC and XBOX, and decide on platform for final release




