Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > 4Story
You last visited: Today at 05:22

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

Advertisement



Start Message Bug--Help--

Discussion on Start Message Bug--Help-- within the 4Story forum part of the MMORPGs category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2012
Posts: 307
Received Thanks: 54
Question Start Message Bug--Help--

Hello epvp,
I have a problem with my Pserver, i use this PHP Code for TCreateChar,all it's ok but Start gold on message gives me only 10g..and no 45 as i want.
PHP Code:
/* CREATE CHARACTER PROCESS

========================================================
PARAMETER
========================================================
@szNAME        VARCHAR(50)
@dwCharID        INT        OUTPUT
@dwUserID        INT
@bSlot            TINYINT
@bClass        TINYINT
@bRace        TINYINT
@bCountry        TINYINT
@bSex            TINYINT
@bHair            TINYINT
@bFace        TINYINT
@bBody        TINYINT
@bPants        TINYINT
@bHand        TINYINT
@bFoot            TINYINT

========================================================
RETURN VALUE
========================================================
0    : SUCCESS
1    : NO GROUP
2    : DUPLICATE NAME
3    : INVALID SLOT
4    : Non Class ID 

========================================================
PROCESS
========================================================
1. Check duplicate name
2. Check slot
3. Insert character data

*/


ALTER PROCEDURE [dbo].[TCreateChar]
    @
bCreateCnt        TINYINT    OUTPUT,
    @
szNAME        VARCHAR(50),
    @
dwCharID        INT        OUTPUT,
    @
dwUserID        INT,
    @
bGroup        TINYINT,
    @
bSlot            TINYINT,
    @
bClass        TINYINT,
    @
bRace        TINYINT,
    @
bCountry        TINYINT,
    @
bSex            TINYINT,
    @
bHair            TINYINT,
    @
bFace        TINYINT,
    @
bBody        TINYINT,
    @
bPants        TINYINT,
    @
bHand        TINYINT,
    @
bFoot            TINYINT

AS
    DECLARE @
dwCharSeq INT
    
DECLARE @dwMP    INT
    
DECLARE @dwHP    INT
    
DECLARE @fPosX    FLOAT
    
DECLARE @fPosY    FLOAT
    
DECLARE @fPosZ    FLOAT
    
DECLARE @wDIR    SMALLINT
    
DECLARE @wSpawnID SMALLINT
    
DECLARE @nCheckGlobal INT
    
DECLARE @bRealSex    TINYINT

    SET 
@bCreateCnt 0
    SET 
@dwCharID 0
    SET 
@dwMP 2
    SET 
@dwHP 2

    SELECT TOP 1 
@dwHP = @dwHP wCON, @dwMP = @dwMP wMEN FROM TCLASSCHART WHERE bClassID = @bClass
    SELECT TOP 1 
@dwHP = @dwHP wCON, @dwMP = @dwMP wMEN FROM TRACECHART WHERE bRaceID = @bRace

    SET 
@dwHP * @dwHP 1
    SET 
@dwMP * @dwMP 1

    
IF EXISTSSELECT TOP 1 dwCharID FROM TCHARTABLE WHERE szNAME = @szNAME)
        RETURN 
2
    
/*
        * Duplicate npc name 
     */
    
IF EXISTS(SELECT TOP 1 FROM TNPCCHART WHERE szNAME = @szNAME)
        RETURN 
2
    
/*
     * Duplicate monster name
     */
    
IF EXISTS(SELECT TOP 1 FROM TMONSTERCHART WHERE szNAME = @szNAME)
        RETURN 
2
    
/*
     * Invalid slot
     */
    
IF EXISTS(SELECT TOP 1 dwCharID FROM TCHARTABLE WHERE dwUserID = @dwUserID AND bSlot = @bSlot AND bDelete 0)
        RETURN 
3
    
/*
      * Check the country
     */

    
DECLARE @bOriCountry TINYINT
    
DECLARE @bLevel    TINYINT
    
DECLARE @dwExp    INT
    
DECLARE @wSkillPoint    SMALLINT
    
DECLARE @dwGold INT

    
  

   
/*
     * Hier könnt ihr die Variablen ändern!
     */
    
SET @bOriCountry 3
    SET 
@bLevel 9
    SET 
@dwExp 0
    SET 
@wSpawnID 15003
    SET 
@wSkillPoint 2009
  SET 
@dwGold 45


    SELECT TOP 1 
@bOriCountry bOriCountry FROM TCHARTABLE WHERE dwUserID=@dwUserID AND bDelete=AND bOriCountry 2
    
IF(@bOriCountry 2)
    
BEGIN
        SET 
@bCountry = @bOriCountry
        SET 
@bLevel 9
        SET 
@wSkillPoint 2009
    SET 
@dwGold 45
        SELECT 
@dwExp dwExp FROM TLEVELCHART WHERE bLevel 8

        
IF(@bOriCountry 0)
            
SET @wSpawnID 15001
        
ELSE
            
SET @wSpawnID 15002
    END
    
ELSE IF(@bCountry <> 4)
        RETURN 
4

    SET 
@fPosX     587.04
    SET 
@fPosY     31.33
    SET 
@fPosZ     603.82
    SET 
@wDIR 1640

    EXEC 
@nCheckGlobal TGLOBAL_GSP.DBO.TCreateChar
        
@dwCharSeq  OUTPUT,
        @
bCreateCnt OUTPUT,
        @
bRealSex OUTPUT,
        @
dwUserID,
        @
bGroup,
        @
dwCharID,
        @
bSlot,
        @
szNAME,
        @
bClass,
        @
bRace,
        @
bCountry,
        @
bSex,
        @
bHair,        -- bHair
        
@bFace,    -- bFace
        
@bBody,    -- bBody
        
@bPants,    -- bPants
        
@bHand,    -- bHand
        
@bFoot,    -- bFoot        
        
@bLevel,
        @
dwExp    -- dwExp

    
IF(@nCheckGlobal <> 0)
        RETURN @
nCheckGlobal

    BEGIN TRAN TCREATECHAR



    INSERT INTO TCHARTABLE
    
(
        
dwUserID,
        
bSlot,
        
szNAME,
        
bRace,
        
bCountry,
        
bOriCountry,
        
bSex,
        
bRealSex,
        
bClass,
        
bLevel,
        
bHair,
        
bFace,
        
bBody,
        
bPants,
        
bHand,
        
bFoot,
        
dwEXP,
        
dwHP,
        
dwMP,
        
wSkillPoint,
        
dwGold,
        
dwSilver,
        
dwCooper,
        
wMapID,
        
wSpawnID,
        
wTemptedMon,
        
bAftermath,
        
fPosX,
        
fPosY,
        
fPosZ,
        
wDIR
    

    
VALUES
    
(
        @
dwUserID,    -- dwUserID
        
@bSlot,        -- bSlot
        
@szNAME,    -- szNAME
        
@bRace,    -- bRace
        
@bCountry,    -- bCountry
        
@bOriCountry,
        @
bSex,        -- bSex
        
@bRealSex,    -- bRealSex
        
@bClass,    -- bClass
        
@bLevel,    -- bLevel
        
@bHair,        -- bHair
        
@bFace,
        @
bBody,
        @
bPants,
        @
bHand,
        @
bFoot,
        @
dwExp,
        @
dwHP,
        @
dwMP,
        @
wSkillPoint,
        
0,
        
0,
        
0,
        
2010,
        @
wSpawnID,
        
0,
        
0,
        @
fPosX,
        @
fPosY,
        @
fPosZ,
        @
wDIR
    
)

    
SET @dwCharID = @@IDENTITY
    INSERT INTO TINVENTABLE
    
(
        
dwCharID,
        
bInvenID,
        
wItemID,
        
dEndTime
    

    
VALUES
    
(
        @
dwCharID,
        
255
        
3,
        
0
    
)

    
INSERT INTO TINVENTABLE
    
(
        
dwCharID,
        
bInvenID,
        
wItemID,
        
dEndTime
    

    
VALUES
    
(
        @
dwCharID,
        
254
        
2,
        
0
    
)

    
INSERT INTO TCABINETTABLE VALUES(@dwCharID01)
    
INSERT INTO TSKILLTABLE SELECT @dwCharIDwSkillID10 FROM TSTARTSKILL WHERE bClassID=@bClass
    COMMIT TRAN TCREATECHAR

    
DECLARE @bStartInven TINYINT
    
DECLARE @bStartSlot TINYINT
    
DECLARE @bStartChartType TINYINT
    
DECLARE @wStartItemID SMALLINT
    
DECLARE @bStartCount TINYINT
    
DECLARE CUR_STARTITEM CURSOR FOR
    
SELECT bInvenbSlotbChartTypewItemIDbCount FROM TSTARTITEMCHART WHERE bCountry=@bCountry AND bClass = @bClass
    OPEN CUR_STARTITEM
    FETCH NEXT FROM CUR_STARTITEM INTO 
@bStartInven, @bStartSlot, @bStartChartType, @wStartItemID, @bStartCount
    
WHILE @@FETCH_STATUS 0
    BEGIN
        EXEC TPutItemInInven 
@dwCharID, @bStartInven, @bStartSlot, @bStartChartType, @wStartItemID, @bStartCount
        FETCH NEXT FROM CUR_STARTITEM INTO  
@bStartInven, @bStartSlot, @bStartChartType, @wStartItemID, @bStartCount
    END
    CLOSE CUR_STARTITEM
    DEALLOCATE CUR_STARTITEM

--    &#54200;지보내기    ------------------------------------------------------------------------------------

IF(@bslot 0)
    
BEGIN

    
DECLARE @dwPostID INT
    
DECLARE @dwRecvID INT
    
DECLARE @szTitle VARCHAR(256)
    DECLARE @
szMessage VARCHAR(2048)
    DECLARE @
bLenTitle    BINARY(4)
    DECLARE @
bLenMessage BINARY(4)
    DECLARE @
szT VARCHAR(8)
    DECLARE @
szM VARCHAR(8)
    DECLARE @
dateCreated SMALLDATETIME
    SET 
@dateCreated GetDate()
    
  
SET @szTitle 'Welcome On Our Server! '
  
SET @szMessage 'Hey ' + @szName +'
Nice to meet you here. We are proud to announce that we offer more chances to new player now. Every new player will get a 175% permanent mount!
Visit us on www.4Story.com
Thank you for playing.'
    
SET @bLenTitle DATALENGTH(@szTitle)
    
SET @bLenMessage DATALENGTH(@szMessage)
    
SET @szT RIGHT(master.dbo.fn_sqlvarbasetostr(@bLenTitle), 8)
    
SET @szTitle  = @szT + @szTitle
    SET 
@szM RIGHT(master.dbo.fn_sqlvarbasetostr(@bLenMessage), 8)
    
SET @szMessage = @szM + @szMessage
    EXEC TSavePost 
@dwPostID OUTPUT, @dwRecvID OUTPUT0, @dwCharID, @szName'Server Announcement',@szTitle,@szMessage,0,0,10,0,0,@dateCreated

    END

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

    
UPDATE TGLOBAL_GSP.DBO.TALLCHARTABLE SET dwCharID = @dwCharID WHERE dwSeq = @dwCharSeq  


    INSERT INTO THOTKEYTABLE 
        SELECT 
@dwCharIDbInvenIDbType1wID1bType2wID2bType3wID3bType4wID4bType5wID5,
              
bType6wID6bType7wID7bType8wID8bType9wID9bType10wID10bType11wID11bType12wID12 
        FROM TSTARTHOTKEY WHERE bClassID
=@bClass

    UPDATE THOTKEYTABLE SET wID12 
1+@bRace WHERE dwCharID = @dwCharID and bInvenID 1

    
IF EXISTSSELECT bClassID FROM TSTARTRECALL WHERE bClassID = @bClass AND bCountryID = @bCountry)
    
BEGIN
        
DECLARE @dwMonID INT
        
DECLARE @wMonTemp SMALLINT
        
DECLARE @dwATTR INT
        
DECLARE @dwMaxHP INT
        
DECLARE @dwMaxMP INT
        SET 
@wMonTemp 0
        SELECT 
@wMonTemp wMonID FROM TSTARTRECALL WHERE bClassID = @bClass AND bCountryID = @bCountry
        
IF(@wMonTemp 0)
        
BEGIN
            SELECT 
@dwATTR wSummonAttr FROM TMONSTERCHART WHERE wID= @wMonTemp
            SELECT 
@dwMaxHP=dwMaxHP, @dwMaxMP dwMaxMP FROM TMONATTRCHART WHERE wID=@dwATTR AND bLevel=1
            UPDATE TCHARTABLE SET wTemptedMon 
= @wMonTemp WHERE dwCharID = @dwCharID
            SET 
@dwATTR = @dwATTR POWER(2,16)
            
EXEC TCreateRecallMon 
                
@dwMonID OUTPUT
                @
dwCharID
                @
wMonTemp
                
0
                @
dwATTR
                
1
                @
dwMaxHP
                @
dwMaxMP
                
1,
                @
fPosX
                @
fPosY,

                @
fPosZ,
                
0
        END
    END
IF NOT EXISTS(SELECT dwUserID FROM TPETTABLE WHERE dwUserID = @dwUserID)

BEGIN
    
DECLARE @szMountName VARCHAR(50)
    
SET @szMountName = @szNAME+'''s Mount'
    
SET @szMountName REPLACE(@szMountName's''s''s''')
    
INSERT INTO TPETTABLE (dwUserIDwPetIDszNametimeuseVALUES(@dwUserID6, @szMountName0)
END

IF NOT EXISTS(SELECT dwUserID FROM TGLOBAL_GSP.dbo.TCASHTESTTABLE WHERE dwUserID = @dwUserID)

    
BEGIN
        INSERT INTO TGLOBAL_GSP
.dbo.TCASHTESTTABLE (dwUserIDdwCashdwBonusVALUES(@dwUserID100100)
    
END


    
RETURN @@ERROR 
but when i make the first character in a account this code gives me only 10gold...This Code is from here
thnx for your time guys..
manikas131 is offline  
Old 06/16/2013, 09:17   #2
 
elite*gold: 0
Join Date: Apr 2011
Posts: 219
Received Thanks: 69
@szMessage,0,0,10,0,0,@dateCreated

...change the 10 to 45 for 45gold in startmessage...

Greetz
randleman is offline  
Thanks
1 User
Old 06/16/2013, 09:38   #3
 
elite*gold: 0
Join Date: Oct 2012
Posts: 307
Received Thanks: 54
Oh my bro thnx your VERY VERY VERY MUCH,maybe any1 can help me with a php of giving item like the function of scrammingpost..i delete..this :P
i need a php for giving in the first player items.sorry for my english.
and again thank you randleman!
manikas131 is offline  
Old 06/16/2013, 09:53   #4




 
stotterer09's Avatar
 
elite*gold: 26
Join Date: Dec 2010
Posts: 2,628
Received Thanks: 1,816
this is not php -.- this is sql language
stotterer09 is offline  
Old 06/16/2013, 10:01   #5
 
elite*gold: 0
Join Date: Oct 2012
Posts: 307
Received Thanks: 54
Ok i make my own Function for giving item...ok stotterer09 :P
manikas131 is offline  
Old 06/16/2013, 11:46   #6
 
elite*gold: 0
Join Date: Nov 2010
Posts: 214
Received Thanks: 171
just see this
PHP Code:
EXEC TSavePost @dwPostID OUTPUT, @dwRecvID OUTPUT0, @dwCharID, @szName'Server Announcement',@szTitle,@szMessage,0,0,10,0,0,@dateCreated 
the number 10 is the number of money in the message.
so.. you set it 45
PHP Code:
EXEC TSavePost @dwPostID OUTPUT, @dwRecvID OUTPUT0, @dwCharID, @szName'Server Announcement',@szTitle,@szMessage,0,0,45,0,0,@dateCreated 
Sicarium is offline  
Thanks
1 User
Old 06/16/2013, 11:54   #7
 
elite*gold: 0
Join Date: Oct 2012
Posts: 307
Received Thanks: 54
Ok thnx you all guys, finally i can't make Function for send messages on first character on acc xD
manikas131 is offline  
Old 06/16/2013, 12:28   #8
 
elite*gold: 0
Join Date: Apr 2011
Posts: 219
Received Thanks: 69
Quote:
Originally Posted by manikas131 View Post
Ok thnx you all guys, finally i can't make Function for send messages on first character on acc xD
Why you dont exec tmagigitemgive threw tcreatechar? Thata the easiest way i think
randleman is offline  
Reply


Similar Threads Similar Threads
Verzögerter Win7 Start dank Avira Sicherer Start
04/24/2012 - Technical Support - 8 Replies
Hi Leute ich habe gestern bei Avira den sicheren start bevorzugt.Er startet auch jetzt schneller aber wenn ich den PC anmache und das Windows wird gestartet weggeht dann kommt blos ein weißer mauszeiger und der bildschirm bleibt schwarz.Das ganze dauert 2min.Dann bin ich beim Anmeldebildschirm. Ist das bei euch auch so?? Hier mein HijackThis log :
Change Start-Message on ChatBox in Silkroad
11/11/2011 - SRO Coding Corner - 15 Replies
I want to change the Start-Message in Silkroad with my own Message(Clientsided). This here is the place in Ollydbg: 0077F5E3 E8 F83A0100 CALL sro_clie.007930E0 0077F5E8 68 3C10D900 PUSH sro_clie.00D9103C ; UNICODE "UIIT_STT_STARTING_MSG" 0077F5ED B9 4883EB00 MOV ECX,sro_clie.00EB8348 0077F5F2 E8 89B41300 CALL sro_clie.008BAA80 0077F5F7 8378 18 08 CMP DWORD...
[ESRO]Start client, login, select character, click start and stop...
06/23/2011 - SRO Private Server - 1 Replies
Okay, so whats up with that new thing when you get to select character screen, when you click start it does nothing? DONT JUST SAY SAME, I know you have the same problem... You can thank me if you have the same problem tho... :P
Start up message on 5165 wont't change??
12/24/2010 - Conquer Online 2 - 1 Replies
"Welcome to korolos socure..." I have changed it in the Teleport.cs, build then debugged. When i logged in the message was still the same?? Any help would be appreciated.



All times are GMT +1. The time now is 05:22.


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