Fulqrum Publishing Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official Fulqrum Publishing forum > Fulqrum Publishing > King's Bounty > King`s Bounty: Warriors of the North

King`s Bounty: Warriors of the North Next game in the award-winning King’s Bounty series

Reply
 
Thread Tools Display Modes
  #1  
Old 11-05-2012, 04:39 PM
hardy87 hardy87 is offline
Approved Member
 
Join Date: Jun 2011
Posts: 15
Default

Oh, I see it. Thanks !
Reply With Quote
  #2  
Old 11-05-2012, 06:27 PM
Bhruic Bhruic is offline
Approved Member
 
Join Date: Oct 2012
Posts: 233
Default

Added at least partial fix for Fear. Let me know if you run across other units that are able to use their special abilities on units they shouldn't while feared.
Reply With Quote
  #3  
Old 11-06-2012, 08:24 PM
gunnyhighway gunnyhighway is offline
Approved Member
 
Join Date: Feb 2011
Posts: 92
Default

I installed this since then I get random crashes anyone else got this issue?

I read somewhere that it might be caused by Skalds but I am not sure if they meant the Skald class or the skald units. I just started playing a skald after finishing up with soothsayer so maybe its skald?
Reply With Quote
  #4  
Old 11-06-2012, 08:28 PM
Bhruic Bhruic is offline
Approved Member
 
Join Date: Oct 2012
Posts: 233
Default

The Skalds used to cause a crash with the Last Hero spell, but that has been fixed in the official patch. The game is a bit unstable, however, and numerous people have reported random crashes. The "random" part making it quite difficult to troubleshoot.
Reply With Quote
  #5  
Old 11-07-2012, 08:20 AM
bacchus1974 bacchus1974 is offline
Approved Member
 
Join Date: Dec 2008
Posts: 42
Default

to install this update i just do decompressed these files in my folder

\steam\SteamApps\common\King's Bounty - Warriors of the North\sessions\addon

please help me
Reply With Quote
  #6  
Old 11-07-2012, 08:38 AM
Xargon Xargon is offline
Approved Member
 
Join Date: Nov 2008
Posts: 122
Default

Quote:
Originally Posted by bacchus1974 View Post
to install this update i just do decompressed these files in my folder

\steam\SteamApps\common\King's Bounty - Warriors of the North\sessions\addon
You followed the instructions outlined in the first post, congratulations. Everything should be working

Quote:
Originally Posted by bacchus1974 View Post
please help me
That might be possible if you actually state what your problem is.
Reply With Quote
  #7  
Old 11-07-2012, 05:00 PM
Bhruic Bhruic is offline
Approved Member
 
Join Date: Oct 2012
Posts: 233
Default

This is (hopefully) a fix for the Highterant egg-laying issue. As it's a rather large piece of code (I wrote a specific AI routine to handle it - go me! ), I'm placing the code here rather than in the first post. Also, I'm not including pre- and post-code changes, everything in red text was added by me. The aim of this routine is to try and find the square that is farthest away from any enemy (and within movement range) and lay the egg there - presumably with the best chance of survival.

In arena.lua, line 2718:
Code:
local maxc, maxtarget
if mover.name == "highterrant" then
	local maxdist = 0
	for i = 0, ecells.n do
		local c = ecells[i]
		if c == nil then  -- проверяем также клетку, где мы стоим - вдруг идти никуда и не нужно - и здесь хорошо
			c = mover
			c.distance = 0
		end
		if c.distance < mover.ap then
			local near_enemy = false
			for dir = 0, 5 do
				local c2 = Attack.cell_adjacent(c, dir)
				if Attack.act_enemy(c2) then
					near_enemy = true
					break
				end
			end
			if not near_enemy then
				local dist = 0
				for k = 0, ecells.n do
					local c2 = ecells[k]
					if c2 == nil then  -- проверяем также клетку где стоим, т.к. с нее можем уйти
						c2 = mover
					end
					if Attack.cell_dist(c, c2) == 1 then
						local mindist = 1e8
						for j, act in ipairs(actors) do
							if Attack.act_enemy(act) then
								dist = Attack.cell_dist(c2, act)
								if dist < mindist then
									mindist = dist
								end
							end
						end
						if mindist > maxdist then
							maxdist = mindist
							maxc = c
							maxtarget = c2
						end
					end
				end
			end
		end
	end
else
	if offence and not mover.thrower and (mover.par('dismove') == 0) and (mover.ap > 1) then -- при наступательной тактике не-стрелки способные перемещаться бегут к вражеским лучникам
		-- здесь могут оказаться : demon, dryad, highterrant, thorn_warrior
		local mindist = 1e8
		local nneed_corpse = true
		if mover.name == "thorn" or mover.name == "thorn_warrior" then -- тернии призывают на гексы с трупами
			nneed_corpse = false
		end
		for i = 0, ecells.n do
			local c = ecells[i]
			if c == nil then  -- проверяем также клетку, где мы стоим - вдруг идти никуда и не нужно - и здесь хорошо
				c = mover
				c.distance = 0
			end
			if c.distance < mover.ap then
				local dist = 0
				for j, act in ipairs(actors) do
					if Attack.act_enemy(act) then
						if act.thrower then
							dist = dist + Attack.cell_dist(c, act)*0.5
						else
							dist = dist + Attack.cell_dist(c, act)
						end
					end
				end
				if dist < mindist then
					for j = 0, ecells.n do
						local c2 = ecells[j]
						if c2 == nil then  -- проверяем также клетку где стоим, т.к. с нее можем уйти
							c2 = mover
						end
						if Attack.cell_dist(c, c2) == 1 then
							if nneed_corpse or Attack.cell_has_ally_corpse(c2) or Attack.cell_has_enemy_corpse(c2) then
								mindist = dist
								maxc = c
								break
							end
						end
					end
				end
			end
		end
		if maxc ~= nil then
			local mindist2 = 1e8
			for i = 0, ecells.n do
				local c2 = ecells[i]
				if c2 == nil then  -- проверяем также клетку где стоим, т.к. с нее можем уйти
					c2 = mover
				end
				if Attack.cell_dist(maxc, c2) == 1 then
					if nneed_corpse or Attack.cell_has_ally_corpse(c2) or Attack.cell_has_enemy_corpse(c2) then
						local dist2 = 0
						for j, act in ipairs(enemies) do -- как далеко до врагов
							if act.thrower then
								dist2 = dist2 + Attack.cell_dist(c2, act)*0.5
							else
								dist2 = dist2 + Attack.cell_dist(c2, act)
							end
						end
						if dist2 < mindist2 then
							mindist2 = dist2
							maxtarget = c2
						end
					end
				end
			end
		end
	end
	if maxc == nil then
		-- здесь гарантированно окажутся : chosha, demonologist, druid, ingeneer, kingthorn, thorn
		local mindist2 = 1e8
		for i = 1, atk.cells.n do
			local c2 = atk.cells[i]
			local dist2 = 0
			for j, act in ipairs(enemies) do -- как далеко до врагов
				if act.thrower then
					dist2 = dist2 + Attack.cell_dist(c2, act)*0.5
				else
					dist2 = dist2 + Attack.cell_dist(c2, act)
				end
			end
			if dist2 < mindist2 then
				mindist2 = dist2
				maxtarget = c2
			end
		end
	end
end

Last edited by Bhruic; 11-07-2012 at 05:09 PM.
Reply With Quote
  #8  
Old 11-08-2012, 09:42 PM
shlayferg shlayferg is offline
Registered Member
 
Join Date: Nov 2012
Posts: 2
Default Light Knight Spell

Light Knight Spell should apply to all units at level 3 according to its description but it still applies to only one unit.

I tried to read the code for it in spells.lua but I am not a programmer and couldn't find out how to change that. Could you please help me?

I guess the same happens to Dark Knight Spell but I don't have it.
Reply With Quote
  #9  
Old 11-09-2012, 02:11 AM
camelotcrusade's Avatar
camelotcrusade camelotcrusade is offline
Approved Member
 
Join Date: Apr 2009
Location: San Francisco, CA
Posts: 448
Default

Quote:
Originally Posted by shlayferg View Post
Light Knight Spell should apply to all units at level 3 according to its description but it still applies to only one unit.

I tried to read the code for it in spells.lua but I am not a programmer and couldn't find out how to change that. Could you please help me?

I guess the same happens to Dark Knight Spell but I don't have it.
This one is noted in the bugs list but unfortunately we don't have a fix for it yet.

@trubble they aren't asking us to make any bug fixes or track bugs, we're just doing it so we can help problems get recorded and the fixes are made so we can enjoy the game while we wait for official patches.
Reply With Quote
  #10  
Old 11-09-2012, 06:58 AM
Zechnophobe's Avatar
Zechnophobe Zechnophobe is offline
Approved Member
 
Join Date: Nov 2009
Posts: 991
Default

Hey there, Bhruic. I discovered the solution to Jarl's not displaying their attack log correctly.

Change:
Code:
Attack.log(dmgts+dmgts1, "add_blog_fear_2", "target", blog_side_unit(cell, 0))
To:
Code:
Attack.log(dmgts+dmgts1, "add_blog_fear_2", "targets", blog_side_unit(cell, 0))
in unit_special_attacks.lua. It's setting the wrong tag, which is then incorrectly named in the language file. I believe the correct fix here is to use the right tag name, since it should be the plural 'targets' here. Notice the comparison with the wolf howl that uses the same attack log messages?
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 08:29 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.