theong456 Posted May 5, 2021 Group: Members Topic Count: 7 Topics Per Day: 0.00 Content Count: 18 Reputation: 0 Joined: 04/30/18 Last Seen: 5 hours ago Share Posted May 5, 2021 (edited) Hello everyone maybe Bonus_script error I use my item - Id: 14603 AegisName: MistressS Name: Mistress Scroll Type: Usable Weight: 10 Trade: Override: 100 NoDrop: true NoTrade: true NoSell: true NoCart: true NoGuildStorage: true NoMail: true NoAuction: true Script: | specialeffect2 EF_SPELLBREAKER; bonus_script "{ bonus bNoGemStone; bonus bUseSPrate,25; }",180,0,0,EFST_MVPCARD_MISTRESS; and - Id: 14602 AegisName: TaogunkaS Name: Tao Gunka Scroll Type: Usable Weight: 10 Trade: Override: 100 NoDrop: true NoTrade: true NoSell: true NoCart: true NoGuildStorage: true NoMail: true NoAuction: true Script: | specialeffect2 EF_LIGHTSPHERE; bonus_script "{ bonus bMaxHPrate,100; bonus bDefRate,-50; bonus bMdefRate,-50; }",180,0,0,EFST_MVPCARD_TAOGUNKA; I Log out now and log in now Bonus script gone and show im Charserv.bat about plz help me Edited July 6, 2021 by Mael Use codebox Quote Link to comment Share on other sites More sharing options...
0 Litro Endemic Posted July 7, 2021 Group: Members Topic Count: 25 Topics Per Day: 0.01 Content Count: 283 Reputation: 79 Joined: 06/13/13 Last Seen: June 7, 2023 Share Posted July 7, 2021 you can't use same type, for each bonus look at the db structure -- -- Table structure for table `bonus_script` -- CREATE TABLE IF NOT EXISTS `bonus_script` ( `char_id` INT(11) UNSIGNED NOT NULL, `script` TEXT NOT NULL, `tick` BIGINT(20) NOT NULL DEFAULT '0', `flag` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0', `type` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0', `icon` SMALLINT(3) NOT NULL DEFAULT '-1', PRIMARY KEY (`char_id`, `type`) ) ENGINE=InnoDB; and script command of bonus_script *bonus_script "<script code>",<duration>{,<flag>{,<type>{,<status_icon>{,<char_id>}}}}; This command will attach a script to a player for a given duration, in seconds. After that time, the script will automatically expire. The same bonus cannot be stacked. By default, this bonus will be stored on `bonus_script` table when player logs out. Flags (bitmask): 1 : Remove when dead. 2 : Removable by Dispell. 4 : Removable by Clearance. 8 : Remove when player logs out. 16 : Removeable by Banishing Buster. 32 : Removable by Refresh. 64 : Removable by Lux Anima. 128 : Remove when Madogear is activated or deactivated. 256 : Remove when receive damage. 512 : Script is permanent, cannot be cleared by bonus_script_clear. 1024: Force to replace duplicated script by expanding the duration. 2048: Force to add duplicated script. This flag cannot be stacked with 1024, if both are defined, 1024 will be checked first and ignore this flag. Types: This will be used to decide negative or positive buff for 'debuff_on_logout'. 0: Ignore the buff type and won't be removed if the flag is not &8 (Default) 1: Buff 2: Debuff Status_icon: See "Status Icon" section in 'src/map/script_constants.hpp'. Default is SI_BLANK (-1). Example: // Apple gives you +5 Str bonus for 1 minute when it's consumed. 512,Apple,Apple,0,15,,20,,,,,0xFFFFFFFF,63,2,,,,,,{ bonus_script "{ bonus bStr,5; }",60; },{},{} this 2 script contain same type and then resulting duplicate entry, which was clear if you read in console (150003, 0) 150003 is that char id and 0 is the type. bonus_script "{ bonus bNoGemStone; bonus bUseSPrate,25; }",180,0,0,EFST_MVPCARD_MISTRESS; bonus_script "{ bonus bMaxHPrate,100; bonus bDefRate,-50; bonus bMdefRate,-50; }",180,0,0,EFST_MVPCARD_TAOGUNKA; for the fix, you can change the primary key in the db. since type field is only have 3 type 0,1,2 which maybe will be used in multiple script_bonus script, try replacing the primary key of table with char id and icon, which mean you can't use same icon for each entry of bonus_script and icon has many type and you can make new icon too. -- -- Table structure for table `bonus_script` -- CREATE TABLE IF NOT EXISTS `bonus_script` ( `char_id` INT(11) UNSIGNED NOT NULL, `script` TEXT NOT NULL, `tick` BIGINT(20) NOT NULL DEFAULT '0', `flag` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0', `type` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0', `icon` SMALLINT(3) NOT NULL DEFAULT '-1', PRIMARY KEY (`char_id`, `icon`) ) ENGINE=InnoDB; Quote Link to comment Share on other sites More sharing options...
Question
theong456
Hello everyone
maybe Bonus_script error
I use my item
and
I Log out now and log in now
Bonus script gone
and show im Charserv.bat about
plz help me
Edited by MaelUse codebox
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.