Jump to content

Telric

Members
  • Posts

    798
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by Telric

  1. I'm not sure if it works when they are dead, but generally you'd use an entitytagcompare check for harvesting an entity. as for the blocks, that trigger wont work. you don't harvest a block. you damage or break it.

    This is from something that i was testing but have since scrapped. It worked when i destroyed the block.

     

    
    				<triggered_effect trigger="onSelfDestroyedBlock" action="AddBuff" buff="buffHookshotTeleportTest" target="self"> 
    					<requirement name="TriggerHasTags" tags="hookshottarget"/>
    				</triggered_effect>


    And then in blocks, i have:


        <property name="Tags" value="hookshottarget"/>

    on w/e block i want to trigger the teleport.

  2. Both the radiation and night vision are just screen overlays, which have a couple parameters for intensity and what not. You could play around with them.


            <triggered_effect trigger="onSelfItemActivate" action="ModifyScreenEffect" effect_name="NightVision" intensity="1" fade="0"/>

    That's from the nightvision googles item.

    <triggered_effect trigger="onSelfBuffStart" action="ModifyScreenEffect" effect_name="Radiation" intensity=".6" fade="2"/>

    That's from the radiation03 buff.

    If you're wanting to actually change which is which (having trouble understanding what the goal of the mod would be), you can just change the effect_name. Do a search for those xml lines to find them.

  3. 1 hour ago, Viktoriusiii said:


    Nah... if fans give valid feedback with reasons for why and how... they take it about as serious as ppl crying because they dislike it personally.
     

      Reveal hidden contents

    I try to never argue from personal view. Just by arguing gamemechanics and interactions between them.

    I told them that levelgates was a STUPID idea. Even back in 16.4 when it started... I even talked with MM...

    They do not listen. They might create good code... but game design is not their thing.
    All the redesigns they did... I'm not perfect and I complained about some changes that feel much better nowadays.
    But most stuff is just throwing @%$# at the wall and see what sticks.

    But we've had this discussion so many times...
    Maybe I am totally wrong... but in all my time in the game and on this forum... not once did they prove me wrong.
     

    Why would they try to prove you wrong when most of your posts are negative for negativity's sake... I've never seen a constructive post from you. They do listen to all fans. But there's a big difference in listening to and doing exactly as every fan says.

  4. 1 hour ago, FireStar said:

    I was wondering if the Fishing V2 insects were set to hostile for a reason? One thing I have noticed is that if you have turrets they will use a lot of ammo, even more so on server. 

    Not a specific reason. It just uses an invisible zombie with an attached insect as a prefab, so theoretically it's just another zombie to the game.

  5. If you wanna play around with a fishing mod, I have one made for a20. You run around with a bug net and use sound to find bait, then can fish from certain spots or while in water. There's a few different fish that can be caught at different times of day / night and in different biomes.

    It's not super in depth as I personally hate recipe modding, so finding a use for a ton of fish isn't something I'm wanting to do, but worth a try!
     

     

  6. Well, I tried to follow best I can with what you have going on. Seems you're using a buff on the player that transfers some info to nearby enemies within 5 blocks. Confused on the buffEnemy01 and 02 part, but as far as the health max thing goes, you can't read a player cvar on an enemy. You'll have to create a new cvar and transfer it.

    This means for every possible player level, you need to radiate a cvar to nearby enemies. The first two triggers are to be attached to the player to check their level. This then sends the level, in the form of a new cvar, to enemies within 5 blocks. Now, I'm not sure what buffEntitySpawnHeal is, but HealthMax can't be increased dynamically without some form of healing. What you have right now will constantly call the heal on update. You'll have to add in some form of a cooldown buff or another cvar check so it doesn't do that.

    Also, all of this is with the expectation the enemies are getting the buff already, and it's just not working (which is what I got from a quick look). Hope it helps!
     

    		<triggered_effect trigger="onSelfBuffUpdate" action="ModifyCVar" cvar="EnemyLevel" target="selfAOE" range="5" target_tags="entity,zombie,walker" operation="set" value="1">
    			<requirement name="CVarCompare" cvar="PlayerLevel" operation="Equals" value="1" target="self"/>
    		</triggered_effect>
    		<triggered_effect trigger="onSelfBuffUpdate" action="ModifyCVar" cvar="EnemyLevel" target="selfAOE" range="5" target_tags="entity,zombie,walker" operation="set" value="2">
    			<requirement name="CVarCompare" cvar="PlayerLevel" operation="Equals" value="2" target="self"/>
    		</triggered_effect>
    		
    		
    		
    		 <effect_group>    
                <requirement name="EnemyLevel" operation="Equals" value="1"/>        
    				<passive_effect name="HealthMax" operation="base_add" value="50"/>
    				<triggered_effect trigger="onSelfFirstSpawn" action="AddBuff" target="self" buff="buffEntitySpawnHeal"/>    
    				<triggered_effect trigger="onSelfBuffStart" action="AddBuff" target="self" buff="buffEntitySpawnHeal"/>
    				<triggered_effect trigger="onSelfBuffFinish" action="AddBuff" target="self" buff="buffEntitySpawnHeal"/>
    				<triggered_effect trigger="onSelfBuffUpdate" action="AddBuff" target="self" buff="buffEntitySpawnHeal"/>
            </effect_group>
    		 <effect_group>    
                <requirement name="EnemyLevel" operation="Equals" value="2"/>        
    				<passive_effect name="HealthMax" operation="base_add" value="100"/>
    				<triggered_effect trigger="onSelfFirstSpawn" action="AddBuff" target="self" buff="buffEntitySpawnHeal"/>    
    				<triggered_effect trigger="onSelfBuffStart" action="AddBuff" target="self" buff="buffEntitySpawnHeal"/>
    				<triggered_effect trigger="onSelfBuffFinish" action="AddBuff" target="self" buff="buffEntitySpawnHeal"/>
    				<triggered_effect trigger="onSelfBuffUpdate" action="AddBuff" target="self" buff="buffEntitySpawnHeal"/>
            </effect_group>

     


  7.  

    14 hours ago, Maharin said:

    Are there any plans to add the ability to adjust loot tables based on game days instead of game stage?  Why?  So you could have games that play more like a real apocalypse would play out.  For instance you could have "old world" loot be less and less likely to be found over time or even have the chance to find any loot go down over time.  If there are no plans to have this as an option would it help if I said please?  :p

     

    Any thoughts on this idea?  It's does not seem possible to fake it as things stand currently, at least at my modding skill level anyway.


    With a good bit of code, you could write out a single buff that would do this. Using the timeofday requirement check, you could count up a cvar tracker, then use the passive gamestage and use a set operation to be that cvar number. So:

    Checks the time on each day:
    <requirement name="TimeOfDay" operation="Equals" value="2359"/>

     

    Adds to the cvar (after setting it before hand):
    <triggered_effect trigger="onSelfBuffUpdate" action="ModifyCVar" cvar="LootstageDay" operation="add" value="1"/>

     

    Sets the gamestage to be equal to lootstageday:
    <passive_effect name="GameStage" operation="base_set" value="2">
                <requirement name="CVarCompare" cvar="LootstageDay" operation="Equals" value="2"/>
    </passive_effect>

    You'd need to look into the timing of the update tick so it doesnt happen twice while the game time is at 11:59... or you could add a second buff that's applied as a cooldown, and then another requirement check to nothasbuff.

  8. Another option, specifically to deal with sleeper spawns, would be to use a /set on the actual block of the spawner to turn it into air instead of a spawner block. That would basically remove all sleeper spawn points with one little line of code.

    Untested, but this should do what i'm talking about.

    <set xpath="/blocks/block[contains(@name, sleeper)]">
    	<property name="Tags" value="air"/>
    	<property name="Material" value="Mair"/>
    	<property name="Shape" value="Invisible"/>
    	<property name="Texture" value="250"/>
    	<property name="FilterTags" value="MC_outdoor,SC_terrain"/>
    	<property name="SortOrder1" value="d0j0"/>
    	<property name="SortOrder2" value="0050"/>
    </set>

     

  9. Been a while since I did that tutorial, but back then yes, you had to have the tags in that specific order. I'm not sure about in a20, but might as well keep it that way. I think in one of Xyth's later tutorials, he has a full unity project that you download which has all settings set up for you, tags included. I cannot think of the name for that one, maybe the NPC tutorial, but Xyth may be by here since you tagged him.

    For the most part though, you'll just be using the T_mesh_b tag, specifically for blocks. Besides that one, I think the only other tag I've used would be some of the entity tags and maybe vehicle once or twice.

    As for the latest exportbundles files, you can get that from guppy's modding discord in the unity section.

  10. I follow one rule when modding... Mod for myself. If others like it, great. If not, I enjoyed the experience and learned something new. Your mods aren't going to be liked by everyone, so don't go in expecting it. If you mod for yourself as a learning experience or even just something you personally want, you're going to be happier than trying to please people on a forum.

    As for me, I don't want to work on mods that require code because I don't know code. So if something breaks, I'm at the mercy of someone else to fix it for me. lol

    Servers are really only using server friendly mods right now for the ease of getting players in. Not everyone knows how or wants to install mods on their own computer, so to get more people in, server friendly mods will help greatly. But, the caveat is you're limited.. You can still do some good stuff, but it would require some imagination from the players. Look at valmar's old school mods. Chicken coops were just chicken nests that grew into lootable forms. It all worked fine, just needed the imagination from the player that a chicken was there laying an egg... lol.

  11. 13 hours ago, zztong said:

     

    Oh, thanks so much for the reply. I was hoping for just an XML change as I'm not ready to cross the threshold into making meshes and objects.

     

    I guess I won't have any bikes in my bikeshop. Darn looters.

    It can be a big jump and very daunting, but absolutely worth it. More creativity, more flexibility. Definitely worth the hassle of learning. :)

  12. For a block to be interacted with in anyway besides collision, you need a specific tag in unity T_Mesh_B... A vehicle however uses other tags E_vehicle or something. So simply using the vanilla one will not work. You'll have to import into unity and change the tag (on the child objects with the hitboxes) in order to be used as a block.

  13. You asked if there's a list somewhere of items... Someone told you about the cheat menu that's much more simple to use than hunting for codes. How thin skinned do you have to be to get mad about that? Sure it could have been written in a "nicer" manner with the whole jebus part, but for real? Gonna have a rage fit over this? Appreciate the help about the site, but I know of no modder that uses a code site to find out names of items in the xmls. The only person that it could help is someone using cheats in game, which... there's an easier method.

    But feel free to let your own post ruin your day. Don't think many people would take advice from someone with such a thin skin.

  14. 5 hours ago, Kilroy5150 said:

    Does anyone have a really nice code site for IDs that are constantly updated and well structured? Most of the places i get them from are grouped together and i had to use their sites to validate the one above being bad.

    I think Geoff's comment was on this bit. This game has a cheat menu that you can type in names to pull items out of, instead of needing to do codes. Much easier to activate CM, hit U and find your item there rather than tabbing back and forth to type the xml names in.

  15. ID numbers no longer matter. They can be omitted from the code. Loot is called from the lootcontainer name now. As far as not colliding with others, easiest way would be to add your name or some kind of prefix to it. IE: ZZTongBirdnest... Doubt anyone would ever come up with an identical name. lol

  16. As xmls are read top down, if you have items named the same that come later, it will just replace what was before. You'd need to rename them to something different for them to be separate item modifiers than the vanilla ones. Otherwise, when the xml is read, since your names are exactly the same, it will just keep whichever was read last (since you're using append, it will always be yours as append puts code at the end of the xml, just before the last closing tag)

    Also, just to help you when you run into errors later, I see you have spaces in your weapon names. You'll one day encounter some issues if you do that. Some xmls do weird things when there is a space in an item name. You can use localization to add spaces and hyphens and what not. Just a tip for ya

  17. I'm not sure why... I've tried several things now that would usually be the culprit such as entity type and what not on the actual snake. But nothing works. I did get it to work using the zombiekill objective though. Possibly something hardcoded in the actual class of the snake as it uses something different than others.

     

    
    			<objective type="ZombieKill" id="animalSnake" value="10" phase="1"/>
                <objective type="AnimalKill" id="animalBoar" value="10" phase="1"/>
                <objective type="AnimalKill" id="animalCoyote" value="10" phase="1"/>
                <objective type="AnimalKill" id="animalWolf" value="10" phase="1"/>



    This works. With proof:

    A Dead Snake

×
×
  • Create New...