Bounty plugin for FLHook
-
A beta version of a bounty plugin is up on the forge. Link here..
This plugin is still in development but seems to work well enough for general use.
Features:
- Bounties may optionally be collected only by ships with a predefined IFF/ID (ID=cargo/equipment item)
- Optional announcement to the hunted character if they have a bounty on their head.
- Optional announcement to universe that a bounty was fulfilled.
- Minimum amount for bounty may be defined.
- Multiple bounties may be placed on one character.
- A reason is required to set the bounty.
- The maximum number of bounties is limited to 100 by default. This may be increased to 1000 without significant performance impacts.
- All bounties have a timeout. Indefinite bounties are not supported. By the default the maximum period for a bounty is 30 days.
- When a bounty is collected or expires the posting character is informed - either online or offline.
- Admin commands to see and clear any/all bounties.
- Optionaly only valid hunters may see the complete bounty list (/showbounties).
- Bounty posters can see the bounties they have posted (/showmybounties)
- Target and poster reputation (faction alignment and ID) is displayed with the bounty information.
- Bounties can only be cleared by character who placed the bounty (or an admin)
- Bounties persist across server restarts.
See the readme for more details. Fault reports and enhancement suggestions are welcome.
-
1st
cool work + TY 4 sharing ;D2nd
i had a look at the files and i am a bit curious.
Would i v to create a special good (possibly 1 for each factions)
to give the players access to the “/showbounties” command?Atm i d suppose 1 good 4 all might be enough
if i want all players to use the command
like
–------------------
…
[FactionIDs]
dsy_license_hunter = Valid Hunter ID[ValidHunters]
dsy_license_hunter = li_n_grp
dsy_license_hunter = li_lsf_grp
dsy_license_hunter = li_p_grp
…
dsy_license_hunter = gd_bh_grp
… -
Yes, you need to create a special good (or use an existing one). I’ve only tested the plugin using equipment items rather than cargo items but it should work with either.
The configuration you list below looks about right - it should work okay.
FYI, the “dsy_license_…” equipment items in the default configuration are actually from the discovery mod. These are used as player IDs to indicate faction alignment and replace the standard tractor beams.
-
It would not be too hard to change it to work with the 88flak version of FLHook. Copy the code over, identify the hook methods that the bounty plugin uses and call these from the FLHook.
What features does 88flak have that are not included in FLHook-Plugin.
-
Hi Cannon:
Thanks for your reply.
You mean that I only need to do is change your code part:
#include "global.h" #include <psapi.h> #include "hook.h" #include "CConsole.h" #include "CSocket.h"</psapi.h>
to call these from the FLHook ?
88flak of FLHook has those function I can’t find in the FLHook plugin:
Cloak Devices
Mobile Bases
Internal Mount Restrictions
No Pvp
Death Penaltyand those function let my mod is funny.
-
…
Cloak Devices
Mobile Bases
Internal Mount Restrictions
No Pvp
Death Penalty
…If someone is going to do a “No Pvp” - plugin
please have a look at the Leipzig City FLHook versions.
Those had a “No PvP” feature, which allowed
2 restrict PvP only up 2 a certain level.
(4 example “no PvP in New York below level 50”)Was nice fun 2 give someone a little money 2 get him up 2 level 51
;D -
I think that no-pvp feature is part of the flhook-plugin version but I haven’t verified this.
Mobile Bases and Internal Mount Restrictions are on my list to do as plugins…the others maybe, sometime…
I’m also thinking about:
- a “fuel” plugin (I need a better name) that will allow a ship to use a jump-hole/gate only if they have sufficient fuel; jumping uses fuel.
- a tradelane plugin that stops ‘pirates’ from using the tradelanes.
-
Hi Cannon, may you tell me how to add your Bounty function to FLHook 1.6.1 ?
Thanks for your help. ;D
I’ll try…
In your flhook, look in a file called global.h and change the application version number and recompile FLHook. Once you have FLHook compiled, copy the new flhook.dll into your freelancer exe directory and make sure the flhook console window shows that your new version is running.
Now, copy all of the functions from the ‘Main.cpp’ file in the bounty project into the FLHook project. Look for any functions with ‘EXPORT’ in front of them. You need to find functions in the FLHook project with the same or a simlar name. Most will be in a file called HkCblServerImpl.cpp. You need to modify the functions in ‘HkCblServerImpl.cpp’ so that they call the ones from the bounty plugin.
You will also need to copy over the some of the functions in ‘PluginUtilities.cpp’ and ‘PluginUtilities.h’ files from the bounty plugin into your flhook.