added check for bat hunt mission repeat. 

tombstone should only produce cut-scene on first run of bat hunt. a check for bat hunt completion needed to prevent cut-scene repeat.
bat hunt repeat needed tweaking to match retail

bat hunt repeat does not use tombstone cut-scene. y for the initial run of the bat hunt mission. Bat hunt repeat completes with missionStatus == 0 and not 2. Same conditional line was missing  == true after BatHuntCompleted variable.
change Save My Son to match retail prerequisites

While Save My Son quest is after Chocobo Wounds quest, it does not require it's completion. Save My Son only requires the character is at least level 30.  Removed Chocobo Wounds requirement and added level 30+ requirement.
CORE: Add Support for Restricting Spells By Expansion

Adds support for restricting spells by expansion, where required_expansion = XXX, where XXX refers to ENABLE_XXX in settings.lua

I tried to implement this in a way where you could freely toggle expansions on and off while either playing or testing various things without data loss to the character's spell list just because some spells may be temporarily disabled.

So, what I did is provide a filtered array to the CharEntity that is a list of enabled spells. This is calculated when the character is loaded up, and then filtered against the loaded spell list, which is filtered by expansion.

When you learn new spells, it is added to both of the arrays. The full array is what gets saved back to the db, but the filtered one is what is send in the spell packet.

I used Gekka & Yain Ichi as examples. With the change i was able to ENABLE_SOA = 1, learn Gekka: Ichi & Yain: Ichi, restart with ENABLE_SOA = 0, and see that the spells were gone. At that point, if I added a scroll of Gekka Ichi to my inventory and tried to learn it, it told me I didn't meet the requirements. I then restarted with ENABLE_SOA = 1 again and the spells were back an working

I will do a pass tagging spells and such to their appropriate era after we get the core changes in to avoid potential merge conflicts while I gather that data.
CORE: Add Support for Restricting Abilities By Expansion

Similar to Traits/Spells, add column required_expansion, where the value if XXX, referring to ENABLE_XXX in settings.lua

Proof of concepts: Tag Mikage & Stymie to SOA, since they were introduced post-SOA. Work on a more thorough pass after I get the core support in to avoid merge conflicts.

Tests: NIN99/RDM99 - ENABLE_SOA = 1, has Mikage/Stymie, reboot with ENABLE_SOA = 0, does not have Mikage/Stymie
CORE: Filter Disable Spells out of Mob Spell Lists

If a spell has been disabled because the corresponding expansion was disable, don't add it to the mob spell list
CORE: Add Support for Restricting Blue Spells By Expansion

-Link to required_expansion in spells_list to not duplicate maintaining this
-Add handling so that if a spell gets disabled while its set, its removed from the set spells list as well as the list of spells

I do not have any blue spells disabled on the committed yet, but I temporarily added some locally for testing, and I was able to verify that the handling when a spell is disabled while its set works.
CORE: Add Ability to Cap Normal Monster Level Ranges

As we start to code support for playing Level 75+, one thing that needs to be addressed is a way for the new exp mobs not to ruin the play experience of those wishing to play classic FFXI.

Currently these mobs, with the exception of the crabs in Vunkeral Inlet, are all set to 81-84 in the database. That level is low enough that they wont destroy level 75 players, but too low to level to 99 on.

This commit introduces new settings.lua variables to cap the level range for normal zone mobs. The defaults are set to 81 & 84 respectively, to maintain current behavior with the default level cap of 75

This will allow us to start putting retail-correct levels in the database, without destroying the play experience for Level 75 players. This will also start to make Level 99 play more playable

The next commit will start to adjust level ranges for the mobs based on the recorded ranges in the various wikis
SQL: Mob Updates - Adjust levels for higher level mobs.

Used the level ranges known in the various wikis as a guide, for mobs that should be higher level now.

Starts to make Level 75+ players have areas to EXP.

The new setting variables from the previous commit prevent this from negatively impacting 75-cap players
corrected variable typo

lines 31 and 33 incorrectly had a typo of the variable MissionStatus incorrectly written as mission_status. NPC was always showing the same text line regardless of your quest status.
Merge pull request #563 from maadgamer/patch-2

added check for bat hunt mission repeat.
Merge pull request #564 from maadgamer/patch-3

bat hunt repeat needed tweaking to match retail
Update homepoint.lua

issue #567
Merge pull request #565 from maadgamer/patch-4

change Save My Son to match retail prerequisites
Merge pull request #570 from bope12/patch-1

Update homepoint.lua
Merge pull request #569 from maadgamer/patch-5

corrected variable typo
Update homepoint.lua
Merge pull request #571 from bope12/patch-2

Update homepoint.lua
Merge pull request #566 from starlightknight/restrict-by-expansion

CORE: Add Support to Restrict Spells/Abilities By Expansion
CORE: moved mob initialization to main thread
fixed an error with loading unknown instances