[HELP]Siege Script Error

01/23/2011 13:00 *[F]rea[K]*#1
Hey Members Of EPvP,


i got a prob with the siege script....

Server: Msg 208, Level 16, State 1, Line 33
Invalid object name 'dbo.FN_DateToShortStrDate'.

thats the error it tells me...
i tryed everything but not working....
help me pls


Thank You

*[F]rea[K]*
01/23/2011 13:07 6shadow6#2
THX a lot for this script and all WORK :) Great JOB MAN :)

Works on MsSQL 2000 + Windows XP Pro x32 +SP3

Quote:
USE [Character]
GO

/****** Object: UserDefinedFunction [dbo].[FN_BinDateToDateTime] Script Date: 01/10/2010 19:35:14 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO




/************************************************** ****************************
이 름 : dbo.FN_BinDateToDateTime
설 명 : Binary Date를 DateTime 형식으로 반환한다.
반환값 :
수정내역:
Ver Date Author Description
--------- ---------- --------------- ------------------------------------
1.0 2006-05-05 Han Ji Wook 1. 초기생성
2.0 2010-01-10 ADM-Cyrax/Darth Nerd
************************************************** ****************************/
ALTER FUNCTION [dbo].[FN_BinDateToDateTime] (
@i_bin_time binary(4)
) RETURNS datetime
AS
BEGIN
DECLARE @v_datetime datetime
DECLARE @v_strAux varchar(20)
DECLARE @v_strtime varchar(20)
SET @v_strAux = CAST(CAST(@i_bin_time as int) as varchar(20))
IF len(@v_strAux) = 7
SELECT @v_strtime = '20100' + CAST(CAST(@i_bin_time as int) as varchar(20))
ELSE
IF len(@v_strAux) = 8
SELECT @v_strtime = '2010' + CAST(CAST(@i_bin_time as int) as varchar(20))
ELSE
SELECT @v_strtime = '201' + CAST(CAST(@i_bin_time as int) as varchar(20))


SELECT @v_strtime = SUBSTRING(@v_strtime,1,4)
+'-'+SUBSTRING(@v_strtime,5,2)
+'-'+SUBSTRING(@v_strtime,7,2)
+' '+SUBSTRING(@v_strtime,9,2)
+':'+SUBSTRING(@v_strtime,11,2)
SELECT @v_datetime = CAST(@v_strtime as datetime)
RETURN @v_datetime
END
Ok DF is WORK but how to start siege, when i put command in game /gm siegestart 21:00
then Dekaronserver.exe crash
How to add auto start in SQL Query?? or just use this
Quote:
DECLARE @v_siege_no char(10)
DECLARE @guild_code varchar(10)
DECLARE @guild_name varchar(30)
DECLARE @v_strDate varchar(10)
DECLARE @v_regdate varchar(10)
DECLARE @v_strChannel varchar(2)
DECLARE @i_bychannel tinyint
DECLARE @o_dwDungeonRegistTime varbinary(4)
DECLARE @o_DeadFrontTimeInfo varbinary(1000)
DECLARE @o_sp_rtn int
DECLARE @o_dwRegistTimeStart varbinary(4)
DECLARE @o_dwRegistTimeEnd varbinary(4)
DECLARE @o_dwTaxRegistTime varbinary(4)
declare @o_dwStartTime varbinary(4)
declare @o_dwRegistTime varbinary(4)
DECLARE @v_strDate1 varchar(10)
DECLARE @i_GetDate datetime
DECLARE @v_siege_start_date varchar(14)
DECLARE @v_siege_start_time varbinary(4)

set @i_GetDate=getdate()
--//ĬČĎSELECT @v_siege_start_date = CONVERT(VARCHAR(10), DATEADD(d, 15-DATEPART(dw, @i_GetDate), @i_GetDate), 112) + '210000'
--//ĂżÖÜÁůSELECT @v_siege_start_date = CONVERT(VARCHAR(10), DATEADD(d, 7-DATEPART(dw, @i_GetDate), @i_GetDate), 112) + '210000'
--//ĂżÖÜĐÇĆÚĚěSELECT @v_siege_start_date = CONVERT(VARCHAR(10), DATEADD(d, 8-DATEPART(dw, @i_GetDate), @i_GetDate), 112) + '210000'
--//ČýĚěŇ»´ÎSELECT @v_siege_start_date= CONVERT(VARCHAR(10),GetDate()+3,112)+'210000'
--//ąĄłÇʱĽä
SELECT @v_siege_start_date = CONVERT(VARCHAR(10), DATEADD(d, 15-DATEPART(dw, @i_GetDate), @i_GetDate), 112) + '210000'
SELECT @v_siege_start_time = SUBSTRING(@v_siege_start_date,4,1) * 100000000
OK all WORK i use this and SIEGE WORK :)

Quote:
USE [Character];
GO

DECLARE @v_siege_no char(10)
DECLARE @guild_code varchar(10)
DECLARE @guild_name varchar(30)
DECLARE @v_strDate varchar(10)
DECLARE @v_regdate varchar(10)
DECLARE @v_strChannel varchar(2)
DECLARE @i_bychannel tinyint
DECLARE @o_dwDungeonRegistTime varbinary(4)
DECLARE @o_DeadFrontTimeInfo varbinary(1000)
DECLARE @o_sp_rtn int
DECLARE @o_dwRegistTimeStart varbinary(4)
DECLARE @o_dwRegistTimeEnd varbinary(4)
DECLARE @o_dwTaxRegistTime varbinary(4)
DECLARE @o_dwStartTime varbinary(4)
DECLARE @o_dwRegistTime varbinary(4)
DECLARE @v_strDate1 varchar(10)
DECLARE @i_GetDate datetime
DECLARE @v_siege_start_date varchar(14)
DECLARE @v_siege_start_time varbinary(4)

SET @i_GetDate=getdate()

-- Siege War Every Saturday:

SELECT @v_siege_start_date = CONVERT(VARCHAR(10), DATEADD(d, 7-DATEPART(dw, @i_GetDate), @i_GetDate), 112) + '210000'

--

SELECT @v_siege_start_time = SUBSTRING(@v_siege_start_date,4,1) * 100000000
+ SUBSTRING(@v_siege_start_date,5,2) * 1000000
+ SUBSTRING(@v_siege_start_date,7,2) * 10000
+ SUBSTRING(@v_siege_start_date,9,2) * 100
+ SUBSTRING(@v_siege_start_date,11,2)

SET @guild_code = '001'
SET @guild_name = 'FIRSTGUILD'
SET @v_siege_no = SUBSTRING(dbo.FN_DateToShortStrDate(GetDate()), 3, 4) + '0001'
INSERT
INTO GUILD_INFO(guild_code, guild_name, guild_Level, bystate, bychannel)
VALUES (@guild_code, @guild_name, 3, 1, 1)
INSERT
INTO SIEGE_INFO(SIEGE_NO, CHANNEL_NO, GUILD_CODE, GUILD_NAME, DWSTARTTIME, BYREGISTTIMEFLAG, DEFENDER_INFO, SIEGE_TAG)
VALUES (@v_siege_no, 1, @guild_code, @guild_name,@v_siege_start_time, 1, 0X0000, 'Y')

EXEC SP_SIEGE_START_TIME_U @guild_code,1,0x01,@v_siege_start_time output,@o_dwRegistTime output,@o_sp_rtn output

SET @v_strDate1=dbo.FN_BinDateToDateTime(@v_siege_star t_time)

DECLARE @P1 varchar(13)
SET @P1=NULL
DECLARE @P2 varchar(33)
SET @P2=NULL
DECLARE @P3 varchar(25)
SET @P3=NULL
DECLARE @P4 varbinary(4)
SET @P4=NULL
DECLARE @P5 varbinary(4)
SET @P5=NULL
DECLARE @P6 varbinary(4)
SET @P6=NULL
DECLARE @P7 varbinary(4)
SET @P7=NULL
DECLARE @P8 varbinary(4)
SET @P8=NULL
DECLARE @P9 varbinary(4)
SET @P9=NULL
DECLARE @P10 varbinary(4)
SET @P10=NULL
DECLARE @P11 varbinary(2)
SET @P11=NULL
DECLARE @P12 varbinary(2)
SET @P12=NULL
DECLARE @P13 varbinary(2)
SET @P13=NULL
DECLARE @P14 int
SET @P14=NULL
DECLARE @P15 int
SET @P15=NULL
DECLARE @P16 varbinary(4)
SET @P16=NULL
DECLARE @P17 varbinary(996)
SET @P17=NULL
DECLARE @P18 varbinary(996)
SET @P18=NULL
DECLARE @P19 varbinary(1000)
SET @P19=NULL
DECLARE @P20 int
SET @P20=NULL
EXEC SP_SIEGE_INFO_R 1, @P1 output, @P2 output, @P3 output, @P4 output, @P5 output, @P6 output, @P7 output, @P8 output, @P9 output, @P10 output, @P11 output, @P12 output, @P13 output, @P14 output, @P15 output, @P16 output, @P17 output, @P18 output, @P19 output, @P20 output
SELECT @P1, @P2, @P3, @P4, @P5, @P6,@v_strDate1
i write how to use
1) Use This
Quote:
USE [Character]
GO

/****** Object: UserDefinedFunction [dbo].[FN_BinDateToDateTime] Script Date: 01/10/2010 19:35:14 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO




/************************************************** ****************************
이 름 : dbo.FN_BinDateToDateTime
설 명 : Binary Date를 DateTime 형식으로 반환한다.
반환값 :
수정내역:
Ver Date Author Description
--------- ---------- --------------- ------------------------------------
1.0 2006-05-05 Han Ji Wook 1. 초기생성
2.0 2010-01-10 ADM-Cyrax/Darth Nerd
************************************************** ****************************/
ALTER FUNCTION [dbo].[FN_BinDateToDateTime] (
@i_bin_time binary(4)
) RETURNS datetime
AS
BEGIN
DECLARE @v_datetime datetime
DECLARE @v_strAux varchar(20)
DECLARE @v_strtime varchar(20)
SET @v_strAux = CAST(CAST(@i_bin_time as int) as varchar(20))
IF len(@v_strAux) = 7
SELECT @v_strtime = '20100' + CAST(CAST(@i_bin_time as int) as varchar(20))
ELSE
IF len(@v_strAux) = 8
SELECT @v_strtime = '2010' + CAST(CAST(@i_bin_time as int) as varchar(20))
ELSE
SELECT @v_strtime = '201' + CAST(CAST(@i_bin_time as int) as varchar(20))


SELECT @v_strtime = SUBSTRING(@v_strtime,1,4)
+'-'+SUBSTRING(@v_strtime,5,2)
+'-'+SUBSTRING(@v_strtime,7,2)
+' '+SUBSTRING(@v_strtime,9,2)
+':'+SUBSTRING(@v_strtime,11,2)
SELECT @v_datetime = CAST(@v_strtime as datetime)
RETURN @v_datetime
END
2) USE again SN
3) And use this
Quote:
USE [Character];
GO

DECLARE @v_siege_no char(10)
DECLARE @guild_code varchar(10)
DECLARE @guild_name varchar(30)
DECLARE @v_strDate varchar(10)
DECLARE @v_regdate varchar(10)
DECLARE @v_strChannel varchar(2)
DECLARE @i_bychannel tinyint
DECLARE @o_dwDungeonRegistTime varbinary(4)
DECLARE @o_DeadFrontTimeInfo varbinary(1000)
DECLARE @o_sp_rtn int
DECLARE @o_dwRegistTimeStart varbinary(4)
DECLARE @o_dwRegistTimeEnd varbinary(4)
DECLARE @o_dwTaxRegistTime varbinary(4)
DECLARE @o_dwStartTime varbinary(4)
DECLARE @o_dwRegistTime varbinary(4)
DECLARE @v_strDate1 varchar(10)
DECLARE @i_GetDate datetime
DECLARE @v_siege_start_date varchar(14)
DECLARE @v_siege_start_time varbinary(4)

SET @i_GetDate=getdate()

-- Siege War Every Saturday:

SELECT @v_siege_start_date = CONVERT(VARCHAR(10), DATEADD(d, 7-DATEPART(dw, @i_GetDate), @i_GetDate), 112) + '210000'

--

SELECT @v_siege_start_time = SUBSTRING(@v_siege_start_date,4,1) * 100000000
+ SUBSTRING(@v_siege_start_date,5,2) * 1000000
+ SUBSTRING(@v_siege_start_date,7,2) * 10000
+ SUBSTRING(@v_siege_start_date,9,2) * 100
+ SUBSTRING(@v_siege_start_date,11,2)

SET @guild_code = '001'
SET @guild_name = 'FIRSTGUILD'
SET @v_siege_no = SUBSTRING(dbo.FN_DateToShortStrDate(GetDate()), 3, 4) + '0001'
INSERT
INTO GUILD_INFO(guild_code, guild_name, guild_Level, bystate, bychannel)
VALUES (@guild_code, @guild_name, 3, 1, 1)
INSERT
INTO SIEGE_INFO(SIEGE_NO, CHANNEL_NO, GUILD_CODE, GUILD_NAME, DWSTARTTIME, BYREGISTTIMEFLAG, DEFENDER_INFO, SIEGE_TAG)
VALUES (@v_siege_no, 1, @guild_code, @guild_name,@v_siege_start_time, 1, 0X0000, 'Y')

EXEC SP_SIEGE_START_TIME_U @guild_code,1,0x01,@v_siege_start_time output,@o_dwRegistTime output,@o_sp_rtn output

SET @v_strDate1=dbo.FN_BinDateToDateTime(@v_siege_star t_time)

DECLARE @P1 varchar(13)
SET @P1=NULL
DECLARE @P2 varchar(33)
SET @P2=NULL
DECLARE @P3 varchar(25)
SET @P3=NULL
DECLARE @P4 varbinary(4)
SET @P4=NULL
DECLARE @P5 varbinary(4)
SET @P5=NULL
DECLARE @P6 varbinary(4)
SET @P6=NULL
DECLARE @P7 varbinary(4)
SET @P7=NULL
DECLARE @P8 varbinary(4)
SET @P8=NULL
DECLARE @P9 varbinary(4)
SET @P9=NULL
DECLARE @P10 varbinary(4)
SET @P10=NULL
DECLARE @P11 varbinary(2)
SET @P11=NULL
DECLARE @P12 varbinary(2)
SET @P12=NULL
DECLARE @P13 varbinary(2)
SET @P13=NULL
DECLARE @P14 int
SET @P14=NULL
DECLARE @P15 int
SET @P15=NULL
DECLARE @P16 varbinary(4)
SET @P16=NULL
DECLARE @P17 varbinary(996)
SET @P17=NULL
DECLARE @P18 varbinary(996)
SET @P18=NULL
DECLARE @P19 varbinary(1000)
SET @P19=NULL
DECLARE @P20 int
SET @P20=NULL
EXEC SP_SIEGE_INFO_R 1, @P1 output, @P2 output, @P3 output, @P4 output, @P5 output, @P6 output, @P7 output, @P8 output, @P9 output, @P10 output, @P11 output, @P12 output, @P13 output, @P14 output, @P15 output, @P16 output, @P17 output, @P18 output, @P19 output, @P20 output
SELECT @P1, @P2, @P3, @P4, @P5, @P6,@v_strDate1
Good luck for all for use this script and BIG THX for ALL WHO MADE THIS SCRIPT for SQL 2000
01/23/2011 13:32 *[F]rea[K]*#3
Server: Msg 2627, Level 14, State 1, Line 39
Violation of PRIMARY KEY constraint 'PK_GUILD_INFO'. Cannot insert duplicate key in object 'GUILD_INFO'.
The statement has been terminated.
Server: Msg 2627, Level 14, State 1, Line 42
Violation of PRIMARY KEY constraint 'PK_SIEGE_INFO'. Cannot insert duplicate key in object 'SIEGE_INFO'.
The statement has been terminated.

(1 row(s) affected)


(1 row(

this i get lawl...
01/23/2011 15:51 6shadow6#4
Quote:
Originally Posted by *[F]rea[K]* View Post
Server: Msg 2627, Level 14, State 1, Line 39
Violation of PRIMARY KEY constraint 'PK_GUILD_INFO'. Cannot insert duplicate key in object 'GUILD_INFO'.
The statement has been terminated.
Server: Msg 2627, Level 14, State 1, Line 42
Violation of PRIMARY KEY constraint 'PK_SIEGE_INFO'. Cannot insert duplicate key in object 'SIEGE_INFO'.
The statement has been terminated.

(1 row(s) affected)


(1 row(

this i get lawl...
If you do not have a clean database, I would advise me to clear all entries. Somewhere here on the forum I saw a file from the SQL scripts. Errors show what you take from here is that the database already exist, such records had the same problem as I did reborn. cleared the database and did everything again and now everything works. If I had more time it will give you a clean and efficient database of active and DF Siege + reborn. But I need more time.
01/23/2011 16:25 *[F]rea[K]*#5
ty shadow for your help
its working now :)
01/23/2011 16:30 6shadow6#6
Quote:
Originally Posted by *[F]rea[K]* View Post
ty shadow for your help
its working now :)
No problem, always willing to help you if I can.
05/06/2011 10:16 insteadof#7
Server: Msg 137, Level 15, State 2, Line 48
Must declare the variable '@v_siege_star'.

?????????? help
05/06/2011 13:35 vikitooo#8
Quote:
Originally Posted by insteadof View Post
Server: Msg 137, Level 15, State 2, Line 48
Must declare the variable '@v_siege_star'.

?????????? help
@v_siege_start
Here you are.
05/06/2011 19:05 insteadof#9
Quote:
Originally Posted by vikitooo View Post
@v_siege_start
Here you are.
I need to delete it???
05/06/2011 19:33 vikitooo#10
Quote:
Originally Posted by insteadof View Post
I need to delete it???
Find that line in your script
Quote:
EXEC SP_SIEGE_START_TIME_U @guild_code,1,0x01,@v_siege_start_time output,@o_dwRegistTime output,@o_sp_rtn output

SET @v_strDate1=dbo.FN_BinDateToDateTime(@v_siege_star t_time)
And make it like that :
Quote:
EXEC SP_SIEGE_START_TIME_U @guild_code,1,0x01,@v_siege_start_time output,@o_dwRegistTime output,@o_sp_rtn output

SET @v_strDate1=dbo.FN_BinDateToDateTime(@v_siege_start_time)
05/13/2020 18:32 daikim#11
CRITICAL ERROR: SP_LOGIN_FLAG_SET PROC CALL FAIL
how to solve this problem already tried everything
05/14/2020 18:07 [DEV]Dekaron#12
Quote:
Originally Posted by daikim View Post
CRITICAL ERROR: SP_LOGIN_FLAG_SET PROC CALL FAIL
how to solve this problem already tried everything
read man not read read how to use it and start thinking.