Page 1 of 1

[1.0] Characters stuck in endless lau errors (

Posted: Sun Jan 13, 2013 7:09 pm
by Galestorm
I have two characters stuck (three, actually but one is for b43 version) with a similar bug/error.

On entering the zone (Unremarkable Cave, High Peaks 1), I receive the follow error messages, and a seemingly endless string of lau error messages.

--------------- Stack Dump Finished ---------------
[USERCHAT] channel achievement Incansus tome Squadmate
Lua Error: /mod/class/interface/Archery.lua:445: attempt to index global 'realweapon' (a nil value)
At [C]:-1 __index
At /mod/class/interface/Archery.lua:445 archeryDefaultProjectileVisual
At /data/talents/techniques/archery.lua:356 getTalentTarget
At /mod/ai//tactical.lua:69 runAI
At /mod/ai//tactical.lua:392 doAI
At /mod/class/NPC.lua:60 act
At /engine/GameEnergyBased.lua:131 tickLevel
At /engine/GameEnergyBased.lua:62 tick
At /engine/GameTurnBased.lua:46 tick
At /mod/class/Game.lua:1041

I would appreciate any help!

Galestorm

Re: [1.0] Characters stuck in endless lau errors (

Posted: Thu Jan 17, 2013 2:28 pm
by areacode212
I got this exact error in RC4, at the Sher'Tul Fortress after being summoned about the farportal room being open.

I ended up clearing the error by opening data/talents/techniques/archery.lua:356 and removing "display=self:archeryDefaultProjectileVisual(weapon,ammo)".

I didn't really investigate further since I just wanted to continue my game (so far, it's easily my best run of the game ever).

I'm not really sure why the "Scatter Shot" talent code is being called, because I'm playing a Yeek Summoner with no archery skills, and the only monsters in the area are the devourers. It's also the only talent that appears to call archeryDefaultProjectileVisual in this file...thought that was a bit odd, but this is my first time looking at the source.

Re: [1.0] Characters stuck in endless lau errors (

Posted: Sat Jan 19, 2013 12:53 am
by Galestorm
Well I have tried fixing the problem several different ways.

Commenting out the line in /mod/class/interface/Archery.Lau (line444-446) didn't seem to fix the problem.

Code: Select all

function _M:archeryDefaultProjectileVisual(weapon, ammo)
    return {display=' ', particle="arrow", particle_args={tile="shockbolt/"..(ammo.proj_image or realweapon.proj_image):gsub("%.png$", "")}}
The other place the error popped up was in /data/talents/techniques/archery.lau (line 356) where I tried editing out the call to selfLarcheryDefaultProjectileVisual(weapon,ammo). This is under the Scatter Shot talent. As my character is an Archmage, and there were no archers present I have no idea why the error would occur.

Code: Select all

return {type="ball", radius=self:getTalentRadius(t), range=self:getTalentRange(t)}---, display=self:archeryDefaultProjectileVisual(weapon, ammo)}
This seemed to fix the problem and I was able to play (with some message about using offline profile, I am guessing because I modified the game files). This however lead to errors the first time I encountered Archer units, those error were single and clicking on it made it go away.

Code: Select all

The error message now is (may not be useful as I have modified the files)
stack traceback:
	[C]: in function 'error'
	/engine/interface/ActorTalents.lua:137: in function </engine/interface/ActorTalents.lua:126>
Lua Error: /engine/interface/ActorTalents.lua:145: /engine/interface/ActorTalents.lua:137: /mod/class/interface/Archery.lua:433: attempt to call method 'archeryDefaultProjectileVisual' (a nil value)
stack traceback:
	/mod/class/interface/Archery.lua:433: in function 'archeryShoot'
	/data/talents/techniques/archery.lua:47: in function </data/talents/techniques/archery.lua:44>
	[C]: in function 'xpcall'
	/engine/interface/ActorTalents.lua:132: in function </engine/interface/ActorTalents.lua:126>
	At [C]:-1 
	At [C]:-1 error
	At /engine/interface/ActorTalents.lua:145 useTalent
	At /engine/ai//talented.lua:52 runAI
	At /engine/ai//talented.lua:61 doAI
	At /mod/class/NPC.lua:60 act
	At /engine/GameEnergyBased.lua:131 tickLevel
	At /engine/GameEnergyBased.lua:62 tick
	At /engine/GameTurnBased.lua:46 tick
	At /mod/class/Game.lua:1041 

Going to undo the modifications I made and see what happens.

Re: [1.0] Characters stuck in endless lau errors (

Posted: Sat Jan 19, 2013 1:02 am
by Galestorm
I have now had a third character meet this error. I decided to just ctrl-alt-del out and that seems to have saved the character, at the loss of the last several levels of the far-portal, which I will have to redo.

I will see if the error happens to the character again when I get a few levels deeper.

This error is quite frustrating!

I believe the root cause is the code below from mod/class/interface/Archer.lua lines (444-446)

Code: Select all

function _M:archeryDefaultProjectileVisual(weapon, ammo)
	return {display=' ', particle="arrow", particle_args={tile="shockbolt/"..(ammo.proj_image or realweapon.proj_image):gsub("%.png$", "")}}
end
I wonder if it should be returning a variable realweapon instead of weapon?

My coding skills are poor at best, any insight someone has would be great.

Re: [1.0] Characters stuck in endless lau errors (

Posted: Sat Jan 19, 2013 1:47 am
by Galestorm
Well another character has experienced this bug. (Perhaps he also died to it

Attaching a screen shot for what it is worth.

Re: [1.0] Characters stuck in endless lau errors (

Posted: Sat Jan 19, 2013 4:58 am
by aardvark
I've just checked both 1.0 and the latest svn (r6354). They're identical and both have weapon not realweapon as the variable in that function. It looks like your file got messed up. Here's what the function should look like:

Code: Select all

function _M:archeryDefaultProjectileVisual(weapon, ammo)
	if (ammo and ammo.proj_image) or (weapon and weapon.proj_image) then
		return {display=' ', particle="arrow", particle_args={tile="shockbolt/"..(ammo.proj_image or weapon.proj_image):gsub("%.png$", "")}}
	else
		return {display='/'}
	end
end

Re: [1.0] Characters stuck in endless lau errors (

Posted: Wed Jan 23, 2013 9:58 pm
by Galestorm
Tried the fix over the weekend and it worked!

I was able to make it to the end game for the first time with my skeleton archmage and just barely lost!

Thanks,

Galestorm