Bounty Hunter – [Updated Experimental Alpha] for Space Engineers
This is a Server-side mod that adds NPC bounties randomly to Personal contract blocks on your ships and stations.
THIS IS AN EXPERIMENTAL MOD AND IS NOT MARKED FOR STABLE
Now that I have a better understanding of the contract system, I’ve rewritten the entire bounty script.
- Bounty script now spawns its own grids instead of using existing grids in the game (Easier to manage and prevent bounty failing from grid despawning)
- No longer changes any grid ownerships in game, all grids related to Bounty hunter are spawned and managed by bounty hunter mod.
- Characters are only created on static grids, since I could not get spawned characters to sit in cockpits (yet) instead Characters will spawn when the cockpit of the target ship is destroyed.
- When a character spawns from a cockpit being destroyed a new gps is created for them as well as a highlight so you don’t lose them in space.
- Grids with no cockpits and only remote controls will not spawn a character, instead the kill counts when the remote-control block is destroyed.
- A Win Jingle will play when target is destroyed a failure jingle will play if target died before you got close enough for combat.
- Added Kill bonus for player who actually made the kill.
- Script now saves data files in Save/Storage folder of the game, this way everything is still tracked properly when the game is reloaded.
- Active Bounties will now show in the quest log, only one bounty at a time will show, but once failed or finished the next active bounty will show. (see screenshots)
- Added Random bounty quest descriptions.
This mod has caused me to lose a few hairlines figuring out SE’s contract custom system as well as managing contracts. But for the most part it is working.
How it works is you place a contract block on one of your grids, after a while
as ships spawn in new ships will spawn in and bounties for it will be available.
Once the contract is accepted you are given an approximate GPS coordinate of the target (within 5km).
When you damage the character itself, they will randomly taunt you with insults, they will also say something when they die. Anyone within 3km of the kill who also had a bounty for the character should also get a completed bounty and reward. So yes, multiple bounties from different factions can appear and multiple players and factions can get the same bounty, so it is a race to kill the target before someone else.
This should theoretically work with MES though i haven’t tried it yet.
This is compatible with MES (Modular Encounters Spawner) but does not interfere with or use MES systems.
Again, this is early access beta. If you want to try it out and give me feedback its much appreciated.
This works offline for PC, For Xbox it must be hosted on a dedicated server.
Known Issues to Fix
- Eventually I need to move bounties off of player contract blocks, players can just cancel bounties under the admin tab and collect bounty credits.
- Sometimes character fails to spawn or kill on character fails to register (looking into this).
- After server reload, someone else’s bounty quest log will sometimes show on another player’s UI.
- Potentially need to despawn bounties after a while if too far from players after max bounty spawns are in game.
- Add config file to control max number of game bounties and max allowed active bounties per character.
Main Issue – SE Contract system not reactivating player accepted contracts when server restarts (not sure how to fix yet as the ModSDK lacks a lot of commands for handling contracts) Having troubles making a Spawned NPC sit in a chair or *******, (For now they just kind of stand by a ******* or seat)Created workaround Some Characters Spawn in a safezone and have to be pushed outside to kill them lol. Bounty hunter mod messing with grid ownerships
- Probably more as people test this out.
Things I want to add
- Now that i have figured out the custom contract thing i want to add some adventure multi stage contracts to the game.
- Optional objectives like killing multiple grids that spawn to protect the target.
- Derelict Freighters which have maybe spiders in it that you have to fight etc. etc.