Tuesday, September 19, 2006
Added a disclamer_page, and also added downloads_page where by documents and other can be downloaded.
Friday, August 25, 2006
Hansel complete the the fog effects in the game, therefore now the game look smoky and can show the depth in the game where by walls or items that are away from the character / camera will be blured if not cant been seen as it is cover by thick fog.
Also implemented frustrum culling, took some time to do research and understand the concept. The hardest part to understand was actually the maths, the concept of frustrum culling was quite pertty stright forward, is like collision with the frustrum then draw the objects, improved the frame rate of the game, so the game now runs more smooth. =)
Since fog is implemented, the far plane of the camera is been bring forward as things that are been culled off by the far plane as things further away can be covered up by the fog. Therefore the volume of frustrum culling is further improved.
Initial implementation of frustrum culling only apply to the wall and floor of the game. but will be culling the other objects around the gameworld to further optimize the performance of the game.
Nigel Tuesday: Tweaked the A.I. fsm to include a state which moves around obstructions.
The monster will now try to reach the position where the player was
last sighted and check if still in sight. If the player is still not in
sight, it then disengages.
The new implementations for the A.I. also include escaping from the
player when he has picked a gem and the gem is in effect. It will stop
and let the player kill if forced into a wall by the player. Begin work on ray casting for collision detection to better check
which side of the wall the player is going to collide, to reduce bugs
to the minimum.
Wednesday: Ray casting failed, the problem is that I cant deduce on which side of
the wall where the ray intersects. I'll try again other time.
I have done the first behaviour for the monsters, which will apply to
all types of monsters. This behaviour is the escape, which will make the
monster run in the opposite direction of the player when the gem is in
effect. During this cat and mouse chase if the player's gem effect
ends, the A.I. will become the predator again and chase the player
striaghtaway.
Corrected the game flow, in which it used to go back to main menu after
a level and the user has to press start again to go next level. The
game flow now leads the player straight to the story screen of the
next level. The loading of the level is now also loaded during the
story.
Thursday: Designed and wrote the text files for two different levels. These new levels are designed to make it hard for the player to figure
out the map but at the same time with practice he can see a clear path
through the maze and have a less chance of not completing the level in
time.
They are also designed to make use of the elemental monsters and gems.
Certain parts of the maze is blocked by an elemental monster and the
player needs to find the correct gem to pass the monster. As such,
specific parts of the maze is made narrow and long and a monster with
defensive behaviour is placed to block the path and not leave its
position.
Friday: Placed the monsters in the new maps with care. Begin implementation of the behaviour manager for the monsters, which
will manage the type of response from the monster to the same situation.
Saturday: Trying to make the monsters smarter and less easy to avoid by doing a
pre-emptive path finding to attack the player.
I have also done up the framework for the behaviour manager and the
response functions, namely :
void Escape(vector3<GLdouble>); // to run from player
void Defend(vector3<GLdouble>); // not to move away from origin position
void Attack(vector3<GLdouble>); // chase down the player with
pre-emptive positioning
void Approach(vector3<GLdouble>); // move to within 100 range of the
player
The behavioural manager will check the type of monster and call up
these functions accordingly.
Ren Hao The different elemental monsters is done. The monsters can only be killed if the player collect the
same type of elemental gem as the monster. Else, the monster will not be killed. There are also normal monsters
that can be killed with any elemental gem.
Also added incidental sound when the guard came down with the elevator. Changed the time running up to alarm sound.
The particles system has also been optimized so as to increase the frame rate.
The boss monster is also done. This boss monster will keep changing it's element in real time. The changing
of element is random and the time for it to change to another element is also random. Thus it is not predictable. Therefor
it can only be killed if u possess the correct gem at the correct time. In addition, this boss monster is
also larger in size than the normal monster.
Next will be improving on particles when collect coins and also add in more visual effects.
Melissa Completed story screen graphics and linking.
Completed in-game menu
Solved shadow bug.
Finished level backgrounds.
Basically completing all the unfinished graphics and tying up loose ends of my parts.
Not much coding done, as it was mostly done at the start of the 3 weeks.
What I'll be doing is to solve bugs I might have created along the way, and try to optimise my codes,
and see if I can add anything else to the game.

Tuesday, August 22, 2006
Hansel Implemented the the function
to read in all the model .obj from the textfile, this will enable
easy change of model without opening up the visual studio and also,
reading of textures file from text file, it will be very dynamic
when come to building level that have different elements items,
wall, floor and skybox. Also started doing research on fog implementation
to add more depth to the game with more realistic feel of near and
far object in the game world.
Revised on the current map designer to support implementation of
lightings, this new function in the map designer will allow map
designer to create map with lights around the maze. Also add the
the new elements to the map designer so that all the new elements
can be planted while designing a new maze.
Will be looking forward into how to add fog effect in to the game.
A even more dynamic map loader with sound files names in the texture
so that every level can have a different sound.
Nigel Monday: Finished lightings for
the character. First the positions of the lights are compared with
the game level's walls and see if the light can shine on the character.
Then if its within proximity and is not obstructed, its position
is swapped into the character class. If there are more than four
lights affecting the character, the closest four's position is used
instead. Finally the lightings code in character class does all
the function calls to OpenGL to light up the model.
Created three game maps, with very strict time limit to clear the
levels and added more data into the map array for the new features
(traps, lights, etc.).
Tuesday: Tweaked the A.I. fsm to include a state which moves around
obstructions. The monster will now try to reach the position where
the player was last sighted and check if still in sight. If the
player is still not in sight, it then disengages.
The new implementations for the A.I. also include escaping from
the player when he has picked a gem and the gem is in effect. It
will stop and let the player kill if forced into a wall by the player.
Begin work on ray casting for collision detection to better check
which side of the wall the player is going to collide, to reduce
bugs to the minimum.
Ren Hao The particles for collecting
the health and the blind trap is done. The particles for collecting
the health is a spiral that is emitted out of the character. When
the player step over a blind trap, oil spill particles is emitted
and it will leave oil spots on the player.
The oil spots on the player will last over the duration of the blind
trap. The particles of the flame on the candle is also done. It
is done with an emitter above the candle and emit out the particles
upwards. These particles are orientated to face the camera all the
time. When the player collect the health and the slowtime, incidental
sounds are added.
The different elements of gems has been added to the game. They
are fire gem, wind gem and water gem. These 3 elemental gems will
have different textures for the particles.
Next will be implementing the different elements of monsters.
Melissa Did animation for hero, when
he is attacked and being attack. I basically set a flag to detect
if the player as collided with a wall, monster, or gem, and then
set the flags accordingly.
I also set an idle animation. If no keypress, I'll do the idle animation,
which is basically the character looking left or right. I also did
some models for the different elemental monster and gems, and touched
up somemore graphics, mainly updating instructions
Working on in-game menu, and completing the story screen
Attached the following user manual:
Download at:
http://hanselkoh.homeip.net/mikonos2/dungeon_revival_user_manual_alpha.pdf
Attached another link for Alpha release:
Download at:
http://hanselkoh.homeip.net/mikonos2/mikonos_dungeon_revival_v2-alpha.rar

Monday, August 21, 2006
Today is the alpha release of our game and we are very excited
to hear the views from people who played the game. If there is any
suggestion or any bug spotted, feel free to email us at -> hkzr@yahoo.com.
=)
Attached the following game release:
Download at ftp://hanselkoh.hmeip.net/Mikonos
2/Release/
P.S: To Ms Dio, please copy and paste the URL and paste in to a
broswer and the game is uploaded in my FTP and is password protected.
I have email you the password =)

Friday, August 19, 2006
Today the team meet up with Mr Lim to further talk about our game's gameplay. the feedback from him was very positive, the gameplay have improve so much more with his advice and suggestion. It is much more interactive compare to the begining of the week. Now that gameplay is more or less settle, the team now is working towards the visual presentation of the game, looking in to adding lights, shadows and additions effects that will visually improve the GUI of the game.
Attached the following document:
Mikonos_Grant_chart_revise.pdf (51KB)
Hansel currently the framework structure of the loading game is done, only left minor tweaks that are need to keep up with the development of the game such adding of new items or elements will then required to tweaks to load this new items. As for the saving of game, currently able to save the basic informations like character's position, monster position and various counters that are in the game.
Leveling system are done up as well, able to load levels by levels till the last level and restart back to level 1 after that. currently still touching up with the flow of the game like how it load game, restart game and resume game, and what is to be shown on each states.
currently start working on and initialization file that will be loaded be all everything eles, this initialization will load informations of models, textures and certian gobals variables that is in the game, this is implemented as to make configuration of the game simple in future by changing only variables in the initialization file.
Nigel Wednesday:Completed advanced collision detection, with some bugs where the
collision box might overlap two sides of the wall and cause the wrong
calculations for the direction of bouncing. Started work on the framework of lightings.
Thursday: Altered the game level data array to include another element to
determine if the current grid has lights. The lightings data is stored
in a separate grid in the text file but merged when its being read
and compared with the walls in the level to determine where exactly
should the lights be placed.
Begin devising a method to allow lights in the game level to affect
the character model.
Friday: Done with the lightings framework. It is possible now to have two
things on a single grid by use of second grid in the text file and
comparing both.
To optimitise the game, I'll use four light channels on the model,
regardless of how many lights in the game level. Then this algorithm
will swap the positions of the four light channels depending on the
character's proximity to the lights.
Ren Hao The status has changed to graphic. All the numbers font is changed to texture.
The blind trap is done. This blind trap will leave oil spill over the minimap for a period of time.
The teleport trap is also done. This teleport trap will randomly teleport the player to another place in the game.
The basic particles effect is done when collected a gem. The particles effect for gem will
leave a trail of particles when the player is moving while having the gem. The positon of the guard
is also reviewed on the minimap when the level is cleared. The GUI of our status is also changed.
Now the coins and gems are shown on top of the screen, beside the timer. In addition, the fmod is now
change to the project directory. So now won't have problems with fmod when running the exe.
Currently is working on the particle effect when collect a health to give player visual feedback.
Melissa Did health and timefreeze power boosts by loading models read from textfile.
When player collides with health, hp is incremented.
When player collides with timefreeze, the main timer's deltaSec is slowed down.
The main game's deltaSec remains unchanged.
Did hero's animation. Its movements is relative to main game's deltaSec and
the monsters'movements are changed to be relative to the timer's deltaSec.
Integrated scene.cpp to scoreboard.cpp. Linked game levels with their appropriate scoreboards and scene,
except for win scene.
Scoreboard's text is changed to texture.

Tuesday, August 15, 2006
Hansel modifed the obj loader by setting the material only when there is new material therefore now able to perform better, fps are increased by more 50% with is able to get about 40-45 fps on an intergrated graphic card compared to 10-15 fps in the pass.
Complete level restart, there for now able to restart the level when the game is lose or won, values are gather and reinitlized and start new round.
Basic of saving game complete, that saves current time, coin collected, postition of character and monster. all informations are stored on to a textfile that will be read by a level loader later on.
Currently building the level loader that will process the saved file that was save earlier.
Nigel Solved A.I. bugs and rewrote the A.I. state machine into two separate
proccesses, input and output. Input is where all the ai logic is done
and output is all the effects of the current state. Reduced jerking of camera by using acceleration to move the character.
Reduced jerking of camera by keeping track of the camera's current
distance from the character and then using it to rotate the camera
around it according to the mouse.
Started work on the advanced collision detection, where the character
gets bounced in the direction of the perpendicular vector pointing
out of the wall/collision box rather than the direction of the last
key pressed.
Managed to bounce the character in one of the directions which was
perpendicular to the wall.
Ren Hao Currently, has implemented the game level timer for the game. This game
level timer is improved with textures to make it more eye candy. The timer
is accompanied with a second hand clock to show every second passes. This
is useful as a feedback to the player for one of our power up, the time slows down. He also implemented the improvement for the gem functionality. Now when the player
has collected a gem, the coins will be reviewed on the minimap until the gem
effect is gone. In addition, he also solve the bugs for the sound when multiply monsters are
chasing after the player. Now our game can have multiply monsters chasing after the player.
Currently, he is improving the GUI on the status by using textures instead of font. The timer
for the gems, and number of coins collected will be replace with textures.
Melissa
Graphics: changed the menuscreen, as well as buttons.
Editted abit of the credit.
Gameworld texture change (floor and skybox). Done modelling of candle. Completed basic monster animation. Solved problems with AI states. Timer texture done.
Sounds: Changed menu BGM, game BGM, lose BGM, credit BGM
Coding: Done story screen. Incompleted story graphic
Integrated story screen with main game. Integrated Animation into main game

Monday, August 14, 2006
Uploaded the schedule for our development, this schedule is extract from the pervious blog update's Mikonos_Technical_Document_v3.pdf.
Attached the following document:
schedule.pdf (56KB)
Mikonos_Grant_chart.pdf (51KB)

Friday, August 11, 2006
Uploaded the final version of the Game Design Document (GDD) and Technical Design Document (TDD) and also added in a gantt chart for the upcoming studio project from August 14th to September 1st.
Also added in a demo video of the game!
Attached the following video:
Mikonos_Dungeon_Revival_Demo1.wmv (3.2MB)
Attached the following document:
Mikonos_Design_Document_v3.pdf (230KB)
Mikonos_Technical_Document_v3.pdf (173KB)
Mikonos_Grant_chart.pdf (51KB)

Wendnesday, August 9, 2006
HaPpY 41th NaTiOnaL DaY SiNgApOrE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! :D :D :D :D

Tuesday, August 8, 2006
Uploaded a newer version of the Game Design Document (GDD) and Technical Design Document (TDD)
Attached the following document:
Game_Design_Document_GDD_v2.pdf (230KB)
Technical_Design_Document_TDD_v2.pdf (155KB)

Tuesday, August 1, 2006
New blog for studio project. This is the new blog for the development of Dungeon Revival in the coming 3 week studio project. and the following are the Game Design Document - GDD and the Technical Design Document - TDD this 2 document are upload yesterday on (31st July 2006) but was at the older website's blog at http://www.oocities.org/hkzr/mikonos/index.html
Attached the following document:
Game_Design_Document_GDD.pdf (245KB)
Technical_Design_Document_TDD.pdf (93KB)

|