port over some more
This commit is contained in:
255
priv/repo/migrations/20260215000007_create_game_data_tables.exs
Normal file
255
priv/repo/migrations/20260215000007_create_game_data_tables.exs
Normal file
@@ -0,0 +1,255 @@
|
||||
defmodule Odinsea.Repo.Migrations.CreateGameDataTables do
|
||||
use Ecto.Migration
|
||||
|
||||
def up do
|
||||
# ============================================================================
|
||||
# DROP DATA
|
||||
# ============================================================================
|
||||
|
||||
create table(:drop_data) do
|
||||
add :dropperid, :integer, null: false
|
||||
add :itemid, :integer, null: false, default: 0
|
||||
add :minimum_quantity, :integer, null: false, default: 1
|
||||
add :maximum_quantity, :integer, null: false, default: 1
|
||||
add :questid, :integer, null: false, default: 0
|
||||
add :chance, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create index(:drop_data, [:dropperid], name: :mobid)
|
||||
|
||||
create table(:drop_data_global) do
|
||||
add :continent, :integer, null: false
|
||||
add :droptype, :integer, null: false, default: 0
|
||||
add :itemid, :integer, null: false, default: 0
|
||||
add :minimum_quantity, :integer, null: false, default: 1
|
||||
add :maximum_quantity, :integer, null: false, default: 1
|
||||
add :questid, :integer, null: false, default: 0
|
||||
add :chance, :integer, null: false, default: 0
|
||||
add :comments, :string, size: 45
|
||||
end
|
||||
|
||||
create index(:drop_data_global, [:continent], name: :mobid_global)
|
||||
|
||||
create table(:reactordrops) do
|
||||
add :reactorid, :integer, null: false
|
||||
add :itemid, :integer, null: false
|
||||
add :chance, :integer, null: false
|
||||
add :questid, :integer, null: false, default: -1
|
||||
end
|
||||
|
||||
create index(:reactordrops, [:reactorid])
|
||||
|
||||
# ============================================================================
|
||||
# SHOP DATA
|
||||
# ============================================================================
|
||||
|
||||
create table(:shops) do
|
||||
add :npcid, :integer, default: 0
|
||||
end
|
||||
|
||||
create table(:shopitems) do
|
||||
add :shopid, :integer, null: false, default: 0
|
||||
add :itemid, :integer, null: false, default: 0
|
||||
add :price, :integer, null: false, default: 0
|
||||
add :position, :integer, null: false, default: 0
|
||||
add :reqitem, :integer, null: false, default: 0
|
||||
add :reqitemq, :integer, null: false, default: 0
|
||||
add :rank, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create index(:shopitems, [:shopid])
|
||||
|
||||
create table(:shopranks) do
|
||||
add :shopid, :integer, null: false, default: 0
|
||||
add :rank, :integer, null: false, default: 0
|
||||
add :name, :string, size: 255, null: false, default: ""
|
||||
add :itemid, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
# ============================================================================
|
||||
# WZ DATA TABLES (GAME DATA)
|
||||
# ============================================================================
|
||||
|
||||
create table(:wz_itemdata) do
|
||||
add :itemid, :integer, null: false, primary_key: true
|
||||
add :name, :string, size: 255
|
||||
add :msg, :string, size: 4096
|
||||
add :desc, :string, size: 4096
|
||||
add :slotmax, :integer, null: false, default: 1
|
||||
add :price, :string, size: 255, null: false, default: "-1.0"
|
||||
add :wholeprice, :integer, null: false, default: -1
|
||||
add :statechange, :integer, null: false, default: 0
|
||||
add :flags, :integer, null: false, default: 0
|
||||
add :karma, :boolean, null: false, default: false
|
||||
add :meso, :integer, null: false, default: 0
|
||||
add :monsterbook, :integer, null: false, default: 0
|
||||
add :itemmakelevel, :integer, null: false, default: 0
|
||||
add :questid, :integer, null: false, default: 0
|
||||
add :scrollreqs, :string, size: 255
|
||||
add :consumeitem, :string, size: 255
|
||||
add :totalprob, :integer, null: false, default: 0
|
||||
add :incskill, :string, size: 255, null: false, default: ""
|
||||
add :replaceid, :integer, null: false, default: 0
|
||||
add :replacemsg, :string, size: 255, null: false, default: ""
|
||||
add :create, :integer, null: false, default: 0
|
||||
add :afterimage, :string, size: 255, null: false, default: ""
|
||||
end
|
||||
|
||||
create table(:wz_itemadddata) do
|
||||
add :itemid, :integer, null: false
|
||||
add :key, :string, size: 30, null: false
|
||||
add :value1, :integer, null: false, default: 0
|
||||
add :value2, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create table(:wz_itemequipdata) do
|
||||
add :itemid, :integer, null: false
|
||||
add :itemlevel, :integer, null: false, default: -1
|
||||
add :key, :string, size: 30, null: false
|
||||
add :value, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create table(:wz_itemrewarddata) do
|
||||
add :itemid, :integer, null: false
|
||||
add :item, :integer, null: false
|
||||
add :prob, :integer, null: false, default: 0
|
||||
add :quantity, :integer, null: false, default: 0
|
||||
add :period, :integer, null: false, default: -1
|
||||
add :worldmsg, :string, size: 255, null: false, default: ""
|
||||
add :effect, :string, size: 255, null: false, default: ""
|
||||
end
|
||||
|
||||
create table(:wz_questdata) do
|
||||
add :questid, :integer, null: false, primary_key: true
|
||||
add :name, :string, size: 1024, null: false, default: ""
|
||||
add :autostart, :boolean, null: false, default: false
|
||||
add :autoprecomplete, :boolean, null: false, default: false
|
||||
add :viewmedalitem, :integer, null: false, default: 0
|
||||
add :selectedskillid, :integer, null: false, default: 0
|
||||
add :blocked, :boolean, null: false, default: false
|
||||
add :autoaccept, :boolean, null: false, default: false
|
||||
add :autocomplete, :boolean, null: false, default: false
|
||||
end
|
||||
|
||||
create table(:wz_questactdata) do
|
||||
add :questid, :integer, null: false, default: 0
|
||||
add :name, :string, size: 127, null: false, default: ""
|
||||
add :type, :integer, null: false, default: 0
|
||||
add :intstore, :integer, null: false, default: 0
|
||||
add :applicablejobs, :string, size: 1024, null: false, default: ""
|
||||
add :uniqueid, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create index(:wz_questactdata, [:questid], name: :wz_questactdata_questid_index)
|
||||
|
||||
create table(:wz_questactitemdata) do
|
||||
add :itemid, :integer, null: false, default: 0
|
||||
add :count, :integer, null: false, default: 0
|
||||
add :period, :integer, null: false, default: 0
|
||||
add :gender, :integer, null: false, default: 2
|
||||
add :job, :integer, null: false, default: -1
|
||||
add :jobex, :integer, null: false, default: -1
|
||||
add :prop, :integer, null: false, default: -1
|
||||
add :uniqueid, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create table(:wz_questactquestdata) do
|
||||
add :quest, :integer, null: false, default: 0
|
||||
add :state, :integer, null: false, default: 2
|
||||
add :uniqueid, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create table(:wz_questactskilldata) do
|
||||
add :skillid, :integer, null: false, default: 0
|
||||
add :skilllevel, :integer, null: false, default: -1
|
||||
add :masterlevel, :integer, null: false, default: -1
|
||||
add :uniqueid, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create table(:wz_questreqdata) do
|
||||
add :questid, :integer, null: false, default: 0
|
||||
add :name, :string, size: 127, null: false, default: ""
|
||||
add :type, :integer, null: false, default: 0
|
||||
add :stringstore, :string, size: 1024, null: false, default: ""
|
||||
add :intstoresfirst, :string, size: 1024, null: false, default: ""
|
||||
add :intstoressecond, :string, size: 1024, null: false, default: ""
|
||||
end
|
||||
|
||||
create index(:wz_questreqdata, [:questid], name: :wz_questreqdata_questid_index)
|
||||
|
||||
create table(:wz_questpartydata) do
|
||||
add :questid, :integer, null: false, default: 0
|
||||
add :rank, :string, size: 1, null: false, default: ""
|
||||
add :mode, :string, size: 13, null: false, default: ""
|
||||
add :property, :string, size: 255, null: false, default: ""
|
||||
add :value, :integer, null: false, default: 0
|
||||
end
|
||||
|
||||
create index(:wz_questpartydata, [:questid], name: :wz_questpartydata_questid_index)
|
||||
|
||||
create table(:wz_mobskilldata) do
|
||||
add :skillid, :integer, null: false
|
||||
add :level, :integer, null: false
|
||||
add :hp, :integer, null: false, default: 100
|
||||
add :mpcon, :integer, null: false, default: 0
|
||||
add :x, :integer, null: false, default: 1
|
||||
add :y, :integer, null: false, default: 1
|
||||
add :time, :integer, null: false, default: 0
|
||||
add :prop, :integer, null: false, default: 100
|
||||
add :limit, :integer, null: false, default: 0
|
||||
add :spawneffect, :integer, null: false, default: 0
|
||||
add :interval, :integer, null: false, default: 0
|
||||
add :summons, :string, size: 1024, null: false, default: ""
|
||||
add :ltx, :integer, null: false, default: 0
|
||||
add :lty, :integer, null: false, default: 0
|
||||
add :rbx, :integer, null: false, default: 0
|
||||
add :rby, :integer, null: false, default: 0
|
||||
add :once, :boolean, null: false, default: false
|
||||
end
|
||||
|
||||
create table(:wz_oxdata) do
|
||||
add :questionset, :integer, null: false, default: 0
|
||||
add :questionid, :integer, null: false, default: 0
|
||||
add :question, :string, size: 200, null: false, default: ""
|
||||
add :display, :string, size: 200, null: false, default: ""
|
||||
add :answer, :string, size: 1, null: false
|
||||
end
|
||||
|
||||
create unique_index(:wz_oxdata, [:questionset, :questionid])
|
||||
|
||||
# ============================================================================
|
||||
# SERVER CONFIG
|
||||
# ============================================================================
|
||||
|
||||
create table(:auth_server_channel_ip) do
|
||||
add :channelid, :integer, null: false, default: 0
|
||||
add :name, :string, size: 255, null: false
|
||||
add :value, :string, size: 255, null: false
|
||||
end
|
||||
|
||||
create index(:auth_server_channel_ip, [:channelid])
|
||||
end
|
||||
|
||||
def down do
|
||||
drop table(:auth_server_channel_ip)
|
||||
drop table(:wz_oxdata)
|
||||
drop table(:wz_mobskilldata)
|
||||
drop table(:wz_questpartydata)
|
||||
drop table(:wz_questreqdata)
|
||||
drop table(:wz_questactskilldata)
|
||||
drop table(:wz_questactquestdata)
|
||||
drop table(:wz_questactitemdata)
|
||||
drop table(:wz_questactdata)
|
||||
drop table(:wz_questdata)
|
||||
drop table(:wz_itemrewarddata)
|
||||
drop table(:wz_itemequipdata)
|
||||
drop table(:wz_itemadddata)
|
||||
drop table(:wz_itemdata)
|
||||
drop table(:shopranks)
|
||||
drop table(:shopitems)
|
||||
drop table(:shops)
|
||||
drop table(:reactordrops)
|
||||
drop table(:drop_data_global)
|
||||
drop table(:drop_data)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user