wnmnkh Posted December 16, 2015 Share Posted December 16, 2015 I really hate static damage boost. It makes enemies in very late game bullet sponges (since weapon damage stops scaling as soon as you max out related perk) I am looking for a way to make perks giving extra damage depended on level For instance, first gunslinger perk gives 1% damage boost per level. If a character is level 10, the perk would give 10% damage boost. I am looking at Function parameters, and currently type is 'float'. There are several options for the type. I assume 'string' is not what I am looking for. Any advice on this? Link to comment Share on other sites More sharing options...
Athanasa Posted December 16, 2015 Share Posted December 16, 2015 I don't know anything about the tech side, but I'd love to see this. Raiders are now soaking multiple .50 rounds to the head. Link to comment Share on other sites More sharing options...
Salaber Posted December 17, 2015 Share Posted December 17, 2015 I haven't looked into the mod tools yet however the author for this mod might be able to point you in the direction you need to go:http://www.nexusmods.com/fallout4/mods/5192/?His mod works based on Strength, maybe the function would work in a similar manner? You'd have to figure out a good value on how much each rank would increase that percentage by. If it increases by a flat 1%/level each rank the earlier levels would be significantly weaker than the vanilla perk but the later levels would be overpowered. Link to comment Share on other sites More sharing options...
wnmnkh Posted December 17, 2015 Author Share Posted December 17, 2015 I haven't looked into the mod tools yet however the author for this mod might be able to point you in the direction you need to go:http://www.nexusmods.com/fallout4/mods/5192/?His mod works based on Strength, maybe the function would work in a similar manner? You'd have to figure out a good value on how much each rank would increase that percentage by. If it increases by a flat 1%/level each rank the earlier levels would be significantly weaker than the vanilla perk but the later levels would be overpowered. Thank you for the reply. I looked at it, and it indeed uses Actor Value for setting the value. The problem is that while all SPECIAL and some other ridiculous stuffs are already included in 'Actor Value', there is no player level in it..... the closest thing is 'experience' but it does not work for some reason. Yes, I once thought about compromising by just using agility instead of level... but then, if that so, it'd better to just add more gun damage perks, which I already found rather unsatisfactory. Link to comment Share on other sites More sharing options...
Deleted2948850User Posted December 17, 2015 Share Posted December 17, 2015 Maybe you could achieve this by using 'invisible' perks which are added by keywords (i.e. IF level is 10, add perk increase damage 10%).I'm not quite sure how this would work or if it could even be done without the CK for that matter, but that's how I would go at it. Link to comment Share on other sites More sharing options...
demonocolips Posted December 18, 2015 Share Posted December 18, 2015 the other option is to do the inverse rather than increasing damage decreasing health of enemies or at least bringing them more in line with the players own maximum. its weird being level 60 and being killed in 6 shots by a legendary super mutant with a standard assault rifle that is only meant to do 60 damage with the normal pertinent perks. honestly with 800 health and full armor (500 with mods) i would expect to last a little longer than that. maybe looking at the enemies own leveling code the solution could be found. Link to comment Share on other sites More sharing options...
zilav Posted December 18, 2015 Share Posted December 18, 2015 That can be easily done with a perk. Modify any existing perk of your choice and create several entry points:1) each entry will have conditions (GetLevel function running on a player reference) to check the player's level to be in range like 1..10, 11..20, 21..30 etc2) each entry will mod weapon attack damage increased by 10%, so 10% for the first range 1..10, 20% for second 11..20, etc. Create 20 entry points to cover the levels range from 1 to 200 and you will roughly get 1% per level on average. The only downside is that you gain extra damage every 10 levels, not per level. You can split ranges between several perks to make more sence investing perk points, so for example Gub Nut 1 will cover levels 1..30, Gun Nut 2 levels 31..60, etc. Link to comment Share on other sites More sharing options...
Salaber Posted December 18, 2015 Share Posted December 18, 2015 Would it be possible to set a float value for the perk for each rank (1% for Rank 1, 1.75% for Rank 2) then have the perk get the character level and multiple it for that value to calculate the damage boost? So say level 3 you grab the Commando perk you get a +3% damage boost (not that rewarding, I know.) But Level 9 comes around and you purchase Rank 2, instead of a 9% it would give you a 15.75% damage boost? Or round the answer up if it needs to be a whole integer. The numbers here need to be tweaked for balancing but would this be a better method than doing level brackets? Link to comment Share on other sites More sharing options...
zilav Posted December 18, 2015 Share Posted December 18, 2015 Perks can't get the character level without scripting and thus official editor. Link to comment Share on other sites More sharing options...
wnmnkh Posted April 27, 2016 Author Share Posted April 27, 2016 So, the official editor came out and I am trying to figure out how to do it with scripting, except I have no idea what I am doing really.. Basically, I think I need to make a new actor value that brings the player level and output it as a simple integer so it can be used for calculation. I am sure this is how I get the player character level: Game.GetPlayer().GetLevel() Now, I am trying to compile it in PERK editor (at papyrus scripts tab)..... except it fails to compile. I have no clue how to advance at this point. Edit: It seems there is also "Game.GetPlayerLevel()". But it does not help my situation. Link to comment Share on other sites More sharing options...
Recommended Posts