|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Archive::Tutorials/Howto's Archive area for Tutorials/Howto's posts that were moved here after an inactivity period of 90 days. |
05-10-2004, 12:40 PM
|
Discordant
|
|
Join Date: Feb 2004
Posts: 400
|
|
HOWTO: Change the maximum level people can reach
Changing the max level
1. Download the latest source at http://cvs.biosprite.net/
2. Go into zone/client.cpp and use the find tool to find 66, then replace it with the maximum level you want + 1. So if I wanted 80 to be my maximum level I would put 81.
There! Thats all!
*Im not going to bother to sticky this, just look for it in my signature.
__________________
My Newbie Guides
Server Classifications
Zone Points
Change Maxlevel
Kaio Kuzumaki of the East, Owner of Tides of War [Custom-Legit] PvP Server
Orome, Lord of the Woods, Middle-Earth Roleplay PvP Server
Kaio Kuzumaki of the East, Owner of Kaio's All-GM Test Server
|
05-10-2004, 02:12 PM
|
Discordant
|
|
Join Date: Mar 2004
Location: Florida
Posts: 362
|
|
OMG, I have been wondering this FOREVER! Now I can finally change it
woooooooooot!
__________________
|
05-12-2004, 04:48 PM
|
Dragon
|
|
Join Date: Jun 2002
Posts: 776
|
|
What about spells and abilities for those new levels and balancing?!
|
05-15-2004, 03:09 AM
|
Discordant
|
|
Join Date: Feb 2004
Location: Florida
Posts: 441
|
|
I am not sure that this is completely accurate, I set maxlevel=255 and when players level from 115 to 116 the exp either stops or they delevel 80 levels. Not sure why.
__________________
Eru, the Creator of Arda
ServerOwner for The First Age
An EQEMulator Roleplaying [Custom-Legit] Server
The First Age Website
Running on: Asus A7N8X-Deluxe, AMD Athlon XP 2100+, Geil 1024MB PC3200 Ultra DDR RAM,
WD 40GB 7200rpm ATA-100 HDD, Visiontek 128MB Geforce4 TI 4400, Windows XP Pro SP2
|
05-15-2004, 05:36 AM
|
Dragon
|
|
Join Date: Jan 2004
Posts: 860
|
|
We found this problem on Scorpious2k when we first moved to level 130. Somewhere between level 110 and 120 the xp variable stored in the blob reaches its maximum. And when a variable in C gets to the max it just rolls over back to 0. So you end up resetting to a much lower level. The only fix for this is to completely change all the xp formulas to use smaller numbers required for a level and give out a proportionally lower amount of xp. Scorp came up with formulas that are still balanced but will have enough space to store level 255 xp, you can ask him what he changed the formulas to.
|
05-15-2004, 06:32 AM
|
|
Dragon
|
|
Join Date: Mar 2004
Location: France, Bordeaux.
Posts: 677
|
|
Humm, if you change max level for 50, and you use #level 61, will you become level 61 ? because its what is happening to me ... Or this dont work for me (I cant believe it, its only a number to change), or ...
__________________
|
05-15-2004, 08:07 AM
|
Dragon
|
|
Join Date: Jan 2004
Posts: 860
|
|
#level always works regardless of what max level is set to because max level is only checked in the xp calculations.
|
05-15-2004, 02:23 PM
|
Discordant
|
|
Join Date: Feb 2004
Posts: 400
|
|
Well this is meant to be a simple guide, also I wasnt thinking about the rest, I figured it worked, but the only levels I tested were 100, 72, and 50.
__________________
My Newbie Guides
Server Classifications
Zone Points
Change Maxlevel
Kaio Kuzumaki of the East, Owner of Tides of War [Custom-Legit] PvP Server
Orome, Lord of the Woods, Middle-Earth Roleplay PvP Server
Kaio Kuzumaki of the East, Owner of Kaio's All-GM Test Server
|
05-19-2004, 05:33 AM
|
Old-EQEmu Developer
|
|
Join Date: Oct 2002
Location: Spain
Posts: 323
|
|
I think is because of the sort of integer is,try putting unsigned long int.Haven't looked really at the line.
|
|
|
|
05-19-2004, 06:01 AM
|
Discordant
|
|
Join Date: Feb 2004
Location: Florida
Posts: 441
|
|
Quote:
Originally Posted by Scorpious2k
The problem is the exp calcs in client.cpp Client::GetEXPForLevel
The value it calculates exceeds the size of the variable it returns(uint32) and rolls over. I rewrote it a long time ago for our server to get rid of the "hell levels" and later tweaked it to allow even higher levels than the earlier calc did.
Basically, you have to calculate lower values here but still in a progressive scale so each level is harder than the last. It isn't a problem using the lower numbers because the client actually get sent the % of xp relative to the next level and not the actual numbers.
The first problem this will produce will be that players who have high exp gained from playing will jump (or drop) many levels. I put temproray code in that limited increases/decreases of level to 1 and corrected the exp needed for the next level. After the first leveling, it corrects itself.
The next problem you will run into after that is exp gained on kills. It will give way to much, because it is assuming the old calculation. So you have to reduce the exp awarded. Luckily, there's a variable i the variable table for that.
Hope this helps.
|
__________________
Eru, the Creator of Arda
ServerOwner for The First Age
An EQEMulator Roleplaying [Custom-Legit] Server
The First Age Website
Running on: Asus A7N8X-Deluxe, AMD Athlon XP 2100+, Geil 1024MB PC3200 Ultra DDR RAM,
WD 40GB 7200rpm ATA-100 HDD, Visiontek 128MB Geforce4 TI 4400, Windows XP Pro SP2
|
|
|
|
05-19-2004, 07:14 AM
|
Dragon
|
|
Join Date: Jan 2004
Posts: 860
|
|
Quote:
Originally Posted by cofruben
I think is because of the sort of integer is,try putting unsigned long int.Haven't looked really at the line.
|
Thats impossible to do, I talked with Scorp about this option, but the xp is stored in the blob which has a predefined structure that can't be changed. And its already stored as an Unsigned long int, to get it higher would require an unsigned long long which would break everything by changing the blob.
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 06:36 AM.
|
|
|
|
|
|
|
|
|
|
|
|
|