Quote Originally Posted by Callinon View Post
I guess it's possible, but it would make a lot more sense for the system to just check that once the first time a character logs in.

Simple check: Does this character need to be given an account-wide item?
Yes? Add it to their mail and trigger the mail notification -> Flag it as received
No? Just do nothing

If there is seriously some kind of bizarre 8th grade VB MyVar1 programmer limit to the amount of items an account can have, I just give up. There's no reason for there to be a limit to these things. Although SE has shown remarkable incompetence when it comes to system design with FFXIV. It may not be ALL their fault since they had to build on the 1.0 system, but come on... this one had to be obvious from the start.
Moogle Mail has a limit of 130 messages, and you can send 5 items per message.

I leave this message in my mailbox to denote when the game started up.



Note how when you "Reward Delivery Request" on the upper-right button of the inbox you get the message displayed. This right away tells us that the reward system is something not processed by the game server, but rather some out-of-band process that has to be queued.

So it probably has to read through your entire subscription history, on every character and every service attached to the service account. If there is a limitation involved, it likely has to do with the number of characters on the account (eg 40, 8 per server max.)

In MMO development, or any client-server development, you have to take into account the bandwidth that is wasted by doing needless things, so if sending something to a character at time of purchase costs X bytes, but checking if the player has every possible account-wide cash shop item takes X^n bytes, then you're going to want to have as few account-wide items as possible.

I'm not going to defend this practice by SE, but from a software development point of view, you want to push as little data between servers as possible, and it's likely the account server is global, or at least where the database is. So anything that puts unnecessary load on that database you want to avoid. It's also entirely possible that the database is shared by more than just FFXIV, thus requiring other games co-operations. I do remember at some point seeing FFXI in there somewhere.... ah yes, if you click "List Subscriptions" it goes back to your Square-Enix account. So it indeedy looks like the service account is tied directly to your Square-Enix account, thus they likely have some corporate BS to deal with to put things at the account level.