Restructure repository to include all source folders

Move git root from Client/ to src/ to track all source code:
- Client: Game client source (moved to Client/Client/)
- Server: Game server source
- GameTools: Development tools
- CryptoSource: Encryption utilities
- database: Database scripts
- Script: Game scripts
- rylCoder_16.02.2008_src: Legacy coder tools
- GMFont, Game: Additional resources

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-29 20:17:20 +09:00
parent 5d3cd64a25
commit dd97ddec92
11602 changed files with 1446576 additions and 0 deletions

View File

@@ -0,0 +1,142 @@
---------------------------------------------------------------------------------------------------
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>߰<EFBFBD>
-- <20><><EFBFBD>տ뽺ũ<EBBDBA><C5A9>Ʈ_real\CreateRYLDB_20041201.sql <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ؾ<EFBFBD> <20><><EFBFBD><EFBFBD>DB<44><42>ũ<EFBFBD><C5A9>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϰԵȴ<D4B5>.
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ð<EFBFBD> : 2005-03-17 <20><><EFBFBD><EFBFBD>
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0BCAD> : <20><><EFBFBD><EFBFBD> <20>׽<EFBFBD>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD>
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> : <20>̹<EFBFBD> dbo.TblFertilityInfo ,dbo.TblCampMineralInfo <20>ΰ<EFBFBD><CEB0><EFBFBD> <20><><EFBFBD>̺<EFBFBD><CCBA><EFBFBD> <20><><EFBFBD><20><><EFBFBD><EFBFBD>.
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ð<EFBFBD> : 2005-03-31 <20><><EFBFBD><EFBFBD> 10:00
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0BCAD> : <20><>Ÿ<EFBFBD><C5B8>,<2C><><EFBFBD><EFBFBD>
----------------------------------------------------------------------------------------------------
GO
CREATE TABLE [TblCampShopInfo] (
[CampID] [int] NOT NULL ,
[Item] [varbinary] (8000) NULL ,
[TempMoney] [int] NULL ,
[Tax] [tinyint] NULL ,
[TransferTime] [smalldatetime] NULL ,
PRIMARY KEY CLUSTERED
(
[CampID]
)
)
GO
CREATE TABLE [TblWorldWeaponInfo] (
[tnZone] [tinyint] NULL ,
[tnChannel] [tinyint] NULL ,
[tnKarRemainSiegeTime] [tinyint] NULL ,
[tnMerRemainSiegeTime] [tinyint] NULL
)
GO
DECLARE @ID INT
SET @ID = 0
WHILE @ID < 5
BEGIN
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002200FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004400FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008800FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x009900FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002211FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004411FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006611FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008811FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008911FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002222FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004422FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006622FF, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002200F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004400F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006600F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008800F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002211F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004411F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006611F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008811F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008911F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x009911F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002222F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004422F1, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002200F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004400F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006600F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008800F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002211F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004411F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006611F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008811F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002222F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004422F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006622F2, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0011FF00, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0022FF00, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0033FF00, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0044FF00, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0055FF00, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0066FF00, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0077FF00, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0088FF00, 10, 12, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002200FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004400FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006600FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002100F2, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004100FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006100FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002300FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004300FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006300FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002211FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004411FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006611FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002111FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004111FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006111FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002311FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004311FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006311FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008311FF, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002200F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004400F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006600F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x008800F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002100F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004100F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006100F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002111F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004111F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006111F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x002211F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x004411F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x006611F0, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0000FF11, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0000FF22, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0000FF33, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x0000FF44, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF0011, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF0022, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF0033, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF0044, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF0055, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF0066, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF0077, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF0088, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF1111, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF2211, 10, 8, @ID)
insert into TblFertilityInfo(nVeinColor, nFertility, tnZone, tnChannel) values (0x00FF2222, 10, 8, @ID)
SET @ID = @ID +1
END
GO

View File

@@ -0,0 +1,7 @@
-- 2005-03-31 <20>׼<EFBFBD><D7BC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
-- 2005-04-13 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
alter table dbo.TblCampInfo
add tnMaterial tinyint

View File

@@ -0,0 +1,87 @@
-- 2005-04-14 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
-- <20><>Ƽ <20><><EFBFBD>̺<EFBFBD> <20><><EFBFBD><EFBFBD> --
ALTER TABLE dbo.PartyInfo
Add UserInfo varbinary(70)
GO
-- Friend <20><><EFBFBD>̺<EFBFBD> <20><><EFBFBD><EFBFBD> --
GO
alter table Friend
add FriendInfo varBINARY(704)
GO
alter table Friend
add BanInfo varBinary(704)
-- <20><>Ƽ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> --
GO
----------------------------------------------------------------------------------------------------------------------
-- GetPartyInfo.sql
----------------------------------------------------------------------------------------------------------------------
/*
<EFBFBD><EFBFBD>Ƽ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ν<EFBFBD><EFBFBD><EFBFBD>
*/
GO
CREATE PROCEDURE dbo.GetPartyInfo_Part2
@Party_uid AS INT /* <20><>Ƽ <20><><EFBFBD>̵<EFBFBD> */
AS
SET NOCOUNT ON
SELECT Party, UserInfo FROM PartyInfo WHERE PID = @Party_uid
-- <20><>Ƽ <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ --
GO
----------------------------------------------------------------------------------------------------------------------
-- UpdatePartyInfo.sql
----------------------------------------------------------------------------------------------------------------------
/*
<EFBFBD><EFBFBD>Ƽ <EFBFBD>ɹ<EFBFBD> <EFBFBD>߰<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ν<EFBFBD><EFBFBD><EFBFBD>
*/
CREATE PROCEDURE dbo.UpdatePartyInfo_Part2
@Party_uid AS INT, /* <20><>Ƽ <20><><EFBFBD><EFBFBD> <20><><EFBFBD>̵<EFBFBD> */
@Party AS varBINARY(202), /* ģ<><C4A3> <20><><EFBFBD><EFBFBD>Ʈ */
@UserInfo AS varBINARY(72) /* <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> */
AS
SET NOCOUNT ON
UPDATE PartyInfo SET Party = @Party, UserInfo = @UserInfo WHERE PID = @Party_uid
-- <20><>Ƽ <20>߰<EFBFBD> --
GO
-------------------------------------------------------------------------------------------------------------
-- InsertParty.sql
----------------------------------------------------------------------------------------------------------------------
/*
<EFBFBD><EFBFBD>Ƽ <EFBFBD>߰<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ν<EFBFBD><EFBFBD><EFBFBD>
*/
CREATE PROCEDURE dbo.InsertParty_Part2
@Party AS varBINARY(202), /* ģ<><C4A3> <20><><EFBFBD><EFBFBD>Ʈ */
@UserInfo AS varBINARY(72) /* <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> */
AS
SET NOCOUNT ON
INSERT INTO PartyInfo (Party, UserInfo) VALUES (@Party, @UserInfo)
/* <20><><EFBFBD><EFBFBD> <20><><EFBFBD>̵<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
SELECT CAST(SCOPE_IDENTITY() AS INT)
GO

View File

@@ -0,0 +1,89 @@
/***************************************************
*
* 2004.11.01
* You should make the database named 'CharDelHostory' before you execute this script
***************************************************/
GO
USE CharDelHistory
GO
CREATE TABLE [dbo].[DelCharInfo] (
[NewServerGroupID] TINYINT NOT NULL,
[CID] [int] NOT NULL ,
[Name] [varchar] (16) NULL ,
[Sex] [tinyint] NULL ,
[Hair] [tinyint] NULL ,
[Face] [tinyint] NULL ,
[Race] [tinyint] NULL ,
[Class] [smallint] NULL ,
[Fame] [int] NULL ,
[Mileage] [int] NULL ,
[Guild] [int] NULL ,
[Party] [int] NULL ,
[Level] [tinyint] NULL ,
[Equip] [binary] (30) NULL ,
[Gold] [int] NULL ,
[IP] [smallint] NULL ,
[STR] [smallint] NULL ,
[DEX] [smallint] NULL ,
[CON] [smallint] NULL ,
[Intell] [smallint] NULL ,
[WIS] [smallint] NULL ,
[HP] [smallint] NULL ,
[MP] [smallint] NULL ,
[Exp] [bigint] NULL ,
[Chance] [tinyint] NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[DelCharItem] (
[NewServerGroupID] TINYINT NOT NULL,
[CID] [int] NOT NULL ,
[Quick] [binary] (100) NULL ,
[Equip] [binary] (1440) NULL ,
[Inventory] [binary] (5120) NULL ,
[Extra] [binary] (512) NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[DelCharItemEx] (
[NewServerGroupID] TINYINT NOT NULL ,
[CID] [int] NOT NULL ,
[Exchange] [binary] (1284) NULL ,
[TempInven] [binary] (1440) NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[DelCharSkill] (
[NewServerGroupID] TINYINT NOT NULL ,
[CID] [int] NOT NULL ,
[Skill] [binary] (84) NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[TblCharDelHistory_LOG] (
[intCID] [int] NULL ,
[intUID] [int] NULL ,
[dateInsertTime] [smalldatetime] NULL ,
[dateDeleteTime] [smalldatetime] NULL ,
[NewServerGroupID] TINYINT NULL ,
[OldServerGroupID] TINYINT NULL
) ON [PRIMARY]
GO
CREATE INDEX [IDX_DelCharInfo_CID] ON [dbo].[DelCharInfo]([CID],[NewServerGroupID]) ON [PRIMARY]
GO
CREATE INDEX [IDX_DelCharItem_CID] ON [dbo].[DelCharItem]([CID],[NewServerGroupID]) ON [PRIMARY]
GO
CREATE INDEX [IDX_DelCharItemEx_CID] ON [dbo].[DelCharItemEx]([CID],[NewServerGroupID]) ON [PRIMARY]
GO
CREATE INDEX [IDX_DelCharSkill_CID] ON [dbo].[DelCharSkill]([CID],[NewServerGroupID]) ON [PRIMARY]
GO

View File

@@ -0,0 +1,16 @@
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[UserInfoConvertView]') and
OBJECTPROPERTY(id, N'IsView') = 1)
drop view [dbo].[UserInfoConvertView]
GO
-- <20><><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><CFB1><EFBFBD> <20><><EFBFBD>տ<EFBFBD><D5BF><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ͺ<EFBFBD><CDBA>̽<EFBFBD><CCBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE><EFBFBD> <20><> <20><>
-- CharInfo_1, CharInfo_2 ..... <20>̷<EFBFBD><CCB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>DB<44><42> <20><><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> DB<44><42> <20><><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE><EFBFBD> <20><>.
CREATE VIEW dbo.UserInfoConvertView
AS
SELECT UID,Char1 AS CID FROM UserInfo WHERE Char1 > 0
UNION ALL
SELECT UID,Char2 AS CID FROM UserInfo WHERE Char2 > 0
UNION ALL
SELECT UID,Char3 AS CID FROM UserInfo WHERE Char3 > 0

View File

@@ -0,0 +1,223 @@
/**************************************************
--<2D><><EFBFBD>յ<EFBFBD> <20><><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>DB<44><42><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE><EFBFBD> <20>Ѵ<EFBFBD>.
-- dbo.UserInfoConvertView <20><> <20><><EFBFBD><EFBFBD> <20>ؾ<EFBFBD><D8BE>Ѵ<EFBFBD>.
****************************************************/
GO
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>Ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CREATE TABLE dbo.TblUnifiedGuildList
(
BeforeGuildID INT NOT NULL
, OldServerGroupID TINYINT NOT NULL
, NewGuildID INT NOT NULL IDENTITY(1000,1)
, BeforeGName VARCHAR(20)
, NewGName VARCHAR(20)
)
GO
CREATE TABLE [TblUnifiedCharList_TEMP] (
[UID] [int] NOT NULL ,
[OldServerGroupID] [tinyint] NOT NULL ,
[BeforeCID] [int] NOT NULL ,
[NewCID] [int] IDENTITY (1000, 1) NOT NULL PRIMARY KEY,
[BeforeCharName] [varchar] (20) NOT NULL ,
[NewCharName] [varchar] (20) ,
[BeforeGuildID] [int] NULL ,
[NewGuildID] [int] NULL
) ON [PRIMARY]
GO
CREATE INDEX Idx_TblUnifiedCharList_U_Old ON [TblUnifiedCharList_TEMP] (UID,OldServerGroupID)
GO
/*******************************************************************************************
*
* <09><><EFBFBD><EFBFBD> DB<44><42><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD> <20><> ij<><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>Ÿ<EFBFBD><C5B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD>
*<><C4B3><EFBFBD>ͱ⺻<CDB1><E2BABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2BABB><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TblUnifiedCharList <20><> TblUnifiedGuildList <20><> <20><><EFBFBD><EFBFBD>
********************************************************************************************/
GO
CREATE PROC procCreateMetaData @ServerGroupNum TINYINT,@DBName VARCHAR(20)
AS
SET NOCOUNT ON
DECLARE @String NVARCHAR(4000)
SET @String =
'INSERT INTO TblUnifiedCharList_TEMP (UID,OldServerGroupID,BeforeCID,BeforeCharName,NewCharName,BeforeGuildID,NewGuildID) ' +
'SELECT A.UID,@ServerGroupNum,A.CID,B.Name,B.Name,Guild,Guild FROM ' + @DBName + '.dbo.UserInfoConvertView A join ' + @DBName + '.dbo.CharInfo B ON A.CID = B.UID '+
'INSERT INTO TblUnifiedGuildList (BeforeGuildID,OldServerGroupID,BeforeGName,NewGName) '+
'SELECT nGuildID,@ServerGroupNum,strGuildName,strGuildName FROM ' + @DBName + '.dbo.TblGuildInfo'
EXEC sp_executesql @String,N'@ServerGroupNum TINYINT',@ServerGroupNum
GO
/****************************************************************************
*
* <09><><EFBFBD>յ<EFBFBD> ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ij<><C4B3><EFBFBD><EFBFBD>Name<6D><65> <20>ߺ<EFBFBD><DFBA><EFBFBD><EFBFBD>θ<EFBFBD> üũ<C3BC>Ѵ<EFBFBD>.
* <09><><EFBFBD>յ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> @nCount <20><><EFBFBD><EFBFBD> <20><>ġ<EFBFBD>ؾ<EFBFBD><D8BE>Ѵ<EFBFBD>.
****************************************************************************/
CREATE PROC procCheckCharInfoGuild @nCount int,@Server1 CHAR(1) = NULL,@Server2 CHAR(1) = NULL,
@Server3 CHAR(1) = NULL,@Server4 CHAR(1) = NULL,
@Server5 CHAR(1) = NULL,@Server6 CHAR(1) = NULL
AS
SET NOCOUNT ON
CREATE TABLE #TblUnifiedCIDList_TEMP
(
NewCharName VARCHAR(20) NOT NULL
)
INSERT INTO #TblUnifiedCIDList_TEMP
SELECT NewCharName FROM TblUnifiedCharList_TEMP GROUP BY NewCharName HAVING COUNT(*) > 1
DECLARE @ROWID INT
DECLARE @ServerGroupNum TINYINT
DECLARE @Initial CHAR(1)
DECLARE @TABLE TABLE
(
ROWID INT IDENTITY(1,1)
, ServerGroupNum TINYINT
)
INSERT INTO @TABLE
SELECT DISTINCT OldServerGroupID FROM TblUnifiedCharList_TEMP
SET @ROWID = @@ROWCOUNT
if ((@ROWID <> @nCount) OR (@nCount <= 0))
BEGIN
PRINT 'incorrect parameter counts'
RETURN
END
WHILE (@ROWID > 0)
BEGIN
SELECT @ServerGroupNum = ServerGroupNum
FROM @TABLE WHERE ROWID = @ROWID
-- <20><><EFBFBD>յ<EFBFBD> ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ij<><C4B3><EFBFBD><EFBFBD>Name<6D><65> <20>ߺ<EFBFBD><DFBA><EFBFBD><EFBFBD>θ<EFBFBD> üũ<C3BC>Ѵ<EFBFBD>.
IF @ServerGroupNum = 1
SET @Initial = @Server1
ELSE IF @ServerGroupNum = 2
SET @Initial = @Server2
ELSE IF @ServerGroupNum = 3
SET @Initial = @Server3
ELSE IF @ServerGroupNum = 4
SET @Initial = @Server4
ELSE IF @ServerGroupNum = 5
SET @Initial = @Server5
ELSE IF @ServerGroupNum = 6
SET @Initial = @Server6
UPDATE A SET A.NewCharName = @Initial + A.NewCharName
FROM TblUnifiedCharList_TEMP A,#TblUnifiedCIDList_TEMP B
WHERE A.NewCharName = B.NewCharName AND OldServerGroupID = @ServerGroupNum
--<EFBFBD><EFBFBD><EFBFBD>յ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ߺ<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD>Ѵ<EFBFBD>.
UPDATE TblUnifiedGuildList SET NewGName = @Initial + NewGName
WHERE NewGName IN ( SELECT NewGName FROM TblUnifiedGuildList GROUP BY NewGName HAVING COUNT(*) > 1 )
AND OldServerGroupID = @ServerGroupNum
SET @ROWID = @ROWID - 1
END
-- <20><><EFBFBD><EFBFBD> ij<><C4B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> Guild <20><>ȣ <20><><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
UPDATE A
SET A.NewGuildID = B.NewGuildID
FROM dbo.TblUnifiedCharList_TEMP A, dbo.TblUnifiedGuildList B
WHERE A.BeforeGuildID = B.BeforeGuildID AND A.OldServerGroupID = B.OldServerGroupID AND A.BeforeGuildID > 0
DROP TABLE #TblUnifiedCIDList_TEMP
GO
/*************************************************************************************************************************
*
* <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD>.
*
* CharInfo , CharSkill , CharInfoEx , CharItem , CharItemEx , Friend , Quest , TblGuildInfo , TblUnifiedItemStore1 , TblUnifiedItemStore2
*
*************************************************************************************************************************/
GO
CREATE PROC procUnifingGameDB @ServerGroupNum TINYINT,@DBName VARCHAR(20)
AS
SET NOCOUNT ON
DECLARE @String NVARCHAR(4000)
SET @String =
'INSERT INTO CharInfo (CID,Name,Sex,Hair,Face,Race,Class,Fame,Mileage,Guild,Party,Level,Equip,Gold,IP,STR,DEX,CON,Intell,WIS,HP,Exp,Chance) ' +
'SELECT B.NewCID,NewCharName,Sex,Hair,Face,Nationality,Class,Fame,Mileage,B.NewGuildID,Party,Level,Equip,Gold,IP,STR,DEX,CON,Intell,WIS,HP,Exp,Chance '+
'FROM ' + @DBName + '.dbo.CharInfo A JOIN TblUnifiedCharList_TEMP B ON A.UID = B.BeforeCID WHERE OldServerGroupID = @ServerGroupNum '+
'INSERT INTO CharSkill (CID,Skill) ' +
'SELECT NewCID,Skill FROM ' + @DBName + '.dbo.CharSkill A JOIN TblUnifiedCharList_TEMP B ON A.UID = B.BeforeCID WHERE OldServerGroupID = @ServerGroupNum ' +
'INSERT INTO CharInfoEx (CID,Total,ServerID,Config) ' +
'SELECT NewCID,Total,ServerID,Config FROM ' + @DBName + '.dbo.CharInfoEx A JOIN TblUnifiedCharList_TEMP B ON A.UID = B.BeforeCID WHERE OldServerGroupID = @ServerGroupNum ' +
'INSERT INTO CharItem (CID,Quick,Equip,Inventory,Extra) ' +
'SELECT NewCID,Quick,Equip,Inventory,Extra FROM ' + @DBName + '.dbo.CharItem A JOIN TblUnifiedCharList_TEMP B ON A.UID = B.BeforeCID WHERE OldServerGroupID = @ServerGroupNum ' +
'INSERT INTO CharItemEx (CID,Exchange) ' +
'SELECT NewCID,Exchange FROM ' + @DBName + '.dbo.CharItemEx A JOIN TblUnifiedCharList_TEMP B ON A.UID = B.BeforeCID WHERE OldServerGroupID = @ServerGroupNum ' +
'INSERT INTO Quest (CID,Quest,History) ' +
'SELECT NewCID,Quest,History FROM ' + @DBName + '.dbo.Quest A JOIN TblUnifiedCharList_TEMP B ON A.UID = B.BeforeCID WHERE OldServerGroupID = @ServerGroupNum ' +
'INSERT INTO TblUnifiedItemStore1 (UID,OldServerGroupID,Password,Frag,Gold,Store) ' +
'SELECT UID,@ServerGroupNum,Password,ISNULL(Frag,1),Gold,Store FROM ' + @DBName + '.dbo.ItemStore1 ' +
'INSERT INTO TblUnifiedItemStore2 (UID,OldServerGroupID,Store) ' +
'SELECT UID,@ServerGroupNum,Store FROM ' + @DBName + '.dbo.ItemStore2 '
exec sp_executesql @String,N'@ServerGroupNum TINYINT',@ServerGroupNum
GO
CREATE PROC procUnifingGameDB_Guild @ServerGroupNum TINYINT,@DBName VARCHAR(20)
AS
SET NOCOUNT ON
DECLARE @String NVARCHAR(4000)
SET @String =
'INSERT INTO dbo.TblGuildInfo (nGuildID,strGuildName,tnGuildLevel,nGuildFame,nGuildGold,tLastLogout,tCheckMember,tGMLastLogout,bGuildMark,bRight,tnNationType,tChangeState) ' +
'SELECT NewGuildID,NewGName,tnGuildLevel,nGuildFame,nGuildGold,tLastLogout,tCheckMember,tGMLastLogout,bGuildMark,bRight,tnNationType,tChangeState ' +
'FROM ' + @DBName + '.dbo.TblGuildInfo A JOIN TblUnifiedGuildList B ON A.nGuildID = B.BeforeGuildID WHERE B.OldServerGroupID = @ServerGroupNum ' +
'INSERT INTO dbo.TblGuildMember (nGuildID,nCID,nPosition,nPositionInGuild,tLeaveGuildTime,nCampID) ' +
'SELECT B.NewGuildID,C.NewCID,nPosition,nPositionInGuild,tLeaveGuildTime,nCampID ' +
'FROM ' + @DBName + '.dbo.TblGuildMember A JOIN TblUnifiedGuildList B ON A.nGuildID = B.BeforeGuildID ' +
'JOIN TblUnifiedCharList_TEMP C ON A.nCID = C.BeforeCID WHERE B.OldServerGroupID =@ServerGroupNum AND C.OldServerGroupID = @ServerGroupNum AND C.NewGuildID > 0 '
exec sp_executesql @String,N'@ServerGroupNum TINYINT',@ServerGroupNum
GO

View File

@@ -0,0 +1,99 @@
/********************************************************************
*
* <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><>ũ<EFBFBD><C5A9>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE><EFBFBD> <20><>.
*
********************************************************************/
GO
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD> DB<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD> <EFBFBD><EFBFBD> ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>Ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD>
-- <20><><EFBFBD><EFBFBD><EFBFBD>̽þ<CCBD> <20><><EFBFBD>չ<EFBFBD><D5B9><EFBFBD>
EXEC procCreateMetaData @ServerGroupNum = 1,@DBName ='Hyperion'
EXEC procCreateMetaData @ServerGroupNum = 2,@DBName ='Cheiron'
EXEC procCreateMetaData @ServerGroupNum = 3,@DBName ='Prometheus'
EXEC procCreateMetaData @ServerGroupNum = 4,@DBName ='Thanatos'
-- <20><20><><EFBFBD>չ<EFBFBD><D5B9><EFBFBD>
--EXEC procCreateMetaData @ServerGroupNum = 1,@DBName ='POTATOS'
--EXEC procCreateMetaData @ServerGroupNum = 2,@DBName ='karterant'
--EXEC procCreateMetaData @ServerGroupNum = 3,@DBName ='LOTUS'
--EXEC procCreateMetaData @ServerGroupNum = 4,@DBName ='AQUATICA'
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>׽<EFBFBD>Ʈ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--EXEC procCreateMetaData @ServerGroupNum = 4,@DBName ='MARS161.Highland'
--EXEC procCreateMetaData @ServerGroupNum = 5,@DBName ='MARS189.Aldia'
--EXEC procCreateMetaData @ServerGroupNum = 6,@DBName ='Unite'
GO
-- 3<><33>
DROP PROC procCreateMetaData
GO
INSERT INTO [TblUnifiedCharList] (UID,OldServerGroupID,BeforeCID,NewCID,BeforeCharName)
SELECT UID,OldServerGroupID,BeforeCID,NewCID,BeforeCharName FROM [TblUnifiedCharList_TEMP]
GO
--<EFBFBD><EFBFBD><EFBFBD>յ<EFBFBD> ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ij<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Name<EFBFBD><EFBFBD> <EFBFBD>ߺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>θ<EFBFBD> üũ<EFBFBD>Ѵ<EFBFBD>.
-- ó<><C3B3><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ڸ<EFBFBD>ŭ <20><><EFBFBD>ڿ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ؾ<EFBFBD><D8BE>Ѵ<EFBFBD>.
--EXEC procCheckCharInfoGuild 6,'S','K','I','H','A','U' --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EXEC procCheckCharInfoGuild 4,'H','C','P','T'
GO
DROP PROC procCheckCharInfoGuild
GO
-- <20≯<EFBFBD> <20><><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD> üũ<C3BC>ϱ<EFBFBD>
IF EXISTS (SELECT NewCharName FROM TblUnifiedCharList_TEMP WHERE DATALENGTH(NewCharName) > 15)
BEGIN
UPDATE TblUnifiedCharList_TEMP
SET NewCharName = SUBSTRING(NewCharName,1,LEN(NewCharName)-2) + SUBSTRING(NewCharName,LEN(NewCharName),1)
WHERE DATALENGTH(NewCharName) > 15
END
IF EXISTS (SELECT NewGName FROM TblUnifiedGuildList WHERE DATALENGTH(NewGName) > 10 )
BEGIN
UPDATE TblUnifiedGuildList
SET NewGName = SUBSTRING(NewGName,1,LEN(NewGName)-2) + SUBSTRING(NewGName,LEN(NewGName),1)
WHERE DATALENGTH(NewGName) > 10
END
GO
/************************
*
* <20≯<EFBFBD>üũ<C3BC>κ<EFBFBD> <20>ߺ<EFBFBD><DFBA><EFBFBD><EFBFBD>θ<EFBFBD> Ȯ<><C8AE><EFBFBD>ؼ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ٽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
*
*************************/
--<EFBFBD>ߺ<EFBFBD>üũ Ȯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UPDATE A
SET A.NewCharName = A.NewCharName + '#' --<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ߺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͱ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵٸ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
FROM TblUnifiedCharList_TEMP A, (
SELECT NewCharName,MIN(NewCID) AS NewCID FROM TblUnifiedCharList_TEMP WHERE NewCharName IN (
SELECT NewCharName FROM TblUnifiedCharList_TEMP GROUP BY NewCharName HAVING COUNT(*) > 1 )
GROUP BY NewCharName ) B
WHERE A.NewCID = B.NewCID
-- <20≯<EFBFBD><CCB8><EFBFBD><EFBFBD>ڿ<EFBFBD> <20><> üũ
SELECT NewCharName FROM dbo.TblUnifiedCharList_TEMP WHERE DATALENGTH(NewCharName) > 15
-- <20>ߺ<EFBFBD><DFBA≯<EFBFBD> üũ
SELECT NewCharName FROM TblUnifiedCharList_TEMP GROUP BY NewCharName HAVING COUNT(*) > 1
-- <20><><EFBFBD><EFBFBD><EFBFBD≯<EFBFBD><CCB8><EFBFBD><EFBFBD>ڿ<EFBFBD> üũ
SELECT NewGName FROM dbo.TblUnifiedGuildList WHERE DATALENGTH(NewGName) > 10
-- <20><><EFBFBD><EFBFBD><EFBFBD≯<EFBFBD> üũ
SELECT NewGName,Count(*) FROM TblUnifiedGuildList GROUP BY NewGName HAVING COUNT(*) > 1
/* <20><><EFBFBD><EFBFBD><EFBFBD>̽þ<CCBD> <20>϶<EFBFBD> üũ<C3BC><C5A9>.
SELECT * FROM TblUnifiedGuildList WHERE NewGName ='T100000000'
update TblUnifiedGuildList set NewGName = 'T10000000^' where NewGuildID = 3449
*/

View File

@@ -0,0 +1,112 @@
-- <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD>
EXEC procUnifingGameDB @ServerGroupNum = 1,@DBName = 'Hyperion'
PRINT 'Completed procUnifingGameDB : Hyperion'
GO
EXEC procUnifingGameDB @ServerGroupNum = 2,@DBName = 'Cheiron'
PRINT 'Completed procUnifingGameDB : Cheiron'
GO
EXEC procUnifingGameDB @ServerGroupNum = 3,@DBName = 'Prometheus'
PRINT 'Completed procUnifingGameDB : Prometheus'
GO
EXEC procUnifingGameDB @ServerGroupNum = 4,@DBName = 'Thanatos'
PRINT 'Completed procUnifingGameDB : Thanatos'
GO
--EXEC procUnifingGameDB @ServerGroupNum = 4,@DBName = 'MARS161.Highland'
--PRINT 'Completed procUnifingGameDB : Highland'
GO
--EXEC procUnifingGameDB @ServerGroupNum = 5,@DBName = 'MARS189.Aldia'
--PRINT 'Completed procUnifingGameDB : Aldia'
GO
--EXEC procUnifingGameDB @ServerGroupNum = 6,@DBName = 'Unite'
--PRINT 'Completed procUnifingGameDB : Unite'
-- Execute time 9 : 58
GO
DROP PROC procUnifingGameDB
GO
SET IDENTITY_INSERT TblGuildInfo ON
GO
-- <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD>
-- <20><><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD> 1.<2E>ѱ<EFBFBD><D1B1><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ս<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ľ<EFBFBD><C4BE>ϰ<EFBFBD> Part2<74><32> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ȵȴ<C8B5>.
-- 2. <20>߱<EFBFBD><DFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><20><><EFBFBD>ľ<EFBFBD><C4BE>Ѵ<EFBFBD>.
EXEC procUnifingGameDB_Guild @ServerGroupNum = 1,@DBName = 'Hyperion'
PRINT 'Completed procUnifingGameDB_Guild : Hyperion'
GO
EXEC procUnifingGameDB_Guild @ServerGroupNum = 2,@DBName = 'Cheiron'
PRINT 'Completed procUnifingGameDB_Guild : Cheiron'
GO
EXEC procUnifingGameDB_Guild @ServerGroupNum = 3,@DBName = 'Prometheus'
PRINT 'Completed procUnifingGameDB_Guild : Prometheus'
GO
EXEC procUnifingGameDB_Guild @ServerGroupNum = 4,@DBName = 'Thanatos'
PRINT 'Completed procUnifingGameDB_Guild : Thanatos'
GO
--EXEC procUnifingGameDB_Guild @ServerGroupNum = 4,@DBName = 'MARS161.Highland'
--PRINT 'Completed procUnifingGameDB_Guild : Highland'
GO
--EXEC procUnifingGameDB_Guild @ServerGroupNum = 5,@DBName = 'MARS189.Aldia'
--PRINT 'Completed procUnifingGameDB_Guild : Aldia'
GO
--EXEC procUnifingGameDB_Guild @ServerGroupNum = 6,@DBName = 'Unite'
--PRINT 'Completed procUnifingGameDB_Guild : Unite'
GO
SET IDENTITY_INSERT TblGuildInfo OFF
GO
DROP PROC procUnifingGameDB_Guild
GO
-- SETTING PID = 0
UPDATE CharInfo SET Party = 0
GO
-- SETTING CharPos
INSERT INTO CharPos SELECT CID,0,0,0,0,0,0 FROM CharInfo
--GO
INSERT INTO Friend (CID) SELECT CID FROM CharInfo
GO
UPDATE dbo.CharInfoEx
SET ServerID = 0,NameChangeCount =1
GO
UPDATE TblGuildInfo SET OldServerGroupID = 21
GO
UPDATE CharInfo SET Chance = 3
GO
UPDATE dbo.TblUnifiedItemStore1 SET Frag = 1 WHERE Frag is null or Frag = 0
GO

View File

@@ -0,0 +1,131 @@
/****************************************************************
*
* <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ƴ<EFBFBD> <20>߱<EFBFBD><DFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD>Ѵ<EFBFBD>.
*
*****************************************************************/
GO
SET NOCOUNT ON
DECLARE @RowID_UID INT
DECLARE @RowID_CID INT
DECLARE @Identitymax INT
DECLARE @UID INT
DECLARE @ServerGroupNum TINYINT
DECLARE @NewCID INT
DECLARE @Nation INT
SET @Nation = 1
DECLARE @Char1 INT
DECLARE @Char2 INT
DECLARE @Char3 INT
DECLARE @Char4 INT
DECLARE @Char5 INT
DECLARE @TABLE_UID TABLE
(
ROWID INT IDENTITY(1,1) PRIMARY KEY
, UID INT
, ServerGroupNum TINYINT
)
DECLARE @TABLE_CID TABLE
(
ROWID INT IDENTITY(1,1)
, NewCID INT
)
INSERT INTO @TABLE_UID (UID,ServerGroupNum)
SELECT UID,OldServerGroupID FROM TblUnifiedCharList
GROUP BY UID,OldServerGroupID
SET @RowID_UID = @@ROWCOUNT
WHILE (@RowID_UID > 0 )
BEGIN
SELECT @Char1 = 0,@Char2 = 0,@Char3 = 0,@Char4 = 0,@Char5 = 0
SELECT @UID = UID,@ServerGroupNum = ServerGroupNum
FROM @TABLE_UID WHERE ROWID = @RowID_UID
DELETE @TABLE_CID
INSERT INTO @TABLE_CID (NewCID)
SELECT NewCID FROM TblUnifiedCharList WHERE UID = @UID AND OldServerGroupID = @ServerGroupNum
SET @RowID_CID = @@ROWCOUNT
SET @Identitymax = @@IDENTITY
WHILE (@Identitymax > (@@IDENTITY - @RowID_CID) )
BEGIN
IF (@Char1 = 0 AND @Char2 = 0 AND @Char3 = 0 AND @Char4 = 0 AND @Char5 = 0)
SELECT @Char1 = NewCID FROM @TABLE_CID WHERE ROWID = @Identitymax
ELSE IF (@Char1 <> 0 AND @Char2 = 0 AND @Char3 = 0 AND @Char4 = 0 AND @Char5 = 0)
SELECT @Char2 = NewCID FROM @TABLE_CID WHERE ROWID = @Identitymax
ELSE IF (@Char1 <> 0 AND @Char2 <> 0 AND @Char3 = 0 AND @Char4 = 0 AND @Char5 = 0)
SELECT @Char3 = NewCID FROM @TABLE_CID WHERE ROWID = @Identitymax
ELSE IF (@Char1 <> 0 AND @Char2 <> 0 AND @Char3 <> 0 AND @Char4 = 0 AND @Char5 = 0)
SELECT @Char4 = NewCID FROM @TABLE_CID WHERE ROWID = @Identitymax
ELSE IF (@Char1 <> 0 AND @Char2 <> 0 AND @Char3 <> 0 AND @Char4 <> 0 AND @Char5 = 0)
SELECT @Char5 = NewCID FROM @TABLE_CID WHERE ROWID = @Identitymax
SET @Identitymax = @Identitymax - 1
END
INSERT INTO UserInfo (UID,OldServerGroupID,Nation,Char1,Char2,Char3,Char4,Char5)
VALUES (@UID,@ServerGroupNum,@Nation,@Char1,@Char2,@Char3,@Char4,@Char5)
SET @RowID_UID = @RowID_UID - 1
END
GO
INSERT INTO UserInfo
SELECT A.UID,A.OldServerGroupID,0,0,0,0,0,0
FROM dbo.TblUnifiedItemStore1 A LEFT OUTER JOIN UserInfo B ON A.UID = B.UID AND A.OldServerGroupID = B.OldServerGroupID
WHERE B.UID IS NULL AND B.OldServerGroupID IS NULL
GO
UPDATE TblGuildInfo SET OldServerGroupID = 24
GO
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ
UPDATE A
SET Nation = Race+1
FROM UserInfo A, (
SELECT UID,OldServerGroupID,Race FROM TblUnifiedCharList A JOIN CharInfo B on A.NewCID = B.CID
GROUP BY UID,OldServerGroupID,Race ) B
WHERE A.UID = B.UID AND A.OldServerGroupID = B.OldServerGroupID
GO
INSERT INTO UserFirstLoginInfo (UID)
SELECT DISTINCT UID FROM UserInfo
GO
UPDATE Quest
SET Quest = NULL , History = NULL
GO
Update CharItem
SET Quick = NULL

View File

@@ -0,0 +1,6 @@
DELETE dbo.TblGuildMember
DELETE dbo.TblGuildOtherList
DELETE dbo.TblGuildOtherList
DELETE dbo.TblGuildInfo
UPDATE CharInfo SET Guild = 0

View File

@@ -0,0 +1,102 @@
CREATE PROC procTransferGameData @OldDBName VARCHAR(20),@NewDBName VARCHAR(20),@OldServerGroupID TINYINT,@NewServerGroupID TINYINT
AS
SET NOCOUNT ON
DECLARE @String NVARCHAR(4000)
SET @String =
'INSERT INTO ' + @NewDBName + '.dbo.AdminList ' +
'SELECT * FROM ' + @OldDBName + '.dbo.AdminList ' +
'INSERT INTO ' + @NewDBName + '.dbo.CharInfo ' +
'SELECT * FROM ' + @OldDBName + '.dbo.CharInfo ' +
'INSERT INTO ' + @NewDBName + '.dbo.CharInfoEx (CID,Total,ServerID,Config) ' +
'SELECT * FROM ' + @OldDBName + '.dbo.CharInfoEx ' +
'INSERT INTO ' + @NewDBName + '.dbo.CharItem ' +
'SELECT * FROM ' + @OldDBName + '.dbo.CharItem ' +
'INSERT INTO ' + @NewDBName + '.dbo.CharItemEx (CID,Exchange) ' +
'SELECT * FROM ' + @OldDBName + '.dbo.CharItemEx ' +
'INSERT INTO ' + @NewDBName + '.dbo.CharPos ' +
'SELECT * FROM ' + @OldDBName + '.dbo.CharPos ' +
'INSERT INTO ' + @NewDBName + '.dbo.CharSkill ' +
'SELECT * FROM ' + @OldDBName + '.dbo.CharSkill ' +
'INSERT INTO ' + @NewDBName + '.dbo.Friend ' +
'SELECT * FROM ' + @OldDBName + '.dbo.Friend ' +
'INSERT INTO ' + @NewDBName + '.dbo.ItemUID ' +
'SELECT * FROM ' + @OldDBName + '.dbo.ItemUID ' +
'INSERT INTO ' + @NewDBName + '.dbo.Quest ' +
'SELECT * FROM ' + @OldDBName + '.dbo.Quest ' +
'SET IDENTITY_INSERT ' + @NewDBName + '.dbo.PartyInfo ON ' +
'INSERT INTO ' + @NewDBName + '.dbo.PartyInfo (PID,Party) ' +
'SELECT * FROM ' + @OldDBName + '.dbo.PartyInfo ' +
'SET IDENTITY_INSERT ' + @NewDBName + '.dbo.PartyInfo OFF ' +
'INSERT INTO ' + @NewDBName + '.dbo. TblEventItem ' +
'SELECT * FROM ' + @OldDBName + '.dbo.TblEventItem ' +
'INSERT INTO ' + @NewDBName + '.dbo.TblCharDelHistory ' +
'SELECT intCID,intUID,dateInsertTime,dateDeleteTime,@NewServerGroupID,@OldServerGroupID FROM ' + @OldDBName + '.dbo.TblCharDelHistory ' +
'SET IDENTITY_INSERT ' + @NewDBName + '.dbo.TblGuildInfo ON ' +
'INSERT INTO ' + @NewDBName + '.dbo.TblGuildInfo (nGuildID,strGuildName,tnGuildLevel,nGuildFame,nGuildGold,tLastLogout,tCheckMember,tGMLastLogout, ' +
'bGuildMark,bRight,tnNationType,tChangeState,OldServerGroupID) ' +
'SELECT *,@OldServerGroupID FROM ' + @OldDBName + '.dbo.TblGuildInfo ' +
'SET IDENTITY_INSERT ' + @NewDBName + '.dbo.TblGuildInfo OFF ' +
'INSERT INTO ' + @NewDBName + '.dbo.TblGuildMember ' +
'SELECT * FROM ' + @OldDBName + '.dbo.TblGuildMember ' +
'INSERT INTO ' + @NewDBName + '.dbo.TblGuildRestoreData ' +
'SELECT nGuildID,strGuildName,nGuildGold,tDeleteTime,NULL,@OldServerGroupID FROM ' + @OldDBName + '.dbo.TblGuildRestoreData ' +
'INSERT INTO ' + @NewDBName + '.dbo.TblUnifiedItemStore1 ' +
'SELECT UID,@OldServerGroupID,Password,Frag,Gold,Store FROM ' + @OldDBName + '.dbo.ItemStore1 ' +
'INSERT INTO ' + @NewDBName + '.dbo.TblUnifiedItemStore2 ' +
'SELECT UID,@OldServerGroupID,Store FROM ' + @OldDBName + '.dbo.ItemStore2 ' +
'INSERT INTO ' + @NewDBName + '.dbo.UserInfo ' +
'SELECT UID,@OldServerGroupID,0,Char1,Char2,Char3,0,0 FROM ' + @OldDBName + '.dbo.UserInfo ' +
'INSERT INTO ' + @NewDBName + '.dbo.TblUnifiedCharList ' +
'SELECT UID,@OldServerGroupID,B.CID,B.CID,B.Name FROM ( ' +
'SELECT UID,Char1 AS CID FROM ' + @NewDBName + '.dbo.UserInfo ' +
'UNION ALL ' +
'SELECT UID,Char2 FROM ' + @NewDBName + '.dbo.UserInfo ' +
'UNION ALL ' +
'SELECT UID,Char3 FROM ' + @NewDBName + '.dbo.UserInfo ) A JOIN ' + @NewDBName + '.dbo.CharInfo B on A.CID = B.CID ' +
'INSERT INTO ' + @NewDBName + '.dbo.UserFirstLoginInfo (UID) ' +
'SELECT DISTINCT UID FROM ' + @NewDBName + '.dbo.UserInfo '
EXEC sp_executesql @String,N'@OldServerGroupID TINYINT,@NewServerGroupID TINYINT',@OldServerGroupID,@NewServerGroupID
GO
EXEC procTransferGameData
@OldDBName= ,
@NewDBName = ,
@OldServerGroupID = ,
@NewServerGroupID =
GO