Zetasis Posted April 27, 2015 Author Share Posted April 27, 2015 Okay so this is my first source tutorial and I'm sure there is a better way to do this so if there is please feel free to touch it up. What this will do is create a button that generators numbers for all stats, HP, damage, and experience based off of the NPC's level. I have even included a way to check and see if the NPC is a boss so the stats generated are higher then a normal NPC. Please be aware that the numbers generated are not to be used as is. I just kind of came up with the equations as I made this system so tweaking will most likely need to be done.Alright this is all client side.First, open up frmEditor_NPC. Anywhere in the code add this:```Public Function RandomNumber(ByVal MaxValue As Long, Optional _ByVal MinValue As Long = 0) On Error Resume Next Randomize Timer RandomNumber = Int((MaxValue - MinValue + 1) * Rnd) + MinValueEnd Function```This makes it so we can use RandomNubmer(High, Low).Next make a button on frmEditor_NPC, it can be anywhere but I put it next to the stat selection area. Name it Genstats and set the caption to something like Generate Stats. After that make a checkbox and name it chkBossName, then set the caption to something like Boss. Once all that is taken care of go back to object view and click on the Generate Stats button you made a bit ago and insert this:```Private Sub Genstats_Click()Dim High As LongDim Low As LongDim HighExpDim LowExpDim HighHPDim LowHPDim HighDamDim LowDam'If not a Boss set stats as normal. This is where you change the equations for stats.If chkBossName.Value = 0 Then High = (txtLevel + 4) Low = (txtLevel - 4) HighExp = (txtLevel * 5 + 2) LowExp = (txtLevel * 5 - 2) HighHP = (txtLevel * 10 + 3) LowHP = (txtLevel * 10 - 3) HighDam = (txtLevel + 4) LowDam = (txtLevel - 4)End If' Is a Boss set stats a bit higher then normal. This is where you change the equations for stats.If chkBossName.Value = 1 Then High = (txtLevel + 10) Low = (txtLevel + 4) HighExp = (txtLevel * 8 + 6) LowExp = (txtLevel * 8 + 2) HighHP = (txtLevel * 15 + 3) LowHP = (txtLevel * 15 - 3) HighDam = (txtLevel + 4) LowDam = (txtLevel - 4)End If' Check so there are no stats below 0\. Then sets stats based on NPC Level.If Low <= 0 Then scrlStat(1).Value = RandomNumber(High, 0) scrlStat(2).Value = RandomNumber(High, 0) scrlStat(3).Value = RandomNumber(High, 0) scrlStat(4).Value = RandomNumber(High, 0) scrlStat(5).Value = RandomNumber(High, 0) txtEXP.text = RandomNumber(HighExp, LowExp) txtHP.text = RandomNumber(HighHP, LowHP) txtDamage.text = RandomNumber(HighDam, 2)End If' Sets stats based on NPC Level.If Low >= 0 Then scrlStat(1).Value = RandomNumber(High, Low) scrlStat(2).Value = RandomNumber(High, Low) scrlStat(3).Value = RandomNumber(High, Low) scrlStat(4).Value = RandomNumber(High, Low) scrlStat(5).Value = RandomNumber(High, Low) txtEXP.text = RandomNumber(HighExp, LowExp) txtHP.text = RandomNumber(HighHP, LowHP) txtDamage.text = RandomNumber(HighDam, LowDam)End IfEnd Sub```After that just save and compile. I think this should work on just about all versions of Eclipse and like I said, if there is a better way to do this just post it here. I'm always happy to learn more. I feel like I explained pretty well how everything works but if anyone has any questions just post them. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now