"Core" data is data that is required by any EQ2Emulator server in order to run properly. You do not need items, spawns, or spells to start the World binary, but Core data is absolutely required. Those tables are documented here, and should come with every EQ2Emulator Database Package.
| Table
|
Description
|
| appearances
|
Required. Everything in the game that is not a part of the zone VPK has an appearance. That is, your character has hair, eyes, clothing, and objects like tables have a surface, items would not show up, etc. Without this data, nothing would appear.
|
| commands
|
Required. Normally handles /slash command input and UI button commands (which are just hidden slash commands anyway). For a basic server to operate, this data is required. However, commands can be customized for such things as "Steal the Letter" or "Burn Tent" for questing/gathering. Without commands, you could not even see /who was online!
|
| opcodes
|
Required. Opcodes is the life-blood of the emulator. Data is sent to and from the client/server in "packets" and these opcodes map data in those packets to data structures (*.xml) stored within the server. Without this data, nothing will work.
|
| reference_spell_effects
|
Important. These values are what generate "spell effects" in the client when someone casts a spell or uses an ability.
|
| skills
|
Important. In EQ2, a characters ability to progress is goverened by Skills. Without skills, there is no progress. So if a player has a 1H Slashing weapon and there are no Skills loaded, that player will be unable to swing that weapon in combat. Skills should be Required, but the World will run without them.
|
| visual_states
|
Required. A "visual state" is exactly that; what you see the entity doing. It may be chopping wood, smithing, glowing, or chuckling uncontrollably. Without this data, you could not set a "state" that a spawn is in, and it would just stand there.
|
| zones
|
Required. The zones table has it's own section from the main Database page, but in summary, you cannot log into any part of the emulator without a zone record. Zones can be customized, however, so while at least 1 zone is Required, the rest are up to you. See Zones for more details.
|
- appearance_id - is the id the client uses/needs
- name - the name of the appearance static objects/boat_temp
- min_client_version - lowest client version possible to see the appearance
|
- type - offer the ability to provide a /commands command, where players and admins could list emulator-only commands 0 = standard command, and 1 = Emulator command
- command - this is what you type into the client (who)
- subcommand - if the command requires additional command spawn add
- handler - used in the server code
- required_status - what status level a player must be before he/she can use the command 0 = anyone 100 = GM
|
- version_range_1 - this is the minimum client version that will use this set of opcodes
- version_range_2 - this is the maximum client version that will use this set of opcodes
- name - the name of the opcode
- opcode - the opcode number that is sent back and forth from server to client
- table_data_version - works with the patcher system to update data tables.
|
- category -
- type -
- name -
- misc -
|
- short_name -
- name -
- description -
- skill_type -
- display -
|
- visual_state_id - the id of the visual state
- name - the name of the visual state
- min_client_version - this show the earliest client that can use the visual state. Any clients earlier than version listed here will not see the visual state.
|
- expansion_id - identifies the expansion id
- name - the /zone list name of the zone
- file - the zone file to load
- description - the description of the zone (used on the loading screen)
- safe_x - the default x location you will be placed at
- safe_y - the default y location you will be placed at
- safe_z - the default z location you will be placed at
- safe_heading - the default direction you will be facing
- underworld - this is how far below world a client will fall before being moved to zone safe coordinates
- xp_modifier - modifies XP in the zone. 0.5 is 1/2 the xp, 1.5 is 1-1/2x the xp
- min_recommended - sets the minimum level recommended
- Max_recommended - sets the maximum level recommended
- zone_type - sets the type the zone is. Outdoor or Indoor
- always_loaded - sets zone to dynamic or Static
- city_zone - sets zone to a city zone
- weather_allowed - turns on or off the weather system.
- min_status - sets the minimum admin status required
- min_level - sets the minimum level required
- max_level - sets the maximum level required
- start_zone - sets the starting city connected to the zone.
- instance_type - sets the type of instance the zone will be. PERSONAL_HOUSE_INSTANCE will set zone as a house instance
- default_reenter_time - is for persistent instances
- default_reset_time - failure lockout time for lockout instances and min duration
- default_lockout_time - success lockout time for lockouts and max duration for persistent instances
- force_group_to_zone - forces all group members to enter a zone. All members must be in the same zone
- lua_script - location of the zones lua script
- shutdown_timer - sets how long the zone waits before shutting down if no clients are present
- zone_motd - the message you will receive on entering the zone
- ruleset_id - set the id of the ruleset to use
- login_checksum - is set by the login server and allows for custom zone names to be displayed on the public login server
|
As you can see, the list of required data is very small compared to the rest of the database. This should give you a glimpse at just how customizable our server is.