The current Hunter Job is a rebuild of the server side of qs-hunter. Every price, drop, payout and point of experience that older versions let the client send is now decided by the server from the config, and the crew lives on the server too. Your players notice one thing: the seller and buyer NPCs are gone, because buying, selling and the statistics all open from the employer's panel.
Updating keeps every hunter's level and experience. The database upgrades itself on the first start — nothing to export, nothing to import.
Replacing the Resource#
Back up what you changed
Copy
config/config.lua,config/translations.luaand, if you edited the outfit,client/clothing.luasomewhere outside the resources folder.Remove the old folder
Stop the server and delete the old
qs-hunterfolder completely. Do not copy the new files over the old ones: a file the new version no longer ships could stay behind and still be loaded.Install the new version
Copy the new
qs-hunterin its place, under the same name. Then carry your own values — job names, coordinates, prices, drops, missions, texts — into the new config by hand.Start and read the console
Coming from 1.x, the first start adds the columns the leaderboard needs to your existing
qs_huntertable and creates the tables that version did not have:bash [qs-hunter] Added missing column qs_hunter.total_experience [qs-hunter] Added missing column qs_hunter.total_earnings [qs-hunter] Added missing column qs_hunter.season_experience [qs-hunter] Added missing column qs_hunter.season_earnings [qs-hunter] Added missing column qs_hunter.daily_experience [qs-hunter] Added missing column qs_hunter.daily_earningsEach line appears once. On every later start the schema is already complete and nothing is printed.
Coming from 1.x, the leaderboard starts empty. The all-time, season and daily totals are new columns, so they count from the moment the new version first runs. Levels and experience are untouched.
What Changed for Players#
Before | Now |
|---|---|
Three NPCs: the employer, a seller and a buyer. | One employer. Missions, the crew, the shop (buy and sell), the statistics and a guide are views inside the same panel. |
Buying and selling in context menus. | A shop with category filters, a basket and a sell list with Sell all. |
Opening the panel while on a mission asked to abandon it. | The panel opens normally mid-hunt; the footer offers Abandon quest with a confirmation instead of Start Mission. |
Changing job left the hunt running. | Losing the job ends the mission on screen, and the server refuses to pay anyone who no longer holds it. |
Killing an animal with the wrong weapon was only reported after the whole harvest. | It is reported before the animation starts. |
A missing item read as "your inventory is full". | The two are told apart: a missing item names itself, keeps the experience and the mission progress, and prints a console line for the owner. |
What Changed in the Config#
Setting | What happened |
|---|---|
| Removed with their NPCs. Only |
| Now ships |
| Same shape, but now the single source of truth: the server prices every trade, rolls every drop and pays every mission from these tables. |
| Applied by the server from this table; the client only reports that a mission ended. |
Removed Events#
If another resource of yours triggered any of these, it must be changed. Each one accepted a price, an amount or an item from the client and trusted it — which is why they are gone rather than kept for compatibility.
Removed | What replaced it |
|---|---|
| Missions are paid by the server, from the task in config, the moment it records the last animal harvested. |
| Drops are rolled and granted by the server inside the harvest itself. |
| Experience comes only from items a harvest actually produced and from completed missions. |
| Progress is recorded by the server after a harvest has been granted. |
|
|
|
|
| The daily and season rankings of the leaderboard, reset by the server at midnight and on the first of the month. |
| Nothing — nothing ever listened for it. |
Two things stayed with a change. The qs-hunter:checkItem callback still answers how many of an item a player carries, but no longer takes a third price argument. And the isPlayerOnDuty export still exists, but it reports what the client says — ask IsPlayerOnMission when the answer matters. Both are in Commands and Exports.



