Register for your free account! | Forgot your password?

You last visited: Today at 07:39

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

Advertisement



Silk Script

Discussion on Silk Script within the SRO PServer Guides & Releases forum part of the SRO Private Server category.

Reply
 
Old   #1
 
b0ykoe's Avatar
 
elite*gold: 1046
Join Date: Sep 2011
Posts: 791
Received Thanks: 252
Silk Script

Hey EPVP

ENG:

I am Searching for a Silk Script for the Vsro Files.
The script should do that when a Member create a account that be 50000 Silks on the account.

Can anyone Help me?

GER:
Ich suche ein Silk Script für die Vsro Files,
der Script sollte es übernehmen wenn jemand sich neu Registriert das 50000 Silks direkt auf dem Account sind.

Kann mir wer Helfen?
b0ykoe is offline  
Old 11/16/2011, 18:01   #2
 
✗EpicSoul✗'s Avatar
 
elite*gold: 0
Join Date: Jul 2011
Posts: 1,189
Received Thanks: 531
Try this..
PHP Code:
<?php

 
require_once('_inc/security.class.php');
 require_once(
'_inc/config.php');

 if(!isset(
$_POST['submit']))
 {
 echo 
"<table border='1'>
 <form method='post'>
 <td>Username</td><td><input type='text' name='username' maxlength='16'></td><tr/>
 <td>Password[1]</td><td><input type='password' name='pw1' maxlength='32'></td><tr/>
 <td>Password[2]</td><td><input type='password' name='pw2' maxlength='32'></td><tr/>
 <td></td><td><input type='submit' name='submit' value='Register'></td>
 </form>
 </table>"
;
 }
 else
 {
 if(
strlen($_POST['username']) < 3$msg[] = "Username too short";
 if(
strlen($_POST['username']) > 16)$msg[] = "Username too long";
 if(
strlen($_POST['pw1']) < 6$msg[] = "Password [1] too short";
 if(
strlen($_POST['pw1']) > 32)$msg[] = "Password [1] too long";
 if(
strlen($_POST['pw2']) < 6$msg[] = "Password [2] too short";
 if(
strlen($_POST['pw']) > 32$msg[] = "Password [2] too long";
 if(
$_POST['pw1'] != $_POST['pw2']) $msg[] = "Passwords are not the same";

 
$sec = new security();

 if(
$sec->is_secure($_POST['username']) == false$msg[] = "Username contains forbidden symbols";
 if(
$sec->is_secure($_POST['pw1']) == false$msg[] = "Password [1] contains forbidden symbols";
 if(
$sec->is_secure($_POST['pw2']) == false$msg[] = "Password [2] contains forbidden symbols";

 if(
count($msg) > 0)
 {
 for(
$i 0$i count($msg); $i++)
 {
 echo 
$msg[$i]."<br/>";
 }
 return;
 }
 else
 {
 
//checking damn mssql stuff
 
$accountExists mssql_num_rows(mssql_query("select StrUserID from TB_User where StrUserID='$_POST[username]'"));
 if(
$accountExists 0) echo "Account with such username already exists<br/>";
 else
 {
 
$pwd md5($_POST['pw1']);
 
mssql_query("insert into TB_User(StrUserID,password,sec_primary,sec_seconda ry) values('$_POST[username]','$pwd','3','3')");
 echo 
"Account successfully created<br/>";

 
$sql mssql_query("SELECT * FROM TB_User WHERE StrUserId='$_POST[username]'");
 
$row mssql_fetch_array($sql);
 
$silk mssql_query("INSERT INTO SK_Silk(JID,silk_own,silk_gift,silk_point) VALUES ('$row[JID]','SILK VALUE HERE','4000','0');

 }
 }


 }
 ?>
✗EpicSoul✗ is offline  
Old 11/16/2011, 18:14   #3
 
b0ykoe's Avatar
 
elite*gold: 1046
Join Date: Sep 2011
Posts: 791
Received Thanks: 252
Dont work, i use this Page

Quote:
<?php
include("config.php");
$connect = odbc_connect("Driver={SQL Server};Server={$host}; Database={$dbname}", $user, $pass) or die("Can't connect the MSSQL server.");

?>
<html>
<head>
<title>Silkroad Registration</title>
</head>
<body>


<table width='350'>
<form action='reg.php?act=regis' method='POST'>
<tr>
<td><b><font size="5" color="white">Silkroad Registration</font></b></td><br><br>
</tr>
<tr>
</tr>
<tr>
<td width='50px'><input value='Username' type='text' name='username'></td>
</tr>
<tr>
<td width='50px'><input value='password' type='password' name='password'></td>
</tr>
<tr>
<td width='50px'><input value='Player Name' type='text' name='playername'></td>
</tr>
<tr>
<td width='50px'><input value='E-Mail' type='text' name='email'></td>
</tr>
<tr>
<td width='50px'><input type='submit' value='Register'></td>
</tr>


<div style="position:relative; top:-30px; left:135px;">
<a href="recover.php">Forgot Account ID/Pass?</a>
</div>

<?php
$ip = ($_SERVER['REMOTE_ADDR']);

if (isset($_GET['act']) AND $_GET['act'] == "regis")
{
$regdate = date("Y-m-d H:i:s");

function anti_injection($sql) {
$sql = preg_replace(sql_regcase("/(from|select|insert|delete|where|'|\"|drop table|show tables|#|\*|--|\\\\)/"),"",$sql);
$sql = trim($sql);
$sql = strip_tags($sql);
$sql = addslashes($sql);
return $sql;
}
$username=anti_injection($_POST['username']);
$password=md5($_POST['password']);
$password2=anti_injection($_POST['password']);
$playername=anti_injection($_POST['playername']);
$email=anti_injection($_POST['email']);
if (!$_POST['username'] )
{
echo "<script>alert('Username is empty');location.href='reg.php';</script>";
die();
}
else
if (!$_POST['password'] )
{
echo "<script>alert('Password is empty');location.href='reg.php';</script>";
die();
}
else
if (!$_POST['playername'] )
{
echo "<script>alert('player name is empty');location.href='reg.php';</script>";
die();
}
else
if (!$_POST['email'] )
{
echo "<script>alert('E-Mail is empty');location.href='reg.php';</script>";
die();
}

$query = odbc_exec($connect, "SELECT StrUserID FROM TB_User WHERE StrUserID = '$username'");

$existing_users = odbc_num_rows($query);
if($existing_users != 0) {

echo "<script>alert('Username already taken!');location.href='reg.php';</script>";
die();
} else

odbc_exec($connect, "INSERT INTO TB_User (StrUserID, password, Name, Email, sec_primary, sec_content, AccPlayTime, LatestUpdateTime_ToPlayTime) VALUES ('$username', '$password', '$playername', '$email', '3', '3', '0', '0')");

echo "<script>alert('Account Registration Successful! \\nUsername: $username \\nPassword: $password2');location.href='$index';</script>";
}
?>

<br/>
</body>
<tr>
</tr>
</table>
</html>
b0ykoe is offline  
Old 11/16/2011, 18:32   #4
 
elite*gold: 0
Join Date: Feb 2011
Posts: 112
Received Thanks: 199
You could make it easier,
There is a procedure in SRO_SHARD_DB called dbo.AddNewChar
Open this procedure and add this at the bottom:

Update SRO_ACCOUNT_DB.dbo.SK_Silk SET silk_own = '50000' where UserJID = @UserJID

Deutsch:
Ein noch einfacher Weg ist, es durch die Prozeduren zu machen.
Gehe zu SRO_SHARD_DB -> Programmability -> Stored Procedures -> [dbo].[_AddNewChar]
Öffne sie (Rechtsklick, Modify) , füge diesen code einfach am ende der prozedur hinzu:

Update SRO_ACCOUNT_DB.dbo.SK_Silk SET silk_own = '50000' where UserJID = @UserJID

Dann klick auf Execute.

Leere accounts haben dann keine Silks, aber sobald jemand einen char erstellt bekommt er automatisch 50k silks.
evelknievel10 is offline  
Old 11/16/2011, 18:42   #5
 
b0ykoe's Avatar
 
elite*gold: 1046
Join Date: Sep 2011
Posts: 791
Received Thanks: 252
Quote:
Originally Posted by evelknievel10 View Post
You could make it easier,
There is a procedure in SRO_SHARD_DB called dbo.AddNewChar
Open this procedure and add this at the bottom:

Update SRO_ACCOUNT_DB.dbo.SK_Silk SET silk_own = '50000' where UserJID = @UserJID

Deutsch:
Ein noch einfacher Weg ist, es durch die Prozeduren zu machen.
Gehe zu SRO_SHARD_DB -> Programmability -> Stored Procedures -> [dbo].[_AddNewChar]
Öffne sie (Rechtsklick, Modify) , füge diesen code einfach am ende der prozedur hinzu:

Update SRO_ACCOUNT_DB.dbo.SK_Silk SET silk_own = '50000' where UserJID = @UserJID

Dann klick auf Execute.

Leere accounts haben dann keine Silks, aber sobald jemand einen char erstellt bekommt er automatisch 50k silks.
Ger:
Erstmal Danke, ich werds mal So versuchen, melde mich wenns Klappt oder nicht

Eng:
First Thanks, i give it a Try and will write back when it works or not.
b0ykoe is offline  
Old 11/16/2011, 19:18   #6
 
elite*gold: 0
Join Date: Feb 2011
Posts: 112
Received Thanks: 199
Sorry the script wasnt right.
Here the right one:

Quote:
-----------------------------------------------------------------------------
-- FREE SILK
-----------------------------------------------------------------------------
INSERT INTO SRO_ACCOUNT_DB.SK_Silk (JID, silk_own, silk_gift, silk_points)
Values (@UserJID, 50000, 0, 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -20
END
Simply add it under
Quote:
-----------------------------------------------------------------------------
-- Trijob ä¿ö³Ö±â!!!!!
-----------------------------------------------------------------------------
INSERT INTO _CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)
IF (@@ERROR <> 0)
BEGIN
-- Àκ¥Å丮 »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -19
END
Here the whole procedure if you use clean one:
Quote:
USE [SRO_SHARD_DB]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 11/16/2011 18:26:46 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO




ALTER PROCEDURE [dbo].[_AddNewChar]
@UserJID INT,
--@CharSlot 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 @Slot INT
DECLARE @temp INT

DECLARE @NewCharID INT
SET @NewCharID = 0


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

-- start by novice.
SELECT @temp = count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @UserJID

IF (@temp >= 4)
BEGIN
-- ³Ê¹« ¸¹ÀÚ³ª
RETURN -2
END
-- finish by novice.

-----------------------------------------------------------------------------
-- 2. ij¸¯ÅÍ Ãß°¡Çϱâ
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 ÀÌ´Ù!
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ! ½ºÄÉÀÏ °ªÀÌ ÀÌ»óÇÏ´Ù!
RETURN -3
END

EXEC @temp = _IsExistingCharName @CharName
IF (@temp <> 0)
BEGIN
-- ÀÌ¹Ì »ç¿ëÁßÀÎ À̸§À̶ó´Âµ¥?
RETURN -4
END

BEGIN TRANSACTION

-- Àδø½Ã½ºÅÛÀÌ Àû¿ëµÇ¸é¼* ¸¶Áö¸·¿¡ WorldID¿Í 1°ªÀ» ´õ ³Ö¾î ÁÖ¾ú´Ù!
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,
GetDate(), 1, 1, 0, 0, 0, 200,200, 1, 1, 1, 1)

SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END


-- start by novice.
-- ÀÌÁ¦ Slot ¾È¾´´Ù.. ±×³É Insert ¸¸..
INSERT INTO _User VALUES (@UserJID, @NewCharID)
-- 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(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
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 @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


-----------------------------------------------------------------------------
-- 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(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
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 @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
-----------------------------------------------------------------------------
-- ±âº» Äù½ºÆ® ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT INTO _CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0
FROM _RefQuest
WHERE CodeName in (SELECT CodeName FROM _RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and 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

-----------------------------------------------------------------------------
-- FREE SILK
-----------------------------------------------------------------------------
INSERT INTO SRO_ACCOUNT_DB.SK_Silk (JID, silk_own, silk_gift, silk_points)
Values (@UserJID, 50000, 0, 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -20
END
-----------------------------------------------------------------------------
-- 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
evelknievel10 is offline  
Old 11/16/2011, 22:11   #7
 
b0ykoe's Avatar
 
elite*gold: 1046
Join Date: Sep 2011
Posts: 791
Received Thanks: 252
Sorry, aber das geht auch nicht kommt eine Fehlermeldung mit dem Fehler (1030).. !
Anyone have help? Another try..?

Btw.
i have Tried to delet the "S" by Points..
b0ykoe is offline  
Old 11/17/2011, 14:38   #8
 
elite*gold: 0
Join Date: Feb 2011
Posts: 112
Received Thanks: 199
Then use this
Quote:
USE [SRO_SHARD_DB]
GO
/****** Object: StoredProcedure [dbo].[_AddNewChar] Script Date: 11/16/2011 18:26:46 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO




ALTER PROCEDURE [dbo].[_AddNewChar]
@UserJID INT,
--@CharSlot 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 @Slot INT
DECLARE @temp INT

DECLARE @NewCharID INT
SET @NewCharID = 0


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

-- start by novice.
SELECT @temp = count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @UserJID

IF (@temp >= 4)
BEGIN
-- ³Ê¹« ¸¹ÀÚ³ª
RETURN -2
END
-- finish by novice.

-----------------------------------------------------------------------------
-- 2. ij¸¯ÅÍ Ãß°¡Çϱâ
-----------------------------------------------------------------------------
IF (@CharScale > 68) -- 0100 0100 --> 68 ÀÌ´Ù!
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ! ½ºÄÉÀÏ °ªÀÌ ÀÌ»óÇÏ´Ù!
RETURN -3
END

EXEC @temp = _IsExistingCharName @CharName
IF (@temp <> 0)
BEGIN
-- ÀÌ¹Ì »ç¿ëÁßÀÎ À̸§À̶ó´Âµ¥?
RETURN -4
END

BEGIN TRANSACTION

-- Àδø½Ã½ºÅÛÀÌ Àû¿ëµÇ¸é¼* ¸¶Áö¸·¿¡ WorldID¿Í 1°ªÀ» ´õ ³Ö¾î ÁÖ¾ú´Ù!
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,
GetDate(), 1, 1, 0, 0, 0, 200,200, 1, 1, 1, 1)

SET @NewCharID = @@IDENTITY
IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)
BEGIN
-- ij¸¯ÅÍ »ý¼º ½ÇÆÐ!
ROLLBACK TRANSACTION
RETURN -5
END


-- start by novice.
-- ÀÌÁ¦ Slot ¾È¾´´Ù.. ±×³É Insert ¸¸..
INSERT INTO _User VALUES (@UserJID, @NewCharID)
-- 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(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
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 @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


-----------------------------------------------------------------------------
-- 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(CharID, Slot, ItemID)
SELECT @NewCharID, cnt, 0
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 @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
-----------------------------------------------------------------------------
-- ±âº» Äù½ºÆ® ³Ö¾îÁÖ±â
-----------------------------------------------------------------------------
INSERT INTO _CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)
SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0
FROM _RefQuest
WHERE CodeName in (SELECT CodeName FROM _RefCharDefault_Quest with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and 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

-----------------------------------------------------------------------------
-- FREE SILK
-----------------------------------------------------------------------------
INSERT INTO SRO_ACCOUNT_DB.dbo.SK_Silk (JID, silk_own, silk_gift, silk_points)
Values (@UserJID, 50000, 0, 0)
BEGIN
ROLLBACK TRANSACTION
RETURN -20
END
-----------------------------------------------------------------------------
-- 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
Changed SRO_ACCOUNT_DB.SK_Silk to SRO_ACCOUNT_DB.dbo.SK_Silk
evelknievel10 is offline  
Old 12/04/2011, 09:21   #9
 
gengkey02's Avatar
 
elite*gold: 0
Join Date: Sep 2007
Posts: 432
Received Thanks: 66
after i execute them i cannot make new character...he say error..
gengkey02 is offline  
Old 12/06/2011, 15:16   #10
 
elite*gold: 0
Join Date: Aug 2011
Posts: 101
Received Thanks: 61
:O
will how can i hack silk in sro servers? Or inject d=silk dll help
anasaono44 is offline  
Old 12/07/2011, 01:34   #11
 
elite*gold: 0
Join Date: Oct 2010
Posts: 275
Received Thanks: 85
Quote:
Originally Posted by anasaono44 View Post
:O
will how can i hack silk in sro servers? Or inject d=silk dll help
Alt+Ctrl+Delete then restart ur pc.
LastTim3 is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
FunSro High Rates!!! Free Silk(500k silk)&alot of events
12/30/2011 - SRO PServer Advertising - 320 Replies
New Update : http://www.elitepvpers.com/forum/private-sro-adver tising/1631369-funsro-pvp-server-d12-nova-npc-50k- silk-free.html#post14578612
[WTS] 100 Premium Silk on PACIFIC [WantToHave] Gold or Dress or Silk Items
11/02/2011 - Silkroad Online Trading - 1 Replies
As the title say i sell 100 Premium Silk make me some offers for that .. you can also buy only 50 silk or 60 or 79 silk ..
WTS 3 x 500 SILK e-PIN CODES (1500 SILK)
09/10/2010 - Silkroad Online Trading - 21 Replies
Selling 3 x 500 silk e-PIN CODES Totally of 1500 silk that you can charge in what server you want. Price : 500 silk - 40$ 1000 silk - 80$ SOLD 1500 silk - 120$ We use middleman or you go first Paypal, W.U, MB



All times are GMT +1. The time now is 07:41.


Powered by vBulletin®
Copyright ©2000 - 2026, 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 ©2026 elitepvpers All Rights Reserved.