|
You last visited: Today at 09:34
Advertisement
Any way to reset STAT points? (not using a stat reset scroll)
Discussion on Any way to reset STAT points? (not using a stat reset scroll) within the SRO Coding Corner forum part of the Silkroad Online category.
02/10/2016, 15:47
|
#1
|
elite*gold: 0
Join Date: Jun 2015
Posts: 64
Received Thanks: 10
|
Any way to reset STAT points? (not using a stat reset scroll)
Hey folks i tryed with item scroll reset stat, it works allmost perfect but those dc is rly sux...
I saw at some private server that they have some like coded procedure starting to be active when you write something in your for example private chat(and it give nice reset stat without DC)
chat:
$Reset Reset_stats
thats only example.
Any ideas how to make it ?
btw. why we just cant modify reset stat scroll lvl 81 to lvl 120 for example?
|
|
|
02/10/2016, 19:27
|
#2
|
elite*gold: 85
Join Date: Aug 2010
Posts: 1,278
Received Thanks: 521
|
1- if you using Opcode Filter you can add a small record like " if player type : RESET_MY_STATE " then the app execute a query !
2- you can use a support gm to listen to char incoming chats and same execute querys
3- same with " send message "
4- scroll !
|
|
|
02/10/2016, 22:19
|
#3
|
elite*gold: 0
Join Date: Jun 2015
Posts: 64
Received Thanks: 10
|
Quote:
Originally Posted by Eslam Galull
1- if you using Opcode Filter you can add a small record like " if player type : RESET_MY_STATE " then the app execute a query !
2- you can use a support gm to listen to char incoming chats and same execute querys
3- same with " send message "
4- scroll !
|
Eslam i know You are PRO and i like it, but im not pro , so please speak to me in human language, give me some real examples , wich i can use it, be helpfull in that way, Thanks.
ps. Im in Sql/SSMS/Datbases all that things, from 2 months, so dont expect from me BIG things im lerning all the time.
|
|
|
02/11/2016, 05:47
|
#4
|
elite*gold: 85
Join Date: Aug 2010
Posts: 1,278
Received Thanks: 521
|
Okay forget what i replay before ,
edit and use this scroll :
refCommon:
1 41877 ITEM_EVENT_LOTTERY_BOX_AVATAR ???? ???? ??? (???) *** SN_ITEM_EVENT_LOTTERY_BOX_AVATAR SN_ITEM_GM_GEAR_COUPON_TT_DESC 1 0 3 3 3 1 180000 3 0 1 1 1 3 0 1 0 0 129 0 0 0 0 0 0 0 -1 0 -1 0 -1 0 -1 0 -1 0 0 0 0 0 0 0 100 0 0 0 *** item\etc\drop_mall_scroll.bsr item\etc\coupon_weapon.ddj *** *** 21422
Refitem:
21422 1 2 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 500 ???? 1 ?????? -1 RESURRECT -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** -1 *** 0 0 0
in your _AddLogitem :
IF (@ItemRefID = 41877)
BEGIN
-- add your reset state code here
END
P.S. the scroll will teleport the player back to town and will change his states !
btw im noob also
|
|
|
02/11/2016, 23:37
|
#5
|
elite*gold: 0
Join Date: Jun 2015
Posts: 64
Received Thanks: 10
|
Yo again!
Eslam, your idea just teleport me back to town its not affecting anything else, stats str/int are the same, they not back to Basic (mean starting values wich i setuped 600, and instant 120char lvl etc)
What i did?
(ps. i made all need tabs, 100% correct, i did that many times with other items etc etc etc btw im patient man)
1. -> Obvious i made custom id and link for that scroll in dbo._RefObjCommon like this:
PHP Code:
1 55555 ITEM_EVENT_LOTTERY_BOX_AVATAR ???? ???? ??? (???) xxx SN_ITEM_EVENT_LOTTERY_BOX_AVATAR SN_ITEM_GM_GEAR_COUPON_TT_DESC 1 0 3 3 3 1 180000 3 0 1 1 1 3 0 1 0 0 129 0 0 0 0 0 0 0 -1 0 -1 0 -1 0 -1 0 -1 0 0 0 0 0 0 0 100 0 0 0 xxx item\etc\drop_mall_scroll.bsr item\etc\coupon_weapon.ddj xxx xxx 66666
2.-> Also this i add to dbo._RefObjItem with all need tabs, cannot be not correct:
PHP Code:
66666 1 2 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 500 ???? 1 ?????? -1 RESURRECT -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx 0 0 0
3.-> Also ofc i added (merged code with all needed tabs to media.pk2 ItemData_45000) like this:
PHP Code:
1 55555 ITEM_EVENT_LOTTERY_BOX_AVATAR ???? ???? ??? (???) xxx SN_ITEM_EVENT_LOTTERY_BOX_AVATAR SN_ITEM_GM_GEAR_COUPON_TT_DESC 1 0 3 3 3 1 180000 3 0 1 1 1 3 0 1 0 0 129 0 0 0 0 0 0 0 -1 0 -1 0 -1 0 -1 0 -1 0 0 0 0 0 0 0 100 0 0 0 xxx item\etc\drop_mall_scroll.bsr item\etc\coupon_weapon.ddj xxx xxx 1 2 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 500 ???? 1 ?????? -1 RESURRECT -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx -1 xxx 0 0 0
4.-> Thats how looks like my dbo._AddLogItem procedure:
PHP Code:
USE [SRO_VT_SHARDLOG] GO /****** Object: StoredProcedure [dbo].[_AddLogItem] Script Date: 02/11/2016 22:55:23 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ------------------------------------------------------------------------------------------------------------------- -- Step 2 -- ±âÁ¸ ¾ÆÀÌÅÛ ·Î±× ÀÔ·Â Stored procedure ¼öÁ¤ -- DataBase : Shard Log ALTER procedure [dbo].[_AddLogItem] @CharID int, @ItemRefID int, @ItemSerial bigint, @dwData int, @TargetStorage tinyint, @Operation tinyint, @Slot_From tinyint, @Slot_To tinyint, @EventPos varchar(64), @strDesc varchar(128), @Gold bigint -- #ifdef EXTEND_GOLD_TYPE »ðÀÔ as declare @len_pos int declare @len_desc int set @len_pos = len(@EventPos) set @len_desc = len(@strDesc) IF (@ItemRefID = 55555) --// ESLAM!!!!!!!!!!!!????????? :))))))))))) BEGIN declare @Strength int --// This code work for me with another but this another scroll make DC... declare @Intellect int declare @RemainStatPoint int set @RemainStatPoint = 800 UPDATE _Char SET Strength=20, Intellect=20, RemainStatPoint=@RemainStatPoint WHERE CharID=@CharID-- add your reset state code here END --/// ESLAM !!!!!!!!!!!!!??????????? :))))))))) if (@len_pos > 0 and @len_desc > 0) begin insert _LogEventItem (EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, EventPos, strDesc, Serial64, Gold) -- #ifdef EXTEND_GOLD_TYPE ±³Ã¼ values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @EventPos, @strDesc, @ItemSerial, @Gold) -- #ifdef EXTEND_GOLD_TYPE ±³Ã¼ end else if (@len_pos > 0 and @len_desc = 0) begin insert _LogEventItem (EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, EventPos, Serial64, Gold) -- #ifdef EXTEND_GOLD_TYPE ±³Ã¼ values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @EventPos, @ItemSerial, @Gold) -- #ifdef EXTEND_GOLD_TYPE ±³Ã¼ end else if (@len_pos = 0 and @len_desc > 0) begin insert _LogEventItem (EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, strDesc, Serial64, Gold) -- #ifdef EXTEND_GOLD_TYPE ±³Ã¼ values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @strDesc, @ItemSerial, @Gold) -- #ifdef EXTEND_GOLD_TYPE ±³Ã¼ end else if (@len_pos = 0 and @len_desc = 0) begin insert _LogEventItem (EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, Serial64, Gold) -- #ifdef EXTEND_GOLD_TYPE ±³Ã¼ values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @ItemSerial, @Gold) -- #ifdef EXTEND_GOLD_TYPE ±³Ã¼ end -- À¯·á ¾ÆÀÌÅÛ ±¸ÀÔÀ̸é! -- #define LOG_ITEMEVENT_BUY_CASHITEM (BYTE)35 if (@Operation = 35) begin insert _LogCashItem (RefItemID, CharID, Cnt, EventTime, Serial64) values(@ItemRefID, @CharID, @dwData, GetDate(), @ItemSerial) end if (@operation = 90 OR @operation = 160) begin set @Len_desc = CHARINDEX (']',@strDesc) if (@Len_desc = 9) begin set @strDesc = SUBSTRING(@strDesc,0,9) end else if (@Len_desc = 10) begin set @strDesc = SUBSTRING(@strDesc,0,10) end if(@Operation = 90) begin declare @iname varchar(MAX) declare @iid int declare @plus varchar(5) declare @cname varchar(64) select @iid = RefItemID from SRO_VT_SHARD.dbo._Items where Serial64 = @ItemSerial select @iname = Name from SRO_VT_SHARD.dbo._ItemName where CodeName128 in(select CodeName128 from SRO_VT_SHARD.dbo._RefObjCommon where id = @iid) select @cname = CharName16 from SRO_VT_SHARD.dbo._Char where CharID = @CharID select @plus = SUBSTRING(@strDesc, CHARINDEX('+',@strDesc,0) + 1, LEN(@strDesc)) declare @veremos varchar(200) select @veremos = '[' + @cname +']' + ' has increased '+ '[' + @iname + ']' + ' to level [' +@plus +']' declare @azar INT declare @randomfile varchar(50) SELECT top 1 @azar = (ABS(CHECKSUM(NEWID())) % 10000) FROM Master.dbo.Syscolumns select @randomfile = 'C:\MSSQLTips\' + convert(varchar, @azar) + '.txt' if (@plus >= 12) begin SELECT dbo.WriteTextFile(@veremos, @randomfile, 0) end end end
5. -> After Few attempts i added also to dbo._RefSkill and SkillData3500.txt (perhaps without any sens, but i have nothing to lose) But effect the same -> Just teleporting me, nothing more.
PHP Code:
1 50000 1013 SKILL_EVENT_LOTTERY_BOX_AVATAR ???? ???? SKILL_EVENT_LOTTERY_BOX_AVATAR 0 1 1 0 0 0 0 0 1000 0 0 0 3599 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 255 255 0 0 0 0 0 255 255 255 255 item\etc\coupon_weapon.ddj SN_ITEM_EVENT_LOTTERY_BOX_AVATAR xxx SN_ITEM_GM_GEAR_COUPON_TT_DESC xxx 0 0 3 1667396966 1851946342 1685418593 1500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
PHP Code:
1 50000 1013 SKILL_EVENT_LOTTERY_BOX_AVATAR ???? ???? SKILL_EVENT_LOTTERY_BOX_AVATAR 0 1 1 0 0 0 0 0 1000 0 0 0 3599 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 255 255 0 0 0 0 0 255 255 255 255 item\etc\coupon_weapon.ddj SN_ITEM_EVENT_LOTTERY_BOX_AVATAR xxx SN_ITEM_GM_GEAR_COUPON_TT_DESC xxx 0 0 3 1667396966 1851946342 1685418593 1500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
So what next Eslam? If you said A and B now time to say C Thank You
EDIT:Also i tested in SRO_VT_SHARD StoredProcedure dbo.ADDLogItem
EFFECT the same, just teleporting, dont affect anything else, take a look:
PHP Code:
USE [SRO_VT_SHARD] GO /****** Object: StoredProcedure [dbo].[_AddLogItem] Script Date: 02/12/2016 12:10:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER OFF GO ALTER procedure [dbo].[_AddLogItem] @CharID int, @ItemRefID int, @ItemSerial bigint, @dwData int, @TargetStorage tinyint, @Operation tinyint, @Slot_From tinyint, @Slot_To tinyint, @EventPos varchar(64), @strDesc varchar(128) as --// here IF (@ItemRefID = '55555') --// ESLAM!!!!!!!!!!!!????????? :))))))))))) BEGIN declare @Strength int --// This code work for me with another scroll but this scroll make DC... declare @Intellect int declare @RemainStatPoint int set @RemainStatPoint = 800 UPDATE _Char SET Strength=20, Intellect=20, RemainStatPoint=@RemainStatPoint WHERE CharID=@CharID-- add your reset state code here --/// ESLAM !!!!!!!!!!!!!??????????? :))))))))) end --// here declare @len_pos int declare @len_desc int set @len_pos = len(@EventPos) set @len_desc = len(@strDesc) if (@len_pos > 0 and @len_desc > 0) begin insert _LogEventItem (EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, EventPos, strDesc, Serial64) values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @EventPos, @strDesc, @ItemSerial) end else if (@len_pos > 0 and @len_desc = 0) begin insert _LogEventItem (EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, EventPos, Serial64) values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @EventPos, @ItemSerial) end else if (@len_pos = 0 and @len_desc > 0) begin insert _LogEventItem (EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, strDesc, Serial64) values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @strDesc, @ItemSerial) end else if (@len_pos = 0 and @len_desc = 0) begin insert _LogEventItem (EventTime, CharID, ItemRefID, dwData, TargetStorage, Operation, Slot_From, Slot_To, Serial64) values(GetDate(), @CharID, @ItemRefID, @dwData, @TargetStorage, @Operation, @Slot_From, @Slot_To, @ItemSerial) end -- 유료 아이템 구입이면! -- #define LOG_ITEMEVENT_BUY_CASHITEM (BYTE)35 if (@Operation = 35) begin insert _LogCashItem (RefItemID, CharID, Cnt, EventTime, Serial64) values(@ItemRefID, @CharID, @dwData, GetDate(), @ItemSerial) end
|
|
|
02/12/2016, 20:18
|
#6
|
elite*gold: 85
Join Date: Aug 2010
Posts: 1,278
Received Thanks: 521
|
IF (@Operation = 41) -- scroll is used
BEGIN
IF (@ItemRefID = 55555) --// ESLAM!!!!!!!!!!!!????????? ))))))))))
BEGIN
declare @Strength int --// This code work for me with another but this another scroll make DC...
declare @Intellect int
declare @RemainStatPoint int
set @RemainStatPoint = 800
UPDATE _Char SET Strength=20, Intellect=20, RemainStatPoint=@RemainStatPoint WHERE CharID=@CharID-- add your reset state code here
END
End
|
|
|
|
Similar Threads
|
[Release]Scroll's Stat reset | Change Name Char
12/05/2016 - SRO PServer Guides & Releases - 22 Replies
heya i'll release scrolls stat reset & Change name Char lets start like everytime.
Stat Reset Download & Scan
Click Here
Click Here
Change name scroll & Download & Scan
|
CRASH After Using Reset STAT scroll.
01/13/2016 - SRO Private Server - 2 Replies
Hey Folks!
I made restat scroll, i found some threads here abt that and i tryed to make my own. But there is on weird thing, each time i use this restat scroll it makes my client crash but stats are return to previous/basic stat(so that works correct)
Okai how i did that:
1* Database:
1.1 I putted that in RefObjectCommon table:
1 70001 ITEM_MALL_STATS_POINT_RECALL_A_KARA ???? ???? ???...
|
Stat Reset Scroll
02/28/2015 - SRO Private Server - 2 Replies
Hello epvp, i downloaded this stat reset scroll but when i use it, it doesn't do anything and i added successfully to DB+media.
_AddTimedJob -
USE
GO
/****** Object: StoredProcedure . Script Date: 2/28/2015 8:45:17 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
|
[Selling] Elamidas, Lv100 Nuker + Stat & Skill Reset Scroll
09/26/2014 - Silkroad Online Trading - 17 Replies
Server Elamidas :
100 Int Spear Nuker
with Stat + Skill Reset Scroll
Prem+ 18 days
+7 Devil Spirit
+ 7SPEAR & +5 Set ( inc. Acc's)
1 Red Arabian Avatars + Hat
some gender switch, pet etc...
100M gold
|
All times are GMT +2. The time now is 09:34.
|
|