script error


(BaronBlabla) #1

I think alot of people have this problem, when I make an objective and script it and try to play it, it says something like error line 10 } exspected…


(kamikazee) #2

Common answer for a common question: check where a “}” is missing.


(cookie_box) #3

i got the same problem, its just that, i have checked a million times now, and there is no “{” missing… :? what could be wrong??


(mazdaplz) #4

i had that problem before, i had set up a new script wrong.

instead of writing trigger something inside a routine, i just named it something else. EITHER way man, i suggest you try putting an extra { anyway, i mean give it what it asks and i bet a new error message will appear leading to ultimately the answer you seek


(Roeltje) #5

it could also be that you had something like:

{
wm_announce "blabla
}

as you see the { and the } are ok, but you forgot the " at the end of the announce.
ET does not like that :wink:


(Flippy) #6

Can you post your script?
There can be a number of possibilities here…

for example, having:

goldbar1
{
blabla
}

when your entity is actually called “goldbar_1”
for some reason ET doesn’t recognize this and thinks you have an { too many…


(cookie_box) #7
game_manager
{
	spawn
	{

	// Game rules
	wm_axis_respawntime	18
	wm_allied_respawntime	14
	wm_number_of_objectives 6
	wm_set_round_timelimit	30

	// Objectives
	// 1: City gate
	// 2: Gun controles
	// 3: K5 barrel
	// 4: Ammo dump gate
	// 5: Ammo dump

	// Objective overview status indicators
	//wm_objective_status <objective> <team (0=Axis, 1=Allies)> <status (0=neutral 1=complete 2=failed)>
	wm_objective_status 1 1 0
	wm_objective_status 1 0 0
	wm_objective_status 2 1 0
	wm_objective_status 2 0 0
	wm_objective_status 3 1 0
	wm_objective_status 3 0 0
	wm_objective_status 4 1 0
	wm_objective_status 4 0 0
	wm_objective_status 5 1 0
	wm_objective_status 5 0 0

	globalaccum 1 set 0	
	globalaccum 2 set 0
	globalaccum 3 set 0


	// Stopwatch mode defending team (0=Axis, 1=Allies)
	wm_set_defending_team	0

	// Winner on expiration of round timer (0=Axis, 1=Allies)
	wm_setwinner	0

	
	// wait for everything to settle
	wait 1000
	}

	trigger allies_win
	{
		globalaccum 1 abort_if_not_equal 1
		globalaccum 2 abort_if_not_equal 1
		globalaccum 3 abort_if_not_equal 1
		
		wm_setwinner 1
		wait 500
		wm_endround
	}

}

// ================================================
// ============   Main objectives    ==============
// ================================================

controls
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{


		globalaccum 1 set 1		
	
		wm_announce	"Allies have destroyed the gun controles!"

		trigger game_manager allies_win	
	}
}
}

bm
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{

		globalaccum 2 set 1		
	
		wm_announce	"Allies have destroyed the k5 barrel!"

		trigger game_manager allies_win	
	}
}
}

ammo
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{

		globalaccum 3 set 1		
	
		wm_announce	"Allies have blown the ammo dump!"

		trigger game_manager allies_win	
	}
}
}

gate
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{

		globalaccum 3 set 1		
	
		wm_announce	"Allies have breached the main gate!"

	}
}
}

bg
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{

		globalaccum 3 set 1		
	
		wm_announce	"Allies have breached the ammo depot gate!"

	}
}
}

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

(mazdaplz) #8

why does it have double brackets at the end?


(cookie_box) #9

oops…! sorry! this one is the right one

game_manager
{
	spawn
	{

	// Game rules
	wm_axis_respawntime	18
	wm_allied_respawntime	14
	wm_number_of_objectives 6
	wm_set_round_timelimit	30

	// Objectives
	// 1: City gate
	// 2: Gun controles
	// 3: K5 barrel
	// 4: Ammo dump gate
	// 5: Ammo dump

	// Objective overview status indicators
	//wm_objective_status <objective> <team (0=Axis, 1=Allies)> <status (0=neutral 

1=complete 2=failed)>
	wm_objective_status 1 1 0
	wm_objective_status 1 0 0
	wm_objective_status 2 1 0
	wm_objective_status 2 0 0
	wm_objective_status 3 1 0
	wm_objective_status 3 0 0
	wm_objective_status 4 1 0
	wm_objective_status 4 0 0
	wm_objective_status 5 1 0
	wm_objective_status 5 0 0

	globalaccum 1 set 0	
	globalaccum 2 set 0
	globalaccum 3 set 0


	// Stopwatch mode defending team (0=Axis, 1=Allies)
	wm_set_defending_team	0

	// Winner on expiration of round timer (0=Axis, 1=Allies)
	wm_setwinner	0

	
	// wait for everything to settle
	wait 1000
	}

	trigger allies_win
	{
		globalaccum 1 abort_if_not_equal 1
		globalaccum 2 abort_if_not_equal 1
		globalaccum 3 abort_if_not_equal 1
		
		wm_setwinner 1
		wait 500
		wm_endround
	}

}

// ================================================
// ============   Main objectives    ==============
// ================================================

controls
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{


		globalaccum 1 set 1		
	
		wm_announce	"Allies have destroyed the gun controles!"

		trigger game_manager allies_win	
	}
}

bm
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{

		globalaccum 2 set 1		
	
		wm_announce	"Allies have destroyed the k5 barrel!"

		trigger game_manager allies_win	
	}
}

ammo
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{

		globalaccum 3 set 1		
	
		wm_announce	"Allies have blown the ammo dump!"

		trigger game_manager allies_win	
	}
}

gate
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{

		globalaccum 3 set 1		
	
		wm_announce	"Allies have breached the main gate!"

	}
}

bg
{
	spawn
	{
		wait 200
		constructible_class 3
	}
	trigger setup
	{

	}
	death
	{

		globalaccum 3 set 1		
	
		wm_announce	"Allies have breached the ammo depot gate!"

	}
}

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

(LaggingTom) #10

	//wm_objective_status <objective> <team (0=Axis, 1=Allies)> <status (0=neutral    <---

1=complete 2=failed)>
	wm_objective_status 1 1 0
	wm_objective_status 1 0 0
	

I think your problem is the space where I put the arrow. Try making it show up on one line, like so:


	//wm_objective_status <objective> <team (0=Axis, 1=Allies)> <status (0=neutral 1=complete 2=failed)>
	wm_objective_status 1 1 0
	wm_objective_status 1 0 0
	

(Flippy) #11

I think so too…

ET handles every line as a individual line so even if there wasn’t enouhg room for that line of comment and it automatically switched to the next line, ET doesn’t know this and you still need to put // infront of the second line too


(cookie_box) #12

i got it workin, i found out that it needed room between

      wait 200 
      constructible_class 3

Thx for the help :smiley:


(Flippy) #13

What do you mean… ‘it neede room’?
If you mean adding a blank line between the two lines, this will not change your script at all lol. blank lines, spaces or tabs are ignored (as long as they are not in the middle of a word)


(murka) #14

he fixed it but the last thing he did was the room between those things and he thinks that it was the problem, irw


(OogieBoogie) #15

i got the same error
heres my script, the command post is a prefab


game_manager
{
	spawn
	{
		wm_axis_respawntime	15
		wm_allied_respawntime	10
		wm_set_round_timelimit	30
		wm_number_of_objectives 3

		// Stopwatch mode defending team (0=Axis, 1=Allies)
		wm_set_defending_team	0

		// Winner on expiration of round timer (0=Axis, 1=Allies, -1=Nobody)
		wm_setwinner 0

		wait 300

		// Objectives
		// 1 Primary Objective: Allies must destroy the Supply Crates
		// obj nbr, team, status (0=none, 1=passed, 2=failed)
		wm_objective_status 1 0 0
		wm_objective_status 1 1 0

		setautospawn "Church" 0
		setautospawn "Church" 1
	}

// ================================================
neutral_cp_toi
{
	trigger show_neutral_cabinet			// Show Neutral Closed CP
	{
		setstate neutral_cp_closed default
		setstate neutral_cp_closed_model default
	}

	trigger hide_neutral_cabinet			// Hide Neutral Closed CP
	{
		setstate neutral_cp_closed invisible
		setstate neutral_cp_closed_model invisible
	}


// ================================================
allied_cp_open
{
	spawn
	{
		wait 100

		constructible_class 2			// Dyno+Satchel

		trigger self disable_cp_features		// Default charge bar times

		wait 1000
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 1 "allies_hq_compost_construct"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"
		wm_teamvoiceannounce 0 "axis_hq_compost_construct"
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger disable_cp_features
	{
		setstate allied_cp_open_model invisible	// Hide Open CP model

		setchargetimefactor 1 soldier 1
		setchargetimefactor 1 lieutenant 1
		setchargetimefactor 1 medic 1
		setchargetimefactor 1 engineer 1
		setchargetimefactor 1 covertops 1

		sethqstatus 1 0			// Landmines team warning message
		disablespeaker speaker_allied_cp		// Disable morse code sound
	}

	trigger enable_cp_features
	{
		setstate allied_cp_open_model default	// Show open CP model

		setchargetimefactor 1 soldier 0.75
		setchargetimefactor 1 lieutenant 0.75
		setchargetimefactor 1 medic 0.75
		setchargetimefactor 1 engineer 0.75
		setchargetimefactor 1 covertops 0.75

		sethqstatus 1 1			// Landmines team warning message
		enablespeaker speaker_allied_cp		// Enable morse code sound
	}

	buildstart final
	{
		trigger neutral_cp_toi hide_neutral_cabinet	// Hide Neutral CP model+clip brush
	}

	built final
	{
		trigger self enable_cp_features		// Increase charge bar times
		wm_announce "Allied Command Post constructed. Charge speed increased!"
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		wm_teamvoiceannounce 1 "allies_hq_compost_constructed"
		wm_removeteamvoiceannounce 1 "allies_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	decayed final
	{
		setstate allied_cp_open_model invisible	// Hide Open CP model
		trigger neutral_cp_toi show_neutral_cabinet	// Show Neutral CP model+clip brush
	}

	death
	{
		trigger neutral_cp_toi show_neutral_cabinet	// Show Neutral CP model+clip brush
		trigger self disable_cp_features		// Default charge bar times

		wm_announce "Axis team has destroyed the Allied Command Post!"
		// *----------------------------------- vo ------------------------------------------*
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"
		wm_teamvoiceannounce 0 "axis_hq_compost_construct"
		wm_teamvoiceannounce 1 "allies_hq_compost_damaged"
		// *----------------------------------- vo ------------------------------------------*
	}
}

// ================================================
axis_cp_open
{
	spawn
	{
		wait 100

		constructible_class 2			// Dyno+Satchel

		trigger self disable_cp_features		// Default charge bar times
	}

	trigger disable_cp_features
	{
		setstate axis_cp_open_model invisible	// Hide Open CP model

		setchargetimefactor 0 soldier 1
		setchargetimefactor 0 lieutenant 1
		setchargetimefactor 0 medic 1
		setchargetimefactor 0 engineer 1
		setchargetimefactor 0 covertops 1

		sethqstatus 0 0			// Landmines team warning message
		disablespeaker speaker_axis_cp		// Disable morse code sound
	}

	trigger enable_cp_features
	{
		setstate axis_cp_open_model default	// Show open CP model

		setchargetimefactor 0 soldier 0.75
		setchargetimefactor 0 lieutenant 0.75
		setchargetimefactor 0 medic 0.75
		setchargetimefactor 0 engineer 0.75
		setchargetimefactor 0 covertops 0.75

		sethqstatus 0 1			// Landmines team warning message
		enablespeaker speaker_axis_cp		// Enable morse code sound
	}

	buildstart final
	{
		trigger neutral_cp_toi hide_neutral_cabinet	// Hide Neutral CP model+clip brush
	}

	built final
	{
		trigger self enable_cp_features		// Increase charge bar times

		wm_announce "Axis Command Post constructed. Charge speed increased!"
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 0 "axis_hq_compost_constructed"
		wm_teamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		wm_removeteamvoiceannounce 0 "axis_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	decayed final
	{
		setstate axis_cp_open_model invisible	// Hide Open CP model
		trigger neutral_cp_toi show_neutral_cabinet	// Show Neutral CP model+clip brush
	}

	death
	{
		trigger neutral_cp_toi show_neutral_cabinet	// Show Neutral CP model+clip brush
		trigger self disable_cp_features		// Default charge bar times

		wm_announce "Allied team has destroyed the Axis Command Post!"
		// *----------------------------------- vo ------------------------------------------*
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"
		wm_teamvoiceannounce 0 "axis_hq_compost_damaged"
		wm_teamvoiceannounce 1 "allies_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
}
}


forward_flag
{
spawn

{

accum 0 set 2 // Who owns flag: 0-Axis, 1-Allied, 2-Nobody

}

trigger axis_capture // Touched by an Axis player

{

accum 0 abort_if_equal 0 // do Axis own flag?

accum 0 trigger_if_equal 1 forward_flag axis_reclaim // Reclaimed from Allies

accum 0 set 0 // Axis own the flag

wm_announce "Axis have captured the Church!"

setstate forward_wobj default

}

trigger axis_reclaim

{

alertentity forward_wobj // Switch command map marker

}

trigger allied_capture // Touched by an allied player

{

accum 0 abort_if_equal 1 // do Allies own flag?

accum 0 set 1 // Allied own the flag

wm_announce "Allies have captured the Church!"

setstate forward_wobj default

alertentity forward_wobj // Switch command map marker

}
}


st_louet
{
	spawn
 	{
 	 	wait 300

 	 	constructible_class 3 // 2=satchel 3=dyna
 	}
	death
 	{
	trigger st_louet_toi remove
	wm_objective_status 1 0 2
	wm_objective_status 1 1 1

 	 	wm_announce "The Allies have destroyed the Supply Crates!"

 	 	trigger game_manager allies_win
 	}
st_louet_toi
{
 	trigger remove
 	{
 	 	remove
 	}
	trigger allies_win
{
		wm_announce "The Allies blew up the Supply Crates~!"

		wm_setwinner 1

		wait 5000

		wm_endround

	}
}

i bet i have put a { or } that its not necessary or something else


(murka) #16

first try making tabs and spaces between so you can understand where the script ends and start is if ur lookin thru. manyyyyyyyyyyy problems here.


      // Objectives
      // 1 Primary Objective: Allies must destroy the Supply Crates
      // obj nbr, team, status (0=none, 1=passed, 2=failed)
      wm_objective_status 1 0 0
      wm_objective_status 1 1 0

      setautospawn "Church" 0
      setautospawn "Church" 1
   }

// ================================================

this is the end of ur game_manager but ur missing a } at the end


neutral_cp_toi
{
   trigger show_neutral_cabinet         // Show Neutral Closed CP
   {
      setstate neutral_cp_closed default
      setstate neutral_cp_closed_model default
   }

   trigger hide_neutral_cabinet         // Hide Neutral Closed CP
   {
      setstate neutral_cp_closed invisible
      setstate neutral_cp_closed_model invisible
   }


again missing a } at the end


st_louet
{
   spawn
    {
        wait 300

        constructible_class 3 // 2=satchel 3=dyna
    }
   death
    {
   trigger st_louet_toi remove
   wm_objective_status 1 0 2
   wm_objective_status 1 1 1

        wm_announce "The Allies have destroyed the Supply Crates!"

        trigger game_manager allies_win
    }
st_louet_toi
{
    trigger remove
    {
        remove
    }
   trigger allies_win
{
      wm_announce "The Allies blew up the Supply Crates~!"

      wm_setwinner 1

      wait 5000

      wm_endround

   }
} 

aaaaah. put SPACES plz. st_louet_toi is a new piece of script, and its stuck to the end of the last. before it theres a } missing at the end AGAIN

the syntax is


blabla(scriptname)
{
    spawn(or an other event)
    {
        blabla(the things to happen)
    }
}

and try to keep everythink like this, spaces only a visual but can help if you have mistakes, not hard to understand where it ends eh?


(OogieBoogie) #17

i can understand because i use crimson editor :smiley:
but i knew i had lots of problems thanks