Jump to content

iBrRus

Member
  • Posts

    7
  • Joined

  • Last visited

Reputation Activity

  1. Like
    iBrRus got a reaction from xXMoksXx in Project Zomboid scripts syntax highlighting for Notepad++   
    How to install Notepad++ PZS syntax highlight plugin
    Download the latest version from: https://github.com/ibrrus/npp-pzs/blob/master/PZS.xml Open Notepad++ Open the User Defined Language Dialog e.g. via Language > Define your language .... Press the Import ... button and select the downloaded file. Open Project Zomboid script file and select Language > PZS.  

  2. Like
    iBrRus got a reaction from AuthenticPeach in How to fix updated mods in Build 41 Multiplayer   
    You saved all the modders!
  3. Like
    iBrRus reacted to AuthenticPeach in How to fix updated mods in Build 41 Multiplayer   
    Hello All! I made this guide to assist the many bug reports that have come in regarding mods that have updated after the release of Build 41 Multiplayer.
    I have put together all the walkthroughs and guides here so you don't have to fish around for odd ends and bits. More may come as things develop.
     
    One of the main issues that sprung up with the release of Project Zomboid's Build 41 Multiplayer is the issue of mods updating after a local or dedicated server uses the mod for its save.  
    This issue occurs because, in the last six months, steam's servers have been unreliably updating mod data for clients.
    Some things to know:
    Workshop ID's for mods are located on the bottom of each mod's workshop page.

    Figure 1: Mod Workshop ID of Authentic Z 
      When you enable a mod for a server, there are two locations involved:  A server directory for each mod A client directory for each mod  
    When it comes to PZ Multiplayer, all of the files in both locations must be identical as it is used as an anti-cheat measure. Therefore:
    Since the client's copy may be mismatched with the server copy, the client will be rejected with a message:  "Workshop item version is different than server's"  

    Figure 2: Mod mismatch from the host end.

    Figure 3: Mod mismatch from the client end.
     
    The Fixes
    There are a few fixes and workarounds that people have found to have fixed this issue.
     
    Method 1: 
    Copy, delete, paste method
     Note: this method may only apply to Local Hosted servers. 
    1: Copy mod folder from "...\steam\steamapps\workshop\content\108600"
    2: Delete the old and Paste the mod folder in  "...\Steam\steamapps\common\ProjectZomboid\steamapps\workshop\content\108600"
     
    Example:
    Copy the 2335368829 folder (Authentic Z mod folder) from
    "...\steam\steamapps\workshop\content\108600"

    and pasted it to "...\Steam\steamapps\common\ProjectZomboid\steamapps\workshop\content\108600"

    Figure 4:  Step 1 on Left, Step 2 on Right. Notice how the right location was older than the left location. Delete the old, paste in the newer one from the left side. 
     
     
    Method 2: 
    E6 Method (from user Глеб) 
    1. Delete the "appworkshop_108600.acf" file that's inside the "C:\Program Files (x86)\Steam\steamapps\common\ProjectZomboid\steamapps\workshop" path, if you are running a dedicated server it would be in "\SteamLibrary\steamapps\common\Project Zomboid Dedicated Server\steamapps\workshop"
    after that run the server and it will force update the mods of your server
     
     
    Method 3: 
    Klean Method
     Note: this method  only applies  to Dedicated servers. 
    "For klean's server, after Filibuster's updated, this worked so that the server would update to the updated version of Filibusters. Should work for mods that recently updated, although the clients also need to ensure that they have updated versions of the mods as well
    In the installation directory for the dedicated server, you'll have a steamapps folder. Just delete it, as it only contains mod info, including Steam's manifest. If there's an issue with the manifest updating (or it thinks its already updated), the game won't download the mods.
    It should then work the next time you start the server."

    Regarding Local hosted servers
    go into steam and into the game's properties, browse local files, inside the PZ folder, delete the entire steamapps folder. 
     
    Method 4: 
    Spiffo Bot Method
    Many instances of mismatching mod versions have been fixed by unsubscribing from the mod(s), restarting Steam, and then resubscribing to the mod(s). Alternatively, in the installation directory for the dedciated server, you'll have a *steamapps *folder. Just delete it, as it only contains mod info, including Steam's manifest. If there's an issue with the manifest updating (or it thinks its already updated), the game won't download the mods. The mod might then work when restarting the server.
     
    Please also make sure you are not subscribing to random mod packages that simply upload an unedited version of a mod. When the original mod authors update their mods, you will have to rely on whoever uploaded that modpack to keep the mods up to date. Instead, use the workshops "Collections" feature. Modpacks that upload mods without the approval of the mod authors are also subject to be removed from the workshop at any point.
     
     
    Method 5: 
    The Nuclear Route (To get it working at all costs)
    1: Delete world
    2: Remove problematic mod(s) from server settings and save this. 
    3: Close game and unsubscribe from problematic mod(s)
    4: Completely Close Steam
    5: Re-subscribe to problematic mod(s) , start game up, readd them in settings, create new world. 
     
    Some other helpful reads:
     
    https://steamcommunity.com/sharedfiles/filedetails/?id=2681173441
    https://steamcommunity.com/app/108600/discussions/0/3198115500363908004
    https://steamcommunity.com/app/108600/discussions/0/3198116134628473049/
    https://steamcommunity.com/workshop/filedetails/discussion/2335368829/3198116134629549910/
     
    More methods may come at a later time. 
  4. Like
    iBrRus reacted to throttlekitty in Custom Tile Templates   
    Mind if I add to the thread? Here's the template I use in Photoshop, it's helpful for lining sprites up. I have two extra block grids for 45 degree/flat, for when I'm painting flat pieces. Heres a preview:
     

     
    Here's the file:  _masks_basic_starter.psd
  5. Like
    iBrRus reacted to EasyPickins in Custom texture packs and tile definitions   
    Custom .pack files
     
    If you have custom map tiles, you will need to create a .pack file containing those tiles for the game to load.  This can be done using the "Create .pack file..." command, found in the Tools menu in TileZed.
     

     
    Place your tilesets into a directory, then click the + button to add that directory to the list.
     
    The .pack file should be saved to your mod's media/texurepacks directory:
    Zomboid/mods/MyMod/media/texturepacks/NAME.packAdd a line to your mod's mod.info file:
    pack=NAMEYou can add one pack= line for each .pack file.
     
    Custom .tiles files
     
    Some tiles require special properties to be set, to handle rendering or collision for example.  This can be done using the "Tile Properties (.tiles)" command in the Tools menu in TileZed.
     
    Place your custom .tiles files in your mod's media/ directory:
    Zomboid/mods/MyMod/media/NAME.tilesAdd a line to your mod's mod.info file:
    tiledef=NAME NUMBERThe NUMBER is important, it controls the unique ID numbers assigned to every sprite.
    NUMBER can be from 100 up to about 8000.  The game reserves all numbers under 100 for itself. All .tiles files loaded by the game and every active mod must have a unique NUMBER.  Don't use the same NUMBER as another mod, if that mod might be active at the same time as yours. Once you choose a number for your .tiles file, do not change it, otherwise it will break savefiles using your custom sprites.  This is because the savefile records the ID number for each sprite. Don't remove a tileset from your .tiles file and then add it again.  Doing so will change the sprite IDs assigned to tiles in that tileset.  If you look at the game's newtiledefinitions.tiles file in the editor, you will see that there is a number next to each tileset name, and a unique "gid" in the tooltip for each tile.  Those numbers must remain the same if you edit the .tiles file.  
  6. Spiffo
    iBrRus reacted to DiederikV in How to connect empty storage image with overlay image?   
    Soooo I figured this out.
    Ill try to explain it.

    1. Draw tiles
    2. Save tiles as .png file in: DRIVE:\Steam\steamapps\common\Project Zomboid Modding Tools\Tiles\2x
    3. Open Tiled
    4. Up top click tools -> Tilesets
    5. Click the "Add Tilesets" button In this new screen it should also direct to where step 2 is pointing.
    6. check the boxes for the new tilesets that you want to add to your map. (even for just adding tilesets I'd recomend adding them to a map for now) and press OK
    7. Good job, they should now be in the list. If you click on them they should show you the tileset
    8. close this screen

    Now you will need to give properties to your tile set
    9. Up top click tools -> Tile properties
    10. Here we are going to define what your tiles do in game. I'de recommend opening Tiled twice for the following
    11. Open the .tiles file that is in your DRIVE:\Steam\steamapps\common\Project Zomboid Modding Tools\Tiles by default. Mine was called "newtiledefinitions" This will be your reference
    12. In your other tiled also open the tile properties screen but now instead make a new file
    13. Click the + icon on the bottom and select your tilesets. (if you want to update this later it is important that you do not delete these sets if they are being used in maps/mods/whatever, the number will be different and it will break stuff)
    14. Click on the tile you want to give properties to, open the reference tiled and navigate to an object similar to the one you are adding
    15. copy the settings and change them to your need, most stuff is self explenatory
    16. sweet, now your tiles have properties.
    17. close the tile properties screen
    18. Go to tools -> .pack files -> create .pack file
    19. Fill in the required steps.


    Now we will need to create a mod for you to be able to load your items in-game
    Eventhough I have the game on steam and it has its own mod folder their for some reason where it loads my mods from is: DRIVE:\Users\Username\Zomboid\mods
    20. Copy the "examplemod" and name it whatever you want
    21. open the folder and open the "mod" .info
    22. change the name, ID, Description
    23. save and close the file
    24. In your media folder inside of your mod folder create a folder named "texturepacks" in here you will put the .pack file you created in step 19 (\Zomboid\mods\MODNAME\media\texturepacks)
    25. back in the media folder you will put the tile definition file
    26. Open up the "mod" .info file again in your main mod folder
    27. add the line "pack=THENAMEOFYOURTEXTURE.PACK FILE"

    Awesome, now we will need to fix the container overlay. You can fix this for yourself locally OR you can add it to the mod so that others can enjoy it as well.
    28. navigate to DRIVE:\Steam\steamapps\common\ProjectZomboid\media\lua\server\Items
    29. Here is a worldfiller.lua file, copy it
    30. past it in your mod folder in MODNAME\media\lua\server\items (the "server" and "items" folder does probably not exist yet, create those)
    31. Now open the worldfiller.lua file you just pasted there (I use notepad++, its free and easy to work with)
    32.Now afer opening this file there will be a bunch of lines, these are all the existing container overlays in the game. For as far as I experienced you will need to keep those in addition to what you will add. Upon loading your mod this file will be used instead of the default one. If you don't keep the existing stuff it will no longer work in your map

    Adding new things
    33. Now for example you have the line
    in here location_Shop_zippee_01 is the name of the texture that its refering to. the _11 after that is the position on the texture, simply counting left to right and then continue on the next layer. there are 2 links after that, one for when its full and when for when its partially full.  so "food_01_10" is when its full and "food_01_18" when it is partially full. 

    Now what you want to do is copy-paste this line and edit it so that it will use your own overlays on your own tiles.
    "overlayMap["ThisIsMyNewTileSetName_11"] = {{ name = "other", tiles = {"ThisIsMyNewOverlayName_10", "ThisIsMyNewOverlayName_01_18"} }, { name = "other", tiles = {"food_02_10", "food_02_18"} }}"


    I hope this helps
×
×
  • Create New...