Jump to content

Help With Dynamic XP Mod


GxRay

Recommended Posts

Hello everyone. I have been extremely dissatisfied with the way the experience system in fallout works, so I wrote this pseudo-code to fix that. It dynamically calculates experience based on several variables, and is very well balanced (see the total exp for each example in the spoiler below).

 

However, I am new to modding and don't how to convert this into an actual GECK script.

Could someone please assist me?

 

Edit:

The majority of this has now been written, but I cannot find a function to return the DPS of an enemy such as a Deathclaw. Help much appreciated!

 

 

BaseExp = EnemyLevel*2
DTBonus = EnemyDamageThreshold
HPBonus = EnemyHealth/50
ThreatRatioBonus = 30 - ThreatRatio*10
ExpMult = 1 + (EnemyLevel/15) - (PlayerLevel*.05)
ThreatRatio Function
{
//Level 1, no armor, 100 HP, 20 DPS vs. Legendary Deathclaw
// My Health = ( Current Health ) / ( 1.0 - ( Armor Rating / 100.0 ) )
My Combat Strength = My Health (100) * My DPS (20) x2 for for Human Intelligence = 400
Enemy Combat Strength = Enemy Health (1176) * Enemy DPS ( 250) = 294,000
//Threat ratio = ( My Combat Strength ) / ( Enemy Combat Strength )
Threat Ratio = (400)/(294000), ~0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//Level 30, 30 DT, 350 HP, 400 DPS vs. Legendary Deathclaw
// My Health = ( Current Health ) / ( 1.0 - ( Armor Rating / 100.0 ) )
My Combat Strength = My Health (500) * My DPS (400) x2 for Human Intelligence = 400,000
Enemy Combat Strength = Enemy Health (1176) * Enemy DPS (250) = 294,000
//Threat ratio = ( My Combat Strength ) / ( Enemy Combat Strength )
Threat Ratio = (400000)/(294000) = 1.36
}
-------------------------------------------------------------------
Level 1 from example killing Legendary Deathclaw:
BaseExp = EnemyLevel*2 ~60~
DTBonus = EnemyDamageThreshold ~15~
HPBonus = EnemyHealth/50 ~20~
ThreatRatioBonus = 30 - ThreatRatio*10 ~30~
ExpMult = 1 + (EnemyLevel/15) - (PlayerLevel*.05) ~2.95~
TotalExp = (BaseExp + DTBonus + HPBonus + ThreatRatioBonus)*ExpMult
TotalExp = (60+15+20+30)*2.95
TotalExp = (125)*2.95
TotalExp = 368.75
-------------------------------------------------------------------
Level 30 from example killing Legendary Deathclaw:
BaseExp = EnemyLevel*2 ~60~
DTBonus = EnemyDamageThreshold ~15~
HPBonus = EnemyHealth/50 ~20~
ThreatRatioBonus = 30 - ThreatRatio*10 ~16.4~
ExpMult = 1 + (EnemyLevel/15) - (PlayerLevel*.02) ~2.4~
TotalExp = (BaseExp + DTBonus + HPBonus + ThreatRatioBonus)*ExpMult
TotalExp = (60+15+20+16.4)*1.5
TotalExp = (111)*1.5
TotalExp = 166.5
-------------------------------------------------------------------
Level 1 from example killing Goodsprings Gecko:
BaseExp = EnemyLevel*2 ~6~
DTBonus = EnemyDamageThreshold ~0~
HPBonus = EnemyHealth/50 ~.6~
ThreatRatioBonus = 30 - ThreatRatio*10 ~17~
ExpMult = 1 + (EnemyLevel/15) - (PlayerLevel*.05) ~1.15~
TotalExp = (BaseExp + DTBonus + HPBonus + ThreatRatioBonus)*ExpMult
TotalExp = (6+0+.6+17)*2.95
TotalExp = (23.6)*1.15
TotalExp = 27.14
-------------------------------------------------------------------
Level 30 from example killing Goodsprings Gecko:
BaseExp = EnemyLevel*2 ~6~
DTBonus = EnemyDamageThreshold ~0~
HPBonus = EnemyHealth/50 ~.6~
ThreatRatioBonus = 30 - ThreatRatio*10 ~NEGATIVE~
ExpMult = 1 + (EnemyLevel/15) - (PlayerLevel*.05) ~NEGATIVE, LOWEST IS .1~
TotalExp = (BaseExp + DTBonus + HPBonus + ThreatRatioBonus)*ExpMult
TotalExp = (6+0+.6)*.1
TotalExp = (6.6)*.1
TotalExp = .66
-------------------------------------------------------------------
Level 1 from example killing Level 15 Giant Radscorp:
BaseExp = EnemyLevel*2 ~30~
DTBonus = EnemyDamageThreshold ~18~
HPBonus = EnemyHealth/50 ~3~
ThreatRatioBonus = 30 - ThreatRatio*10 ~29.2~
ExpMult = 1 + (EnemyLevel/15) - (PlayerLevel*.05) ~1.95~
TotalExp = (BaseExp + DTBonus + HPBonus + ThreatRatioBonus)*ExpMult
TotalExp = (30+18+3+29.2)*1.95
TotalExp = (80.2)*1.95
TotalExp = 156.39
-------------------------------------------------------------------
Level 30 from example killing Level 15 Giant Radscorp:
BaseExp = EnemyLevel*2 ~30~
DTBonus = EnemyDamageThreshold ~18~
HPBonus = EnemyHealth/50 ~3~
ThreatRatioBonus = 30 - ThreatRatio*10 ~NEGATIVE~
ExpMult = 1 + (EnemyLevel/15) - (PlayerLevel*.05) ~.5~
TotalExp = (BaseExp + DTBonus + HPBonus + ThreatRatioBonus)*ExpMult
TotalExp = (30+18+3)*.5
TotalExp = (51)*.5
TotalExp = 25.5

Thank you!
Edited by GxRay
Link to comment
Share on other sites

Update:

Swenson and I have been working on this script for quite some time now, with little progress.

A semi-functional script written by Swenson can be found here:

http://pastebin.com/7UAYCG8z

 

The original Dynamic XP Mod script can be found here:

http://pastebin.com/CYfWr9M2

 

And my cleaned version of the Dynamic XP Mod script can be found here:

http://pastebin.com/9aFMrSAt

(I still have no idea what some of his variables stand for, so I didn't edit those)

 

I would appreciate anyone's help, and would love to get Swensons' script up and running!

 

Thank you all!

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...