| 
		
	
		| Manakind   Junior Member
 
 Posts: 4
 Threads: 1
 Joined: Oct 2011
 Reputation: 
0
 | 
			| monster script setup 
 
				hello i was following the wiki guide setting up a monster as im new to scripting i need some help here i think ive made an error somewhere in the script.
 void TimerTutorial01(string &in asTimer)
 {
 SetMessage("Inventory", "CombineLevel12Error", 0);
 }
 
 void OnStart()
 {
 AddTimer("tut01", 5, "TimerTutorial01");
 
 {
 GiveItemFromFile("lantern", "lantern.ent");
 
 for(int i=0;i<10;i++) GiveItemFromFile("tinderbox_"+i, "tinderbox.ent");
 }
 {
 AddEntityCollideCallback("Player", "ScriptArea_1", "MonsterFunction", true, 1);
 
 }
 void MonsterFunction(string &in asParent, string &in asChild, int alState)
 {
 SetEntityActive("servant_grunt_1", true);
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_1", 2, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_6", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_7", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_8", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_9", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_10", 4, "");
 }
 void OnEnter()
 {
 
 }
 
 void OnLeave()
 {
 
 }
 
 this is my whole script thus far and i wanted my monster to spawn from a point and follow path nodes. but every time i start my level he doesnt spawn when i hit my scripted area spot. any ideas as to what im doing wrong? mucho help appriciate
 
 |  |  
	| 10-03-2011, 09:42 PM |  |  
	
		| Urkle   FG - Associate
 
 Posts: 1,172
 Threads: 31
 Joined: Jul 2006
 Reputation: 
21
 | 
			| RE: monster script setup 
 
				I moved this over to the Customstories/modifications thread for Amnesia as the HPL1 forum is for the Opensource Penumbra engine.
 
 
 
 Developing away on one ofMultiple Macs running 10.6, 10.7, 10.8, and 10.9.
 Linux, 8-core AMD, 8GB RAM, Fedora 18, nVidia 450 1GB
 |  |  
	| 10-03-2011, 09:50 PM |  |  
	
		| Manakind   Junior Member
 
 Posts: 4
 Threads: 1
 Joined: Oct 2011
 Reputation: 
0
 | 
			| RE: monster script setup 
 
				bump bump =) still cant figure out where ive gone wrong. would love some help. 
 |  |  
	| 10-04-2011, 01:00 PM |  |  
	
		| Your Computer   SCAN ME!
 
 Posts: 3,456
 Threads: 32
 Joined: Jul 2011
 Reputation: 
235
 | 
			| RE: monster script setup 
 
				Wait, the map worked for you without the game exiting with a script error? 
Try replacing your code with this:
 void TimerTutorial01(string &in asTimer){
 SetMessage("Inventory", "CombineLevel12Error", 0);
 }
 
 void OnStart()
 {
 AddTimer("tut01", 5, "TimerTutorial01");
 GiveItemFromFile("lantern", "lantern.ent");
 
 for(int i=0;i<10;i++) GiveItemFromFile("tinderbox_"+i, "tinderbox.ent");
 
 AddEntityCollideCallback("Player", "ScriptArea_1", "MonsterFunction", true, 1);
 }
 
 void MonsterFunction(string &in asParent, string &in asChild, int alState)
 {
 SetEntityActive("servant_grunt_1", true);
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_1", 2, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_6", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_7", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_8", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_9", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_10", 4, "");
 }
 
 void OnEnter()
 {
 
 }
 
 void OnLeave()
 {
 
 }
 |  |  
	| 10-04-2011, 01:20 PM |  |  
	
		| i3670   Posting Freak
 
 Posts: 1,308
 Threads: 74
 Joined: Oct 2011
 Reputation: 
36
 | 
			| RE: monster script setup 
 
				Hi Your Computer, you may remember me from yesterday   
I got the same problem with my monster, he just won't spawn.
 
Script:
 
void MyFunc(string &in asParent, string &in asChild, int alState) 
{  
AddEntityCollideCallback("Player", "Sound_5", "StartMusic", true, 1); 
AddEntityCollideCallback("Player", "Sound_3", "StartMusic", true, 1); 
AddEntityCollideCallback("Player", "Music_1", "StartMusic", true, 1); 
AddEntityCollideCallback("Player", "ScriptArea_1", "MonsterFunction", true, 1); 
}  
void MonsterFunction(string &in asParent, string &in asChild, int alState) 
{ 
SetEntityActive("servant_grunt_1", true);  
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_1", 2, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_6", 0, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_7", 0, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_8", 0, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_9", 0, ""); 
AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_10", 4, ""); 
}
			 |  |  
	| 10-04-2011, 03:24 PM |  |  
	
		| Manakind   Junior Member
 
 Posts: 4
 Threads: 1
 Joined: Oct 2011
 Reputation: 
0
 | 
			| RE: monster script setup 
 
				 (10-04-2011, 01:20 PM)Your Computer Wrote:  Wait, the map worked for you without the game exiting with a script error?
 Try replacing your code with this:
 
 void TimerTutorial01(string &in asTimer){
 SetMessage("Inventory", "CombineLevel12Error", 0);
 }
 
 void OnStart()
 {
 AddTimer("tut01", 5, "TimerTutorial01");
 GiveItemFromFile("lantern", "lantern.ent");
 
 for(int i=0;i<10;i++) GiveItemFromFile("tinderbox_"+i, "tinderbox.ent");
 
 AddEntityCollideCallback("Player", "ScriptArea_1", "MonsterFunction", true, 1);
 }
 
 void MonsterFunction(string &in asParent, string &in asChild, int alState)
 {
 SetEntityActive("servant_grunt_1", true);
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_1", 2, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_6", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_7", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_8", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_9", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_10", 4, "");
 }
 
 void OnEnter()
 {
 
 }
 
 void OnLeave()
 {
 
 }
 yep my script works without an error, now ive replaced my script with yours and the same thing is happening my map works but when i goto my designated area my inactive mob doesnt spawn. any suggestions? 
			 
				
(This post was last modified: 10-04-2011, 03:54 PM by Manakind.)
 |  |  
	| 10-04-2011, 03:26 PM |  |  
	
		| Your Computer   SCAN ME!
 
 Posts: 3,456
 Threads: 32
 Joined: Jul 2011
 Reputation: 
235
 | 
			| RE: monster script setup 
 
				I'm going to need you guys to add this function to your script: MonsterCheck(string &in entity, string &in type){
 AddDebugMessage(type, false);
 }
Then in the level editor, select your monster and on the right, under the Entity tab, type in MonsterCheck  for the CallbackFunc field. Be sure to save.
 
Also, update the MonsterFunction function so that it looks like this:
 void MonsterFunction(string &in asParent, string &in asChild, int alState){
 AddDebugMessage(asChild+" has activated!", false);
 SetEntityActive("servant_grunt_1", true);
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_1", 2, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_6", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_7", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_8", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_9", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_10", 4, "");
 }
Save. Now load your map and make sure show debug messages is enabled in your debug menu. Now activate the area by colliding with it and tell me if you see any text at the bottom left that says either "ScriptArea_1 has activated!" or "OnAutoDisabled" or both.
			
 |  |  
	| 10-04-2011, 05:34 PM |  |  
	
		| Manakind   Junior Member
 
 Posts: 4
 Threads: 1
 Joined: Oct 2011
 Reputation: 
0
 | 
			| RE: monster script setup 
 
				 (10-04-2011, 05:34 PM)Your Computer Wrote:  I'm going to need you guys to add this function to your script:
 MonsterCheck(string &in entity, string &in type){
 AddDebugMessage(type, false);
 }
Then in the level editor, select your monster and on the right, under the Entity tab, type in MonsterCheck for the CallbackFunc field. Be sure to save.
 
 Also, update the MonsterFunction function so that it looks like this:
 
 void MonsterFunction(string &in asParent, string &in asChild, int alState){
 AddDebugMessage(asChild+" has activated!", false);
 SetEntityActive("servant_grunt_1", true);
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_1", 2, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_2", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_3", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_4", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_5", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_6", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_7", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_8", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_9", 0, "");
 AddEnemyPatrolNode("servant_grunt_1", "PathNodeArea_10", 4, "");
 }
Save. Now load your map and make sure show debug messages is enabled in your debug menu. Now activate the area by colliding with it and tell me if you see any text at the bottom left that says either "ScriptArea_1 has activated!" or "OnAutoDisabled" or both.
 silly question but how do you activate debug mode? ive tested the map and its not activating for me. would like to check if it says activated or onautodisabled =)
			 |  |  
	| 10-04-2011, 07:40 PM |  |  
	
		| i3670   Posting Freak
 
 Posts: 1,308
 Threads: 74
 Joined: Oct 2011
 Reputation: 
36
 | 
			| RE: monster script setup 
 
				Same question as above. activate debug?
 Tried to run the map. Gave me the error message: main(25,13): ERR : Expected identifier
 
 |  |  
	| 10-04-2011, 07:51 PM |  |  
	
		| Your Computer   SCAN ME!
 
 Posts: 3,456
 Threads: 32
 Joined: Jul 2011
 Reputation: 
235
 |  |  
	| 10-05-2011, 12:47 AM |  |  |