jaBote
Community Contributors-
Content Count
2037 -
Joined
-
Last visited
-
Days Won
43
Content Type
Profiles
Forums
Downloads
Staff Applications
Calendar
Everything posted by jaBote
-
Nope. It's about the bindatcmd scripting command, which enables you to quickly attach a NPC script to any custom atcommand you can make.
-
I don't know at the moment. Maybe you're using old Izlude map on your client while the server thinks you're using the new one? Or vice-versa: you're using the new one and the server thinks you have the old one? There had been a lot of problems with izlude about this before. P.S.: Please try to make a separate topic for each issue. This way we'll have better forum organization and people will also reply your topic better and faster.
-
If you're using TortoiseGit, you'll usually get some more text if you scroll a bit up the error message, so that I know a bit more of info about that.
-
Try to scroll up a bit, there's some explanation text up there. What does it say?
-
That's close2; Close means creating a close button and ending the script, and will not work if there's no message dialog open. Close2 means creating a close button that will continue the script after being clicked until an end; is found there. Anyways I think there's no message dialogs there so you could possibly remove that close2; and the script would keep working without any problems. I'd test that if I had any means of doing so.
-
I think it's already made for accounts.
-
The idea is good, but good developers will jealously keep their secrets from being told to other projects until they implement them first. So it won't have any actual effect on improvement of any kind.
-
Why ask for a paid scriot when you have the chance of getting it for free as long as it gets contributed to the community?
-
Supposing you're using a Linux console for it: If you are using subversion: go to your repository folder and issue this svn up If you are using Git, go to your repository folder and use this command: git pull Hope this works. For more information and basic troubleshooting, please check this topic: http://herc.ws/board/topic/152-obtaining-hercules/
-
Request Script Syntax Again :)))) THANKS IN ADVANCE SCREEN SHOT INCLUDED
jaBote replied to esquilla13's question in Database Requests
Why don't you try to make it yourself? It's quite easy. Plus, with the aid of doc/item_bonus.txt, doc/script_commands.txt and maybe some online database that interprets the meaning of the item script such as http://midgard-library.org/ (beware it's outrageously outdated but still does its job, just look for comparable item effects) it shouldn't be too complicated. You just need spending some time by yourself the first time, then next time you'll spend a bit less and have less doubts, until you master it and will make item scripts quickly without any problems. -
I don't quite understand what you've got, but glad you got it working!
-
It seems we missed to approve the file. There you go. Sorry!
- 64 replies
-
- autoattack
- @autoattack
-
(and 3 more)
Tagged with:
-
R>Daily Login Reward thats supports many items
jaBote replied to konzen002's question in Script Requests
Yes, it is. Notice the # before some variable names, that means they are account variables. -
This counts a week from the first time you talk to the NPC. I could calculate next Monday for you but I'll do that when I'm back home or have some free time, if anybody else hasn't already done that. P.S.: It's easier if you calculate next Sunday instead of Monday.
-
Try something like this? - script your_week_test -1,{if (next_week > gettimetick(2)) { // It's not next week yet or user doesn't have anything if (times > .max_times) { mes "Sorry, you can't use me until next week."; close; }}else { set times, 0; set next_week, gettimetick(2) + (7 * 24 * 60 * 60); // 7 days, 24 hours, 60 mins, 60 secs (delay starting from first time he's spoken, start of the week can be calculated but it's a bit more messy) mes "This is the first time you talk to me this week!";}// Something goodset times, times+1;mes "You have talked to me " + times + " times this week total.";close;OnInit:set .max_times, 3;end;}
-
Maybe it'd be too much of a mess, and I'd prefer the instance_set_timeout script command rather than the database, since it's way more configurable and flexible (you only have to script the edit, not messing elsewhere) than using instance_db.txt
-
About the Git release of Hercules, (i want to change it to pre-re)
jaBote replied to rmon008's question in Source Support
There have been some recent database changes. You should go over to your sql-files/upgrades folder and run the new SQL files you have (not the ones you had before upgrading). -
About the Git release of Hercules, (i want to change it to pre-re)
jaBote replied to rmon008's question in Source Support
Yeah, I told you the errors in pre-re arise because of a flaw that we spotted and corrected and the other ones are caused by your custom scripts, that don't work well with pre-re. -
About the Git release of Hercules, (i want to change it to pre-re)
jaBote replied to rmon008's question in Source Support
You should also comment the RENEWAL define, because that's what effectively disables Renewal (the other defines just disable some parts of Renewal) The Ponka Hontas and Dollshoi duplicates problem were a problem that previously was in official Hercules and they have already been solved, please update your revision; Also, it seems you are using custom scripts or shops that have items not available in pre-renewal. Please try booting your server without any custom NPCs to see if these error still keeps appearing. -
try something like this (save this file as emblem.php and put it on your file, remember you should edit some configs) <?php/* emblem.php v0.1 - By MagicalTux & LebrEf - Idea : LebrEf Code : MagicalTux (90%) - LebrEf (10%) Updates: evos > palette load, fread(); crashed the script > 8bits images were a pixel off to the right*/// HOW THIS WORKS: access to this file appending a guild ID. ex your/web/emblem.php?guild=<guild_ID>$host_sql = 'localhost'; // Your SQL database$user = 'root'; // Your MySQL user name$pass = 'pass'; // Your MySQL password for user$db = 'ragnarok'; // Your main Ragnarok database$mysql_game = @mysql_connect( $host_sql, $user, $pass ) or die( "Can't connect to MySQL server [1]" );@mysql_select_db( $db, $mysql_game ) or die( "Can't connect to MySQL server [2]" );function imagecreatefrombmpstring($im) { $header = unpack("vtype/Vsize/v2reserved/Voffset", substr($im,0,14)); $info = unpack("Vsize/Vwidth/Vheight/vplanes/vbits/Vcompression/Vimagesize/Vxres/Vyres/Vncolor/Vimportant", substr($im,14,40)); extract($info); extract($header); if($type != 0x4D42) return false; // signature "BM" $palette_size = $offset - 54; $ncolor = $palette_size / 4; // $gd_header = "";// // true-color vs. palette// $gd_header .= ($palette_size == 0) ? "xFFxFE" : "xFFxFF"; // $gd_header .= pack("n2", $width, $height);// $gd_header .= ($palette_size == 0) ? "x01" : "x00";// if($palette_size) $gd_header .= pack("n", $ncolor);// // no transparency// $gd_header .= "xFFxFFxFFxFF"; $imres=imagecreatetruecolor($width,$height); imagealphablending($imres,false); imagesavealpha($imres,true); $pal=array(); if($palette_size) { $palette = substr($im, 54, $palette_size); $gd_palette = ""; $j = 0; $n=0; while($j < $palette_size) { $b = ord($palette{$j++}); $g = ord($palette{$j++}); $r = ord($palette{$j++}); $a = ord($palette{$j++}); if ( ($r==255) && ($g==0) && ($b==255)) $a=127; // alpha = 255 on 0xFF00FF $pal[$n++]=imagecolorallocatealpha($imres, $r, $g, $b, $a); } } $scan_line_size = (($bits * $width) + 7) >> 3; $scan_line_align = ($scan_line_size & 0x03) ? 4 - ($scan_line_size & 0x03): 0; for($i = 0, $l = $height - 1; $i < $height; $i++, $l--) { // BMP stores scan lines starting from bottom $scan_line = substr($im, $offset + (($scan_line_size + $scan_line_align) * $l), $scan_line_size); if($bits == 24) { $j = 0; $n=0; while($j < $scan_line_size) { $b = ord($scan_line{$j++}); $g = ord($scan_line{$j++}); $r = ord($scan_line{$j++}); $a = 0; if ( ($r==255) && ($g==0) && ($b==255)) $a=127; // alpha = 255 on 0xFF00FF $col=imagecolorallocatealpha($imres, $r, $g, $b, $a); imagesetpixel($imres, $n++, $i, $col); } } else if($bits == 8) { $j=0; while($j<$scan_line_size) { $col=$pal[ord($scan_line{$j++})]; imagesetpixel($imres, $j-1, $i, $col); } } else if($bits == 4) { $j = 0; $n=0; while($j < $scan_line_size) { $byte = ord($scan_line{$j++}); $p1 = $byte >> 4; $p2 = $byte & 0x0F; imagesetpixel($imres, $n++, $i, $pal[$p1]); imagesetpixel($imres, $n++, $i, $pal[$p2]); } } else if($bits == 1) { $j = 0; $n=0; while($j < $scan_line_size) { $byte = ord($scan_line{$j++}); $p1 = (int) (($byte & 0x80) != 0); $p2 = (int) (($byte & 0x40) != 0); $p3 = (int) (($byte & 0x20) != 0); $p4 = (int) (($byte & 0x10) != 0); $p5 = (int) (($byte & 0x08) != 0); $p6 = (int) (($byte & 0x04) != 0); $p7 = (int) (($byte & 0x02) != 0); $p8 = (int) (($byte & 0x01) != 0); imagesetpixel($imres, $n++, $i, $pal[$p1]); imagesetpixel($imres, $n++, $i, $pal[$p2]); imagesetpixel($imres, $n++, $i, $pal[$p3]); imagesetpixel($imres, $n++, $i, $pal[$p4]); imagesetpixel($imres, $n++, $i, $pal[$p5]); imagesetpixel($imres, $n++, $i, $pal[$p6]); imagesetpixel($imres, $n++, $i, $pal[$p7]); imagesetpixel($imres, $n++, $i, $pal[$p8]); } } } return $imres;}if( isset( $_GET['guild'] ) && ereg( "^[0-9]+$", $_GET['guild'] ) ){ //Mysql query $query_emblem = mysql_query( "SELECT `emblem_data` FROM `guild` WHERE `guild_id` = '".$_GET['guild']."';", $mysql_game ); $nb_emblem = mysql_num_rows( $query_emblem ); $fetch_emblem = mysql_fetch_array( $query_emblem ); $ebm=$fetch_emblem['emblem_data']; //Check... Emblem exist ? if( $nb_emblem != 0 && $ebm != 0 ) { $ebm=@gzuncompress(pack('H*',$ebm)); // need to convert that to PNG with transparency $im=imagecreatefrombmpstring($ebm); header('Content-Type: image/png'); //The guild emblem imagepng($im); exit; }}// Emblem failed to load - send empty image to prevent page from appearing broken$im = imagecreate(24, 24);$background_color = imagecolorallocatealpha ($im, 255, 0, 255,127);imagecolortransparent($im, $background_color);header ('Content-type: image/png');imagepng($im);exit;?>
-
About the Git release of Hercules, (i want to change it to pre-re)
jaBote replied to rmon008's question in Source Support
What kind of errors? Could you please show us? P.S.: You must recompile your server after applying the changes ossi0110 suggested so that the renewal to pre-renewal change takes effect. -
About the Git release of Hercules, (i want to change it to pre-re)
jaBote replied to rmon008's question in Source Support
If you no longer want them, just load item_db.sql, item_db2.sql, mob_db.sql, mob_db2.sql, mob_skill_db.sql and mob_skill_db2.sql from the sql-files folder into your main ragnarok database (named ´ragnarok´ by default). These scripts automatically drop the re databases if available, then work creating the new one. P.S.: You have both the re and the pre-re release on the same revision of Hercules. -
It's always a good time for learning.
-
Implemented in 7d8f83d8ff, with some fixing follow-ups like f8f073bc7e.
-
add addmonsterdrop and delmonsterdrop scriptcommands
jaBote replied to evilpuncker's topic in Approved
Thanks to @evilpuncker's pull request and some minot edits by this is now done in 7ddcff9a. Much appreciated!