Project Zomboid

Project Zomboid

[B41 MP only] bikinitools: Server Edition
Showing 21-30 of 135 entries
< 1  2  3  4  5 ... 14 >
Update: 4 Apr, 2023 @ 11:05am

Global:
- moved a good amount of OnGameStart events over to OnGameBoot for better "click to start" performance
- migrated a lot of different context menu additions to a new hook for the btse menu for better performance
- unified naming conventions for all timed actions of all submods
- renamed some files and left empty files there to be deleted next update (because steam hates file removal)

BTSE_Base:
- moved some debug tools over to a new "Debug tools and ModData" entry in the btse menu
- ModData of right clicked tiles is now shown in the btse menu (see above)

BTSE_Locks:
- made the wall removal more aggressive and a bit more independent from the wall sprite list

BTSE_TileProtect:
- made the sledge destruction code accessible for use under BTSE.TileProtect:breakSledge(sledge, player), rewired the whitelist destruction hook to use this method

BTSE_Tools:
- added option to show safehouse boundaries as gm+ (btse menu). disabled when in debug mode because duh.
- added option for unlimited ammo as gm+ (btse menu)
- added two more detections that can be logged
- added sandbox option to enable the "add safezone" button for moderator and up (off by default)
- a few sandbox options do not need a client relog anymore. the hint has been removed.
- moved a lot of stuff around to bring order to chaos

BTSE_Chat:
- added a new item "Tandy TRS-80 Model 100" (courtesy of KI5), a handheld old timey laptop device. it can be found in the same locations you can find tv remotes. the context menu of the device allows you to "use for communication" to allow people role playing mute characters to use the regular chat commands instead of emotes and not lose immersion. no, it is not a text-to-speech device, but we think it is in our heads, alright? think of somebody typing, and the device "speaking" for them. it is visibly shown held in hands and beeps randomly so that shouldn't be too hard. super annoying beeps. be careful.
- rolling dice via /roll now plays a sound
- improved the accuracy of the "player is typing" timeout detection
- talking animations are now only executed if the command being typed is in the "chat" or "radio" group
- added new sandbox option to send copies of faction messages to a radio channel only staff can see (called FCC, faction carbon copy)
- added detection for that nifty chat bubble markup being shown because people use the chat bubble regardless of my warnings and report it as bug :dum:
- changed server side command module from parp_chat to btse_chat. parp_chat is still valid for now.
- code restructuring and a lot of discombobulating

BTSE_Economy:
- added the first batch of vehicle shop pictures. most of the KI5 vehicles now have a default picture courtesy of Appendiburst. more are coming in the future
- added a sandbox option to drop wallets on death if cash loss is enabled. dropped wallets are linked to a unique server side bank account and all actions taken are validated on the server, so duping is useless. when you find a wallet you can check its contents (context menu on wallet) and if you're lucky it will contain some cash you can pocket. option is turned on by default. even if turned off, existing dropped wallets will retain their function.
- wallet context menus will now show the last known account balance and you'll be able to refresh it if needed
- added sandbox option to log wallet creation on the server (Zomboid/Lua/parp_bank/wallet_creation.txt)
- vehicles bought at the shop should now come without broken locks. depending on rng and vanilla sandbox settings this could happen.
- ATM context menus now show revenue and earnings summed up with the paycheck amount in the paycheck menu item
- removed the sandbox option to enable context menu interactions for economy objects and made it the default
- removed the sandbox option to enable the vehicle shop context menu for vending machines. it will now be available by default
- removed the sandbox option to enable the global item shop context menu for vending machines. it will now be available by default
- removed a large batch of currency commands and many (not all) translations for them. use the player-, ATM- and vending machine context menus for what the commands did. removed: /pay, /wire, /valuables, /exchange, /withdraw, /deposit, /paycheck, /buy, /createmoney, /mergeaccounts
- doubled the time it takes to label a price for a vending machine item because the client needs more time to sync the player (and item moddata) with the server
- shop and bank areas highlighted by the /areas command will now be shown as a border, not fully colored
- changed server side command module from parp_economy to btse_economy. parp_economy is still valid for now.
- changed global namespace of the server side commands from PARP.Commands.Currency to BTSE.Commands.Economy. the old namespaces should still be valid. EXPECT THE CLIENT SIDE TO FOLLOW NEXT!

Update: 21 Mar, 2023 @ 12:06pm

BTSE_Locks:
- added sandbox option allowing somebody who knows a keypad code (= has unlocked the door before) to destroy the walls and door segments (enabled by default)
- doors and keypad related walls are now explicitly protected from destruction by normal means
- added sandbox option to make doors and keypad related walls indestructible regardless of their original properties. has not been tested on dedicated server yet but should work. enabled by default.

BTSE_Economy:
- moved vending machine transfer protection to new "itemTransferAllowed" hook
- added new field "description" to vehicle and item shop configs, to be displayed in the shop tooltip. accepts translations starting with "IGUI_" and literal text. see BTSE_Examples!
- added new field "repairAllParts" to vehicle shop configs. this will repair all the parts the car comes with, not all parts it can possibly have. this does not add missing parts. it will not armor vehicles as the armor parts are missing parts. see BTSE_Examples!
- added new field "addSpecialParts" to vehicle shop config. this allows you to have any part the vehicle supports installed after spawn, like armor parts, storage and other nice things. see BTSE_Examples!
- added new field "skinIndex" to vehicle shop config. this allows you to force the vehicle spawn with a specific skin index. indices are numerical starting with zero and should be unaffected by prohibited skin selections. see BTSE_Examples!
- vehicles with repair, parts or skin options set will now have a "*" behind their shop entries
- added new field "thumbnailPath" to vehicle shop config. you can define a custom thumbnail to be used in the tooltips, for example to showcase a fully armored or specifically skinned variant. just put this pic into your server mod and set the path. see BTSE_Examples!
- implemented vehicle thumbnail cache for context menu performance improvements
- implemented shop item tooltip cache for context menu performance improvements

BTSE_TileProtect:
- moved whitelist sprite destruction code here, as "objectDestroyedWithSledge" hook

BTSE_Tools:
- fixed an issue related to certain chars in the ini file during safehouse and faction restore

BTSE_Chat:
- some code cleanup and housekeeping

BTSE_Base:
- added new hook "objectDestroyedWithSledge" that is called after a destroy action with a sledgehammer has taken place. see comments in lua/shared/PARP_Hooks.lua for parameters and description.
- added new hook "itemTransferAllowed" that is called when item transfers are queued. see comments in lua/shared/PARP_Hooks.lua for parameters and description.
- an empty halo message queue should now be started as soon as a message is added

BTSE_Examples:
- refreshed shop examples in lua/shared/ValuesAndPrices.lua to reflect new additions

Update: 8 Mar, 2023 @ 10:34am

Global:
- fixed russian translation file encoding

Update: 5 Mar, 2023 @ 7:44am

Global:
- added russian translation thanks to the enormous efforts of Дак!

BTSE_Base:
- fixed an error being thrown for a server side file loaded on the client
- when sledges are broken due to whitelist destruction they are now dropped and the movable cursor is closed. this is done to prevent abuse of a vanilla isValid check loophole.

BTSE_Tools:
- fixed broken sandbox variable translation
- moved /sync command to the "help" category

Update: 4 Mar, 2023 @ 10:41am

Removed submods PARPBase, PARPChat, PARPCurrencyExample, PARPEconomy, PARPLocks, PARPQOL

Global:
- migrated lots of things over to BTSE namespace, plus the command module parp was changed to btse as well. the modules parp_economy and parp_chat and other PARP based namespaces will follow in a later update. i will try to add a fallback for legacy price lists and shop entries.
- added warning to disable the container protection setting of ValhallaAegis when BTSE_TileProtect is loaded
- added warning to disable BTSE_Examples because it is not meant to be enabled and serves only as a source of documentation

BTSE_Chat:
- made the "senderNeedsRadio" check function publicly accessible as PARP.Chat:senderNeedsRadioCheck() so you can override it with your own. any string returned by this function is interpreted as "no radio found" and the string is displayed as error message.
- the "senderNeedsRadio" check now also checks for placed radios around the player (configurable via sandbox variable, default: 2 tiles)
- receiving messages over radio text channels is now possible when radios are placed around the player (same distance like the sender check)
- added sandbox option to define a list of usernames forbidden from signing up for events via /signup
- moved the above mentioned option and the jail coords to their own sandbox options tab as they did not fit in any other tab
- removed old translations

BTSE_Economy:
- more transaction types are now grouped in bank statement printouts: money loss, tax revenue and interest
- added current balance information to ATM and player payment context menus
- item and vehicle shops show the current amount you own next to the individual prices. it will be marked green and red depending on if you have a sufficient amount of the currency.
- every time account balance changes occur the client will now get a copy of the current bank account data
- while the player is waiting for a transaction confirmation, the machine is locked for usage (only for that player) to prevent them spamming buy requests and not getting all bought items. if the server does not respond, the lock is lifted after 10 seconds and a message is shown, telling the user about a malfunction
- moved a lot of translations here that i initially forgot to include. apologies!
- restructured context menu creation code
- added currency text cache

BTSE_TileProtect:
- sprite protection whitelist now allows for "string starts with" type sprite names, allowing you to whitelist a tilepack by using its name without numbers behind it. exact names are still supported and can be thrown into the mix. whitelist a pack like this: carpentry_01 instead of carpentry_01_18;carpentry_01_19;...

BTSE_Farming:
- if in debug mode and farming debug is on, the farming debug log will contain expected yields and seed counts
- to circumvent the vanilla getVegetablesNumber function being able to return negative values it will now give at least 1 veggie per harvest

BTSE_Tools:
- added detection for players using health cheats without access level. this is logged automatically to btse_detected_exploits.log
- added 19 additional cheat detections automatically logged to btse_detected_exploits.log. under certain conditions some will be suspended
- added new command /sync to force refresh the BTSE specific sandbox variables in case they are broken on the client side. requires BTSE_Chat.
- weight restrictions for disabling "wear" options only apply to regular users again
- added the translation for Sandbox_PARP_Compensation which i forgot when moving some stuff around last time
- moved a lot of translations here that i initially forgot to include. apologies!
- migrated command handlers to the BTSE namespace and the command module from parp_chat to btse_tools
- generator polling is now every 10 ingame minutes

BTSE_Locks:
- migrated namespace from PARP to BTSE

Update: 16 Feb, 2023 @ 8:02am

BTSE_Economy:
- reversed output format for cash currency names: cash (currency) to currency (cash)

BTSE_Tools:
- added sandbox option to log unauthorized stats panel access to its own file. it will also be logged in Zomboid/Lua/btse_detected_exploits.log regardless
- added sandbox option to automatically close stats panels when opened without access level
- added sandbox option to automatically remove vehicles with mismatched scripts (useful after removing a vehicle mod). requires tracking of original vehicle scripts to be enabled. removal will be logged to the mismatch log
- added new server side hook "onVehicleInit". see PARP_Base/media/lua/shared/PARP_Hooks.lua
- the original part function is now called before onVehicleInitOrInteraction to not conflict with logic within hooks
- the sandbox variable to disable context menu items when weight exceeds a threshold now applies to the root level of the context menu too (to account for those "loosen", "tighten" options that aren't in a "wear" submenu)

BTSE_Base:
- lots of new code and helpers in preparation for upcoming things
- added sandbox option to log movable actions by type to a server side file (see tooltip). log entries contain time, steam id, username, access level, sprite name and position

BTSE_Farming:
- now considered stable on my end. enjoy, and don't forget to check BTSE_Examples/lua/server/AddCropsExample.lua for usage.

BTSE_Examples:
- added more comments about requirements and where to put copies of the files to use them
- added example for how to leverage the BTSE tile protection

BTSE_TileProtect:
new submod that allows a wide range of customization options for objects in the world. highlights:
- whitelist for users to bypass all protections included
- whitelist for sprites to be exempt from protections, including an option to automatically break a sledge when they are destroyed, for balance
- blacklist for explicitly protected sprite names included
- disable all pickup actions (except whitelist and safehouse)
- disable all or allow specific container pickups (except whitelist and safehouse)
- disable all destructive actions in the world (except whitelist and safehouse). destructive actions are: disassemble, destroy, rotate
- explicitly allow container destruction
- configurable safehouse cooldown during which the taken safehouse will be untouchable
- safehouse protection member level can be configured to be owner or member
- comes with 4 preset hooks to add your own protection rules within your own mods. see BTSE_Examples/lua/shared/TileProtectionExample.lua
- add your own "allow container pickup by type" sandbox var easily without coding. see BTSE_Examples/sandbox-options.txt

DO NOT USE THIS IN COMBINATION WITH THE CONTAINER PROTECTION OPTIONS WITHIN ValhallaAegis!

Update: 4 Feb, 2023 @ 8:01am

BTSE_Farming:
- added seed icons to the sowing menu
- force refreshed sprites now consider the state of the plant too. they will show rotten, dry, and destroyed sprites according to their configurations
- moved the "revitalize plant" logic into a server side command instead of it being executed client side
- server side crop sprite refreshes are now only done on action = update/grow

BTSE_Chat:
- moved the first batch of admin commands over to BTSE_Tools. the commands and the associated code are only bound when the chat is enabled too. with time i will add alternative methods of calling the functionalities, via context menu entries. this includes: /flipvehicle, /listvehicles, /prunevehicles, /leaflets, /power, /water, /creative, /catch, /release, /lightbulbs, /loadout

BTSE_Tools:
- added sandbox option to blacklist areas for user side safehouse claims. if a house is inside one of the defined areas the claim menu item will be disabled and a tooltip will show that it is forbidden. check the sandbox var tooltip for formatting.
- added sandbox options to enforce and set a maximum amount of members for factions. off by default.
- added sandbox option to allow individual faction member counts if the restriction to member count is turned on. if a faction is not on this list, the default maximum is used. the format is: Faction name:count;Another faction:count
- added sandbox option to log vehicle part install/uninstall on the server. useful if you want to create statistics to detect vehicle strippers. off by default.

BTSE_Economy:
- moved global vehicle and item shops to the main context menu instead of the vending machine submenu
- global item shop context menu now shows icons for the things you can buy
- added more info and icons to the global item shop tooltips, as well as a warning when items can potentially not be properly spawned
- the vehicle shop has revamped tooltips and i added support for vehicle preview pictures too. the pictures are expected to be under the path media/ui/vehicle_shop/NamespacedVehicleScriptName.png, so for example a file named Base.92amgeneralM998.png will be associated with the vehicle to be spawned automatically. the pictures are resized to accommodate the width of the tooltip but shouldn't be wider than 400px to not bloat the file size. during the next updates vehicle pictures of most vanilla cars and at least the KI5 vehicle collection will be included. if you want to add your own or override the preset ones, put your own files in the correct folders in your server's "adjustments or whatever" mod and load it after BTSE_Economy
- fixed not being able to set an individual tax receiver for vending machine sales when there was no global tax receiver set
- minor code cleanup

BTSE_Base:
- optimized performance of the internal "player is in area" detection method
- sprites that were registered as protected will now not show an error message above the player when right clicking them
- context menus now allow for an icon hover state. if you use my context menu creation wrappers (BTSE_Base: client/ui/Context_PA.lua) and the option "icon" is set to a texture path, plus you have an icon with the same name and "_hover" in the filename, it will automatically be used
- added additional checks to the method for getting all sandbox defaults of a namespace

Global:
- exploits / modified clients will now be logged in a combined log file regardless of individual settings, with steam id, username and reason. only one entry is created per id / name / reason combination. the log file on the server is Zomboid/Lua/btse_detected_exploits.log
- icons. icons everywhere! (courtesy of KI5 who knows i can't do shit with any image thingamajig)

Update: 29 Jan, 2023 @ 8:00am

The submod contents of all PARP* mods have now been moved to their announced BTSE_* counterparts. You were warned plenty time in advance, in the workshop and in the game when staff members log in.

Global:
- revised logic around sandbox options fallbacks so i do not have to keep 2 separate lists of them anymore

BTSE_Chat:
- sandbox option to show quoted text in /say color is now on by default
- removed the preset welcome logo file url and added a check for the texture under the sandbox configured path to exist before using it
- added new hook type "btseChatWelcome" to be used in PARP.Hooks:add()
- moved some sandbox vars from rp to chat overhaul

BTSE_Tools:
- added a sandbox option to disable user created ingame tickets and show a message instead
- added a sandbox option to configure the shown message when tickets are disabled. accepts a text or a translation key. the preset translation defaults to "Please use the Discord ticket system instead."
- item spawner log now logs the steam id too
- if item spawner spawns are done without proper access level the spawn is blocked
- moved some sandbox options around to better reflect on the type of option
- added a sandbox option to hide debug / admin buttons for users without access level
- added a sandbox option to log hiding of those buttons

BTSE_Farming:
- added a context menu interaction to "revitalize" plants that lost their plant definitions (error loading global object) and reverted to being a sprite only. reverting to the proper growth state takes one farming tick (about 10 ingame minutes) to stick. this is experimental right now as i do not know if it can kick players.

BTSE_Base:
- many internal changes to the integrated tile protection code
- code cleanup and partial refactoring

Update: 20 Jan, 2023 @ 5:31am

PARPChat:
- hopefully fixed an issue that allowed all users to read all channels. apologies!

Update: 20 Jan, 2023 @ 4:31am

PARPChat:
- the "finished talking" anim should now not cancel running animations anymore. forgot that, sorry!
- staff channel should now be visible for all ranked users, not just overseer+

PARPQOL:
- restricted backup and restore options to admin only

BTSE_Farming:
- tweaked the forced sprite refresh