Jump to content

khzmusik

Members
  • Posts

    1,243
  • Joined

  • Last visited

  • Days Won

    7

khzmusik last won the day on December 24 2023

khzmusik had the most liked content!

About khzmusik

  • Birthday 05/06/1969

Personal Information

  • Biography
    Former noise musician, current programmer, single-player gamer.
  • Location
    Boston
  • Interests
    stuff

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

khzmusik's Achievements

Colony Founder

Colony Founder (11/15)

561

Reputation

  1. I just double checked. With both Food Spoilage and Snowberry Love mods installed, seeds, paste, and drinks do not scrap at all. I also double-checked what items they spoiled to (for those items that spoil), and they spoil to vanilla items, so there should be no issues.
  2. Hey, glad you're enjoying the mods. I just got back from a week-long vacation with my family, so I haven't been checking the forums. I'm actually not sure I'm a good person to ask about vehicles. I haven't really worked with them all that much. I looked into it briefly, and it would take a lot of research just to figure out if it's feasible. If it's possible to actually swap out a vehicle's container, then it might be possible to make a mod that swaps it out to a bigger container which has a higher "preserve" value. But so far I don't think that's possible. So, no promises. My mod has neither SnoBalls nor Twinkies. (It does have "preserved pies" which are supposed to be like Drake's or Hostess fruit pies.) Those probably come from another mod. The way I add food spoilage tags is by the item's name in the XML. It should start with "food" or "resourceCrop" and not contain "Can", "Schematic", or "Magazine". If the other mod doesn't follow this convention, then you'll need to make a compatibility modlet. Another possibility is that the other mod loads after mine (mods load in alphabetical order). If that's the case, then you could rename my mod folder with a "z_" prefix to make it load later. That's very odd. None of them have a "scrappable" attribute, and the ones that have materials, have the same materials as their vanilla counterparts. I will investigate.
  3. In general, it's up to modders to figure this stuff out. Hopefully when 7D2D goes gold, TFP will put together some kind of "official HOWTO" but there's nothing official yet. Also, the "shininess" of a texture is determined by either the specular or metallic values in the shader. They are separate shader workflows in Unity. I'm not sure which one TFP uses, but you're not required to use the same shader as the game. For these questions, it's better to ask other modders, not the game devs. You can ask in "Discussions and Requests" here on the forums, or join Guppy's Discord server and ask there.
  4. Meant to reply sooner, sorry... The actual food spoilage is done in SCore. That is a C# mod, and spoilage does in fact require C#. My mod enables it, sets the spoilage rates for various foods, sets the preserve rates for containers, adds fertilizer that plants spoil to (instead of rotten meat), creates craft-able canned goods and fridges (powered by batteries), and a few other user-friendly things like loading tips. If you want to change the water situation, I have a few different mods you might be interested in: Rain Collector: The "dew" collector fills less when the weather is dry, a little more when it's foggy, and a lot more when it's raining. Also includes the ability to change the number of "slots" in the dew collector. Requires C#. Murky dew: The dew collector fills with murky water, not clean water. In return, it doesn't produce heat. XML only. Polluted water: Glass jars are back, but they can only be filled with polluted water, which is much worse than murky water, and needs to be purified (not just boiled). For that, there are new water purification tablets, which can only be crafted with bleach (bleach can only be looted or bought at traders), and are unlocked with herbal antibiotics. It also includes the features of the "murky dew" mod. This does not require C#, but there are new icons, so it has to be installed on client and server. You are free to use anything in any of my mods, however you like, verbatim or not. You can also use them purely as tutorials, if you want to do your own thing. There are Gimp files for the new icons, if you want to make your own (they are all based on the vanilla game icons, photos taken by me, or public domain images, so there are no rights issues if you want to distribute them).
  5. Speaking of dyes - will the new armor support dyes? I hope so, it's an easy way to make your character more unique.
  6. That is outstanding, I didn't know it was in worldglobal.xml. I will definitely mess around with it. When the lighting is changed, please keep that bit.
  7. RE: zombie looting, my understanding is that looting would require the bodies be around longer, which degrades performance immensely. RE: interior/exterior lighting. Is there any way to make this easily moddable? Perhaps not through XML, but at least through defining some variables in C# that modders could easily change through a simple Harmony patch or something? I ask because, frankly, the way A21 handles interior lighting is exactly backwards from how our eyes actually work. If your eyes are adjusted to exterior (brighter) ambient light, then the interior (darker) places should look darker than normal. When crossing into those spaces, the spaces initially look nearly pitch-black, but as your eyes adjust the interior spaces look brighter than normal. (And the exterior spaces look very bright, almost washed-out.) But in game, when standing outside, dark interior spaces look like they're brightly lit. When transitioning into those spaces, they lose their lighting and look darker. Even worse: if you find a brightly-lit spot in that space and stand in it, the entire space suddenly becomes brightly lit. I find it incredibly annoying, and I have heard others express the same opinion. Of course, you can make your game's lighting work however you like, I'm just asking for the ability of players or modders to override it. EDIT: For example - my guess is there's probably some variable that controls how much darker it gets when you are in a dark space vs. a bright space. Simply allowing this value to be set via XML would mean we could just enter a negative number rather than a positive one, and that would solve most of the problems.
  8. There is a console command named "visitmap full" that theoretically does that. I say "theoretically" because I don't know if it works. When I was creating my "Rogues and Psychos" NPC pack, I made some small prefabs that were used as biome decorations, and I tried using that command so I could see all of them on the map. At that time it did not work. However, the recent A21.2 b30 EXP release notes say they added this: I have not tried it since that version came out. Even if it does work, it would take a long time. Things like biome decorations are not generated with the world, they are generated when the chunk is visited. But they show up on the map, so for the entire map to show, all the chunks in the map need to be visited.
  9. In the comments of the buffs.xml file, there are both "onSelfOpenLootContainer" and "onSelfLootContainer" triggered effects. I have never used either, but I'm guessing that the former is triggered when the loot container is opened. I'm also guessing the latter is triggered either when the loot container is closed, or when the player removes all the items from the loot container. If I'm right, you could write a buff like this, and add it to the player when they spawn or respawn: <buff name="buffGodModeWhenInContainer" name_key="buffGodModeName" description_key="buffGodModeDesc" tooltip_key="buffGodModeTooltip" icon="ui_game_symbol_add" icon_color="132,0,155"> <stack_type value="ignore" /> <display_value_key value="buffGodModeNameShort" /> <display_value value="xxx" /> <effect_group> <triggered_effect trigger="onSelfOpenLootContainer" action="AddBuff" buff="god" /> <triggered_effect trigger="onSelfLootContainer" action="RemoveBuff" buff="god" /> </effect_group> </buff> (As you might tell, I based it off of the vanilla "god mode" buff.) That's just a suggestion, but it should hopefully be enough to point you in the right direction. Also, a caveat: Those triggered effects are not actually used in any vanilla buffs. The comments don't have the "hook up" phrase that means they still have to be hooked up, so I assume they're hooked up and working, and just unused. But that is my assumption. You'll have to try it yourself. EDIT: Also, if "onSelfLootContainer" is not fired when the container is closed, then you will have to figure out some other way to remove the "god" buff (or its effects). Maybe make the "update_rate" value be "2" (seconds) and have the "god" buff removed "onSelfBuffUpdate".
  10. Sorry, I was going to reply earlier. I was pretty certain it was that line that was causing the problems. The "param1" attribute value tells the game to exclude that property from the block you're extending. You're telling the game "my block extends 'cntDewCollector' but don't use its 'Class' property." Look at the "terrSand" block for an example. The "Class" property specifies the C# class that controls the block's behavior, so without that property, the block has no behavior.
  11. If you are trying to do this on player death, there are already action sequences which you can use. The action sequences are "game_on_death_[option]", which is fired as the player dies, and "game_on_respawn_[option]", which is fired when the player respawns in the world. Here, "[option]" is the player death penalty option, which can be "none", "default", "injured", or "permanent". I don't know what you mean by "a loss of XP" since the default death penalty option is to add an XP deficit. If you want to outright remove a specific number of experience points, I don't think there's any way to do that. But you could also reduce the amount of XP gained via a buff. The passive effect to use is "PlayerExpGain", and you could use "perc_add" with a negative value. Look at the "twitch_buffBadLearner" buff for an example.
  12. That is actually an XPath feature. Every XPath expression always selects a collection of XML nodes. It could contain one node, many nodes, or no nodes (but in this case 7D2D will issue a warning in the console). A lot of times, people want that collection to only have one member, and that's why they include predicates like [@name="whatever"]. But you don't have to use a predicate, and if you're trying to remove a type of zombie from the game, what you did is exactly what I would do.
  13. Just FYI - I don't know if by "rogues" you were talking about my "Rogues and Psychos" pack. But if so, there are already "advanced" versions of the Rogues, and there is XML at the end of entityclasses.xml that will have them use the "whiteriver" faction (and thus be friendly). You just have to un-comment the code at the end of that file. There is also commented-out code in entitygroups.xml that will add the "advanced" versions to the biome spawn groups. You can un-comment that code and the "friendly" versions will spawn in the game. (There is also commented-out code that will remove the "basic," non-friendly versions, if you don't want both in the game.)
  14. You are correct, both will work. The "remove" op also accepts wildcards, so the second example could just be this (assuming those are the only two custom zombies): <csv xpath="/entitygroups/entitygroup/text()" delim="\n" op="remove" >CustomZombie*</csv> The reason you can't find much information through Google, is because "csv" is not standard XPath. It's something TFP created to modify lists, especially comma-separated values (hence the name). SphereII has a good explanation of it, here:
  15. Yes, there is. There's a game event action called "ResetMap" and one of its properties is "remove_discovery". The other property is "remove_waypoints" but I don't know if you also want to remove the waypoints. Here's the relevant code from the "action_lost" action sequence, in gameevents.xml: <action class="ResetMap"> <property name="phase" value="4" /> <property name="remove_discovery" value="true" /> <property name="remove_waypoints" value="true" /> </action> Now, how you trigger the action sequence is another matter. There are several ways to trigger a game action (e.g. through a quest or buff), but I don't know when you want this to happen. Also - this works in A21.2. I don't know for sure that it will work in earlier A21 versions. (I think it was introduced with the "permadeath" setting, so I don't know if the code was ready before then.)
×
×
  • Create New...