Çok eski bir web tarayıcısı kullanıyorsunuz. Bu veya diğer siteleri görüntülemekte sorunlar yaşayabilirsiniz..
Tarayıcınızı güncellemeli veya alternatif bir tarayıcı kullanmalısınız.
Tarayıcınızı güncellemeli veya alternatif bir tarayıcı kullanmalısınız.
iSRO-R Çözüldü addnewchar sorunu isro files
- Konuyu Başlatan serkangny
- Başlangıç tarihi
Kontrol etmiştim. Zaten her iki yerde de itemleri göremeyince forumdan destek almak istedim.item chest kontol edermisn mini map alt
Üst üste post gönderildiği için tek mesajda birleştirildi:
USE [SILKROAD_R_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar_Channel] Script Date: 6.05.2025 09:21:25 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[_AddNewChar_Channel]
@UserJID INT,
@RefCharID INT,
@CharName VARCHAR(64),
@CharScale TINYINT,
@StartRegionID INT,
@StartPos_X REAL,
@StartPos_Y REAL,
@StartPos_Z REAL,
@DefaultTeleport INT,
@RefMailID INT,
@RefPantsID INT,
@RefBootsID INT,
@RefWeaponID INT,
@RefShield INT,
@DurMail TINYINT,
@DurPants TINYINT,
@DurBoots TINYINT,
@DurWeapon TINYINT,
@DurShield TINYINT,
@DefaultArrow INT
-- #ifdef CHANNELING_LOGIN_SERVICE
,@LoginType TINYINT
-- #endif //CHANNELING_LOGIN_SERVICE
AS
DECLARE @NewCharID INT
-- SET NOCOUNT ON --Disabled requested by muhab or he will die xD
EXEC @NewCharID = dbo._AddNewChar
@UserJID
,@RefCharID
,@CharName
,@CharScale
,@StartRegionID
,@StartPos_X
,@StartPos_Y
,@StartPos_Z
,@DefaultTeleport
,@RefMailID
,@RefPantsID
,@RefBootsID
,@RefWeaponID
,@RefShield
,@DurMail
,@DurPants
,@DurBoots
,@DurWeapon
,@DurShield
,@DefaultArrow
/*
IF (@LoginType = 2) -- JC Planet
BEGIN
EXEC [_ADD_SOMETHING_FOR_JCPLANET] @NewCharID, @RefWeaponID
END
-- #endif CHANNELING_LOGIN_SERVICE
*/
RETURN @NewCharID
Üst üste post gönderildiği için tek mesajda birleştirildi:
USE [SILKROAD_R_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 6.05.2025 09:21:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--NEW
ALTER PROCEDURE [dbo].[_AddNewChar]
@UserJID INT,
@RefCharID INT,
@CharName VARCHAR(64),
@CharScale TINYINT,
@StartRegionID INT,
@StartPos_X REAL,
@StartPos_Y REAL,
@StartPos_Z REAL,
@DefaultTeleport INT,
@RefMailID INT,
@RefPantsID INT,
@RefBootsID INT,
@RefWeaponID INT,
@RefShield INT,
@DurMail TINYINT,
@DurPants TINYINT,
@DurBoots TINYINT,
@DurWeapon TINYINT,
@DurShield TINYINT,
@DefaultArrow INT
AS
SET NOCOUNT ON
DECLARE @temp INT
-----------------------------------------------------------------------------
-- 1. 선 체크!
-----------------------------------------------------------------------------
SELECT @temp = count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @UserJID
IF (@temp >= 8)
BEGIN
-- 너무 많자나
RETURN -2
END
IF (@CharScale > 68) -- 0100 0100 --> 68 이다!
BEGIN
-- 캐릭터 생성 실패! 스케일 값이 이상하다!
RETURN -3
END
EXEC @temp = _IsExistingCharName @CharName
IF (@temp <> 0)
BEGIN
-- 이미 사용중인 이름이라는데?
RETURN -4
END
DECLARE @IsMale TINYINT
SELECT @IsMale = ROCH.CharGender
FROM _RefObjChar AS ROCH WITH (NOLOCK)
INNER JOIN _RefObjCommon AS ROC WITH (NOLOCK) ON ROC.Link = ROCH.ID AND ROC.ID = @RefCharID
IF @@ROWCOUNT = 0 OR @@ERROR <> 0 OR @IsMale IS NULL
BEGIN
RETURN -24
END
DECLARE @NewCharID INT
SET @NewCharID = 0
BEGIN TRANSACTION
-----------------------------------------------------------------------------
-- 2. 캐릭터 추가하기
-----------------------------------------------------------------------------
INSERT INTO _Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,
LastLogout, CurLevel, MaxLevel, RemainGold, RemainStatPoint, RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID)
VALUES (@RefCharID, @CharName, @CharScale, 20, 20, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, @DefaultTeleport, 45,
CONVERT(SMALLDATETIME, '2079-01-06'), 1, 1, 0, 0, 100000, 200,200, 1, 1, 1, 1)
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- 캐릭터 생성 실패!
ROLLBACK TRANSACTION
RETURN -5
END
INSERT INTO _User VALUES (@UserJID, @NewCharID)
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- 유저 테이블에 추가 실패!
ROLLBACK TRANSACTION
RETURN -6
END
-----------------------------------------------------------------------------
-- 3-1. 장비 슬롯 채우기
-----------------------------------------------------------------------------
-- 디폴트로 선택한 아이템을 다시 넣어주자...
/* 요런 순서로 정의되어 있다.
0: EQUIP_SLOT_HELM
1: EQUIP_SLOT_MAIL,
2: EQUIP_SLOT_SHOULDERGUARD,
3: EQUIP_SLOT_GAUNTLET,
4: EQUIP_SLOT_PANTS,
5: EQUIP_SLOT_BOOTS,
6: EQUIP_SLOT_WEAPON,
7: EQUIP_SLOT_SHIELD or ARROW,
8: EQUIP_SLOT_EARRING,
9: EQUIP_SLOT_NECKLACE,
10: EQUIP_SLOT_L_RING,
11: EQUIP_SLOT_R_RING,
*/
DECLARE @ItemID BIGINT
SET @ItemID = 0
-- 상갑
IF (@RefMailID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 1, @RefMailID, @DurMail
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- 바지
IF (@RefPantsID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 4, @RefPantsID, @DurPants
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF (@RefBootsID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 5, @RefBootsID, @DurBoots
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF (@RefWeaponID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 6, @RefWeaponID, @DurWeapon
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
-- 방패
IF (@RefShield <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @RefShield, @DurShield
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -12
END
END
-- 혹시 default로 선택한 무기가 활이라면 화살 250개들이 활통도 함께 준다. 죠치?
IF (@DefaultArrow <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @DefaultArrow, 250
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -13
END
END
-----------------------------------------------------------------------------
-- default skill 넣어주기
-----------------------------------------------------------------------------
DECLARE @country TINYINT
EXEC @country = _GetObjCountry @RefCharID
INSERT INTO _CharSkillMastery (CharID, MasteryID, Level)
SELECT @NewCharID, MasteryID, 0
FROM _RefCharDefault_SkillMastery WITH (NOLOCK)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO _CharSkill (CharID,SkillID,Enable)
SELECT @NewCharID, SkillID, 1
FROM _RefCharDefault_Skill WITH (NOLOCK)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- default Quest 넣어주기
-----------------------------------------------------------------------------
INSERT INTO _CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, RQ.ID, 1, 0, getdate(), getdate(), 0, 0
FROM _RefQuest AS RQ WITH (NOLOCK)
JOIN _RefCharDefault_Quest AS RDQ WITH (NOLOCK)
ON RDQ.CodeName = RQ.CodeName AND ((RDQ.Race = @country or RDQ.Race = 3) and RDQ.RequiredLevel = 1 and RDQ.Service = 1)
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static Avatar Initial Record 넣기
-----------------------------------------------------------------------------
INSERT INTO _StaticAvatar(CharID) values(@NewCharID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob 채워넣기!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- 인벤토리 생성 실패!
ROLLBACK TRANSACTION
RETURN -19
END
-- #ifdef NEW_CHARACTER_ITEM_SUPPORT
-- 새로운 아이템 지급
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_COS_P_PINKPIG_SCROLL_BASIC',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_REVERSE_RETURN_SCROLL_BASIC',11,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_SPEED_UP_BASIC',50,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_SCROLL_RETURN_03_BASIC',50,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_LEVEL_TOKEN_01',1500,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_LEVEL_TOKEN_02',1500,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_LEVEL_TOKEN_01',1500,1
-- 반드시 아이템 지급 목록을 확인 하자..
-- 반드시 아이템 지급 목록을 확인 하자..
-- 반드시 아이템 지급 목록을 확인 하자..
-- 나스룬 아이템 지급을 할때만 아래 쿼리 실행
DECLARE @CharGender tinyINT
SELECT @CharGender = CharGender FROM _RefObjCommon AS RO WITH(NOLOCK)
JOIN _RefObjChar AS RC WITH(NOLOCK) ON RO.Link = RC.ID
WHERE RO.ID = @RefCharID
IF( 0 = @CharGender )
BEGIN
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_AVATAR_W_NASRUN_BASIC',1,0
END
ELSE IF( 1 = @CharGender )
BEGIN
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_AVATAR_M_NASRUN_BASIC',1,0
END
-- #ifdef REMOVE_DEFAULT_FRIEND_GROUP_IN_DATABASE
-- 더이상 0번 default 친구그룹은 추가하지 않는다.
-- #else REMOVE_DEFAULT_FRIEND_GROUP_IN_DATABASE
-----------------------------------------------------------------------------
-- 친구그룹 생성 추가
-----------------------------------------------------------------------------
--INSERT _FriendGroup Values (@NewCharID, 0, 'N/A')
--IF (@@ERROR <> 0)
--BEGIN
-- ROLLBACK TRANSACTION
-- RETURN -20 -- 그룹추가 실패!
--END
-- #endif REMOVE_DEFAULT_FRIEND_GROUP_IN_DATABASE
-----------------------------------------------------------------------------
-- TradeConflictJob 채워넣기!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTradeConflictJob VALUES (@NewCharID, GetDate(), 1, 0, 0, 0, 0, 0 ,0)
IF (@@ERROR <> 0)
BEGIN
-- 무역과 직업대립 데이터 넣기 실패...!
ROLLBACK TRANSACTION
RETURN -22
END
-----------------------------------------------------------------------------
-- NewTrade 채워넣기!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharNewTrade VALUES (@NewCharID, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- 무역과 직업대립 데이터 넣기 실패...!
ROLLBACK TRANSACTION
RETURN -23
END
-----------------------------------------------------------------------------
-- ADD SILK IN BETA
-----------------------------------------------------------------------------
DECLARE @PortalJID INT
SET @PortalJID = (SELECT PortalJID FROM [SILKROAD_R_ACCOUNT].[dbo].[TB_User] WHERE JID = @UserJID)
EXEC SILKROAD_R_ACCOUNT.._Rigid_AddSilk_By_PortalJID_NEW @PortalJID, 3, 1
-----------------------------------------------------------------------------
-- CharList에 ID 넣어주기
-----------------------------------------------------------------------------
INSERT _CharNameList VALUES(@CharName, @NewCharID)
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_SCROLL_RETURN_NEWBIE_01',20,1
-- Quick Slot Á¤º¸ ÀúÀå¿ë!!!
exec _AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
RETURN @NewCharID
Üst üste post gönderildiği için tek mesajda birleştirildi:
Ayarlar bu şekilde. Yardımcı olabilir misiniz ?
Önce Yedeklerini Al Sonra DenermisinKontrol etmiştim. Zaten her iki yerde de itemleri göremeyince forumdan destek almak istedim.
Üst üste post gönderildiği için tek mesajda birleştirildi:
USE [SILKROAD_R_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar_Channel] Script Date: 6.05.2025 09:21:25 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[_AddNewChar_Channel]
@UserJID INT,
@RefCharID INT,
@CharName VARCHAR(64),
@CharScale TINYINT,
@StartRegionID INT,
@StartPos_X REAL,
@StartPos_Y REAL,
@StartPos_Z REAL,
@DefaultTeleport INT,
@RefMailID INT,
@RefPantsID INT,
@RefBootsID INT,
@RefWeaponID INT,
@RefShield INT,
@DurMail TINYINT,
@DurPants TINYINT,
@DurBoots TINYINT,
@DurWeapon TINYINT,
@DurShield TINYINT,
@DefaultArrow INT
-- #ifdef CHANNELING_LOGIN_SERVICE
,@LoginType TINYINT
-- #endif //CHANNELING_LOGIN_SERVICE
AS
DECLARE @NewCharID INT
-- SET NOCOUNT ON --Disabled requested by muhab or he will die xD
EXEC @NewCharID = dbo._AddNewChar
@UserJID
,@RefCharID
,@CharName
,@CharScale
,@StartRegionID
,@StartPos_X
,@StartPos_Y
,@StartPos_Z
,@DefaultTeleport
,@RefMailID
,@RefPantsID
,@RefBootsID
,@RefWeaponID
,@RefShield
,@DurMail
,@DurPants
,@DurBoots
,@DurWeapon
,@DurShield
,@DefaultArrow
/*
IF (@LoginType = 2) -- JC Planet
BEGIN
EXEC [_ADD_SOMETHING_FOR_JCPLANET] @NewCharID, @RefWeaponID
END
-- #endif CHANNELING_LOGIN_SERVICE
*/
RETURN @NewCharID
Üst üste post gönderildiği için tek mesajda birleştirildi:
USE [SILKROAD_R_SHARD]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 6.05.2025 09:21:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--NEW
ALTER PROCEDURE [dbo].[_AddNewChar]
@UserJID INT,
@RefCharID INT,
@CharName VARCHAR(64),
@CharScale TINYINT,
@StartRegionID INT,
@StartPos_X REAL,
@StartPos_Y REAL,
@StartPos_Z REAL,
@DefaultTeleport INT,
@RefMailID INT,
@RefPantsID INT,
@RefBootsID INT,
@RefWeaponID INT,
@RefShield INT,
@DurMail TINYINT,
@DurPants TINYINT,
@DurBoots TINYINT,
@DurWeapon TINYINT,
@DurShield TINYINT,
@DefaultArrow INT
AS
SET NOCOUNT ON
DECLARE @temp INT
-----------------------------------------------------------------------------
-- 1. 선 체크!
-----------------------------------------------------------------------------
SELECT @temp = count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @UserJID
IF (@temp >= 8)
BEGIN
-- 너무 많자나
RETURN -2
END
IF (@CharScale > 68) -- 0100 0100 --> 68 이다!
BEGIN
-- 캐릭터 생성 실패! 스케일 값이 이상하다!
RETURN -3
END
EXEC @temp = _IsExistingCharName @CharName
IF (@temp <> 0)
BEGIN
-- 이미 사용중인 이름이라는데?
RETURN -4
END
DECLARE @IsMale TINYINT
SELECT @IsMale = ROCH.CharGender
FROM _RefObjChar AS ROCH WITH (NOLOCK)
INNER JOIN _RefObjCommon AS ROC WITH (NOLOCK) ON ROC.Link = ROCH.ID AND ROC.ID = @RefCharID
IF @@ROWCOUNT = 0 OR @@ERROR <> 0 OR @IsMale IS NULL
BEGIN
RETURN -24
END
DECLARE @NewCharID INT
SET @NewCharID = 0
BEGIN TRANSACTION
-----------------------------------------------------------------------------
-- 2. 캐릭터 추가하기
-----------------------------------------------------------------------------
INSERT INTO _Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,
LastLogout, CurLevel, MaxLevel, RemainGold, RemainStatPoint, RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID)
VALUES (@RefCharID, @CharName, @CharScale, 20, 20, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, @DefaultTeleport, 45,
CONVERT(SMALLDATETIME, '2079-01-06'), 1, 1, 0, 0, 100000, 200,200, 1, 1, 1, 1)
SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- 캐릭터 생성 실패!
ROLLBACK TRANSACTION
RETURN -5
END
INSERT INTO _User VALUES (@UserJID, @NewCharID)
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- 유저 테이블에 추가 실패!
ROLLBACK TRANSACTION
RETURN -6
END
-----------------------------------------------------------------------------
-- 3-1. 장비 슬롯 채우기
-----------------------------------------------------------------------------
-- 디폴트로 선택한 아이템을 다시 넣어주자...
/* 요런 순서로 정의되어 있다.
0: EQUIP_SLOT_HELM
1: EQUIP_SLOT_MAIL,
2: EQUIP_SLOT_SHOULDERGUARD,
3: EQUIP_SLOT_GAUNTLET,
4: EQUIP_SLOT_PANTS,
5: EQUIP_SLOT_BOOTS,
6: EQUIP_SLOT_WEAPON,
7: EQUIP_SLOT_SHIELD or ARROW,
8: EQUIP_SLOT_EARRING,
9: EQUIP_SLOT_NECKLACE,
10: EQUIP_SLOT_L_RING,
11: EQUIP_SLOT_R_RING,
*/
DECLARE @ItemID BIGINT
SET @ItemID = 0
-- 상갑
IF (@RefMailID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 1, @RefMailID, @DurMail
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- 바지
IF (@RefPantsID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 4, @RefPantsID, @DurPants
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF (@RefBootsID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 5, @RefBootsID, @DurBoots
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF (@RefWeaponID <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 6, @RefWeaponID, @DurWeapon
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
-- 방패
IF (@RefShield <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @RefShield, @DurShield
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -12
END
END
-- 혹시 default로 선택한 무기가 활이라면 화살 250개들이 활통도 함께 준다. 죠치?
IF (@DefaultArrow <> 0)
BEGIN
EXEC @ItemID = _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @DefaultArrow, 250
IF (@ItemID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -13
END
END
-----------------------------------------------------------------------------
-- default skill 넣어주기
-----------------------------------------------------------------------------
DECLARE @country TINYINT
EXEC @country = _GetObjCountry @RefCharID
INSERT INTO _CharSkillMastery (CharID, MasteryID, Level)
SELECT @NewCharID, MasteryID, 0
FROM _RefCharDefault_SkillMastery WITH (NOLOCK)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO _CharSkill (CharID,SkillID,Enable)
SELECT @NewCharID, SkillID, 1
FROM _RefCharDefault_Skill WITH (NOLOCK)
WHERE Race = @country or Race = 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- default Quest 넣어주기
-----------------------------------------------------------------------------
INSERT INTO _CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, RQ.ID, 1, 0, getdate(), getdate(), 0, 0
FROM _RefQuest AS RQ WITH (NOLOCK)
JOIN _RefCharDefault_Quest AS RDQ WITH (NOLOCK)
ON RDQ.CodeName = RQ.CodeName AND ((RDQ.Race = @country or RDQ.Race = 3) and RDQ.RequiredLevel = 1 and RDQ.Service = 1)
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static Avatar Initial Record 넣기
-----------------------------------------------------------------------------
INSERT INTO _StaticAvatar(CharID) values(@NewCharID)
IF (@@ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END
-----------------------------------------------------------------------------
-- Trijob 채워넣기!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- 인벤토리 생성 실패!
ROLLBACK TRANSACTION
RETURN -19
END
-- #ifdef NEW_CHARACTER_ITEM_SUPPORT
-- 새로운 아이템 지급
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_COS_P_PINKPIG_SCROLL_BASIC',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_REVERSE_RETURN_SCROLL_BASIC',11,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_SPEED_UP_BASIC',50,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_SCROLL_RETURN_03_BASIC',50,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_LEVEL_TOKEN_01',1500,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_LEVEL_TOKEN_02',1500,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_LEVEL_TOKEN_01',1500,1
-- 반드시 아이템 지급 목록을 확인 하자..
-- 반드시 아이템 지급 목록을 확인 하자..
-- 반드시 아이템 지급 목록을 확인 하자..
-- 나스룬 아이템 지급을 할때만 아래 쿼리 실행
DECLARE @CharGender tinyINT
SELECT @CharGender = CharGender FROM _RefObjCommon AS RO WITH(NOLOCK)
JOIN _RefObjChar AS RC WITH(NOLOCK) ON RO.Link = RC.ID
WHERE RO.ID = @RefCharID
IF( 0 = @CharGender )
BEGIN
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_AVATAR_W_NASRUN_BASIC',1,0
END
ELSE IF( 1 = @CharGender )
BEGIN
exec _ADD_ITEM_EXTERN @CharName,'ITEM_EVENT_AVATAR_M_NASRUN_BASIC',1,0
END
-- #ifdef REMOVE_DEFAULT_FRIEND_GROUP_IN_DATABASE
-- 더이상 0번 default 친구그룹은 추가하지 않는다.
-- #else REMOVE_DEFAULT_FRIEND_GROUP_IN_DATABASE
-----------------------------------------------------------------------------
-- 친구그룹 생성 추가
-----------------------------------------------------------------------------
--INSERT _FriendGroup Values (@NewCharID, 0, 'N/A')
--IF (@@ERROR <> 0)
--BEGIN
-- ROLLBACK TRANSACTION
-- RETURN -20 -- 그룹추가 실패!
--END
-- #endif REMOVE_DEFAULT_FRIEND_GROUP_IN_DATABASE
-----------------------------------------------------------------------------
-- TradeConflictJob 채워넣기!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTradeConflictJob VALUES (@NewCharID, GetDate(), 1, 0, 0, 0, 0, 0 ,0)
IF (@@ERROR <> 0)
BEGIN
-- 무역과 직업대립 데이터 넣기 실패...!
ROLLBACK TRANSACTION
RETURN -22
END
-----------------------------------------------------------------------------
-- NewTrade 채워넣기!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharNewTrade VALUES (@NewCharID, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- 무역과 직업대립 데이터 넣기 실패...!
ROLLBACK TRANSACTION
RETURN -23
END
-----------------------------------------------------------------------------
-- ADD SILK IN BETA
-----------------------------------------------------------------------------
DECLARE @PortalJID INT
SET @PortalJID = (SELECT PortalJID FROM [SILKROAD_R_ACCOUNT].[dbo].[TB_User] WHERE JID = @UserJID)
EXEC SILKROAD_R_ACCOUNT.._Rigid_AddSilk_By_PortalJID_NEW @PortalJID, 3, 1
-----------------------------------------------------------------------------
-- CharList에 ID 넣어주기
-----------------------------------------------------------------------------
INSERT _CharNameList VALUES(@CharName, @NewCharID)
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_SCROLL_RETURN_NEWBIE_01',20,1
-- Quick Slot Á¤º¸ ÀúÀå¿ë!!!
exec _AddNewClientConfig @NewCharID -- by novice...... for saving client configurations...
COMMIT TRANSACTION
RETURN @NewCharID
Üst üste post gönderildiği için tek mesajda birleştirildi:
Ayarlar bu şekilde. Yardımcı olabilir misiniz ?
Önce Yedeklerini Al Sonra Denermisin
bu şekildeÖnce Yedeklerini Al Sonra Denermisin
Üst üste post gönderildiği için tek mesajda birleştirildi:
hangi Database bu merak ettim neden olmuyor
teşekkürler sorun çözülmüştürÖnce Yedeklerini Al Sonra Denermisin
Bu konuyu görüntüleyen kullanıcılar
Toplam: 1 (Kullanıcı: 0, ziyaretçi: 1)
Benzer konular
- Cevaplar
- 4
- Görüntüleme
- 205
- Cevaplar
- 1
- Görüntüleme
- 859
Yeni başlayanlar için
Yeni bir karakter eklemek için AddNewChar nasıl kullanılır?
- Cevaplar
- 7
- Görüntüleme
- 386
- Cevaplar
- 30
- Görüntüleme
- 669
- Cevaplar
- 2
- Görüntüleme
- 993
