Seemingly erroneous "missing [x] closing tag" errors

The place to post your WML questions and answers.

Moderator: Forum Moderators

Forum rules
  • Please use [code] BBCode tags in your posts for embedding WML snippets.
  • To keep your code readable so that others can easily help you, make sure to indent it following our conventions.
Zenogias
Posts: 28
Joined: July 5th, 2010, 1:10 pm

Seemingly erroneous "missing [x] closing tag" errors

Post by Zenogias »

Hey all -- this one is really puzzling me. I am using v1.8.2 (stable) of Wesnoth.
I have several multiplayer scenarios I am working on. Several of these are essentially finished except for balancing work.

Suddenly several of these (some not even a function of having preformed recent work on them!) suddenly are giving me errors when loading which say "Missing closing [X] tag in my_scenario.cfg:##, loaded by _main.cfg:##. Value " at my_scenario.map:#Y, loaded by my_scenario.cfg:##

Now when I go to line number #Y which is sometimes referencing a list , like"recruit=xxxx", within my_scenario.cfg, but is more often referencing an (apparently) arbitrary line in the map file, which does NOT have a " value in it. Usually it says that the missing closing tag [X] is the multiplayer closing tag starting the scenario, but a number of times it has reported that I am missing closing tags for [ai] when the [ai] contained keys village_value=0.x (anything with a decimal place) or when it contained a list, such as recruitment_pattern=xxx,xxx,xxx

Any ideas??
User avatar
Iris
Site Administrator
Posts: 6797
Joined: November 14th, 2006, 5:54 pm
Location: Chile
Contact:

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Iris »

An example file? Often people complain about this because they don't notice typos in their code, such as mismatched closing tags, a closing tag without the leading slash, etc.
Author of the unofficial UtBS sequels Invasion from the Unknown and After the Storm.
Zenogias
Posts: 28
Joined: July 5th, 2010, 1:10 pm

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Zenogias »

Yeah, I've been pouring over my code in the handful of indicated instances... I was trying to avoid posting ~900-1000 line cfg's here for other people to proof read. I actually went through one particular file deleting code section by section to isolate the problem and I got this far, and am still getting missing [/multiplayer] errors:

Code: Select all

[multiplayer] 
   id=2pCaveQuestV2
   name= _ "RPGA 2P Cave Quest v2"
   map_data="{~add-ons/RPG_Army/maps/2pCave_Questv2.map}"
   turns="unlimited"
   players=9
   experience_modifier=40
   description= _ "Two player long-battle leveling through various environments."

[/multiplayer]
It references a seemingly arbitrary line in the middle of the map file in the error box as having a " value. There is not one. If I replace {~xxxxx/xxx.map} with a paste of the actual map data, the error messages references the same line of the map code that is now in the cfg file. I made the map using the map editor, and have never edited it outside of the Wesnoth graphical map editor in any way, and did not use any special tiles or custom textures. Here is the line of code from the map it is having problems with:

Code: Select all

Gs^Fp       , Gs^Fp       , Gs^Fp       , Ggf         , Gs^Fp       , Gs^Fp       , Gs^Fp       , Gs^Fp       , Gs^Fp       , Cv          , 7 Kv        , Cv          , Gs^Fp       , Gs^Fp       , Gs^Fp       , Gg^Ve       , Ggf         , Gs^Fp       , Gs^Fp       , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Uu          , Uu          , Rd          , Uu          , Uu          , Uu          , Uh          , Mm          , Mm          , Uu          , Uh          , Uu          , Mm          , Qxu         , Qxu         , Qxu         , Qxu         , Qxu         , Qxu         , Qxu         , Qxu         , Qxu         , Qxu         , Xu          , Xu          , Xu          , Xu          , Xu          , Xu          , Re          , Ur          , Ur          , Ur          , Re          , Hd          , Re          
User avatar
Pentarctagon
Project Manager
Posts: 5526
Joined: March 22nd, 2009, 10:50 pm
Location: Earth (occasionally)

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Pentarctagon »

what file encoding are you using? There was someone with a similar problem because his encoding was ANSI instead of utf8.
99 little bugs in the code, 99 little bugs
take one down, patch it around
-2,147,483,648 little bugs in the code
Zenogias
Posts: 28
Joined: July 5th, 2010, 1:10 pm

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Zenogias »

Hahah! Yay for Pentarctagon! I am infact using ANSI (default -- apparently -- in Notepad ++) so I should be using utf8 or utf8 without BOM??

And if I switch this, and then save all my files again, it should fix the problem... ??
User avatar
Gambit
Loose Screw
Posts: 3266
Joined: August 13th, 2008, 3:00 pm
Location: Dynamica
Contact:

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Gambit »

I doubt this solution to be honest. I used both notepad, and notepad ++ for a while on windows and never changed my encoding from the default.
Put all your code back, open wesnoth, let it build the cache, and then check install-directory/stderr.txt. When it seems like the game is lying about missing tags, the answer is usually in stderr.txt
User avatar
zookeeper
WML Wizard
Posts: 9742
Joined: September 11th, 2004, 10:40 pm
Location: Finland

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by zookeeper »

Zenogias wrote:Any ideas??
Try this.
Zenogias
Posts: 28
Joined: July 5th, 2010, 1:10 pm

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Zenogias »

OK switching to UTF-8 did not fix the problem.

zookeeper, thanks for your advice once again, but I've become fairly certain it is not a problem with my code. If you look at my previously posted code, that was my ENTIRE scenario.cfg file after I got done using your method to cut section by section out of it.

I cut all of MY code OUT of my scenario. It will not clear until the scenario file consist of only:

Code: Select all

[multiplayer]
[/multiplayer]
The error message listed in stderr.txt, which is identical to the error message Wesnoth displays when it fails, is:

Code: Select all

20100821 10:30:29 error general: The following add-on had errors and could not be loaded:
C:/Users/Nathan/Documents/My Games/Wesnoth1.8/data/add-ons/RPG_Army/_main.cfg
ERROR DETAILS:
Missing closing tag for tag multiplayer at ~add-ons/RPG_Army/scenarios/2pCave_Questv2.cfg:1 included from ~add-ons/RPG_Army/_main.cfg:68, value '' at ~add-ons/RPG_Army/maps/2pCave_Questv2.map:43 included from ~add-ons/RPG_Army/scenarios/2pCave_Questv2.cfg:4 included from ~add-ons/RPG_Army/_main.cfg:68

monochromatic
Posts: 1549
Joined: June 18th, 2009, 1:45 am

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by monochromatic »

Post the whole .cfg? And map file if needed.
It's probably some obscure typo that you didn't notice. At least that's it is usually for me.

And dude: there's nothing wrong with the game. If there was a problem, none of the multiplayer maps would work.
User avatar
zookeeper
WML Wizard
Posts: 9742
Joined: September 11th, 2004, 10:40 pm
Location: Finland

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by zookeeper »

Zenogias wrote:OK switching to UTF-8 did not fix the problem.

zookeeper, thanks for your advice once again, but I've become fairly certain it is not a problem with my code. If you look at my previously posted code, that was my ENTIRE scenario.cfg file after I got done using your method to cut section by section out of it.
Oh, right, looks like you mentioned trying that already. Ok, then the most likely cause seems that your file format is just messed up. Often people manage to save their .cfg's in rtf format or something. Just post your .cfg file (the one remaining one without which the errors disappear) as an attachment and we'll see.
Zenogias
Posts: 28
Joined: July 5th, 2010, 1:10 pm

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Zenogias »

Well I didn't necessarily mean to imply there was something wrong with the game. There might be something wrong with my copy's directory structure or a particular game config file that is causing errors unrelated to my actual cfg. I think this game is [censored] awesome. I've been devoting most of my life to it since I discovered it.

Here is the whole cfg:

Code: Select all

[multiplayer] 
   id=2pCaveQuestV2
   name= _ "RPGA 2P Cave Quest v2"
   map_data="{~add-ons/RPG_Army/maps/2pCave_Questv2.map}"
   turns="unlimited"
   players=9
   experience_modifier=40
   description= _ "Two player long-battle leveling through various environments."

 ### VERSION NOTES: Version 1.0.2
 ### This version has been balanced with:
 ### 		Player Leader Non-Death
 ###		Enemy Awakening (2 enemies ahead are awake)
 ###		Enemy and Player Gold gain at boss death
 ###		Enemy gold gain at leader sighting
 ###		Player Recruit enemy units at boss death
 ###		Player Village Gold = 2; Income = 4 (!!SEEMS GOOD!!)
 ###		Enemy units are made to be loyal when they are recruited
 ###
   
{DEFAULT_MUSIC_PLAYLIST}
{DEFAULT_SCHEDULE}


### Set Player Sides ###

      [side]
		side=1
		team_name=1
		canrecruit=yes
		controller=human
		fog=no
		shroud=yes
		village_gold=2
		team_lock=yes
		gold=250
		income=4
		team_lock=yes
		gold_lock=no
		income_lock=no
		share_view=yes
		no_leader=no
		name=_"Player One"
      [/side]
      [side]
		side=2
		team_name=1
		canrecruit=yes
		controller=human
		fog=no
		shroud=yes
		income=4
		village_gold=2
		gold=250
		team_lock=yes
		gold_lock=no
		income_lock=no
		share_view=yes
		no_leader=no
		name=_"Player Two"
       [/side]
    
### Set Enemy Sides at Start ####

     [side]
		side=3
		team_name=2
		canrecruit=yes
		controller=ai
		fog=yes
		shroud=no
		income=12
		village_gold=0
		gold=150
		team_lock=yes
		gold_lock=yes
		income_lock=yes
		allow_player=no
		recruit=Orcish Grunt Ascension,Orcish Assassin Ascension,Wolf Rider Ascension
		[ai]
			village_value=0
		[/ai]
		no_leader=no
		type=Orcish Warlord Ascension
		name=_"Orc Boss"
	[/side]
    [side]
		side=4
		team_name=2
		canrecruit=yes
		controller=ai
		fog=yes
		shroud=no
		income=30
		village_gold=0
		gold=30
		team_lock=yes
		gold_lock=yes
		income_lock=yes
		allow_player=no
		recruit=Duelist Ascension,Heavy Infantryman Ascension,Red Mage Ascension,White Mage Ascension,Swordsman Ascension,Javalineer Ascension
		[ai]
			village_value=0
		[/ai]
		no_leader=no
		type=Arch Mage Ascension
		name=_"Mage Boss"
	[/side]
	[side]
		side=5
		team_name=2
		canrecruit=yes
		controller=ai
		fog=yes
		shroud=no
		income=-2
		village_gold=0
		gold=0
		team_lock=yes
		gold_lock=yes
		income_lock=yes
		allow_player=no
		recruit=Troll Whelp Ascension
        [ai]
			village_value=0
			passive_leader=yes
		[/ai]
		colour=white
		no_leader=no
		type=Troll Warrior Ascension
		name=_"Troll Boss"
	[/side]
	[side]
		side=6
		team_name=2
		canrecruit=yes
		controller=ai
		fog=yes
		shroud=no
		village_gold=0
		income=-2
		gold=0
		team_lock=yes
		gold_lock=yes
		income_lock=yes
		allow_player=no
		recruit=Dwarven Thunderguard Ascension,Dwarven Steelclad Ascension,Dwarven Guardsman Ascension,Dwarven Ulfserker Ascension
		[ai]
			village_value=0.1
			passive_leader=yes
		[/ai]
		no_leader=no
		type=Dwarven Lord Ascension
		name=_"Dwarf Boss"
	[/side]   
	[side]
		side=7
		team_name=2
		canrecruit=yes
		controller=ai
		fog=yes
		shroud=no
		village_gold=0
		income=-2
		gold=0
		team_lock=yes
		gold_lock=yes
		income_lock=yes
		allow_player=no
		recruit=Elven Avenger Ascension,Elven Champion Ascension,Ancient Wose Ascension,Elven Sharpshooter Ascension,Elven Sorceress Ascension,Elven Druid Ascension
		[ai]
			village_value=0.1
			passive_leader=yes
		[/ai]
		no_leader=no
		type=Elven High Lord Ascension
		name=_"Elf Boss"
    [/side]
    [side]
		side=8
		team_name=2
		canrecruit=yes
		controller=ai
		fog=yes
		shroud=no
		village_gold=0
		income=-2
		gold=0
		team_lock=yes
		gold_lock=yes
		income_lock=yes
		allow_player=no
		recruit=Naga Warrior Ascension,Merman Netcaster Ascension,Merman Spearman Ascension
		[ai]
			village_value=0.1
			passive_leader=yes
		[/ai]
		colour=teal
		no_leader=no
		type=Merman Missiler Ascension
		name=_"Merfolk Boss"
    [/side]
    [side]
		side=9
		team_name=2
		canrecruit=yes
		controller=ai
		fog=yes
		shroud=no
		village_gold=0
		income=-2
		gold=0
		team_lock=yes
		gold_lock=yes
		income_lock=yes
		recruit=Necromancer Ascension,Spectre Ascension,Ruinblade Ascension,Ghast Ascension,Banebow Ascension
		allow_player=no
		[ai]
			village_value=0
			passive_leader=yes
		[/ai]
		colour=black
		no_leader=no
		type=Antediluvian Lich Ascension
		name=_"End Boss"
    [/side]

###	Set Player Objectives ###
[event]
	name=start
	[objectives]
		[objective]
			description=_"Defeat the lich king at the end of the cave."
			condition=win
		[/objective]
		[objective]
			description=_"All of your units are destroyed."
			condition=lose
		[/objective]
	[/objectives]
[/event]
	
### Set provisions for death of either player's leader ###

[event]
	name=last breath
	[filter]
		name=_"Player One"
	[/filter]
	first_time_only=no
	[heal_unit]
		[filter]
			name=_"Player One"
		[/filter]
		amount=60
		animate=no
	[/heal_unit]
	[teleport]
		[filter]
			name=_"Player One"
		[/filter]
		x,y=7,2
		clear_shroud=yes
		animate=yes
	[/teleport]
	[unstore_unit]
		variable=unit
	[/unstore_unit]
	[object]
		silent=yes
		[filter]
			find_in=unit
		[/filter]
		[effect]
			apply_to=movement
			increase=2
		[/effect]
	[/object]
[/event]

[event]
	name=last breath
	[filter]
		name=_"Player Two"
	[/filter]
	first_time_only=no
	[heal_unit]
		[filter]
			name=_"Player Two"
		[/filter]
		amount=60
		animate=no
	[/heal_unit]
	[teleport]
		[filter]
			name=_"Player Two"
		[/filter]
		x,y=3,5
		clear_shroud=yes
		animate=yes
	[/teleport]
	[unstore_unit]
		variable=unit
	[/unstore_unit]
	[object]
		silent=yes
		[filter]
			find_in=unit
		[/filter]
		[effect]
			apply_to=movement
			increase=2
		[/effect]
	[/object]
[/event]

### Make all enemy units Loyal
	[event]
		name=prerecruit
		first_time_only=no
		[filter]
			side=3,4,5,6,7,8,9
		[/filter]
		[unstore_unit]
			variable=unit
		[/unstore_unit]
		[object]
			silent=yes
			[filter]
				find_in=unit
			[/filter]
			[effect]
				apply_to=loyal
			[/effect]
		[/object]
	[/event]


#### Set enemy activation upon death of previous enemies ###

[event]
	name=die
	[filter]
	side=3
	name=_"Orc Boss"
	[/filter]
	[modify_side]
		side=5
		gold=80
		income=25
		[ai]
			passive_leader=no
		[/ai]
	[/modify_side]
	[gold]
		amount=120
		side=1
	[/gold]
	[gold]
		amount=120
		side=2
	[/gold]
	[gold]
		amount=80
		side=4
	[/gold]
	[allow_recruit]
		type=Orcish Assassin Ascension
		side=1
	[/allow_recruit]
	[allow_recruit]
		type=Orcish Assassin Ascension
		side=2
	[/allow_recruit]
[/event]

[event]
	name=die
	[filter]
	side=4
	name=_"Mage Boss"
	[/filter]
	[modify_side]
		side=6
		gold=0
		income=30
		[ai]
			passive_leader=no
		[/ai]
	[/modify_side]
	[disallow_recruit]
		type=Troll Whelp Ascension
		side=5
	[/disallow_recruit]
	[allow_recruit]
		type=Troll Grunt Ascenion,Troll Rocklobber Ascension,Troll Shaman Ascension
		side=5
	[/allow_recruit]
	[gold]
		amount=120
		side=1
	[/gold]
	[gold]
		amount=120
		side=2
	[/gold]
	[gold]
		amount=120
		side=5
	[/gold]
	[allow_recruit]
		type=Mage Ascension
		side=1
	[/allow_recruit]
	[allow_recruit]
		type=Mage Ascension
		side=2
	[/allow_recruit]
[/event]

[event]
	name=die
	[filter]
	side=5
	name=_"Troll Boss"
	[/filter]
	[modify_side]
		side=7
		gold=0
		income=50
		[ai]
			passive_leader=no
		[/ai]
	[/modify_side]
	[gold]
		amount=120
		side=1
	[/gold]
	[gold]
		amount=120
		side=2
	[/gold]
	[gold]
		amount=150
		side=6
	[/gold]
	[allow_recruit]
		type=Troll Whelp Ascension
		side=1
	[/allow_recruit]
	[allow_recruit]
		type=Troll Whelp Ascension
		side=2
	[/allow_recruit]
[/event]

[event]
	name=die
	[filter]
	side=6
	name=_"Dwarf Boss"
	[/filter]
	[modify_side]
		side=8
		gold=150
		income=40
		[ai]
			passive_leader=no
		[/ai]
	[/modify_side]
	[gold]
		amount=120
		side=1
	[/gold]
	[gold]
		amount=120
		side=2
	[/gold]
	[gold]
		amount=120
		side=7
	[/gold]
	[allow_recruit]
		type=Dwarven Ulfserker Ascension
		side=1
	[/allow_recruit]
	[allow_recruit]
		type=Dwarven Ulfserker Ascension
		side=2
	[/allow_recruit]
[/event]

[event]
	name=die
	[filter]
	side=7
	name=_"Elf Boss"
	[/filter]
	[modify_side]
		side=9
		gold=100
		income=40
		[ai]
			passive_leader=no
		[/ai]
	[/modify_side]
	[gold]
		amount=120
		side=1
	[/gold]
	[gold]
		amount=120
		side=2
	[/gold]
	[gold]
		amount=80
		side=8
	[/gold]
	[allow_recruit]
		type=Elven Shaman Ascension
		side=1
	[/allow_recruit]
	[allow_recruit]
		type=Elven Shaman Ascension
		side=2
	[/allow_recruit]
[/event]

[event]
	name=die
	[filter]
	side=8
	name=_"Merfolk Boss"
	[/filter]
	[gold]
		amount=150
		side=1
	[/gold]
	[gold]
		amount=150
		side=2
	[/gold]
	[gold]
		amount=60
		side=9
	[/gold]
	[allow_recruit]
		type=Phantom Ascenion,Warlock Ascension,Abomination Ascenion
		side=9
	[/allow_recruit]
	[disallow_recruit]
		type=Necromancer Ascension,Spectre Ascension,Ghast Ascension
		side=9
	[/disallow_recruit]
	[allow_recruit]
		type=Orcish Prowler Ascension,Silver Mage Ascension,Troll Shaman Ascension,Dwarven Rampager Ascension,Elven Enchantress Ascension
		side=1
	[/allow_recruit]
	[allow_recruit]
		type=Orcish Prowler Ascension,Silver Mage Ascension,Troll Shaman Ascension,Dwarven Rampager Ascension,Elven Enchantress Ascension
		side=2
	[/allow_recruit]
[/event]


### Further balancing events (gold when boss sited, etc.)
[event]
	name=sighted
	[filter]
		name=_"Orc Boss"
	[/filter]
	[filter_second]
		side=1,2
	[/filter_second]
	[gold]
		amount=80
		side=3
	[/gold]
[/event]

[event]
	name=sighted
	[filter]
		name=_"Mage Boss"
	[/filter]
	[filter_second]
		side=1,2
	[/filter_second]
	[gold]
		amount=120
		side=4
	[/gold]
[/event]

[event]
	name=sighted
	[filter]
		name=_"Troll Boss"
	[/filter]
	[filter_second]
		side=1,2
	[/filter_second]
	[gold]
		amount=100
		side=5
	[/gold]
[/event]

[event]
	name=sighted
	[filter]
		name=_"Dwarf Boss"
	[/filter]
	[filter_second]
		side=1,2
	[/filter_second]
	[gold]
		amount=80
		side=6
	[/gold]
[/event]

[event]
	name=sighted
	[filter]
		name=_"Elf Boss"
	[/filter]
	[filter_second]
		side=1,2
	[/filter_second]
	[gold]
		amount=100
		side=7
	[/gold]
[/event]

[event]
	name=sighted
	[filter]
		name=_"Merfolk Boss"
	[/filter]
	[filter_second]
		side=1,2
	[/filter_second]
	[gold]
		amount=60
		side=4
	[/gold]
[/event]
[/multiplayer]
Here is the ENTIRE cfg file AFTER I got done using zookeepers method of deleting code section by section trying to isolate the problem -- this STILL fails (unsurprising since, according the fail message, it is a part of the map that fails)

Code: Select all

[multiplayer] 
   id=2pCaveQuestV2
   name= _ "RPGA 2P Cave Quest v2"
   map_data="{~add-ons/RPG_Army/maps/2pCave_Questv2.map}"
   turns="unlimited"
   players=9
   experience_modifier=40
   description= _ "Two player long-battle leveling through various environments."

[/multiplayer]
Attachments
2pCave_Questv2.cfg
Whole cfg file
(10.63 KiB) Downloaded 154 times
2pCave_Questv2_fixing.cfg
Version I cut code from
(299 Bytes) Downloaded 128 times
Zenogias
Posts: 28
Joined: July 5th, 2010, 1:10 pm

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Zenogias »

I can't post the map since it contains too many characters and I can't upload it since it's too large.

Also, I reference ascension units [Great work, nicely done] which obviously I would have changed or sought permission for before I ever intended to publish :P :P
User avatar
zookeeper
WML Wizard
Posts: 9742
Joined: September 11th, 2004, 10:40 pm
Location: Finland

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by zookeeper »

Well, 2pCave_Questv2.cfg doesn't have any errors in it. So, it's probably the map file then. However, what do you mean it's "too large" to upload? Map files aren't big. If the problem is that the forum doesn't let you attach a file with the .map extension, then you can just change that to .txt or something.
Zenogias
Posts: 28
Joined: July 5th, 2010, 1:10 pm

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Zenogias »

zookeeper:
Well, 2pCave_Questv2.cfg doesn't have any errors in it.
Yay! :mrgreen: (To everyone operating under the assumption my code was wrong: told you :P I've been over it a thousand times..)


Well, my map file is 81k - it's a fairly large map, 72x84 or something on that order.. Just made a new, blank map (all grass) of the same size using the map editor and saved it, and it is the same file size..

When I attempt to attach I get: "The file is too big, maximum allowed size is 50 KiB.
When I attempt to post it I am warned that I am over the character limit for a post.
Zenogias
Posts: 28
Joined: July 5th, 2010, 1:10 pm

Re: Seemingly erroneous "missing [x] closing tag" errors

Post by Zenogias »

OK, well part1 is everything BEFORE line 40

and part2 IS line 40, and everything after.

Paste the entire contents of part2 at the end of part1 on a new line, and then delete the "_part1" from the file name, and you will have reproduced my map file in its entirety. (Line 43 is where the loading fails; and if I delete the entire contents of line 43, shifting the rest of the code up a line and making the map a row of hexes shorter, then it STILL fails on line 43)
Attachments
2pCave_Questv2_part2.map
(45.24 KiB) Downloaded 138 times
2pCave_Questv2_part1.map
(35.43 KiB) Downloaded 141 times
Post Reply