Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Silkroad Online > SRO Private Server > SRO PServer Guides & Releases
You last visited: Today at 03:31

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Release] "Mordern" _AddNewChar Procedure

Discussion on [Release] "Mordern" _AddNewChar Procedure within the SRO PServer Guides & Releases forum part of the SRO Private Server category.

Reply
 
Old   #1


 
tschulian's Avatar
 
elite*gold: 294
Join Date: Sep 2013
Posts: 1,410
Received Thanks: 635
Post [Release] "Mordern" _AddNewChar Procedure

Dear guys,
since there are plenty of "haw chenge start stat lwl start spawn pont" I decided to release a Template of my used _AddNewChar Proc.

This one is my outsourced one which is stored in a 3rd Database with custum columns. You can easy use it, just remove those custom columns.
Maybe some prefixes are missing (SRO_VT_SHARD.._TABLENAME). I started to add them, but I am to lazy to complete it.

ignore the calls of the procedure at the bottom.

And coz I am not as mainstream as the most:
#smdlb

PHP Code:
USE [SRO_VT_CUSTOM]
GO
/****** Object:  StoredProcedure [dbo].[_AddNewCharModern]    Script Date: 5/11/2016 2:49:16 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO




ALTER PROCEDURE 
[dbo].[_AddNewCharModern]    [MENTION=292919]user[/MENTION]JID INT,
-    [
MENTION=2018236]chars[/MENTION]lot INT,    [MENTION=1326241]REF[/MENTION]CharID INT,
   [
MENTION=3898309]charname[/MENTIONvarchar (64),    [MENTION=2018236]chars[/MENTION]cale tinyINT,    [MENTION=351783]start[/MENTION]RegionID INT,    [MENTION=351783]start[/MENTION]Pos_X real,    [MENTION=351783]start[/MENTION]Pos_Y real,    [MENTION=351783]start[/MENTION]Pos_Z real,    [MENTION=312108]DeFauLt[/MENTION]Teleport INT,    [MENTION=1326241]REF[/MENTION]MailID INT,    [MENTION=1326241]REF[/MENTION]PantsID INT,    [MENTION=1326241]REF[/MENTION]BootsID INT,    [MENTION=1326241]REF[/MENTION]WeaponID INT,    [MENTION=1830489]refs[/MENTION]hield INT,    [MENTION=1895009]durma[/MENTION]il tinyINT,    [MENTION=822124]Durp[/MENTION]ants tinyINT,    [MENTION=2828831]DurB[/MENTION]oots tinyINT,    [MENTION=1319586]dur[/MENTION]Weapon tinyINT,    [MENTION=4821630]durs[/MENTION]hield tinyINT,    [MENTION=312108]DeFauLt[/MENTION]Arrow INT
AS

SET NOCOUNT ON

DECLARE    [MENTION=303108]slot[/MENTIONINT
DECLARE    [MENTION=337901]temp[/MENTIONINT

DECLARE    [MENTION=993253]newchar[/MENTION]ID INT
SET    
[MENTION=993253]newchar[/MENTION]ID 0


-----------------------------------------------------------------------------
-- 
1. Ä³¸¯ÅÍ ½½·Ô ³Ñ¹ö°¡ validÇÑ °ÍÀÎÁö±×¸®°í ºó½½·ÔÀÌ ¸Â´ÂÁö ¸ÕÀú Ã¼Å©ÇÑ´Ù.
-----------------------------------------------------------------------------

-- 
start by novice.
SELECT    [MENTION=337901]temp[/MENTION] = count(CharIDFROM _User WITH (NOLOCKWHERE UserJID =    [MENTION=292919]user[/MENTION]JID

IF     [MENTION=337901]temp[/MENTION] >= 4)
BEGIN
-- ³Ê¹« ¸¹ÀÚ³ª
RETURN -2
END
-- finish by novice.

-----------------------------------------------------------------------------
-- 
2. Ä³¸¯ÅÍ Ãß°¡Çϱâ
-----------------------------------------------------------------------------
IF     [
MENTION=2018236]chars[/MENTION]cale 68) -- 0100 0100 --> 68 ÀÌ´Ù!
BEGIN
-- Ä³¸¯ÅÍ »ý¼º ½ÇÆнºÄÉÀÏ °ªÀÌ ÀÌ»óÇÏ´Ù!
RETURN -
3
END

EXEC    
[MENTION=337901]temp[/MENTION] = _IsExistingCharName   [MENTION=3898309]charname[/MENTION]
IF     [
MENTION=337901]temp[/MENTION] <> 0)
BEGIN
-- À̹̠»ç¿ëÁßÀΠÀ̸§À̶ó´Âµ¥?
RETURN -
4
END

BEGIN TRANSACTION

/**** Default Settings for new Chars ****/
------------------------------------------
declare
 @
ncharRace varchar(2)        = 'CH'
    
[MENTION=5796621]Nstar[/MENTION]tStat smallint        20         -- Start Stat Point,     default: 20 
    
[MENTION=5796621]Nstar[/MENTION]tLvl tinyint            1            -- Start Level,         default: 1
    
[MENTION=5796621]Nstar[/MENTION]tInven int            45        -- Start Inven,         default: 45
    
[MENTION=5796621]Nstar[/MENTION]tGold bigint            0            -- Start Gold
    
[MENTION=5796621]Nstar[/MENTION]tSP int                0            -- Start SkillPoints
    
[MENTION=5796621]Nstar[/MENTION]tHWAN tinyint        0            -- Start HwanLevel        default: 0
    
[MENTION=4773749]nla[/MENTION]testRegion int            23687        
,@nPosX real                1255
,@nPosY real                244.286621
,@nPosZ real                83        
    
[MENTION=2813763]nde[/MENTION]fTeleport int            2096        -- default assigned Teleporter
    
[MENTION=5655415]nrem[/MENTION]ainStat smallint        0        
set    
[MENTION=5655415]nrem[/MENTION]ainStat =     [MENTION=5796621]Nstar[/MENTION]tLvl-1) * 3     --dynmaic Remain Stats based on    [MENTION=5796621]Nstar[/MENTION]tLvl
------------------------------------------
/**** Default Settings for new Chars ****/

-- Àδø½Ã½ºÅÛÀÌ Àû¿ëµÇ¸é¼¸¶Áö¸·¿¡ WorldID¿Í 1°ªÀ» ´õ ³Ö¾î ÁÖ¾ú´Ù!             
INSERT INTO _Char (RefObjIDCharName16ScaleStrengthIntellectLatestRegion,PosXPosYPosZAppointedTeleportInventorySize,
LastLogoutCurLevelMaxLevelRemainGoldRemainStatPointRemainSkillPointHPMPJobLvl_TraderJobLvl_HunterJobLvl_RobberWorldIDHwanLevelCharCreateDate)
VALUES     [MENTION=1326241]REF[/MENTION]CharID,   [MENTION=3898309]charname[/MENTION],    [MENTION=2018236]chars[/MENTION]cale,    [MENTION=5796621]Nstar[/MENTION]tStat,    [MENTION=5796621]Nstar[/MENTION]tStat,    [MENTION=4773749]nla[/MENTION]testRegion, @nPosX, @nPosY, @nPosZ,    [MENTION=2813763]nde[/MENTION]fTeleport,    [MENTION=5796621]Nstar[/MENTION]tInven,
GetDate(),    [MENTION=5796621]Nstar[/MENTION]tLvl,    [MENTION=5796621]Nstar[/MENTION]tLvl,    [MENTION=5796621]Nstar[/MENTION]tGold,    [MENTION=5655415]nrem[/MENTION]ainStat,    [MENTION=5796621]Nstar[/MENTION]tSP200,2001111,    [MENTION=5796621]Nstar[/MENTION]tHWANgetdate())

SET    [MENTION=993253]newchar[/MENTION]ID = @@IDENTITY
IF (@@ERROR <> OR @@ROWCOUNT 0)
BEGIN
-- Ä³¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END


-- start by novice.
-- 
ÀÌÁ¦ Slot ¾È¾´´Ù.. ±×³É Insert ¸¸..
INSERT INTO _User VALUES     [MENTION=292919]user[/MENTION]JID,    [MENTION=993253]newchar[/MENTION]ID)
-- 
finish by novice.


-----------------------------------------------------------------------------
-- 
3-1. Àåºñ ½½·Ô Ã¤¿ì±â
-- [Àκ¥Å丮 ½½·Ô 96°³] + [Àåºñ½½·Ô 13°³] <- Àκ¥Å丮 È®Àå ¼*ºñ½º ÈÄ 48°³¿¡¼96°³·Î Áõ°¡!!!(woos0)
-----------------------------------------------------------------------------
--
PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO _Inventory(CharIDSlotItemID)
SELECT    [MENTION=993253]newchar[/MENTION]IDcnt0
FROM _RefDummySlot with
nolock )
WHERE cnt 109


IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -7
END

--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!

-- 
µðÆúÆ®·Î ¼±ÅÃÇÑ ¾ÆÀÌÅÛÀ» ´Ù½Ã ³Ö¾îÁÖÀÚ...
/* ¿ä·± ¼ø¼*·Î Á¤ÀǵǾî ÀÖ´Ù.
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    [MENTION=1134588]item[/MENTION]ID BIGINT
SET    
[MENTION=1134588]item[/MENTION]ID 0
-- »ó°©
IF     [MENTION=1326241]REF[/MENTION]MailID <> 0)
BEGIN
EXEC    
[MENTION=1134588]item[/MENTION]ID _FN_ADD_INITIAL_EQUIP    [MENTION=993253]newchar[/MENTION]ID1,    [MENTION=1326241]REF[/MENTION]MailID,    [MENTION=1895009]durma[/MENTION]il
IF     [MENTION=1134588]item[/MENTION]ID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -8
END
END
-- ¹ÙÁö
IF     [MENTION=1326241]REF[/MENTION]PantsID <> 0)
BEGIN
EXEC    
[MENTION=1134588]item[/MENTION]ID _FN_ADD_INITIAL_EQUIP    [MENTION=993253]newchar[/MENTION]ID4,    [MENTION=1326241]REF[/MENTION]PantsID,    [MENTION=822124]Durp[/MENTION]ants
IF     [MENTION=1134588]item[/MENTION]ID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -9
END
END
-- Boots
IF     [MENTION=1326241]REF[/MENTION]BootsID <> 0)
BEGIN
EXEC    
[MENTION=1134588]item[/MENTION]ID _FN_ADD_INITIAL_EQUIP    [MENTION=993253]newchar[/MENTION]ID5,    [MENTION=1326241]REF[/MENTION]BootsID,    [MENTION=2828831]DurB[/MENTION]oots
IF     [MENTION=1134588]item[/MENTION]ID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -10
END
END
-- Weapon
IF     [MENTION=1326241]REF[/MENTION]WeaponID <> 0)
BEGIN
EXEC    
[MENTION=1134588]item[/MENTION]ID _FN_ADD_INITIAL_EQUIP    [MENTION=993253]newchar[/MENTION]ID6,    [MENTION=1326241]REF[/MENTION]WeaponID,    [MENTION=1319586]dur[/MENTION]Weapon
IF     [MENTION=1134588]item[/MENTION]ID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -11
END
END
-- ¹æÆÐ
IF     [MENTION=1830489]refs[/MENTION]hield <> 0)
BEGIN
EXEC    
[MENTION=1134588]item[/MENTION]ID _FN_ADD_INITIAL_EQUIP    [MENTION=993253]newchar[/MENTION]ID7,    [MENTION=1830489]refs[/MENTION]hield,    [MENTION=4821630]durs[/MENTION]hield
IF     [MENTION=1134588]item[/MENTION]ID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -12
END
END
-- È¤½Ã default·Î ¼±ÅÃÇÑ ¹«±â°¡ È°À̶ó¸é È*»ì 250°³µéÀÌ È°Åëµµ ÇÔ²² ÁØ´ÙÁÒÄ¡?
IF     [
MENTION=312108]DeFauLt[/MENTION]Arrow <> 0)
BEGIN
EXEC    
[MENTION=1134588]item[/MENTION]ID _FN_ADD_INITIAL_EQUIP    [MENTION=993253]newchar[/MENTION]ID7,    [MENTION=312108]DeFauLt[/MENTION]Arrow250
IF     [MENTION=1134588]item[/MENTION]ID <= 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -13
END
END


-----------------------------------------------------------------------------
-- 
3-2. ¾Æ¹ÙŸ Inventory ½½·Ô Ã¤¿ì±â
-- [¾Æ¹ÙŸ Àκ¥Å丮 ½½·Ô 5°³]
-- 
APPLY_AVATAR_SYSTEMÀÌ Àû¿ëµÇ¸é¼Ãß°¡µÇ´Â ºÎºÐ
-----------------------------------------------------------------------------
--
PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!
INSERT INTO _InventoryForAvatar(CharIDSlotItemID)
SELECT    [MENTION=993253]newchar[/MENTION]IDcnt0
FROM _RefDummySlot with
nolock )
WHERE cnt 5


IF (@@ERROR <> 0)
BEGIN
-- ¾Æ¹ÙŸ Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -14
END
--PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!

-----------------------------------------------------------------------------
-- default 
skill³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
DECLARE    [
MENTION=1575172]Country[/MENTIONtinyINT
EXEC    
[MENTION=1575172]Country[/MENTION] = _GetObjCountry    [MENTION=1326241]REF[/MENTION]CharID

INSERT INTO _CharSkillMastery 
(CharIDMasteryIDLevel)
SELECT    [MENTION=993253]newchar[/MENTION]IDMasteryID0
FROM _RefCharDefault_SkillMastery with
(nolock)
WHERE Race =    [MENTION=1575172]Country[/MENTION] or Race 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -15
END
INSERT INTO _CharSkill 
(CharID,SkillID,Enable)
SELECT    [MENTION=993253]newchar[/MENTION]IDSkillID1
FROM _RefCharDefault_Skill with
(nolock)
WHERE Race =    [MENTION=1575172]Country[/MENTION] or Race 3
IF (@@error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -16
END
-----------------------------------------------------------------------------
-- 
±âº» Äù½ºÆ® ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT INTO _CharQuest (CharIDQuestIDStatusAchievementCountStartTimeEndTimeQuestData1QuestData2)
SELECT    [MENTION=993253]newchar[/MENTION]IDID10getdate(), getdate(), 00
FROM _RefQuest
WHERE CodeName in 
(SELECT CodeName FROM _RefCharDefault_Quest with(nolockWHERE (Race =    [MENTION=1575172]Country[/MENTION] or Race 3) and RequiredLevel and Service 1)
IF (@@
error <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -17
END
-----------------------------------------------------------------------------
-- Static 
Avatar Initial Record ³Ö±â
-----------------------------------------------------------------------------
INSERT INTO _StaticAvatar (CharIDvalues     [MENTION=993253]newchar[/MENTION]ID)
IF (@@
ERROR <> 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -18
END

-----------------------------------------------------------------------------
-- 
Trijob Ã¤¿ö³Ö±â!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTrijob (CharIDJobType, [Level], ExpContributionRewardVALUES     [MENTION=993253]newchar[/MENTION]ID01000)
IF (@@
ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -19
END

-----------------------------------------------------------------------------
-- 
CharList¿¡ ID ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT _CharNameList (CharName16CharID VALUES    [MENTION=3898309]charname[/MENTION],    [MENTION=993253]newchar[/MENTION]ID)

-- 
Quick Slot Á¤º¸ ÀúÀå¿ë!!!
exec _AddNewClientConfig    [MENTION=993253]newchar[/MENTION]ID -- by novice...... for saving client configurations...

-- 
ADD Chronyc.net START ITEMS  
exec SRO_VT_CUSTOM
..sys_addStartItems   [MENTION=3898309]charname[/MENTION]

-- 
ADD Chronyc.net START Quests
exec SRO_VT_CUSTOM
..sys_addStartQuests   [MENTION=3898309]charname[/MENTION], @ncharRace




COMMIT TRANSACTION

RETURN    [MENTION=993253]newchar[/MENTION]ID 

Due to a converting Feature of EPVPERS here the Code posted at pastebin.


aaaaand attached as a .sql File
Attached Files
File Type: txt _AddNewCharModern.txt (9.5 KB, 96 views)
tschulian is offline  
Thanks
5 Users
Old 05/13/2016, 01:25   #2
Chat Killer In Duty


 
PortalDark's Avatar
 
elite*gold: 5
Join Date: May 2008
Posts: 16,315
Received Thanks: 6,471
I dont understand the issue

Could you please show me what's exactly your problem?
PortalDark is online now  
Thanks
2 Users
Old 05/13/2016, 09:04   #3


 
tschulian's Avatar
 
elite*gold: 294
Join Date: Sep 2013
Posts: 1,410
Received Thanks: 635
Quote:
Originally Posted by PortalDark View Post
I dont understand the issue

Could you please show me what's exactly your problem?
@
tschulian is offline  
Old 05/13/2016, 11:51   #4
 
first_master's Avatar
 
elite*gold: 0
Join Date: Apr 2014
Posts: 25
Received Thanks: 8
Good JOB
first_master is offline  
Old 05/14/2016, 12:37   #5
 
im need hack's Avatar
 
elite*gold: 0
Join Date: Jul 2011
Posts: 77
Received Thanks: 9
screen shot ?
im need hack is offline  
Old 05/16/2016, 06:02   #6
Chat Killer In Duty


 
PortalDark's Avatar
 
elite*gold: 5
Join Date: May 2008
Posts: 16,315
Received Thanks: 6,471
Quote:
Originally Posted by tschulian View Post
@
there is a "no parse" function on the posting form

[NOPARSE][/NOPARSE]
PortalDark is online now  
Thanks
1 User
Old 05/20/2016, 09:42   #7


 
tschulian's Avatar
 
elite*gold: 294
Join Date: Sep 2013
Posts: 1,410
Received Thanks: 635
Quote:
Originally Posted by PortalDark View Post
there is a "no parse" function on the posting form

[NOPARSE][/NOPARSE]
But this does not work when I use noparse than the code tag.
tschulian is offline  
Old 05/20/2016, 13:36   #8
Chat Killer In Duty


 
PortalDark's Avatar
 
elite*gold: 5
Join Date: May 2008
Posts: 16,315
Received Thanks: 6,471
Quote:
Originally Posted by tschulian View Post
But this does not work when I use noparse than the code tag.
No, try to use the noparse inside the code tags, for each of the @mentions

Sent from my SAMSUNG-SGH-I337 using Tapatalk
PortalDark is online now  
Old 05/20/2016, 14:53   #9


 
tschulian's Avatar
 
elite*gold: 294
Join Date: Sep 2013
Posts: 1,410
Received Thanks: 635
NOPARSE
@CharID

-----------------------------

NOPARSE in CODE
Code:
[NOPARSE]@CharID[/NOPARSE]
@ this doesnt really help ...
tschulian is offline  
Old 05/22/2016, 22:33   #10
Chat Killer In Duty


 
PortalDark's Avatar
 
elite*gold: 5
Join Date: May 2008
Posts: 16,315
Received Thanks: 6,471
Edit: nope, it is a bug

the admins are aware
PortalDark is online now  
Old 05/23/2016, 01:45   #11
 
B1Q's Avatar
 
elite*gold: 350
Join Date: Aug 2015
Posts: 1,999
Received Thanks: 1,185
Quote:
Originally Posted by PortalDark View Post
fail...
B1Q is offline  

Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.