View Full Version : Not obtaining full capacity points
Urmom
08-19-2017, 02:26 AM
ISP:Comcast
Type of Internet Connection: Cable
Internet Connection Speed: 100mbps
Date & Time: Yesterday and whenever fighting hard monsters
Frequency: Always
Character Name: Urmom
Race: Taru
World: Shiva
Job: Pup/whm
Area and Coordinates: Ra'Kaznar Inner Court
Party or Solo: Party or solo
NPC Name: None
Monster Name: Various high level "Apex" monsters specifically in this case Apex Umbril
In-Game Time: all the time
1. Go to Ra'Kaznar Inner Court.
2. Kill high level monster get ~42k capacity points
3. Use Triez ring which gives +150% capacity points and should put it to 105k
4. Kill another Apex Umbril only obtain 65535 capacity points as verified by both in game message and checking job points menu.
Given these were introduced back when they were offering methods to get higher capacity points per kill from harder to kill mobs seems kind of pointless to not actually get the higher points. Now you might be saying but hey this is only a problem with commitment rings... well no. See I only had 15% of out the possible 320% bonuses from gifts, wasn't using kupofried for another 10%, wasn't using corsair roll for up to another 24%, no chain for up to 50% bonus normally and during campaign can triple it in addition to that. If I'd gone all out during this campaign the calculated amount would end up being ridiculously higher. It's to the point where the lower level ones give exactly the same amount as higher level ones
Sirmarki
08-19-2017, 06:08 AM
65535 is the absolute cap I believe(?) when it comes to CP per kill, even when using rings or whatever...
Urmom
08-19-2017, 06:51 AM
65535 is the absolute cap I believe(?) when it comes to CP per kill, even when using rings or whatever...
Indeed that's the entire basis of the report. That and that you can hit it without rings, campaign or even a chain. So kind of what's the point of higher level hard mobs designed and implement for cp if they end up not actually giving more cp?
Sirmarki
08-19-2017, 06:20 PM
Indeed that's the entire basis of the report. That and that you can hit it without rings, campaign or even a chain. So kind of what's the point of higher level hard mobs designed and implement for cp if they end up not actually giving more cp?
Yes, I see your point. Being high level Apex monsters - I guess you are kind of being disadvantaged by only receiving the current maximum CP cap, which I guess could also be achieved by fighting a lot lower level Apex.
Nyarlko
08-20-2017, 06:55 AM
I say it's a problem with the ring bonuses rather than the standard cap. Maybe there's a way to make the ring bonuses alone break the 65335 cap?
Aysha
08-20-2017, 01:00 PM
This isn't really a "bug" to be honest.
It's more of a request for change. The Capacity Points (along with XP) earned has a hard-cap of 65535, I assume, because they assigned a variable type (I forget which? a short integer?) that only has 16 bits with which to store data in.
The number
1111 1111 1111 1111
In binary is equal to 65535, because...
32768.16384.8192.4096 2048.1024.512.256 128.64.32.16 8.4.2.1
When you add 32768+16384+8192+4096+2048+1024+512+128+64+32+16+8+4+2+1 together, you get 65535.
Or, you could look at it that they only assigned a 4-digit hexidecimal number to it (FFFF = 65535).
Programmers do this, to save on RAM/memory usage (you need to allocate 16 bits of RAM to a variable that can hold up to 65535 even if 99% of the time, you'll gain less than 65535 XP. That's just how RAM allocation/variable definition works). Back in the day, FFXI was originally designed for PS2 and apparently they assigned a 4-digit hex number for XP because back then they were, like, "We doubt we'll ever run into a situation where someone needs to gain more than 65,535 XP from a single source". They knew they would need more than 255 (FF), and FFF is 4095 and they were probably thinking "4095 might not be enough, so let's go with 65535, THAT should be enough."
Well, back in 2001 they couldn't have predicted I-level 119 players fighting Apex mobs in Adoulin.
The only way they could rectify this, is to add another digit to the variable. I only have a basic knowledge of programming, so I do not know what all that would entail, it might be a difficult task. I don't know exactly. But either way this is clearly not a bug. Not desirable, but yet not a "bug" either.
Sirmarki
08-20-2017, 08:39 PM
I stopped reading at "The Capacity Points (along with XP) earned has a hard-cap of 65535"...
:)
DarkValefor
08-21-2017, 09:26 AM
This isn't really a "bug" to be honest.
It's more of a request for change. The Capacity Points (along with XP) earned has a hard-cap of 65535, I assume, because they assigned a variable type (I forget which? a short integer?) that only has 16 bits with which to store data in.
The number
1111 1111 1111 1111
In binary is equal to 65535, because...
32768.16384.8192.4096 2048.1024.512.256 128.64.32.16 8.4.2.1
When you add 32768+16384+8192+4096+2048+1024+512+128+64+32+16+8+4+2+1 together, you get 65535.
Or, you could look at it that they only assigned a 4-digit hexidecimal number to it (FFFF = 65535).
Programmers do this, to save on RAM/memory usage (you need to allocate 16 bits of RAM to a variable that can hold up to 65535 even if 99% of the time, you'll gain less than 65535 XP. That's just how RAM allocation/variable definition works). Back in the day, FFXI was originally designed for PS2 and apparently they assigned a 4-digit hex number for XP because back then they were, like, "We doubt we'll ever run into a situation where someone needs to gain more than 65,535 XP from a single source". They knew they would need more than 255 (FF), and FFF is 4095 and they were probably thinking "4095 might not be enough, so let's go with 65535, THAT should be enough."
Well, back in 2001 they couldn't have predicted I-level 119 players fighting Apex mobs in Adoulin.
The only way they could rectify this, is to add another digit to the variable. I only have a basic knowledge of programming, so I do not know what all that would entail, it might be a difficult task. I don't know exactly. But either way this is clearly not a bug. Not desirable, but yet not a "bug" either.
Unsigned short integer, yeah
And I doubt they will ever change that, they hardly ever make changes to the core, and let's be honest, more than 2 job points per kill is already too good.
Urmom
08-22-2017, 01:22 AM
Well maybe the bug is even bothering with such high level mobs to begin with lol
Aysha
08-22-2017, 06:39 AM
Well maybe the bug is even bothering with such high level mobs to begin with lol
Still not a "bug". A "Bug" is a mistake, oversight, or anything else in coding that causes unintended behavior of the program in question.
Urmom
08-22-2017, 07:26 AM
Still not a "bug". A "Bug" is a mistake, oversight, or anything else in coding that causes unintended behavior of the program in question.
Eh your opinion. Various things they coded together are interacting in a way that I doubt they intended or realized when they did it each part. Either way this is a bug report not thread a semantics thread
DarkValefor
08-22-2017, 10:56 AM
Well, I have to agree with Aysha aswell, having a hard cap is probably intentional. I know hard caps can be bothering sometimes, when I close a 3-step skillchain with a 70000 damage Rudra's Storm ny unresisted Skillchain deals 99999 points of damage and I wish it dealt around 200000 (skillchain bonus) but there is a hard damage cap there, it isn't a bug either.
I understand that 65535 is a bit weird number but I don't thonk SE thought about people reaching that cap. I don't think they thought about reaching damage cap when game was released either but the game doesn't crash in either case, which means they are correctly handling those values.
If it was a bug you could expect wrong results like a monster supposed to give you 70000 capacity points giving you 4465 but the overflow is perfectly controlled.
Aysha
08-22-2017, 11:45 AM
I understand that 65535 is a bit weird number but I don't thonk SE thought about people reaching that cap. I don't think they thought about reaching damage cap when game was released either but the game doesn't crash in either case, which means they are correctly handling those values.
I explained in my first reply on this thread why the number is exactly 65535 and not anything else near it. *chuckles* It is a long-winded response, but I feel that the post contains information that any gamer could apply to any game that has similar caps to understand why those caps exist and why those exact numbers.
EDIT: I suppose I left out what exactly RAM Allocation means (I mentioned it, but didn't explain it in depth). But I doubt that's actually necessary.
Urmom
08-22-2017, 12:23 PM
Please stop clogging up my report and let SE read it. This isn't a discussion section
DarkValefor
08-22-2017, 09:48 PM
I explained in my first reply on this thread why the number is exactly 65535 and not anything else near it. *chuckles* It is a long-winded response, but I feel that the post contains information that any gamer could apply to any game that has similar caps to understand why those caps exist and why those exact numbers.
EDIT: I suppose I left out what exactly RAM Allocation means (I mentioned it, but didn't explain it in depth). But I doubt that's actually necessary.
I know where that number comes from, I still see it kind of weird tho that they bother using 3 bytes numbers for damage and hard capping it at 99999 and they decide to just using 2 bytes for Capacity Points (I'm sure some people would be somehow happier if it capped at 99999 also)
But I don't know how to explain this is not a bug but a programming decission, whoever coded the Capacity Points gain decided to use a 2-byte value and made sure it wouldn't overflow.