| 
		
	
		| iNs   Junior Member
 
 Posts: 21
 Threads: 4
 Joined: Mar 2011
 Reputation: 
0
 | 
			| [cancelled] test map (free script to learn) 
 
				A small unfinished map. 
Maybe someone can find some usefull things. 
I did some nice scripting, you could be interested in.
 
- time spent working on it: ~ 60 hours 
- I dont have time to finish it. So here you go - it is free for download.
[Map] 
- It is only a half map atm (5 Rooms, 4 Hallways, 1 Hall with Stairs) 
- 1 bedroom, 1 guestroom, 1 living room, 1 secret room, 1 dinner room 
- 1 hatch locked with a padlock 
- 1 big hall with stairs and big windows 
- I tried to make scary atmosphere in every room 
- location: mansion 
- current play time is about 20 to 25 minutes
[Scripting] 
- Script Areas for preventing light to shine trough walls 
- Script Areas for scare events 
- interact functions to scare player 
- key to unlock door / chest 
- acid to damage a padlock 
- notification messages that door is locked and/or key is needed 
- mementos (quest) and notification (letter) 
- 1 puzzle to solve (access to secret room) 
- 1 scare event, where player is automatically walking and interacting
[Story] 
- there is no name for the map yet 
- there is no complete story yet 
- german and english language file included
 
---
Download: Test Map v0.3b - RAR archive
complete Script-file: //-----------------------------------------------------------------------------//--- created by iNs - Copyright © 2011 --- Test.hps v0.3b (beta) ---
 //-----------------------------------------------------------------------------
 //--- Last Update: 11. April 2011 ---
 //-----------------------------------
 
 void OnEnter()
 {
 //--- PRELOADING ---//
 PreloadSound("react_breath1.ogg");        // wake up (Intro)
 PreloadSound("react_breath2.ogg");        // wake up (Intro)
 PreloadSound("react_breath4.ogg");        // open cabinet: broom
 PreloadSound("insanity_whisper01.ogg");    // open cabinet: broom
 PreloadSound("unlock_door");                // unlock door / chest
 PreloadSound("lock_door");                // secret book succes
 PreloadSound("gameplay_tick");            // secret books wrong
 PreloadSound("02_puzzle.ogg");            // room 2 painting
 
 // callback function for all keys (Name, KeyName, ObjectName, FunctionName, Destroy_Item?)
 AddUseItemCallback("UseExit", "Room1_KeyChest", "Room1_Chest", "UseKey_Chest", true);
 AddUseItemCallback("UseExit", "Room2_KeyStorage", "StorageRoom_Door", "UseKey", true);
 
 // Use Item Callback - Cellar Padlock / acid
 AddUseItemCallback("UseAcid", "ChemicalContainer", "Cellar_Padlock", "UseAcid", true);
 
 // ROOM 2 SECRET BOOKS for SECRET STORAGE ROOM
 SetLocalVarInt("VarSecretMoves", 0);
 SetLocalVarString("VarSecretCode", "");
 
 for(int i=1;i<=4;i++)
 {
 AddEntityCollideCallback("SecretBook_"+i, "AreaSecretBook_"+i, "CollideSecretBook", false, 0);
 }
 
 //--- STATUS of LIGHTS ---//
 AddEntityCollideCallback("Player", "Room1_CandleSmall_ON", "CandleSmall_On", false, 1);
 AddEntityCollideCallback("Player", "Room1_CandleSmall_OFF", "CandleSmall_Off", false, 1);
 AddEntityCollideCallback("Player", "Room1_CandleBig_ON", "CandleBig_On", false, 1);
 AddEntityCollideCallback("Player", "Room1_CandleBig_OFF", "CandleBig_Off", false, 1);
 AddEntityCollideCallback("Player", "Room3_Candles_ON", "Room3Candles_On", false, 1);
 AddEntityCollideCallback("Player", "Room3_Candles_OFF", "Room3Candles_Off", false, 1);
 AddEntityCollideCallback("Player", "StairHall_Candles_ON", "StairHallCandles_On", false, 1);
 AddEntityCollideCallback("Player", "StairHall_Candles_OFF1", "StairHallCandles_Off", false, 1);
 AddEntityCollideCallback("Player", "StairHall_Candles_OFF2", "StairHallCandles_Off", false, 1);
 
 // ROOM 2 - PAINTING - (delete callback after collide)
 AddEntityCollideCallback("Room2_Painting", "AreaPainting", "PuzzleSound", true, 1);
 
 // STORAGE ROOM - STATUE - (delete callback after collide)
 AddEntityCollideCallback("StorageRoom_Door", "AreaStatue", "SmashStatue", true, 1);
 
 // ROOM 3 - ON ENTER - (delete callback after collide)
 AddEntityCollideCallback("Player", "Room3_AreaDoor", "BeginVision", true, 1);
 
 // ROOM 4 - Area next to table - (delete callback after collide)
 AddEntityCollideCallback("Player", "Room4_AreaTable", "BreakTables", true, 1);
 
 // HALLWAY - enable grunts - (delete callback after collide)
 AddEntityCollideCallback("Player", "HallM_AreaGrunt", "EnableHallGrunts", true, 1);
 
 //--- ROOM 3 - MOVE  ---//
 AddEntityCollideCallback("Player", "MoveL_1", "MoveLeft_1", false, 1);
 AddEntityCollideCallback("Player", "MoveL_2", "MoveLeft_2", false, 1);
 AddEntityCollideCallback("Player", "MoveL_3", "MoveLeft_3", false, 1);
 AddEntityCollideCallback("Player", "MoveR_1", "MoveRight_1", false, 1);
 AddEntityCollideCallback("Player", "MoveR_2", "MoveRight_2", false, 1);
 AddEntityCollideCallback("Player", "MoveR_3", "MoveRight_3", false, 1);
 AddEntityCollideCallback("Player", "Stop_1", "StopMove_1", false, 1);
 AddEntityCollideCallback("Player", "Stop_2", "StopMove_2", false, 1);
 AddEntityCollideCallback("Player", "Stop_3", "StopMove_3", false, 1);
 
 //--- EXIT AREA - PLAY CREDITS  ---//
 AddEntityCollideCallback("Player", "ExitArea", "Credits", false, 1);
 
 //--- CHECKPOINT ---//
 CheckPoint ("Room1_Checkpoint", "PlayerStartArea_2", "PlayerDied", "DeathMessage", "Dead");
 
 // dead human body - push down
 AddPropImpulse("Room3_Body", 0, 30, 0, "World");
 }
 
 //-----------------------------------------------------------------------------
 
 void OnStart()
 {
 // no lantern oil and no tinderboxes at start!
 SetPlayerLampOil(0.0f);
 
 // Lock the Chest in Room1
 SetLeverStuckState("Room1_Chest", -1, false);
 
 //--- DEBUG --- //
 if(ScriptDebugOn())
 {
 // Lantern
 GiveItemFromFile("lantern", "lantern.ent");
 SetPlayerLampOil(100.0f);
 
 // Tinderbox - 10x
 for(int i=0;i<10;i++) GiveItemFromFile("tinderbox_"+i, "tinderbox.ent");
 }
 else
 {
 // play Intro
 Intro();
 }
 }
 
 //-----------------------------------------------------------------------------
 //--- INTRO ---
 //-----------------------------------------------------------------------------
 
 void Intro()
 {
 // Debug Message
 AddDebugMessage("Begin Intro", false);
 
 // disbale player movement
 SetPlayerActive(false);
 
 // black screen
 FadeOut(0.0f);
 
 // look at cabinet's left lower corner
 StartPlayerLookAt("Room1_LookAt_1", 1, 3, "");
 
 AddTimer("1",  5, "IntroTimer"); //  5 seconds
 }
 
 //---
 
 void IntroTimer(string &in asTimer)
 {
 if(asTimer == "1")
 {
 // close door
 SetSwingDoorClosed("Room1_Door", true, true);
 
 AddTimer("2", 1, "IntroTimer"); //  1 second
 }
 else if(asTimer == "2")
 {
 // set player crouching
 SetPlayerCrouching(true);
 SetPlayerActive(false);
 
 // play 'breathing sound' as 'wake up noise'
 PlayGuiSound("react_breath1.ogg", 0.5f);
 
 // blur
 FadeRadialBlurTo(0.10, 2);
 FadeRadialBlurTo(0.10, 2);
 
 // normal screen
 FadeIn(13.0f);
 FadeImageTrailTo(1, 2);
 
 // let player look next to door
 StartPlayerLookAt("Room1_LookAt_2", 2, 3, "");
 
 AddTimer("3", 2, "IntroTimer"); //  2 seconds
 }
 else if(asTimer == "3")
 {
 StopPlayerLookAt();
 
 // black screen
 FadeOut(2.5f);
 
 // Change all settings to default
 FadeRadialBlurTo(0, 5);
 FadeImageTrailTo(0, 5);
 FadePlayerRollTo(0, 33, 33);
 
 // normal screen
 FadeIn(2.7f);
 
 SetMessage("Message", "Hint0", 0);
 AddDebugMessage("End Intro", false);
 
 AddTimer("4", 1, "IntroTimer"); //  1 second
 }
 else if(asTimer == "4")
 {
 // play 'breathing sound' as 'wake up noise'
 PlayGuiSound("react_breath2.ogg", 0.5f);
 
 SetPlayerActive(true);
 SetPlayerCrouching(false);
 
 // ambient music 'scary'
 PlayMusic("18_amb", false, 0.8, 5, 0, true);
 
 AddTimer("5", 30, "IntroTimer"); // 30 seconds
 }
 else if(asTimer == "5")
 {
 // ambient music 'normal'
 PlayMusic("10_amb", true, 0.5, 5, 0, true);
 }
 }
 
 //-----------------------------------------------------------------------------
 //--- INTERACT FUNCTION ---
 //-----------------------------------------------------------------------------
 
 void Interact(string &in asEntity)
 {
 // Is entity locked door?
 if (GetSwingDoorLocked(asEntity))
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 if (asEntity == "StorageRoom_Door")
 {
 if (HasItem("Room2_KeyStorage"))
 {
 SetMessage("Messages", "StorageDoorKey_Message", 4);
 }
 else if (GetSwingDoorLocked("StorageRoom_Door"))
 {
 SetMessage("Messages", "StorageDoorNoKey_Message", 4);
 }
 }
 else
 {
 SetMessage("Messages", "DoorLocked_Message", 3);
 }
 }
 
 //---
 
 else if (asEntity == "Room1_Door")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 if (!HasItem("Room1_Lantern"))
 {
 SetMessage("Messages", "Room1_Door_Message", 4);
 }
 }
 
 //---
 
 else if (asEntity == "Room1_Chest")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 if (GetLeverState(asEntity) == -1)
 {
 AddDebugMessage("Room1_Chest is locked!", false);
 
 if (!QuestIsAdded("Room1_Chest"))
 {
 // quest name, language file name
 AddQuest("Room1_Chest","Room1_Chest");
 SetMessage("Messages", "Room1_Chest_Message", 3);
 }
 else if (!QuestIsCompleted("Room1_Chest"))
 {
 SetMessage("Messages", "Room1_Chest_Message", 3);
 }
 else if (HasItem("Room1_KeyChest"))
 {
 SetMessage("Messages", "Room1_Key_Message", 3);
 }
 }
 }
 
 //---
 
 else if (asEntity == "Room1_KeyChest")
 {
 GiveSanityBoostSmall();
 CompleteQuest("Room1_Chest", "Room1_Chest");
 }
 
 //---
 
 else if (asEntity == "Room1_Cabinet")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 // disable player movement
 SetPlayerActive(false);
 
 // disable lantern
 SetLanternActive(false, false);
 
 // push the player a little bit backwards
 AddPlayerBodyForce(-7500.0f, 0.0f, 0.0f, false);
 
 // open the cabinet door a little bit, so that the broom becomes visible
 AddPropImpulse("Room1_Cabinet", 0, 0, 30, "World");
 
 // Sanity Damage
 GiveSanityDamage(20.0f, true);
 
 // play 'breathing sound' as 'shocking noise'
 PlayGuiSound("react_breath4.ogg", 0.9f);
 
 // play 'whisper' as 'shocking noise'
 PlayGuiSound("insanity_whisper01.ogg", 0.8f);
 
 // shake the screen
 StartScreenShake(0.13f, 0.5f, 0.1f, 0.1f);
 
 // let player look at the floor, where broom lies
 StartPlayerLookAt("Room1_LookAt_3", 10, 25, "");
 
 AddTimer("Room1_Cabinet", 2, "InteractTimer"); // 2 seconds
 }
 
 //---
 
 else if (asEntity == "Room2_NotePaper")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 // neuen Checkpoint setzen
 CheckPoint ("Room2_Checkpoint", "PlayerStartArea_3", "PlayerDied", "DeathMessage", "Dead");
 }
 
 //---
 
 else if (asEntity == "SecretBook_1")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 // set secret books stuck state to default (free/unstuck)
 SetPropObjectStuckState(asEntity, 0);
 }
 else if (asEntity == "SecretBook_2")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 // set secret books stuck state to default (free/unstuck)
 SetPropObjectStuckState(asEntity, 0);
 }
 else if (asEntity == "SecretBook_3")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 // set secret books stuck state to default (free/unstuck)
 SetPropObjectStuckState(asEntity, 0);
 }
 else if (asEntity == "SecretBook_4")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 // set secret books stuck state to default (free/unstuck)
 SetPropObjectStuckState(asEntity, 0);
 }
 
 //---
 
 else if (asEntity == "Cellar_Padlock")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 if (HasItem("ChemicalContainer"))
 {
 // Message - use acid on padlock
 SetMessage("Messages", "Padlock_UseAcid_Message", 4);
 }
 else if (StringContains(GetLocalVarString("VarSecretCode"), "done"))
 {
 if (!QuestIsAdded("PadlockGoStorage"))
 {
 // quest name, language file name
 AddQuest("PadlockGoStorage","PadlockGoStorage");
 SetMessage("Messages", "Padlock_Locked_Message", 3);
 }
 else if (!QuestIsCompleted("PadlockGoStorage") && GetSwingDoorLocked("Cellar_Hatch"))
 {
 SetMessage("Messages", "Padlock_Locked_Message", 3);
 }
 }
 else if (GetSwingDoorLocked("Cellar_Hatch"))
 {
 if (!QuestIsAdded("PadlockFindStorage"))
 {
 // quest name, language file name
 AddQuest("PadlockFindStorage","PadlockFindStorage");
 SetMessage("Messages", "Padlock_Locked_Message", 3);
 }
 else if (!QuestIsCompleted("PadlockFindStorage") && GetSwingDoorLocked("Cellar_Hatch"))
 {
 SetMessage("Messages", "Padlock_Locked_Message", 3);
 }
 }
 }
 else if (asEntity == "Cellar_Padlock_Broken")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 // break sound
 PlaySoundAtEntity("break", "impact_metal_high", "Cellar_Padlock_Broken", 0.0f, false);
 
 // unlock the hatch
 SetSwingDoorLocked("Cellar_Hatch", false, false);
 
 GiveSanityBoostSmall();
 
 // complete/remove quest
 CompleteQuest("PadlockGoStorage", "PadlockGoStorage");
 
 // acivate ladder area
 SetEntityActive("CellarLadderArea", true);
 }
 
 else if (asEntity == "ChemicalContainer")
 {
 AddDebugMessage("Interact with " + asEntity, false);
 
 // complete quest
 if (QuestIsAdded("PadlockFindStorage"))
 {
 GiveSanityBoostSmall();
 CompleteQuest("PadlockFindStorage", "PadlockFindStorage");
 }
 }
 }
 
 //-----------------------------------------------------------------------------
 //--- INTERACT TIMER FUNCTION ---
 //-----------------------------------------------------------------------------
 
 void InteractTimer(string &in asTimer)
 {
 if(asTimer == "Room1_Cabinet" || asTimer == "Room2_Shelf")
 {
 StopPlayerLookAt();
 
 // activate player movement
 SetPlayerActive(true);
 }
 
 //---
 
 else if (asTimer == "SecretBooksMove")
 {
 // "locked" sound as success noise
 PlayGuiSound("gameplay_tick", 0.8f);
 
 // move secret books to normal pos
 SetPropObjectStuckState("SecretBook_*", -1);
 
 // timer for changing stuck state + message
 AddTimer("SecretBooksFree", 1, "InteractTimer"); // 1 second
 }
 else if (asTimer == "SecretBooksFree")
 {
 // set secret books stuck state to default (free/unstuck)
 SetPropObjectStuckState("SecretBook_*", 0);
 
 // Message - nothing happened... books back at original position
 SetMessage("Messages", "Room2_SecretBooks_Message", 4);
 
 // reset vars
 SetLocalVarInt("VarSecretMoves", 0);
 SetLocalVarString("VarSecretCode", "");
 }
 
 //---
 
 else if (asTimer == "DestroyParticle")
 {
 DestroyParticleSystem("dust");
 
 AddTimer("5", 3, "IntroTimer"); // 3 seconds
 }
 
 //---
 
 else if (asTimer == "StorageRoom_Statue")
 {
 // play 'breathing sound' as 'shocking noise'
 PlayGuiSound("react_breath4.ogg", 1.0f);
 }
 }
 
 //-----------------------------------------------------------------------------
 
 void LookAt(string &in asEntity, int alState)
 {
 if (asEntity == "Room1_Broom" && alState == 1)
 {
 AddDebugMessage("Player looking at Room1_Broom", false);
 }
 }
 
 //-----------------------------------------------------------------------------
 
 //-----------------------------------------------------------------------------
 //--- USE KEY FUNCTION ---
 //-----------------------------------------------------------------------------
 
 void UseKey(string &in asItem, string &in asEntity)
 {
 // unlock the door
 SetSwingDoorLocked(asEntity, false, true);
 
 // play 'unlock door' sound
 PlayGuiSound("unlock_door", 0.4f);
 
 // remove the key from inventory, cause it is not needed anymore
 RemoveItem(asItem);
 }
 
 //---
 
 void UseKey_Chest(string &in asItem, string &in asEntity)
 {
 // unlock the chest
 SetLeverStuckState(asEntity, 0, false);
 
 // play 'unlock door' sound
 PlayGuiSound("unlock_door", 0.4f);
 
 // remove the key from inventory, cause it is not needed anymore
 RemoveItem(asItem);
 }
 
 //-----------------------------------------------------------------------------
 //--- USE ACID FUNCTION ---
 //-----------------------------------------------------------------------------
 
 void UseAcid(string &in asItem, string &in asEntity)
 {
 // remove the ChemicalContainer (filled one with acid) from inventory
 RemoveItem(asItem);
 
 // add a empty container
 GiveItemFromFile("ChemicalContainerEmpty", "chemical_container.ent");
 
 // play acid burn sound
 PlaySoundAtEntity("burnlock", "puzzle_acid", "Cellar_Padlock", 1.0f, false);
 
 // change the padlocks with fade out/fade in
 SetPropActiveAndFade("Cellar_Padlock", false, 2.0f);
 SetPropActiveAndFade("Cellar_Padlock_Broken", true, 1.0f);
 
 // disable the padlock collisions area
 SetEntityActive("PadlockArea", false);
 }
 
 //-----------------------------------------------------------------------------
 //--- prevent CANDLES from shining trough walls ---
 //-----------------------------------------------------------------------------
 
 void CandleSmall_Off(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("Room1: small candle OFF", false);
 
 SetLampLit("Room1_CandleSmall", false, false);
 }
 
 void CandleSmall_On(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("Room1: small candle ON", false);
 
 SetLampLit("Room1_CandleSmall", true, false);
 }
 
 //---
 
 void CandleBig_Off(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("Room1: big candle OFF", false);
 
 SetLampLit("Room1_CandleBig", false, false);
 SetLampLit("Room1_Candle_3", false, false);
 SetLampLit("Room1_Candle_4", false, false);
 
 // Room 2
 SetLampLit("Room2_Candle_1", true, false);
 SetLampLit("Room2_Candle_4", true, false);
 SetLampLit("Room2_Candle_5", true, false);
 SetLampLit("Room2_Candle_9", true, false);
 SetLampLit("Room2_Fire", true, false);
 }
 
 void CandleBig_On(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("Room1: big candle ON", false);
 
 SetLampLit("Room1_CandleBig", true, false);
 SetLampLit("Room1_Candle_3", true, false);
 SetLampLit("Room1_Candle_4", true, false);
 
 // Room 2
 SetLampLit("Room2_Candle_1", false, false);
 SetLampLit("Room2_Candle_4", false, false);
 SetLampLit("Room2_Candle_5", false, false);
 SetLampLit("Room2_Candle_9", false, false);
 SetLampLit("Room2_Fire", false, false);
 }
 
 //---
 
 void Room3Candles_Off(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("Room3 Candles: OFF", false);
 
 SetLampLit("Room3_Fire", false, false);
 }
 
 void Room3Candles_On(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("Room3 Candles: OFF", false);
 
 SetLampLit("Room3_Fire", true, false);
 }
 
 //---
 
 void StairHallCandles_Off(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("Stair Hall Candles: OFF", false);
 
 SetLampLit("StairHall_CandleTri_*", false, false);
 SetEntityActive("StairHall_SpotLight_*", false);
 }
 
 void StairHallCandles_On(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("Stair Hall Candles: ON", false);
 
 SetLampLit("StairHall_CandleTri_*", true, false);
 SetEntityActive("StairHall_SpotLight_*", true);
 }
 
 //-----------------------------------------------------------------------------
 //--- Room2 --- move shelf (in front of hidden tunnel) ---
 //-----------------------------------------------------------------------------
 
 void CollideSecretBook(string &in asParent, string &in asChild, int alState)
 {
 // Debug Message
 AddDebugMessage("moved book " + asParent, false);
 
 if (alState == 1 || alState == -1)
 {
 if (GetLocalVarInt("VarSecretMoves") != 4)
 {
 SetLocalVarInt("VarSecretMoves", GetLocalVarInt("VarSecretMoves")+1);
 SetLocalVarString("VarSecretCode", GetLocalVarString("VarSecretCode") + asParent + ",");
 
 // Debug Message
 AddDebugMessage("current code: " + GetLocalVarString("VarSecretCode"), false);
 }
 else
 {
 SetLocalVarString("VarSecretCode", GetLocalVarString("VarSecretCode") + asParent);
 
 // Code == 3,1,4,2,3
 if (GetLocalVarString("VarSecretCode") == "SecretBook_3,SecretBook_1,SecretBook_4,SecretBook_2,SecretBook_3")
 {
 // Debug Message
 AddDebugMessage("open shelf", false);
 
 // set var to "moving" to prevent "wrong" message
 // set var to "done" to use it later (check)
 SetLocalVarString("VarSecretCode", "moving+done");
 
 // deactivate player movement
 SetPlayerActive(false);
 
 // "locked" sound as success noise
 PlaySoundAtEntity("BooksDone", "lock_door", "Player", 0, false);
 
 // move secret books to default position
 SetPropObjectStuckState("SecretBook_*", -1);
 AddTimer("Room2_SecretBooks", 0.25f, "InteractTimer"); // 0.25 seconds
 
 // disbale interaction with secret books
 SetEntityInteractionDisabled("SecretBook_*", true);
 
 // let player look at the floor, where broom lies
 StartPlayerLookAt("Room2_SecretShelf", 2, 3, "");
 
 AddTimer("Room2_Shelf", 2, "InteractTimer"); // 3 seconds
 
 // roate the shelf (open)
 SetMoveObjectState("Room2_SecretShelf", 0.5f);
 
 // dust
 CreateParticleSystemAtEntity("dust", "ps_dust_falling_door_quick", "Room2_SecretParticleArea", false);
 AddTimer("DestroyParticle", 15, "InteractTimer"); // 15 seconds
 
 // puzzle secret - music
 PlayMusic("03_puzzle_secret.ogg", false, 0.7f, 0, 10, false);
 }
 else if (!StringContains(GetLocalVarString("VarSecretCode"), "moving"))
 {
 // set var to "moving" to prevent repeat of "wrong" message
 SetLocalVarString("VarSecretCode", "moving");
 
 // move secret books to default position
 AddTimer("SecretBooksMove", 1, "InteractTimer"); // 1 second
 }
 }
 }
 }
 
 //-----------------------------------------------------------------------------
 //--- Room 2 - Painting collides with AreaPainting, when player picks it ---
 //-----------------------------------------------------------------------------
 
 void PuzzleSound(string &in asParent, string &in asChild, int alState)
 {
 AddDebugMessage("Interact with " + asParent, false);
 
 // puzzle solved sound
 PlayMusic("02_puzzle.ogg", false, 0.7f, 0, 10, false);
 }
 
 //-----------------------------------------------------------------------------
 //--- Storage Room - Statue collide with door ---
 //-----------------------------------------------------------------------------
 
 void SmashStatue(string &in asParent, string &in asChild, int alState)
 {
 AddDebugMessage("Interact with StorageRoom_Door", false);
 
 // stop the door from moving, like hittin the statue
 AddPropImpulse("StorageRoom_Door", 0, 0, 2, "World");
 
 // shake the screen
 StartScreenShake(0.10f, 0.2f, 0.1f, 0.1f);
 
 // Sanity Damage
 GiveSanityDamage(35.0f, true);
 
 PlaySoundAtEntity("Impact", "15_body_impact.snt", "StorageRoom_ArmorFall", 0, false);
 AddTimer("StorageRoom_Statue", 1, "InteractTimer"); // 1 second
 }
 
 //-----------------------------------------------------------------------------
 //--- Room 3 - bloody vision scare ---
 //-----------------------------------------------------------------------------
 
 void BeginVision(string &in asParent, string &in asChild, int alState)
 {
 // deactivate player movement
 SetPlayerActive(false);
 
 // Sanity Damage
 GiveSanityDamage(35.0f, true);
 
 // disable lantern
 SetLanternActive(false, false);
 
 // puzzle secret - music
 PlayMusic("19_event_brute.ogg", false, 1.1f, 0, 10, false);
 
 // counter var - to decrease speed
 SetLocalVarInt("Counter", 0);
 
 // var to stop player
 SetLocalVarInt("Stop", 0);
 
 // let player look at the bed on the right
 StartPlayerLookAt("Room3_LookAt_1", 2, 3, "");
 
 // Timer for player movement - to bed
 AddTimer("1", 0.1f, "MovePlayerTimer"); // 0.1 seconds
 }
 
 //---
 
 void MovePlayerTimer(string &in asTimer)
 {
 if (asTimer == "1")
 {
 // move the player to the bed
 AddPlayerBodyForce(3150 - (GetLocalVarInt("Counter") * 10), 0, 1100, false);
 
 if (GetLocalVarInt("Stop") != 1)
 {
 // Timer for player movement - to bed
 AddTimer("1", 0.1f, "MovePlayerTimer"); // 0.1 seconds
 
 // increase counter var - to decrease speed
 SetLocalVarInt("Counter", GetLocalVarInt("Counter")+1);
 }
 else
 {
 // counter var - reset
 SetLocalVarInt("Counter", 0);
 
 // var to stop player - reset
 SetLocalVarInt("Stop", 0);
 
 // Timer for player movement - to cabinet
 AddTimer("look2", 1, "MovePlayerTimer"); // 1 second
 }
 }
 else if (asTimer == "look2")
 {
 // let player look at the bloody floor
 StartPlayerLookAt("Room3_LookAt_2", 2, 3, "");
 
 AddTimer("look3", 1, "MovePlayerTimer"); // 1 second
 }
 else if (asTimer == "look3")
 {
 // let player look at the bloody floor
 StartPlayerLookAt("Room3_LookAt_3", 2, 3, "");
 
 AddTimer("2", 1, "MovePlayerTimer"); // 1 second
 }
 else if (asTimer == "2")
 {
 // move the player from the bed to the cabinet
 AddPlayerBodyForce(-3150 + (GetLocalVarInt("Counter") * 10), 0, 900 - (GetLocalVarInt("Counter") * 10), false);
 
 if (GetLocalVarInt("Stop") != 1)
 {
 // Timer for player movement - to cabinet
 AddTimer("2", 0.1f, "MovePlayerTimer"); // 0.1 seconds
 
 // increase counter var - to decrease speed
 SetLocalVarInt("Counter", GetLocalVarInt("Counter")+1);
 }
 else
 {
 // let player look at the bloody cabinet
 StartPlayerLookAt("Room3_LookAt_end", 2, 3, "");
 
 // counter var - reset
 SetLocalVarInt("Counter", 0);
 
 // var to stop player - reset
 SetLocalVarInt("Stop", 0);
 
 // Timer for player movement - to cabinet
 AddTimer("3", 0.1f, "MovePlayerTimer"); // 0.1 seconds
 }
 }
 else if (asTimer == "3")
 {
 // push the player from the bed to the cabinet
 AddPlayerBodyForce(-1400 + (GetLocalVarInt("Counter") * 10), 0, 2600 - (GetLocalVarInt("Counter") * 10), false);
 
 if (GetLocalVarInt("Stop") != 1)
 {
 // Timer for player movement - to cabinet
 AddTimer("3", 0.1f, "MovePlayerTimer"); // 0.1 seconds
 
 // increase counter var - to decrease speed
 SetLocalVarInt("Counter", GetLocalVarInt("Counter")+1);
 }
 else
 {
 // counter var - reset
 SetLocalVarInt("Counter", 0);
 
 // Timer for open cabinet
 AddTimer("open cabinet", 1, "MovePlayerTimer"); // 1 second
 
 AddDebugMessage("open cabinet doors", false);
 }
 }
 else if (asTimer == "open cabinet")
 {
 // open the cabinet doors
 AddPropForce("Room3_Cabinet", 0, 0, -45,"World");
 
 if (GetLocalVarInt("Counter") != 15)
 {
 // Timer for player movement - to cabinet
 AddTimer("open cabinet", 0.1f, "MovePlayerTimer"); // 0.1 second
 
 // counter var
 SetLocalVarInt("Counter", GetLocalVarInt("Counter")+1);
 }
 else
 {
 // play 'breathing sound' as 'shocking noise'
 PlayGuiSound("react_breath4.ogg", 0.9f);
 
 // Sanity Damage
 GiveSanityDamage(10.0f, true);
 
 // Timer for smashing the door
 AddTimer("smash door", 3, "MovePlayerTimer"); // 3 seconds
 }
 }
 else if (asTimer == "smash door")
 {
 AddDebugMessage("smash door", false);
 
 // smash the door
 SetSwingDoorClosed("Room3_Door", true, false);
 
 // dust
 CreateParticleSystemAtEntity("dust_door", "ps_dust_impact_vert.ps", "Room3_AreaDust", false);
 
 // sound for door smashing
 PlayGuiSound("21_bang_door", 1.5f);
 
 // shake the screen
 StartScreenShake(0.25f, 0.1f, 0.25f, 0.1f);
 
 // Sanity Damage
 GiveSanityDamage(15.0f, true);
 
 // Timer for looking to the door
 AddTimer("look door", 0.7f, "MovePlayerTimer"); // 0.7 seconds
 }
 else if (asTimer == "look door")
 {
 // play 'breathing sound' as 'shocking noise'
 PlayGuiSound("react_breath4.ogg", 0.9f);
 
 // let player look at the bloody cabinet
 StartPlayerLookAt("Room3_Door", 4, 8, "");
 
 // Timer for activation of player movement
 AddTimer("end", 1, "MovePlayerTimer"); // 1 second
 }
 else if (asTimer == "end")
 {
 // play 'breathing sound' as 'shocking noise'
 PlayGuiSound("react_breath4.ogg", 0.9f);
 
 // activate player movement
 SetPlayerActive(true);
 StopPlayerLookAt();
 
 // Timer for activation of player movement
 AddTimer("quest", 1, "MovePlayerTimer"); // 1 second
 }
 else if (asTimer == "quest")
 {
 // find a way out of the mansion quest
 AddQuest("GetOutOfHere","GetOutOfHere");
 }
 }
 
 //-----------------------------------------------------------------------------
 //--- Room 3 - bloody vision scare --- area collide callbacks ---
 //-----------------------------------------------------------------------------
 
 //--- movement - area collide - door to bed
 
 void MoveLeft_1(string &in asParent, string &in asChild, int alState)
 {
 // move the player to the left
 AddPlayerBodyForce(0, 0, -1500, false);
 }
 
 void MoveRight_1(string &in asParent, string &in asChild, int alState)
 {
 // move the player to the right
 AddPlayerBodyForce(0, 0, 1500, false);
 }
 
 //--- movement - area collide - bed to cabinet 1
 
 void MoveLeft_2(string &in asParent, string &in asChild, int alState)
 {
 // move the player to the left
 AddPlayerBodyForce(0, 0, 1500, false);
 }
 
 void MoveRight_2(string &in asParent, string &in asChild, int alState)
 {
 // move the player to the right
 AddPlayerBodyForce(0, 0, -1500, false);
 }
 
 //--- movement - area collide - bed to cabinet 2
 
 void MoveLeft_3(string &in asParent, string &in asChild, int alState)
 {
 // move the player to the left
 AddPlayerBodyForce(1500, 0, 0, false);
 }
 
 void MoveRight_3(string &in asParent, string &in asChild, int alState)
 {
 // move the player to the right
 AddPlayerBodyForce(-1500, 0, 0, false);
 }
 
 //--- movement - area collide - stop movement
 
 void StopMove_1(string &in asParent, string &in asChild, int alState)
 {
 AddDebugMessage("stop movement", false);
 
 // var to stop player
 SetLocalVarInt("Stop", 1);
 
 // remove collide callbacks 1
 RemoveEntityCollideCallback("Player", "MoveL1");
 RemoveEntityCollideCallback("Player", "MoveR1");
 RemoveEntityCollideCallback("Player", "StopMove1");
 }
 
 void StopMove_2(string &in asParent, string &in asChild, int alState)
 {
 AddDebugMessage("stop movement", false);
 
 // var to stop player
 SetLocalVarInt("Stop", 1);
 
 // remove collide callbacks 2
 RemoveEntityCollideCallback("Player", "MoveL2");
 RemoveEntityCollideCallback("Player", "MoveR2");
 RemoveEntityCollideCallback("Player", "StopMove2");
 }
 
 void StopMove_3(string &in asParent, string &in asChild, int alState)
 {
 AddDebugMessage("stop movement", false);
 
 // var to stop player
 SetLocalVarInt("Stop", 1);
 
 // remove collide callbacks 3
 RemoveEntityCollideCallback("Player", "MoveL3");
 RemoveEntityCollideCallback("Player", "MoveR3");
 RemoveEntityCollideCallback("Player", "StopMove3");
 }
 
 //-----------------------------------------------------------------------------
 //--- Room 4 - Table Area Scare ---
 //-----------------------------------------------------------------------------
 
 void BreakTables(string &in asParent, string &in asChild, int alState)
 {
 // deactivate player movement
 SetPlayerActive(false);
 
 // sound for door smashing
 PlayGuiSound("21_bang_door", 0.7f);
 
 // let player look at the door
 StartPlayerLookAt("Room4_Door_2", 4, 8, "");
 
 // open the door
 SetSwingDoorDisableAutoClose("Room4_Door_2", true);
 SetSwingDoorClosed("Room4_Door_2", false, false);
 SetSwingDoorLocked("Room4_Door_2", false, false);
 
 // force the door to open
 AddPropImpulse("Room4_Door_2", -45, 0, 0, "World");
 
 // dust
 CreateParticleSystemAtEntity("dust_door", "ps_dust_impact_vert.ps", "Room4_AreaDust", false);
 
 // Sanity Damage
 GiveSanityDamage(15.0f, true);
 
 // shake the screen
 StartScreenShake(0.25f, 0.1f, 0.25f, 0.1f);
 
 // player reaction
 PlaySoundAtEntity("react", "react_pant.snt", "Player", 0, false);
 
 // disable lantern
 SetLanternActive(false, false);
 
 // counter var
 SetLocalVarInt("Counter", 0);
 
 // timer to break and move objects
 AddTimer("push", 0.5f, "BreakTimer"); // 0.5 seconds
 }
 
 //---
 
 void BreakTimer(string &in asTimer)
 {
 if (asTimer == "push")
 {
 // push the chairs away
 AddPropImpulse("Room4_Chair_L" + GetLocalVarInt("Counter"), 0, 0, -5, "World");
 AddPropImpulse("Room4_Chair_R" + GetLocalVarInt("Counter"), 0, 0,  5, "World");
 
 // push the plates away
 AddPropImpulse("Room4_PlateL_" + GetLocalVarInt("Counter"), 0, 0, -5, "World");
 AddPropImpulse("Room4_PlateR_" + GetLocalVarInt("Counter"), 0, 0,  5, "World");
 
 // push the silver away
 AddPropImpulse("Room4_SilverL_" + GetLocalVarInt("Counter"), 0, 0, -5, "World");
 AddPropImpulse("Room4_SilverR_" + GetLocalVarInt("Counter"), 0, 0,  5, "World");
 
 // disable lights
 if (GetLocalVarInt("Counter") ==  2)
 {
 SetLampLit("Room4_Candle_1", false, false);
 }
 else if (GetLocalVarInt("Counter") ==  5)
 {
 SetLampLit("Room4_Candle_2", false, false);
 }
 else if (GetLocalVarInt("Counter") ==  8)
 {
 SetLampLit("Room4_Candle_3", false, false);
 }
 else if (GetLocalVarInt("Counter") ==  11)
 {
 SetLampLit("Room4_Candle_4", false, false);
 }
 else if (GetLocalVarInt("Counter") ==  14)
 {
 SetLampLit("Room4_Candle_5", false, false);
 }
 
 if (GetLocalVarInt("Counter") != 16)
 {
 // increase counter var
 SetLocalVarInt("Counter", GetLocalVarInt("Counter") + 1);
 
 // timer to break and move objects
 AddTimer("push", 0.2f, "BreakTimer"); // 0.4 seconds
 }
 else
 {
 SetPlayerSanity(0.0f);
 AddTimer("push_end", 0.2f, "BreakTimer"); // 0.4 seconds
 }
 }
 else if (asTimer == "push_end")
 {
 AddPropImpulse("Room4_Chair_End", -5, 0, 0, "World");
 
 // activate player movement
 SetPlayerActive(true);
 StopPlayerLookAt();
 
 AddTimer("quest", 12, "BreakTimer"); // 12 seconds
 }
 else if (asTimer == "quest")
 {
 AddQuest("Shadow","Shadow");
 }
 }
 
 //-----------------------------------------------------------------------------
 //--- Hallway - Enable Grunts and disable all hallway lights ---
 //-----------------------------------------------------------------------------
 
 void EnableHallGrunts(string &in asParent, string &in asChild, int alState)
 {
 // deactivate player movement
 SetPlayerActive(false);
 
 // let player look at the first grunt
 StartPlayerLookAt("AreaGrunt_1", 4, 8, "");
 
 // Sanity Damage
 GiveSanityDamage(5.0f, true);
 
 // disable lantern
 SetLanternActive(false, false);
 
 // counter var
 SetLocalVarInt("Counter", 0);
 
 // timer to turn the lights off
 AddTimer("lights off", 0.2f, "LightsOffTimer"); // 0.2 seconds
 }
 
 void LightsOffTimer(string &in asTimer)
 {
 if (asTimer == "lights off")
 {
 // set candles off
 SetLampLit("HallM_Candle_" + GetLocalVarInt("Counter"), false, false);
 
 if (GetLocalVarInt("Counter") != 12)
 {
 // increase counter var
 SetLocalVarInt("Counter", GetLocalVarInt("Counter") + 1);
 
 // timer to turn the lights off
 AddTimer("lights off", 0.2f, "LightsOffTimer"); // 0.2 seconds
 }
 else
 {
 // let player look at the floor
 StartPlayerLookAt("AreaLookGrunt", 1, 2, "");
 
 // set all candles off
 SetLampLit("HallM_Candle_*", false, false);
 
 // player sanity '0'
 SetPlayerSanity(0.0f);
 
 // push the player in the middle of the hall
 AddPlayerBodyForce(0, 0, -25000, false);
 
 // timer to spawn the grunts
 AddTimer("spawn grunts", 2.5f, "LightsOffTimer"); // 2.5 seconds
 
 // counter var - "-1" for grunt hit door
 SetLocalVarInt("Counter", -1);
 }
 }
 else if (asTimer == "spawn grunts")
 {
 // sound for monster
 PlayGuiSound("insanity_monster_roar01.ogg", 1.5f);
 
 // enable grunt 1 and let it run to player
 SetEntityActive("servant_brute_1", true);
 ShowEnemyPlayerPosition("servant_brute_1");
 
 // let player look at the first grunt
 StartPlayerLookAt("servant_brute_1", 4, 8, "");
 
 // timer to look at the 2nd grunt
 AddTimer("look to grunt 2", 10.0f, "LightsOffTimer"); // 10 seconds
 }
 else if (asTimer == "look to grunt 2")
 {
 // sound for monster
 PlayGuiSound("insanity_monster_roar02.ogg", 1.5f);
 
 // enable grunt 2 and let it run to player
 SetEntityActive("servant_brute_2", true);
 ShowEnemyPlayerPosition("servant_brute_2");
 
 // let player look at the first grunt
 StartPlayerLookAt("servant_brute_2", 4, 8, "");
 
 // timer to make player active
 AddTimer("look door", 10.0f, "LightsOffTimer"); // 10 seconds
 }
 else if (asTimer == "look door")
 {
 // sound for monster
 PlayGuiSound("enabled01.ogg", 1.5f);
 
 // let player look at the first grunt
 StartPlayerLookAt("Room5_AreaDust", 4, 8, "");
 
 // timer to hit the door
 AddTimer("hit door", 2.0f, "LightsOffTimer"); // 2 seconds
 
 // timer to make player active
 AddTimer("player active", 3.0f, "LightsOffTimer"); // 3 seconds
 }
 else if (asTimer == "hit door")
 {
 if (GetLocalVarInt("Counter") == -1)
 {
 // push the door
 AddPropImpulse("Room5_Door", -25, 0, 0, "World");
 
 // sound for door hit
 PlayGuiSound("hit_wood1.ogg", 1.5f);
 
 // dust
 CreateParticleSystemAtEntity("dust_door", "ps_dust_impact_vert.ps", "Room5_AreaDust", false);
 
 // timer to hit the door
 AddTimer("hit door", RandInt(1, 4), "LightsOffTimer"); // 2 seconds
 }
 
 SetLocalVarInt("random", RandInt(1, 20));
 
 if (GetLocalVarInt("random") == 5)
 {
 // sound for monster
 PlayGuiSound("enabled01.ogg", 1.5f);
 }
 else if (GetLocalVarInt("random") == 10)
 {
 // sound for monster
 PlayGuiSound("enabled02.ogg", 1.5f);
 }
 else if (GetLocalVarInt("random") == 15)
 {
 // sound for monster
 PlayGuiSound("enabled04.ogg", 1.5f);
 }
 }
 else if (asTimer == "player active")
 {
 // activate player movement
 SetPlayerActive(true);
 StopPlayerLookAt();
 
 // timer to play grunt attack music
 AddTimer("attack music", 1.0f, "LightsOffTimer"); // 1 seconds
 }
 else if (asTimer == "attack music")
 {
 // ambient music 'guardian attack'
 PlayMusic("att_guardian", true, 1.0f, 5, 0, true);
 
 // timer to play normal ambient music
 AddTimer("ambient music", 38.0f, "LightsOffTimer"); // 38 seconds
 }
 else if (asTimer == "ambient music")
 {
 // ambient music 'normal'
 PlayMusic("10_amb", true, 0.5f, 5, 0, true);
 
 // counter var reset (stop the grunt hitting the door)
 SetLocalVarInt("Counter", 0);
 }
 }
 
 //-----------------------------------------------------------------------------
 //--- Player died ---
 //-----------------------------------------------------------------------------
 
 void PlayerDied(string &in asName, int alCount)
 {
 StopMusic(1.0f, 1);
 
 // ambient music 'normal'
 PlayMusic("10_amb", true, 0.5f, 5, 0, true);
 
 if (asName == "Room1_Checkpoint")
 {
 // Room1 lights ON / Room2 lights OFF
 CandleSmall_On("", "", 1);
 CandleBig_On("", "", 1);
 }
 else if (asName == "Room2_Checkpoint")
 {
 // Room1 lights OFF / Room2 lights ON
 CandleSmall_Off("", "", 1);
 CandleBig_Off("", "", 1);
 }
 }
 
 //-----------------------------------------------------------------------------
 
 //-----------------------------------------------------------------------------
 //--- ROOM EXIT --- PLAY CREDITS ---
 //-----------------------------------------------------------------------------
 
 void Credits(string &in asParent, string &in asChild, int alState)
 {
 StartCredits("credits.ogg", false, "Ending", "MyCredits", -1);
 }
 
 //-----------------------------------------------------------------------------
 
Regards
iNs
				
(This post was last modified: 05-03-2011, 08:01 PM by iNs.)
 |  |  
	| 04-04-2011, 02:36 PM |  |  
	
		| Streetboat   Posting Freak
 
 Posts: 1,099
 Threads: 40
 Joined: Mar 2011
 Reputation: 
56
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				So uh... why didn't you wait until you had more to show us to make this thread?
			 
 |  |  
	| 04-05-2011, 03:58 AM |  |  
	
		| iNs   Junior Member
 
 Posts: 21
 Threads: 4
 Joined: Mar 2011
 Reputation: 
0
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				 (04-05-2011, 03:58 AM)Streetboat Wrote:  So uh... why didn't you wait until you had more to show us to make this thread? 
Because I just wanted to get some feedback, before I work on it any further. 
I did some scripting, that is new to amnesia, afaik. I wanted to know, how the 
other players would think about it.
 
Also I was interested in some feedback for my level of detail for the rooms.
 
For me, it is easier to ask people BEFORE I created the whole map. 
Because it is hard work to create a map, and Iam not interested to do 
big changes again, after I have finsihed the map.
 
Regards
iNs |  |  
	| 04-05-2011, 01:48 PM |  |  
	
		| Dalroc   Member
 
 Posts: 57
 Threads: 2
 Joined: Mar 2011
 Reputation: 
0
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				Dude, not to be mean or anything, but a corridor and 4 rooms isn't enough too get people interested..You barely give any info either..
 |  |  
	| 04-05-2011, 07:12 PM |  |  
	
		| iNs   Junior Member
 
 Posts: 21
 Threads: 4
 Joined: Mar 2011
 Reputation: 
0
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				 (04-05-2011, 07:12 PM)Dalroc Wrote:  Dude, not to be mean or anything, but a corridor and 4 rooms isn't enough too get people interested..You barely give any info either..
 
You guys dont undestand what Iam saying!
 
I wanted to have FEEDBACK. I did not want to get people interested in my map yet. 
I just wanted some players to test my map, and give a feedback on my scripts 
and on my map and details used for the rooms... thats all and nothing more.
			 |  |  
	| 04-05-2011, 07:28 PM |  |  
	
		| KenOfAllTrades   Member
 
 Posts: 53
 Threads: 2
 Joined: Apr 2011
 Reputation: 
0
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				Hey bro, no worries, I'll try your story
 EDIT: Oh, so DL link isn't in the post, guess I'll have to write a PM then
 
 I probably made a LP of this! Youtube channel here !
				
(This post was last modified: 04-06-2011, 11:42 AM by KenOfAllTrades.)
 |  |  
	| 04-06-2011, 11:41 AM |  |  
	
		| Dark Knight   Senior Member
 
 Posts: 634
 Threads: 5
 Joined: Feb 2008
 Reputation: 
5
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				hey, where "s download link?    |  |  
	| 04-06-2011, 12:04 PM |  |  
	
		| iNs   Junior Member
 
 Posts: 21
 Threads: 4
 Joined: Mar 2011
 Reputation: 
0
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				 (04-06-2011, 12:04 PM)Dark Knight Wrote:  hey, where "s download link?  
The fact that you can write this message, tells me that you can read. 
Now use your skillz and READ the first post.... <.<
			 |  |  
	| 04-06-2011, 02:15 PM |  |  
	
		| Ghostflame   Member
 
 Posts: 152
 Threads: 0
 Joined: Mar 2011
 Reputation: 
0
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				Wow wow wow, no need to be that way about it, just 9 times out of 10 theres a download link, so people assume there is one, it's got nothing to do with reading abilities.
			 |  |  
	| 04-06-2011, 08:36 PM |  |  
	
		| Dark Knight   Senior Member
 
 Posts: 634
 Threads: 5
 Joined: Feb 2008
 Reputation: 
5
 | 
			| RE: [WIP][beta testing] no name yet - v0.2b 
 
				 (04-06-2011, 02:15 PM)iNs Wrote:  The fact that you can write this message, tells me that you can read.Now use your skillz and READ the first post.... <.<
 funny really!
 
can"t realize that    |  |  
	| 04-07-2011, 02:49 PM |  |  |