Open the config.luafile and make any necessary adjustments.
Make sure to update the framework / script configuration section with the relevant scripts that you use.
Setup the SQL database with the wp-animals.sql file
If you select any OX script (or script that uses ox), be sure to uncomment the @ox_lib/init.lua line in the fxmanifest.
Framework Implementations
External script implementations are handled in the framework.lua file. This file provides the necessary functions and hooks to integrate with different frameworks and scripts.
Out of the box, the script includes implementations for:
qb
qbx
esx
ox
none
PolyZone
Framework
Notify
Target
Inventory
Progressbar
Zone
Add Items to Inventory
Add the items to the item file in your inventory script.
Copy / paste all of the images from the images/folder into your inventory script.
All animals defined in Config.Animalswill be purchasable at the animal store.
If there are specific animals you don't want sold, comment out or remove them from the table.
This is also the spot where you can add new animals (including custom models) to sell.
Customize Animals
When purchasing an animal you can choose the name, color, collar (if applicable).
After purchasing you can customize the collar color through the menu. There is a full prop placement system that allows you to accessorize the animals with props. The animals can currently be customized with 5 different prop slots. Props can quickly and easily be adjusted / changed through the menu at any time.
Add additional props (including custom props) to the Config.PropOptions table.
Be sure to hit the Save button when you are done making changes!
Additional Notes
The inInventory field in the DB is used to indicate whether an animal is actively in a players inventory or is out in the world. The value must be 0 (false) for the animal to show in the pound. We also keep track of a server side list of all animals in the world, so if the animal is still out in the world it wont be visible in the pound either. Some rare edge cases (like game client cleaning up entities) could cause an animal to not show up in the pound, typically after a server restart they will show again. If not, the inInventory field can be manually set to 0 to make them show up in the pound again.
The attack action is behind Config.EnableAttackAction, enable at your own risk.
I recommend implementing server rules to guide players on its usage, as it can be easily used in ways that might adversely affect roleplay.