Jump to content

Search the Community

Showing results for tags 'utility'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • News & Announcements
    • News
  • Project Zomboid
    • PZ Updates
    • General Discussions
    • Bug Reports
    • PZ Support
    • PZ Multiplayer
    • PZ Community & Creativity
    • PZ Suggestions
  • PZ Modding
    • Tutorials & Resources
    • Mods
    • Items
    • Mapping
    • Mod Ideas and Requests
  • General Games Development
    • Indie Scene
  • Other Discussions
    • General Discussion
    • Forum Games & Activities

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Twitter


Interests

Found 2 results

  1. Heya, I've been working on this utility mod for awhile now. It's nothing much but should be good enough for modders to use. It'll be uploaded to github when I have time to do so. Mod Link: Steam Workshop - Simplify Available Upcoming Features (Massive Overhaul): 1. Extended Require Function - Allows you to load lua from 'cache/lua/[server_name]' and root mod folder. 2. Switch Function - Better coding style for selection control. 3. Extended Metatable - Extended looping function (next, pairs, and ipairs) to support custom metatable metamethods (Support LUA 5.2 __next, __pairs, __ipairs / simplify custom metatable). - Introduce global 'size' function to get table's size. 4. Extended Table - Introduce table.freeze(t) and table.isfrozen(t). - It's a pure lua implementation so the performance is not the same as C API. 5. Text File Utilities - Less error prone file function call. - Read text files from 'cache/lua/[server_name]' and root mod folder. - Utilities to get all of the text content and execute function per line. 6. CSV - Read CSV files. Header and custom separator supported. File extension is not enforced 7. Event Manager - Allows you to register custom event and triggers it with variable arguments. 8. Streamlined Event Hook Implementation - You can easily hook an event by simply declare 'ModCustomEventsTable.EventName = function'. - Set the value to nil to remove the callback. 9. Command Channels - Streamlined 'OnServerCommand' and 'OnClientCommand' hooks. Same new event hook style. 10. Mod Loader (Scripts) - Introduce branch folder concept. You can switch from unstable version to stable version using custom mod loader. - Streamlined concept where you don't need proxy files to load scripts outside of media folder. The mod loader will look for 'loader.lua' at the root mod folder. - Option's method for changing branch might or might not be supported. And more.. There's too many prototype features I've ALREADY made for the upcoming update and those need intensive testing. Such as custom database, system / in-game timers, and custom meta events manager. Feedbacks on this framework mod is highly appreciated so that I can improve it. Just note that I'm not a professional so the quality might be lacking for you. edited (31/08/2022): I'm too shy to make a new post for attention. The overhaul is almost done. This mod originally meant to be used as simple utility mod. But, due to lack of tools and game architecture's problem for my mods, It has been repurposed into a proper framework. Lot of stuffs will be introduced in the new update and note that there might be some oversights from me. There's too many things I need to consider for the designs and it's hard to check for what I've failed to include into my consideration. Earliest ETA for the update would be one week from now.
  2. Spawn Map-Objects Utility - Enhance your maps ! Workshop link What is this mod ? While I was working with the map editor, I got frustrated some items could not be placed using it. For instance, barricades and campfires. So we decided with a friend to solve this problem... Once done we decided to make this mod and make it as generic as possible ! This should allow any mapper to use our object-spawning system to make better maps and any modder to upgrade it with ease. I'm a player, what do I need to know or do ? Nothing. This mod should be a dependency mod for any map that uses the Spawn Map-Objects Utility. One you have this mod installed, it should work without needing you to do anything. I'm a mapper, what is this mod doing precisely and how does it works ? Tell me more about it ! This mod will allow you to place items & events within the map editor like campfire, tents, wall frames, zombies... Those placeholders will be converted into their working version inside the map once loaded. This means you will be able to place pick-up-able tents, light-able campfires, thumpables wooden and metal structures, break windows, spawn zombies at precise places and even more ! Interesting... So how do I use it ? The installation is very simple, once you have subscribed and download this mod, locate it's installation folder : \Steam_Installation_Folder\steamapps\workshop\content\108600\974718243\mods\SpawnMapObjectsUtil Once inside the mod folder, you should see a Tiles folder. Open it, and then open the 2x folder. You should see all the placeholders images you will need. Copy all these .png files to the 2x folder of your Tilezed. Now, you should be able to use the placeholders via the tilset list. I usually place those on the Furniture layer but it should work on other layers too. If you want to test the features, check out the building we are using for internal testing : https://rbfi.io/dl.php?key=/0Sol/testmap.tbx Once your map is finished and you are ready to publish it to the workshop make sure to add this mod to the dependencies of your map. So that it will be prompted to the players to install it with your map. Great, but before I install it, can you showcase some features ? Of course, here is the list of what you can do with the current version of Spawn Map-Objects Utility. Place thumpable walls of all possible quality with adjusted durability (Logs, wood, metal). Place fences adjusted durability too (Sandbags, wood, metal plates or bars). Place thumpables and working-properly barricades on windows (1,2,3 or four planks, metal sheet, metal bars) Place upgradable by player walls frames. Place weapons, literature, trash and food items on the floor. Place properly-interactable camping materials (tents, campfires and compost) Zombies-spawner at specific places (Horde inside a tower away from the city or a lone zombie in a specific room...) Add water collecting barrels already full of water Place fishing-nets on your lake or generators in a specific room Break specific windows on the map (with them still barricadable and full of dangerous shards). Break and remove glass from windows and keep it barricadeable Place sheetropes on windows. We also plan to add more to this list with upcoming updates, things like traps, sound events and such. What are those red tiles on your placeholders images ? As said earlier, we are planning to add more tiles to the placeholders. You can use the blue ones, but if you try to place a red one, it won't work. The red tiles are the not-implemented-yet features. But we kept it so that it will be easier to update once done. Please do not use the red placeholder tiles. I'm a modder, you said I could expand your utility ? Even more ! We made functions for you to easily add your own placeholders or remove the "default placeholders" shipped with the mod. Let me explain. Create your custom placeholder Once you have created the png of your custom new placeholder, you will need to code the replacement function in lua. To do it, you can write your lua file using this template : require "WorldManager/SpawnFromPlaceholder"; MyPlaceholder = {}; MyPlaceholder.replace = function(square, tileObject) -- Your code goes here -- indicate that the method has worked properly -- and the placeholder tile can be removed return true; end -- register and identify the placeholder in the system SpawnFromPlaceholder.Add({ name = "MyPlaceholder" }); Here are the explanations : First, you need to implement the method MyPlaceholder.replace(square, tileObject) which will be called for each object found in each square loaded. This method need to return a Boolean (true or false) to indicate if the method has worked. If the method return true the program will automatically delete the tile placeholder else it does nothing. The second step is to register your placeholder in the system with the method SpawnFromPlaceholder.Add(placeholderInfoObj). The parameter expect two important properties : name : the name of your object which contains at least the method replace() Remove default placeholders This mod allow you to remove unused shipped placeholders to save resources and gain performance. To remove the placeholders, you can use this snippet : require "WorldManager/SpawnFromPlaceholder"; SpawnFromPlaceholder.Remove({ "WallsPlaceholder", "ZombiePlaceholder", "..." }); The method will remove the placeholders listed in the array when the event OnGameStart is fired. Shipped placeholders list BarricadePlaceholder CampingCompostPlaceholder (campfire, tent and compost) CarpentryAndConstructedPlaceholder (sandbag, barrel, rain collector, lamp) DroppedFoodItemsPlaceholder DroppedTrashItemsPlaceholder DroppedWeaponsItemsPlaceholder GeneratorPlaceholder TrapsPlaceholder WallsPlaceholder WindowStuffPlaceholder (smash & clean window, sheet rope) ZombiePlaceholder
×
×
  • Create New...