Modding: Difference between revisions

From PZwiki
m (added header and changed table style)
(Updates to style, fixing links, general organisation and added Spiffo')
Line 1: Line 1:
{{languages|Modding}}
{{languages|Modding}}
{{header|Community|Modding|version=Version 40|incver=43}}
{{header|Community|Modding|version=Version 40|incver=43}}
== '''License Info''' ==
[[File:SpiffosWorkshop.png|link=https://steamcommunity.com/app/108600/workshop/|frame|right|Spiffo's Workshop is the home of [[Project Zomboid]] mods on [[Steam]].]]
 
== '''Terms & Conditions''' ==
'''By purchasing Project Zomboid, you are permitted to:'''
'''By purchasing Project Zomboid, you are permitted to:'''
 
*Change or distribute the base files or contents in any way you like, provided that those changes do not result in you making Project Zomboid available to play or download (this includes making it available open source), or are for the purposes of cheating, unauthorised hacking, exploits or griefing other people or are malicious or illegal in intent or practice.
*Change the base files in any way you like, provided that those changes do not result in the game being playable without purchasing.
*Use art, music, video footage or other assets of Project Zomboid for creative purposes in any way you like providing the end result is related in some way to promoting Project Zomboid, is for non-commercial use only (unless we agreed otherwise with you) and states Project Zomboid as its influence and origin by supplying the following wording prominently with the assets: “Thanks to The Indie Stone for creating Project Zomboid http://projectzomboid.com/), which made this possible. This is an unofficial fan production for non-commercial purposes made under the Indie Stone Terms [link to these terms]“
*Distribute the files in any way as you like, providing the files you distribute are not useable by themselves, or accompanied with freely available downloadable files, to play the game without purchasing.
*Use art, music, video footage or intellectual property of Project Zomboid for creative purposes in any way you like, providing the end result is related in some way to Project Zomboid, states Project Zomboid as its influence and origin, and is for non-commercial use only.


'''You are not permitted to:'''
'''You are not permitted to:'''
*Modify the base files of Project Zomboid to include malicious code or other naughtiness.
*Distribute Project Zomboid yourself, or host its download. In order to ensure the game’s integrity we recommend it should only ever be downloaded from established portals on which we’ve placed it (e.g. Steam).


*Modify the demo in any way beyond cosmetic graphical/sound/musical changes.
'''In terms of the modding of PZ, you also agree that:'''
*Modify the base files to include malicious code.
*The Indie Stone reserve the right to implement any features in the game irrespective of whether mods exist that accomplish the same goal.
*PZ modders are solely responsible for their mod, including (but not limited to compliance with any hosting platforms (such as Steam Workshop). They are also responsible for obtaining third party consents for any third party materials in the mod. Legally, we have to ask that modders to ‘represent and warrant’ (i.e. promise legally) that their mod is their own original work and any third party contents are fully and properly licensed by the modder.
*Creation of mods is subject to our [https://theindiestone.com/forums/index.php?/topic/54-modding-rules-guidelines/&do=findComment&comment=530 modding guidelines], which may be updated from time to time with any technical requirements regarding how PZ mods must work.
*Project Zomboid modders are free to receive monetary/gift donations from the players who use their releases, and appreciate the time and effort put into them. However having mods created exclusively for those who choose to donate (or separate ‘in-mod’ content and bonuses) is not allowed. Mod creators cannot sell modifications to Project Zomboid.


==How To Install/Play Mods==
==How to install/play mods==
[[File:Mod unchecked.jpg|thumb|right|350px|Mod menu]]
[[File:Mod unchecked.jpg|thumb|right|350px|Mod menu]]
To get a full tutorial on how to install mods, see [RoboMat's tutorial on the forums].
To get a full tutorial on how to install mods, see [RoboMat's tutorial on the forums].
Line 25: Line 28:
== Scripting tutorials ==
== Scripting tutorials ==
*[[Modding:Lua_Event |Event References]]
*[[Modding:Lua_Event |Event References]]
*[http://theindiestone.com/forums/index.php/topic/61-robomats-modding-tutorials-updated-12112013/ RoboMat's Tutorials]
*[https://theindiestone.com/forums/index.php?/topic/61-robomats-modding-tutorials-updated-12112013/ RoboMat's Tutorials]
 
== Current Mods ==
*[http://theindiestone.com/forums/index.php/forum/58-mods/ Completed Mods]
*[http://theindiestone.com/forums/index.php/forum/59-wip/ Work in Progress Mods]
*[http://pz-mods.net/ Unofficial PZ Mod Repository]
 
===File Format Documentation===
For developers or the curious, the new file formats are documented [[Modding/File Formats|here]].
 
====Mapping Tools====
 
Please refer to [[Mapping]] for more a more detailed explanation of the processes involved in editing and creating maps in Project Zomboid.
 
You can find all required mapping tools in [http://theindiestone.com/forums/index.php/topic/4674-map-tools/ this thread.]
 
==Mapping Tutorials==
 
*;RingoD123's Mapping Tutorial
The One Stop TileZed Mapping Shop
:https://theindiestone.com/forums/index.php?/topic/21951-the-one-stop-tilezed-mapping-shop/&tab=comments#comment-251715
How to Combine Map Mods
:https://theindiestone.com/forums/index.php?/topic/22576-how-to-combine-map-mods/
Full list of current Room Definitions
;https://theindiestone.com/forums/index.php?/topic/5461-full-list-of-current-room-definitions/&page=3&tab=comments#comment-257787
 


*;Thuztors Mapping Tutorial's
== Current mods ==
Mapping Tutorial's and Videos
*[https://theindiestone.com/forums/index.php?/forum/58-mods/ Completed Mods]
:https://theindiestone.com/forums/index.php?/topic/14109-thuztors-mapping-tutorial-videos/&tab=comments#comment-176301
*[https://theindiestone.com/forums/index.php?/forum/59-wip/ Work in Progress Mods]
Mapping Guide (outdated but still has tons of good info)
*[https://steamcommunity.com/app/108600/workshop/ Spiffo's Workshop]
:https://theindiestone.com/forums/index.php?/topic/5075-mapping-guide-v02/&tab=comments#comment-68208


==Mapping tutorials==
====Mapping tools====
Please refer to [[mapping]] for a more detailed explanation of the processes involved in editing and creating maps in Project Zomboid.


*;Capt_Paradox's Mapping Tutorials
* [https://theindiestone.com/forums/index.php?/topic/23816-latest-tilezed-worlded-and-tilesets-may-17-2018/&do=findComment&comment=270743 TileZed, WorldEd, and Tilesets] <small>(May 17 2018)</small>
VegMap to Testing Custom Map
:https://theindiestone.com/forums/index.php?/topic/21932-project-zomboid-mapping-instructions-vegmap-to-testing-custom-map/&tab=comments#comment-251579
Making rooms with the place wall tool, item spawns, ortho and more
:https://theindiestone.com/forums/index.php?/topic/23264-making-rooms-with-the-place-wall-tool-item-spawns-ortho-and-more/&tab=comments#comment-265065
Sliding Glass Doors, New Textures, Here's How!
:https://theindiestone.com/forums/index.php?/topic/23263-sliding-glass-doors-new-textures-heres-how/&tab=comments#comment-265063


====File format====
* [[Modding/File Formats|File format documentation]]


*;BlackBeard's Mapping Tutorial's
====RingoD123's mapping mutorials====
How to make a map Start to Finish Full Video Tutorial
* [https://theindiestone.com/forums/index.php?/topic/21951-the-one-stop-tilezed-mapping-shop/&tab=comments#comment-251715 The One Stop TileZed Mapping Shop] <small>(January 30, 2017)</small>
:https://theindiestone.com/forums/index.php?/topic/21943-how-to-make-a-map-start-to-finish-full-video-tutorial/&tab=comments#comment-251664
* [https://theindiestone.com/forums/index.php?/topic/22576-how-to-combine-map-mods/&tab=comments#comment-257834 How to Combine Map Mods] <small>(June 11, 2017)</small>
All player made Building Archives Updated 3/29/17~
* [https://theindiestone.com/forums/index.php?/topic/5461-full-list-of-current-room-definitions/&tab=comments#comment-73574 Full list of current Room Definitions] <small>(February 7, 2014)</small>
:https://theindiestone.com/forums/index.php?/topic/22018-all-player-made-building-archives-updated-32917~/
* [https://theindiestone.com/forums/index.php?/topic/5461-full-list-of-current-room-definitions/&page=3&tab=comments#comment-257787 Making new room definitions] <small>(June 10, 2017)</small>


====Thuztor's mapping tutorials====
* [https://theindiestone.com/forums/index.php?/topic/14109-thuztors-mapping-tutorial-videos/&tab=comments#comment-176301 Mapping Tutorial's and Videos] <small>(April 20, 2015)</small>
* [https://theindiestone.com/forums/index.php?/topic/5075-mapping-guide-v02/&tab=comments#comment-68208 Mapping Guide] <small>(September 12, 2017)</small> <small>(Outdated)</small>


*;EasyPickins Mapping Tutorial's
====Capt_Paradox's mapping tutorials====
Custom texture packs and tile definitions
* [https://theindiestone.com/forums/index.php?/topic/21932-project-zomboid-mapping-instructions-vegmap-to-testing-custom-map/&tab=comments#comment-251579 VegMap to Testing Custom Map] <small>(January 28, 2017)</small>
:https://theindiestone.com/forums/index.php?/topic/8790-custom-texture-packs-and-tile-definitions/
* [https://theindiestone.com/forums/index.php?/topic/23264-making-rooms-with-the-place-wall-tool-item-spawns-ortho-and-more/&tab=comments#comment-265065 Making rooms with the place wall tool, item spawns, ortho and more!] <small>(November 30, 2017)</small>
* [https://theindiestone.com/forums/index.php?/topic/23263-sliding-glass-doors-new-textures-heres-how/&tab=comments#comment-265063 Sliding Glass Doors, New Textures, Here's How!] <small>(November 30, 2017)</small>


====BlackBeard's mapping tutorial's====
* [https://theindiestone.com/forums/index.php?/topic/21943-how-to-make-a-map-start-to-finish-full-video-tutorial/&tab=comments#comment-251657 How to make a map Start to Finish Full Video Tutorial] <small>(January 30, 2017)</small>
* [https://theindiestone.com/forums/index.php?/topic/22018-all-player-made-building-archives-verison-2-532019/&tab=comments#comment-252207 All player made Building Archives] <small>(May 31, 2019)</small>


*;Cardenaglo's Mapping Tutorial's
====EasyPickins mapping tutorial's====
Card's Tutorial for Terrain Generation
* [https://theindiestone.com/forums/index.php?/topic/8790-custom-texture-packs-and-tile-definitions/&tab=comments#comment-113526 Custom texture packs and tile definitions] <small>(June 5, 2014)</small>
:https://theindiestone.com/forums/index.php?/topic/22127-cards-tutorial-for-terrain-generation/


====Cardenaglo's mapping tutorial's====
* [https://theindiestone.com/forums/index.php?/topic/22127-cards-tutorial-for-terrain-generation/&tab=comments#comment-252998 Card's Tutorial for Terrain Generation] <small>(February 22, 2017)</small>


*;Atoxwarrior's Mapping Tutorial's (Spanish Language)
====Atoxwarrior's mapping tutorial's (Spanish Language)====
Video Tutorials mapping
* [https://theindiestone.com/forums/index.php?/topic/18084-video-tutorials-mapping-atox-warrior/&tab=comments#comment-221862 Video Tutorials mapping] <small>(June 26, 2016)</small>
:https://theindiestone.com/forums/index.php?/topic/18084-video-tutorials-mapping-atox-warrior/


 
==Java scripting==
==Java Scripting==
Java scripting refers to the modding tools originally used to create item and story mods.
Java scripting refers to the modding tools originally used to create item and story mods.


;Lemmy101's Modding Guide
====Lemmy101's modding guide====
:http://www.projectzomboid.com/modtools/ModdingGuide2.rtf
* [http://www.projectzomboid.com/modtools/ModdingGuide2.rtf Modding Guide]
 
 
==Lua Tutorials==
 
'''Basic Lua Language:'''


;[[Lua_Intro|An Introduction to Lua]]
;[[Variables_Assignments_Datatypes|Variables, Assignments and Datatypes]]
:::[[Task_One_Solutions|'''Test Yourself Solutions''']]
;[[Arithmetic_Operators|Arithmetic Operators]]
;[[Relational_and_Boolean_Operators|Relational and Boolean Operators]]
;[[Concatenation_and_Length_Operators|Concatentation and Length Operators]]
;[[If_Statements_and_Functions|If Statements and Functions]]
;[[Loops|Loops]]
;[[Local_and_Global_Variables|Local and Global Variables]]
;[[Tables|Tables]]
;[[Looping_Through_Tables|Looping Through Tables]]


==Lua tutorials==
====Basic Lua language====
*[[Lua_Intro|An Introduction to Lua]]
*[[Variables_Assignments_Datatypes|Variables, Assignments and Datatypes]]
**[[Variables Assignments Datatypes/Task one solutions|''Test yourself solutions'']]
*[[Arithmetic_Operators|Arithmetic Operators]]
*[[Relational_and_Boolean_Operators|Relational and Boolean Operators]]
*[[Concatenation_and_Length_Operators|Concatentation and Length Operators]]
*[[If_Statements_and_Functions|If Statements and Functions]]
*[[Loops|Loops]]
*[[Local_and_Global_Variables|Local and Global Variables]]
*[[Tables|Tables]]
*[[Looping_Through_Tables|Looping Through Tables]]


;Javadoc reference to Project Zomboid codebase
====Javadoc reference to Project Zomboid codebase====
:http://theindiestone.com/zomboidjavadocs/
* [https://projectzomboid.com/modding/ Project Zomobid Java documentation]<--Previous/Outdated: "https://theindiestone.com/zomboidjavadocs/"-->


== Specifics ==
== Specifics ==


=== List of Item Parameters ===  
=== List of item parameters ===  
Much of this information was supplied by forum member InnocentSam.
Much of this information was supplied by forum member InnocentSam.
{| class="pztable-com"
{| class="pztable-com"

Revision as of 10:38, 25 July 2019

CommunityModdingModding
Spiffo's Workshop is the home of Project Zomboid mods on Steam.

Terms & Conditions

By purchasing Project Zomboid, you are permitted to:

  • Change or distribute the base files or contents in any way you like, provided that those changes do not result in you making Project Zomboid available to play or download (this includes making it available open source), or are for the purposes of cheating, unauthorised hacking, exploits or griefing other people or are malicious or illegal in intent or practice.
  • Use art, music, video footage or other assets of Project Zomboid for creative purposes in any way you like providing the end result is related in some way to promoting Project Zomboid, is for non-commercial use only (unless we agreed otherwise with you) and states Project Zomboid as its influence and origin by supplying the following wording prominently with the assets: “Thanks to The Indie Stone for creating Project Zomboid http://projectzomboid.com/), which made this possible. This is an unofficial fan production for non-commercial purposes made under the Indie Stone Terms [link to these terms]“

You are not permitted to:

  • Modify the base files of Project Zomboid to include malicious code or other naughtiness.
  • Distribute Project Zomboid yourself, or host its download. In order to ensure the game’s integrity we recommend it should only ever be downloaded from established portals on which we’ve placed it (e.g. Steam).

In terms of the modding of PZ, you also agree that:

  • The Indie Stone reserve the right to implement any features in the game irrespective of whether mods exist that accomplish the same goal.
  • PZ modders are solely responsible for their mod, including (but not limited to compliance with any hosting platforms (such as Steam Workshop). They are also responsible for obtaining third party consents for any third party materials in the mod. Legally, we have to ask that modders to ‘represent and warrant’ (i.e. promise legally) that their mod is their own original work and any third party contents are fully and properly licensed by the modder.
  • Creation of mods is subject to our modding guidelines, which may be updated from time to time with any technical requirements regarding how PZ mods must work.
  • Project Zomboid modders are free to receive monetary/gift donations from the players who use their releases, and appreciate the time and effort put into them. However having mods created exclusively for those who choose to donate (or separate ‘in-mod’ content and bonuses) is not allowed. Mod creators cannot sell modifications to Project Zomboid.

How to install/play mods

Mod menu

To get a full tutorial on how to install mods, see [RoboMat's tutorial on the forums].

To start a mod up, first make sure the mod is installed in the correct directory. Once you have done this, start up Project Zomboid. Once you get to the main menu, down at the bottom of the screen when you see "Survival" and "Sandbox" you will also find a menu option called Mods. Click on it, which will then lead you to the mod menu.

In there you should see the list of mods that you have installed. Double click on the mod you wish to start and a green tick should appear next to the mod. Next thing to do is shut down Project Zomboid and start it up again. Once started your mod should now be ready to go. Instructions on using the mod are usually contained in README's or information in the thread.

Scripting tutorials

Current mods

Mapping tutorials

Mapping tools

Please refer to mapping for a more detailed explanation of the processes involved in editing and creating maps in Project Zomboid.

File format

RingoD123's mapping mutorials

Thuztor's mapping tutorials

Capt_Paradox's mapping tutorials

BlackBeard's mapping tutorial's

EasyPickins mapping tutorial's

Cardenaglo's mapping tutorial's

Atoxwarrior's mapping tutorial's (Spanish Language)

Java scripting

Java scripting refers to the modding tools originally used to create item and story mods.

Lemmy101's modding guide


Lua tutorials

Basic Lua language

Javadoc reference to Project Zomboid codebase

Specifics

List of item parameters

Much of this information was supplied by forum member InnocentSam.

Parameter Name Effect / Description Example
General
Type Item-type, describes how the item behaves. Includes 'Food', 'Weapon', 'Drainable', 'Literature', 'Clothing' and 'Normal'. Food (steak)
Display Name The item's name as it appears displayed to the player. Axe (axe)
Icon The item's icon as it appears displayed to the player. This parameter looks inside "media/texturepacks/ui.txt" and will call any sprite with the prefix "Item_". Molotov (molotov cocktail)
Weight Item's weight, used for encumbrance. 0.1 (painkillers)
OtherHandRequire Requires a specified item to be held by the player in their second quick-slot before the item may be used. Lighter (molotov cocktail)
CanBarricade Whether the item may be used like the hammer to barricade doors and windows. Boolean (false or true)
Count The number of items which may ever be used in the game world. 8 (Ripped Sheets)
UseWhileEquipped Whether the item is used over time while it is equipped. Boolean (false or true)
UseDelta Numerical value associated with how quickly the item drains. 0.0009 (torch)
ReplaceOnUse Name of the item which replaces the current item after use. Pot (pot of soup)
Consumables
IsCookable Whether the item can be cooked. Boolean (false or true)
MinutesToCook How many in-game minutes the item must be in an oven for it to cook. 50 (pot of soup)
MinutesToBurn Length of time the item must be in an oven for it to be burnt. Usually double the value of 'MinutesToCook'. 150 (steak)
HungerChange Value applied to player's current hunger points. Positive increases hunger. -20 (crisps)
DaysFresh How many days it takes for a food item to begin rotting. 2 (steak)
DaysTotallyRotten How many days it takes for a food item to become entirely rotten. 7 (carrots)
DangerousUncooked Whether the food item will negatively affect the player in an uncooked state. Boolean (false or true)
RequireInHandOrInventory Requires a specified item to be inside the player's inventory before the item may be used. CanOpener (canned soup)
Alcoholic Whether the item effects the player in a similar way to Bourbon. Boolean (false or true)
UseSelf Whether the item is consumed after use. Boolean (false or true)
Weapons
MinAngle The angle that the weapon attacks, a value aprox. to 1 is going to need more accuracy with mouse than one nearer to -1. 0.88 (shotgun)
MinDamage Minimum damage the weapon will inflict. 0.7 (baseball bat)
MaxDamage Maximum damage the weapon may ever inflict. 1.0 (baseball bat)
MaxRange Maximum range the weapon is effective. 1.5 (spiked baseball bat)
MaxHitCount Maximum amount of enemies the weapon will hit at one time. 1 (hammer)
PhysicsObject Physics object used as a projectile. MolotovCocktail (molotov cocktail)
SwingAnim Name of animation which is ran when the weapon is fired/swung. Bat (baseball bat)
WeaponSprite Name of sprite, the image used to display the weapon. axe (axe)
DoorDamage Damage inflicted by the item on doors. 10 (spiked baseball bat)
MinimumSwingTime The time that takes between each swing. 15 (baseball bat)
SwingAmountBeforeImpact Requires more research. 0.2 (spiked baseball bat)
PushBackMod Distance that enemies are pushed back. 4.5 (wood planks)
KnockBackOnNoDeath Whether enemies are pushed back if they are not killed. Boolean (false or true)
SplatNumber Blood effects used when an enemy is injured by the weapon. 5 (shotgun)
SplatBloodOnNoDeath Whether an enemy injured by the weapon will bleed if they are not killed Boolean (false or true)
ImpactSound Name of sound used on impact. splat1 (axe)
SwingSound Name of sound used when firing/swinging weapon. shotgun (shotgun)
SoundVolume Defines the volume of a chosen sound. 40 (shotgun)
SoundRadius Radius in which the sound may be heard in the game world from it's point of origin. 50 (shotgun)
ToHitModifier Requires more research. 1.5 (shotgun)
NPCSoundBoost Amount that a sound is boosted when the weapon is fired by an NPC (Not player). 1.5 (shotgun)
RangeFalloff Requires more research. Boolean (false or true)
UseEndurance Whether the weapon causes exhaustion. Boolean (false or true)
ShareDamage Requires more research. Boolean (false or true)
AmmoType Item required to fire the weapon. ShotgunShells (shotgun)
Clothing
Palettes Defines the clothing item's colors. Trousers_Blue/Trousers_Brown/Trousers_Grey/Trousers_White (trousers)
PalettesStart Defines the clothing item's palette prefix. Shirt_ (sweater)
BodyLocation Where the clothing item is worn. Bottoms (trousers)
SpriteName Defines the sprite displayed on the player. Shoes1 (shoes)
Literature
StressChange Value applied to player's current stress points. Positive makes the player become more stressed. -10 (newspaper)
BoredomChange Value applied to player's current boredom points. Positive increases player's boredom. -50 (book)

References