-
Posts
249 -
Joined
-
Last visited
-
Days Won
4
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by Jey
-
Are you able to reproduce this issue somehow? I think this shouldn't be underestimated. I ran into this bug when testing the guild storage for pr #1115 and thought I fixed it in https://github.com/Jeybla/rathena/commit/f6ae6b05c9d94371cc0091af23d67dc5a453b47csince I couldn't reproduce it... If this issue is in the head revision we should fix it quick.
-
Utility: questprogress command compatibility script
Jey replied to Secrets's topic in Utility Script Releases
You're right. Converting everything is prolly not possible. But big parts are just routine which could simply be replaced by a script. Those parts that couldn't be converted by the script can be printed out as a warning with a small advice. -
Utility: questprogress command compatibility script
Jey replied to Secrets's topic in Utility Script Releases
Yes, we are! But I don't think Secrets didn't give credits intentionally. So let's stay calm I'd wish rathena and hercules could share even more work together. What about a complete python scripts to convert rathena scripts to hercules and reverse? Or using the same database structure and working on the database together? I'd love to see those things. Edit: Big thumbs up to Ridley and Nihad for sharing those scripts btw! -
Please use the rathena github repository. This will fix all your problems...
-
So simply use it like: npctalk "MyCoolNPCName: ..."; Edit: Just realized that I didn't understand the request. Sorry for that.
-
I have no clue what you want to do with with script. But you can replace this big switch with something like this: OnInit: //initialize arrays: setarray .cedi_cards[0],4001,4424,4025,4143,...; setarray .cedi_points[0],10,15,10,200,...; //make sure to add 64 entries to these arrays //... set .@rand0to63,rand(64); set .@card,.cedi_cards[.@rand0to63]; //renamed .card$ to .@card /* .card$ is a string, you should use just .card or .@card instead. The same goes for the other integer variables. I'd also recommend to use .@scope variables here instead of an .npc variable. */ set .@points,.cedi_points[.@rand0to63]; //renamed .cedi_points$ to .@points set .@cname$,getitemname(.cedi_cards[.@rand0to63]); // renamed .cname$ to .@cname$ //...
-
function script AbandonCastle { set .@castle_map$,getarg(0); // Kill guardians, disable the Kafra, and set owner to 0. killmonster .@castle_map$,"Guardian#"+.@castle_map$+"::OnGuardianDied"; disablenpc "Kafra Staff#"+.@castle_map$; SetCastleData .@castle_map$,1,0; // Wait before refreshing guild information. sleep 7000; Announce "Guild Base [" + GetCastleName(.@castle_map$) + "] has been abandoned.",0; donpcevent .@castle_map$+"::OnRecvCastle"; return; } Der Snippet ist prinzipiell geklaut aus agit_main.txt "OnGuildBreak". Für SE brauchst solltest du nochmal in agit_main_se.txt schauen ;>
-
Gilde breaken funktioniert immer Edit: Gerade mal in die Scripts geschaut. Scheint tatsächlich der einzige Weg zu sein ein Castle aufzugeben. Allerdings werden dann alle Castles der Gilde aufgegeben...
-
Script fehler? oder ich werde langsam zu alt...
Jey replied to riggesvanbuuren's topic in rAthena-Server
freeloop ist böse xD Normalerweise müsste dann auch im Mapserver ein Fehler mit "infinity loop" angezeigt werden. Aber wenn man sich das Script mal oben ansieht würde ich sowieso raten ein ganz anderes zu nutzen. Allein diese Massen an Labels x.x -
Script fehler? oder ich werde langsam zu alt...
Jey replied to riggesvanbuuren's topic in rAthena-Server
Kann gut sein, dass das Script einfach austimed. Ich würde aber definitiv den aktuelle git head empfehlen, statt eine nicht mehr supportete SVN Version. Link: https://github.com/rathena/rathena -
skillratio ist sozusagen der Prozentuale Wert von etwas. In diesem Fall von MATK. Der standard Wert ist 100 (bzw. 100%, bzw. 1 MATK), daher "fehlt" dort auch die 100. Siehe: https://github.com/rathena/rathena/blob/master/src/map/battle.c#L5419
-
Viele Damageberechnungen sind in der battle.c. U.a. auch für SG: https://github.com/rathena/rathena/blob/master/src/map/battle.c#L5564
-
Du wirst im src nicht 1:1 die Formeln aus dem IroWiki finden. Die meisten Einstellungen/Formeln findest du in der Skill.c oder im db-Ordner: https://github.com/rathena/rathena/blob/master/src/map/skill.c https://github.com/rathena/rathena/tree/master/db
-
Hi Sekiel, Allgemein Scripttechnisch würde ich das ungefähr so lösen: - Alle Vorkommnisse von resetlvl suchen - Entweder Scriptteile deaktivieren oder die Variable "lastJob" (Beispiel aus jobmaster.txt) nicht setzen. Im Jobmaster könnte man auch diese Einstellung unmöglich machen: setarray .Rebirth[0],99,50; // Minimum base level, job level to rebirth OR change to third class Aber nicht die standard Scripts (Valkyrie) vergessen ;>
-
script_commands.txt If you already tested it, there seems to be no script driven solution.So you should look for an example of raising fame in the src. Example for pharmacy_10 in src/map/skill.c: case 10: fame += battle_config.fame_pharmacy_10; // Success to prepare 10 Condensed Potions in a row //[...] if (fame) pc_addfame(sd,fame); The needed function is pc_addfame. Now you can simply create a script function like this:Add to src/custom/script.inc: /// Increases fame of the attached character /// /// addfame <fame points>; BUILDIN_FUNC(addfame) { int fame; struct map_session_data *sd = script_rid2sd(st); nullpo_retr(1, sd); //Player must be attached fame = script_getnum(st,2); if( fame < 0 ) { ShowError("addfame: Fame must be positive. (Fame=%d).\n", fame); return 1; } pc_addfame(sd,fame); return SCRIPT_CMD_SUCCESS; } Add to src/custom/script_def.inc: BUILDIN_DEF(addfame,"i"), Keep in mind that every job will get the fame points. Even if it's a High Wizard.
-
script that select random member from a party
Jey replied to Lord Ganja's question in Scripting Support
You're welcome ^^ -
script that select random member from a party
Jey replied to Lord Ganja's question in Scripting Support
np ^^ Just attach to the player and use strcharinfo like this: set .@pid,getcharid(1); //Set Party Id getpartymember .@pid,2; //Get Party Information while(1) { //Loops until a Player gets the item detachrid; //Detach from the first player set .@pm_aid,$@partymemberaid[rand($@partymembercount)]; //Saves the Account ID of the random Member if( attachrid(.@pm_aid) ) { //Just to be sure he is in the same party and not logged with another character if( getcharid(1) != .@pid ) continue; //Online, attached and in the same party: announce strcharinfo(0)+" has got the item.",bc_all; getitem 502,1; break; } } -
script that select random member from a party
Jey replied to Lord Ganja's question in Scripting Support
set .@pid,getcharid(1); //Set Party Id getpartymember .@pid,2; //Get Party Information while(1) { //Loops until a Player gets the item set .@pm_aid,$@partymemberaid[rand($@partymembercount)]; //Saves the Account ID of the random Member if( isloggedin(.@pm_aid) ) { getitem 502,1,.@pm_aid; break; } } -
Were too lazy to completely diff my Client again, so I just moved some lines of the "DisablePacketEncryption"-Patch by Ai4rei. Maybe someone needs it, too: Paste: df6z6jd1xyi
-
Yes. The Patcher will request the notice.html on startup. So put your status informations in it. To keep it up-to-date write a short script in php or shell/perl/python/... combined with cron.
-
The Thor Patcher contains a webview. So you can display the server status in it. (Con: You're bound to the webview space. Pro: Should be easy to implement)
-
Ist in den Settings ein Graphic Device und eine Auflösung ausgewählt?
-
Hi Amistad, I think you'ld like to increase status immunity for players to 200 vit. (Instead of the original 100 vit) So you just need to set pc_status_def_rate to 50.