Project Zomboid

Project Zomboid

[B41 MP only] bikinitools: Server Edition - new vehicle ownership submod out!
目前顯示第 21-30 項,共 138 項
< 1  2  3  4  5 ... 14 >
更新:2023 年 4 月 18 日 @ 上午 11:03

BTSE_Chat:
- if players are using the tandy all their chat messages get the suffix "[via TTS]"
- reduced the general sound volume of the tandy's noises
- tandy items can now be configured to mute the sound
- code spring cleaning

BTSE_Economy:
- added "buy as many as you can" for vending machine stocked items. select all the items you want and use that option. if there's not enough money left it will just stop buying.
- prices of items in vending machines now show the currency too
- wallet names now show different states of player known information. "empty" means checked and no cash, no suffix means not checked or not a special wallet, and the last one is "contains cash" which means it was checked and there is cash inside
- same as with the wallet names, the tooltips and available options will now only show when applicable
- added a "search all wallets for cash" batch option in addition to the existing "take cash from of all wallets" option. you can now check and/or loot all wallets automatically

BTSE_Farming:
- refined the "revitalize" option to be available in some niche cases where the plant was not loaded successfully on the server but still had data attached to it, even if it was inert and not considered a plant anymore by the game

BTSE_Tools:
- added a bit more info to the safezone exclusion sandbox option's tooltip

BTSE_Base:
- the internally used PARP:sayInColor() now translates messages if needed. the weirdness around the vending machine messages shown as "IGUI_..." should be gone now.

更新:2023 年 4 月 6 日 @ 上午 9:28

BTSE_Economy:
- fixed issue with ATM context menu breaking when the server economy does not use paychecks. sorry about that!

更新:2023 年 4 月 5 日 @ 上午 9:01

BTSE_Locks:
- reverted "more aggressive" check for walls because sometimes moddata would be transmitted to the wrong sprite index, meaning that floors or door frames could be removed when unlocking if the client was prone to desync and/or packet loss

BTSE_Tools:
- fixed the sandbox option "allow mod+ access to the safezone ui"

更新:2023 年 4 月 4 日 @ 上午 11:05

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!

更新:2023 年 3 月 21 日 @ 下午 12:06

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

更新:2023 年 3 月 8 日 @ 上午 10:34

Global:
- fixed russian translation file encoding

更新:2023 年 3 月 5 日 @ 上午 7:44

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

更新:2023 年 3 月 4 日 @ 上午 10:41

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

更新:2023 年 2 月 16 日 @ 上午 8:02

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!

更新:2023 年 2 月 4 日 @ 上午 8:01

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)