Jump to content
Eternal Lands Official Forums
Sign in to follow this  
SenZon

Raising caps to 52. Radu is willing, are you?

Recommended Posts

Just as a note for people wanting to get rid of the OA cap -- I believe the OA cap is a technical restriction. Given that the XP required for L179 is just under the max value of a signed 32-bit integer, and that 179 is a pretty random number to stop at, I'm guessing it may not be a trivial thing to up the OA cap...

 

Z

Share this post


Link to post
Share on other sites

Just as a note for people wanting to get rid of the OA cap -- I believe the OA cap is a technical restriction. Given that the XP required for L179 is just under the max value of a signed 32-bit integer, and that 179 is a pretty random number to stop at, I'm guessing it may not be a trivial thing to up the OA cap...

 

Z

 

Interesting point! Never knew that. Definitely dont need attribute increase if OA cannot be increased.

Share this post


Link to post
Share on other sites

Reason I voted no is I am already 179 overall and my attributes are still below what you would expect from someone 160 a/d. Now if we increase the attribute cape, it means I need to come up with 8 nexus removals or move around other attributes to just catch up to everyone else's 52/52 p/c. So no thank you :D.

Edited by hussam

Share this post


Link to post
Share on other sites

Just as a note for people wanting to get rid of the OA cap -- I believe the OA cap is a technical restriction.  Given that the XP required for L179 is just under the max value of a signed 32-bit integer, and that 179 is a pretty random number to stop at, I'm guessing it may not be a trivial thing to up the OA cap...

 

Z

 

It should be pretty simple to change long to unsigned long, if the thing's been typedefed (which it should be). Raising XP by 5%/level from 179 to 180, by 4%/level from 181 to 190, and by 2%/level from 191 to 200, can bring OA to 200 with an unsigned long:

 

179 2063709481 + 103185474

 

180 2166894955 + 86675798

181 2253570753 + 90142830

182 2343713583 + 93748543

183 2437462126 + 97498485

184 2534960611 + 101398424

185 2636359035 + 105454361

186 2741813396 + 109672535

187 2851485931 + 114059437

188 2965545368 + 118621814

189 3084167182 + 123366687

190 3207533869 + 128301354

 

191 3335835223 + 66716704

192 3402551927 + 68051038

193 3470602965 + 69412059

194 3540015024 + 70800300

195 3610815324 + 72216306

196 3683031630 + 73660632

197 3756692262 + 75133845

198 3831826107 + 76636522

199 3908462629 + 78169252

200 3986631881

 

Max value of (32-bit) unsigned long = 4294967295

 

The main thing that would prevent this is if negative XP values are used for something.

Share this post


Link to post
Share on other sites

Also if the difference between experience values is taken you'd need (or at the very least prefer) signed values.

And don't forget to get the client updated as well (in sync, preferably).

And there might be places where you can't use an unsigned value, like calls to (external) libraries. (A library routine

expecting a signed value might work with some unsigned values, but you are breaking the contract sending it one)

 

Of course, it's doable to switch to a type with larger range. It's not something you want to do on a whim.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×