[Mod] [Release] Bounties Unlocked

Simple mod idea I had and decided to implement in ~10 minutes. Ups the number of bounties you can accept per session from 5 to however many are actually available per faction (it varies, but doesn’t go lower than 14 or higher than 20).

DOWNLOAD LINK

As is always the case, you may merge this mod with any of your existing projects freely, provided you credit me somehow. :slight_smile:

Let me know if you run into any issues. I don’t see any reason why this mod wouldn’t work, but frankly I haven’t tested it in-game yet, so who knows.

Enjoy!

How it works:

Edited the _bounties.lua script as follows:

Original script excerpt:

--
-- Grim Dawn Bounties
-- Bounty Limit per faction
-- Default Bounty Cap per session is 5
--

local bountyLimit = 5
local DCBounties = 0
local ROBounties = 0
local HSBounties = 0
local BLBounties = 0
local KCBounties = 0
local ODVBounties = 0
local ExileBounties = 0

-- Devil's Crossing
function gd.bounties.DCCheck()

	local test = true
	
	if DCBounties < bountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.DCIncrement()
	
	DCBounties = DCBounties + 1

end

-- Rovers
function gd.bounties.ROCheck()

	local test = true
	
	if ROBounties < bountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.ROIncrement()
	
	ROBounties = ROBounties + 1

end

-- Homestead
function gd.bounties.HSCheck()

	local test = true
	
	if HSBounties < bountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.HSIncrement()
	
	HSBounties = HSBounties + 1

end

-- Black Legion
function gd.bounties.BLCheck()

	local test = true
	
	if BLBounties < bountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.BLIncrement()
	
	BLBounties = BLBounties + 1

end

-- Kymon's Chosen
function gd.bounties.KCCheck()

	local test = true
	
	if KCBounties < bountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.KCIncrement()
	
	KCBounties = KCBounties + 1

end

-- Order of Death's Vigil
function gd.bounties.ODVCheck()

	local test = true
	
	if ODVBounties < bountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.ODVIncrement()
	
	ODVBounties = ODVBounties + 1

end

-- The Outcast
function gd.bounties.ExileCheck()

	local test = true
	
	if ExileBounties < bountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.ExileIncrement()
	
	ExileBounties = ExileBounties + 1

end

Modified script excerpt:

--
-- Grim Dawn Bounties
-- Bounty Limit per faction
-- Default Bounty Cap per session is 5
--

local DCBountyLimit = 18
local BLBountyLimit = 20
local ExileBountyLimit = 20
local HSBountyLimit = 19
local KCBountyLimit = 18
local ODVBountyLimit = 18
local ROBountyLimit = 20
local DCBounties = 0
local ROBounties = 0
local HSBounties = 0
local BLBounties = 0
local KCBounties = 0
local ODVBounties = 0
local ExileBounties = 0

-- Devil's Crossing
function gd.bounties.DCCheck()

	local test = true
	
	if DCBounties < DCBountyLimt then
		test = false
	
	end
	
	return test

end

function gd.bounties.DCIncrement()
	
	DCBounties = DCBounties + 1

end

-- Rovers
function gd.bounties.ROCheck()

	local test = true
	
	if ROBounties < ROBountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.ROIncrement()
	
	ROBounties = ROBounties + 1

end

-- Homestead
function gd.bounties.HSCheck()

	local test = true
	
	if HSBounties < HSBountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.HSIncrement()
	
	HSBounties = HSBounties + 1

end

-- Black Legion
function gd.bounties.BLCheck()

	local test = true
	
	if BLBounties < BLBountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.BLIncrement()
	
	BLBounties = BLBounties + 1

end

-- Kymon's Chosen
function gd.bounties.KCCheck()

	local test = true
	
	if KCBounties < KCBountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.KCIncrement()
	
	KCBounties = KCBounties + 1

end

-- Order of Death's Vigil
function gd.bounties.ODVCheck()

	local test = true
	
	if ODVBounties < ODVBountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.ODVIncrement()
	
	ODVBounties = ODVBounties + 1

end

-- The Outcast
function gd.bounties.ExileCheck()

	local test = true
	
	if ExileBounties < ExileBountyLimit then
		test = false
	
	end
	
	return test

end

function gd.bounties.ExileIncrement()
	
	ExileBounties = ExileBounties + 1

end
4 Likes

Wonderful, Thank you for this!

Per request, this mod has been updated to Ashes of Malmouth and Forgotten Gods content. Download Link in the first post is up-to-date. Get bounty hunting!

1 Like

Hi @Ceno, I know this is a bit of an old thread but I have been trying to add this to a mod I am making but I am having a hell of a time decompiling the database *.arz file with archivetool, it just doesn’t want to know it crashes when I try to list the files inside, but has been absolutely fine decompiling other mods.

Is there anything special I need to do? or could you possible repackage with the records in the zip? I don’t know if you even still have the files after 3 years its a long shot but worth asking I guess :grinning:

Thanks

Ignore the arz, there probably is nothing in it anyway. You should only need the arc

1 Like

Ya know I was sat here wondering if it had anything in it as its so small, thanks @mamba :smiley:

Does this require the custom game mode in order to use it?

The reason I ask is because some Grim Dawn mods do, while others do not.

1 Like

It does, though could be baked into the base game with a bit of effort.

Most of the time, mods with .arz and .arc files need to be played via Custom Game.

Since this mod changes scripts only, You can use Settings folder to mod works in base game.
Copy BountiesUnlocked.7z\BountiesUnlocked\resources\Scripts to Grim Dawn/Settings. It will also work with any mod doesn’t touch scripts.

1 Like