Leaderboard
Popular Content
Showing content with the highest reputation on 07/09/12 in all areas
-
2 points
-
E - Script Collection Last Update : September 10, 2013 Refine Function SQL Mission Board Monster Marching Vendor Control Advanced Stylist Coin Exchanger Doppelganger Race Of The Day Limited Items Multi Currency Shop Random News GM Online List Link Broken E-Inquiry DotA Runes Flower Counting Game Class Restriction Chain Quest Build Manager Misc Scripts : Freebies Script Card Trader Gold Room [ Pick Gold ] Gold Room [ Guild Tax ] Map Restriction [ GM Based ] Daily Reward Monthly Reward Monster Spawner Monster Summoner with Last Summoned Display Players Stats & Equipments 3rd Job Item Giver Exchanger [ Cashpoint to Coins ] Exchanger [ Poring Coin - Zeny ] Exchanger [ Points to Tickets ] Exchanger [ Item to Item ] Exchanger [ Item to Item ] Exchanger [ Multi Item to 1 Item ] Party Match Auto Ban Over Stats Users Soul Link Buff Kill Players gain Cash Points Party Members All Get Items [ Snippet ] Message Board Stalker Class Skill Reproduce NPC Multiple Selection Quest [ Template ] In-Game Item Rewarder In-Game Points Rewarder Invasion Event Custom Item Rate Status Point Seller [ Snippet ] Anti Bot Security Script Anti Bot Script [ Code / Question ] Item Combo Restriction [ LHZ Card ] Drop Item Upon Death PVP Switcher + Announcer [ Guild Master ] Rotating Waitingroom Messages +10 Refiner [ Specific Items ] Random Rate Item Exchanger MVP Invasion Premium Users [ Boost Rates ] Display Cutin Image upon Login Custom Randomed Box Items Kick GM during WOE Custom Crafting NPC Restrict Same IP [ Certain Map ] Coloured Items Exchanger Guild Master Changer Party Team PK Match Gambling Game IRC Channel Crafting NPC Guild Storage Restriction Stage Game [ Version 4 ] Monster Wiki Event [ Version 3 ] Special Thank you for my Tutor : Notes : I am a bit lazy to write all those Script Descriptions, i do believe that all of you able to get how this script works. Anyway, i will still doing my best to write the Updated Changelog or informations about the script as detail as possible. All the Scripts above are uploaded to Pastebin . Abide the Following Rule : Scripts Error / Not Working , you have to Explain it in Details. ( Add in Images / Modified Scripts ) Do not SPAM / BUMP in my Topic. Do not ask for Support stuffs for other Scripts in this Topic. Link Down , then drop [ @Emistry ] a message. I Reserved the Right for NOT Answering your Posts if you did not abide my Topic's Rules. Keep This In Your Mind : All the Scripts i distribute here are NOT FOR COMMERCIAL USES . DO NOT remove my Credits if you are using part of the scripts to modify your own. DO NOT re-release the scripts in any form / way. If you ♥ these Scripts , Click on to Vote this Topic up. Or you may also click on at above the Topic1 point
-
File Name: Simple rAthena Status Script[b]File Submitter[/b]: Lawliet [b]File Submitted[/b]: 22 Jan 2012 [b]File Category[/b]: Web Resources Show your eAthena / rAthena server status and count player online requires: PHP5.2+ , MySql Sorry for my bad english Click here to download this file1 point
-
File Name: @Warp / @Go Damage Delay File Submitter: Ind File Submitted: 16 Apr 2012 File Category: Source Modifications Made this modification based on a user request http://rathena.org/board/topic/61753-warp-delay/ This modification allows you to setup a delay in milliseconds between last received / issued player damage and a use of @warp/@go. By default it ships with a 5 second (5000 milliseconds) delay, and it won't work on GMs Customizing: - Changing @go delay You'll find this in atcommand.c if( !pc_get_group_level(sd) && DIFF_TICK(gettick(),sd->canlog_tick) < 5000 ) { clif_displaymessage(fd,"@go cannot be issued since you were into battle recently"); return -1; } Change the 5000ms (5s) to your desired value. - Changing @warp delay You'll find this in atcommand.c if( !pc_get_group_level(sd) && DIFF_TICK(gettick(),sd->canlog_tick) < 5000 ) { clif_displaymessage(fd,"@warp cannot be issued since you were into battle recently"); return -1; } Change the 5000ms (5s) to your desired value. - Make it not count if player was damaged by monster You'll find this in pc.c sd->canlog_tick = gettick(); if( src->type == BL_PC ) ((TBL_PC*)src)->canlog_tick = gettick(); Change to if( src->type == BL_PC ) { ((TBL_PC*)src)->canlog_tick = gettick(); sd->canlog_tick = gettick(); } so that the delay will only count when damaged vs a player / when a player damages each other. Click here to download this file1 point
-
Inds CeresCP Featuring KeyWorld's Theme. As you may know I'm the new head developer of the Ceres Control Panel, and I've been writing a completely new CP from the ground up. This thread is meant to introduce the project properly and to receive feedback and suggestions, make yourself comfortable to post all your thoughts. Inds CeresCP : Features Some of the highlights Accounts One account can create subaccounts and manage all of them with a single login. Optional "Create Forum Account" checkbox on registration page, works for most popular forum software (ipb/vb/smf/phpbb/others) [*]Administration Features All CP settings (except db connection ones) and features can be managed from the webpage, no ftp/file editing required, this includes theme settings and languages (you can edit languages and add new language sets directly from the admin pages). New themes and modifications can be installed from the webpage as well by uploading their zip/rar file (no ftp required), the cp will process and install them accordingly. [*]System Features The whole control panel backend was written with a single thing in mind "performance". It uses as little queries as it can use and caches all it can in static files for the fastest available page load. It's faster than any control panel out there including the previous version of ceres and uses much less memory. All features of the previous version of ceres were redesigned and are also included.1 point
-
File Name: FREE Thor Patcher Skin - PSD + CODED File Submitter: Gerome File Submitted: 03 Jan 2012 File Category: Client Resources I included a PSD File, so you can Edit the Server Name. Click here to download this file1 point
-
Enables leaving the guild without going to the guild menu (alt+g) Idea from the request of Jhosef. Updates: • Updated @leaveguild so it can now check if the invoker of the command is a guild master. if it is, it will tell the user to use @breakguild instead. • Added @breakguild, an alternative for /breakguild "Guild name" • Added @guildinvite, enabling invitation of players out of sight of the inviter. Usage: @leaveguild <message is optional> @breakguild /* needs to be a guild master to use */ @guildinvite <player name required> /* needs to be an inviter to use */ guild @commands.patch1 point
-
No problem lol I'm not 100% sure.. but I think you can make it yourself.. by finding: case HW_NAPALMVULCAN: skillratio += 10*skill_lv-30; break; and adding this: case HW_MAGICCRASHER: skillratio += 40*skill_lv; break; right under it =/ I'm not 100% sure this will work so test it at your own will.1 point
-
Мое решение: http://rus-ea.ru/for...posts&p=165#165 Сейчас не могу опробовать, но хотел бы узнать, верно или нет1 point
-
I think this is what you're looking for then: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/db/re/job_db1.txt Increase the attack damage based on the weapon being handled.1 point
-
Well.. still looking in: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/src/map/battle.c You could always raise the power to a skill in this configuration. So going down towards RG_RAID, it states: case RG_RAID: skillratio += 40*skill_lv; break; You could always change that 40 to a 100 or w.e suits your needs. But don't forget that the power increases * (times) the skill level.1 point
-
For the Sonic Blow part, go here: https://rathena.svn....rc/map/battle.c Find: if (sc && sc->data[sC_SPIRIT] && sc->data[sC_SPIRIT]->val2 == SL_ASSASIN) ATK_ADDRATE(map_flag_gvg(src->m)?25:100); //+25% dmg on woe/+100% dmg on nonwoe This is the whole code: case AS_SONICBLOW: if (sc && sc->data[sC_SPIRIT] && sc->data[sC_SPIRIT]->val2 == SL_ASSASIN) ATK_ADDRATE(map_flag_gvg(src->m)?25:100); //+25% dmg on woe/+100% dmg on nonwoe if(sd && pc_checkskill(sd,AS_SONICACCEL)>0) ATK_ADDRATE(10); And just remove this part: if (sc && sc->data[sC_SPIRIT] && sc->data[sC_SPIRIT]->val2 == SL_ASSASIN) ATK_ADDRATE(map_flag_gvg(src->m)?25:100); //+25% dmg on woe/+100% dmg on nonwoe So that you're left with: case AS_SONICBLOW: if(sd && pc_checkskill(sd,AS_SONICACCEL)>0) ATK_ADDRATE(10); That should stop the extra damage output from Soul Link spirit. Also, you could always lower the damage. As for Reject sword.. I'm not quite clear on what you really mean =/1 point
-
Group levels are rAthena only, you'll want to do a GM level check instead: battle_config.any_warp_GM_min_level > pc_isGM(sd)1 point
-
Не помогло. Всё равно после запуска exe меняет на 640 на 480 Похоже вычислил. Сейчас проверяю но похоже проблема была в параметре Read Data Folder First Всё. Вроде всё ок, работает, осталось разобраться с подходящим переводом и всё ок. А то почему то описание скилов и ещё много что отвалилось. В общем всем спасибо за комментарии и советы.1 point
-
[status]: Request for connection of admin (ip: 81.28.173.6). [Notice]: Authentication accepted (account: admin, id: 2000001, ip: 81.28.173.6) [status]: Connection of the account 'admin' accepted. [info]: Closed connection from '81.28.173.6'. [info]: request connect - account_id:2000001/login_id1:579474549/login_id2:47489349 [info]: Loading Char Data (2000001) [info]: Char load request (150002) [info]: storage load complete from DB - id: 2000001 (total: 0) [info]: Loaded char (150002 - Batman): status memo inventory cart storage skills friends hotkeys mercenary [info]: Selected char: (Account 2000001: 1 - Batman) [info]: Subnet check [81.28.173.6]: WAN [info]: clif_parse: Disconnecting session #6 with unknown packet version (p:0x464d,l:19). [info]: Closed connection from '81.28.173.6'. хм... как интересно, вот тут я маху дал. ошибку вижу как исправить пока не знаю. Так с EXE разобрался. Идеально подошел 2012-04-10aRagexeRE_J.exe Осталась проблема с Setup.exe никто не сталкивался с такими траблами?1 point
-
[script][npc] Advanced Tombstone v1.03 Зачастую игроки хотят знать, когда воскреснет MVP, да и кто такой супер-крутой его смог забить, а многим админам хотелось бы иметь удобный инструмент для работы с MVP (отключить не залезая в конфиги, убить, чтобы игроки могли спокойно бегать по локации или оживить убитого MVP для соискателей приключений). Описание Скрипт позволяет управлять MVP (и не только, при желание), получать информацию о состояние MVP. Скачать Скрипт версии 1.03: скачать (в базе монстров все mvp от 13.2, Maya Purple и один тестовый квестовый моб) (Используя скрипт вы обязуетесь следовать лицензионному соглашению указанному в скрипте) Вот список возможностей: После смерти Монстра создаётся Tombstone с информацией о монстре, кто его убил и времени его воскрешения; Имеется несколько режимов состояние монстра (Живой, мёртвый и ждёт воскрешения, отлючен); Запоминание режима даже после перезагрузки (координаты Tombstone так же запоминаются); При отключение выставляется в стандартно установленное место (Координаты прописываются в таблицу скрипта); Координаты respawn'а выставляются как и в map monster (а не как в areamonster, кому интересна разница читайте doc'и); Время respawn'а указывается как в map monster (а не как в оригинальном Tombstone); Можно указывать имя моба, а не брать стандартное из mobdb; Специальный NPC с помощью которого GM'ы могут управлять режимом монстров (Убить монстра, оживить немедленно, отключить) и получить некоторые сведения о состояние монстра; После смерти монстра создаётся NPC Tombstone с окном чата сообщающим когда монстр оживёт, что он отключен или был убит и квест завершён; При разговоре с NPC Tombstone сообщается имя убившего (отключившего) его персонажа, для GM'ов есть функция мгновенного оживления монстра; Создание монстра можно вызывать из любого скрипта (методом вызова глобальной функции), что позволяет делать квесты. Недостатки и ошибки Я могу назвать только одну ошибку — при использование GM команды @killmonster скрипт работает некорректно. Так же не работает зеркало (будет говорить, что MVP на карте необнаружены, imho, не критично, т.к. Tombstone показывает нужную информацию и без того). Если что-то найдёте — отписывайтесь. Скриншоты Примечание Базы монстров скрипта настроены на обычный сервер, не Renewal, если вам нужно для Renewal, то боюсь придётся немного потрудиться базы сильно отличаются. Вы так же должны очистить(закомментировать) все записи о расположение текущих монстров в скриптах NPC. Для доступа к MVP Master и функции оживления монстра из Tomb'а нужен GM уровень не ниже 50ого, иначе NPC вас будут просто троллить Таблица монстров скрипта Массивы данных: setarray .mvpbmid[0],0; // Mob ID setarray .mvpbdl1[0],0; // Respawn Delay1 (in seconds, if is 0 - then mob consider as Quest Mob and not creating on first OnInit) setarray .mvpbdl2[0],0; // Respawn Delay2 (in seconds, if is 0 - then not create Tomb and Chat Room) // Default Tombstone coordinates X,Y setarray .mvpbcdx[0],0; setarray .mvpbcdy[0],0; // Area coordinates to spawn X,Y,X1,Y1 (if X and Y = 0 - get random area) setarray .mvpbcx[0],0; setarray .mvpbcy[0],0; setarray .mvpbcx1[0],0; setarray .mvpbcy1[0],0; setarray .mvpbaname$[0],""; // Name for Admins NPC (if empty then get from MobDB) setarray .mvpbmname$[0],""; // Mob name setarray .mvpbevent$[0],""; // Do Event on Kill Monster (empty to nothing todo) mvpbmid — MobID (идентификатор монстра) соответствующий идентификатору в базе - mob_db.txt mvpbdl1 — Время респауна (указывается в секундах!), через какое минимальное кол-во времени монстр воскреснит, если значение установлено равное 0, то монстр считается квестовым и после своей смерти он не пересоздаётся, чат комната так же имеет иное содержание, а не время до следующего респауна mvpbdl2 — Разница во времени респауна (в большую сторону, указывается в секундах), если значение установлено равное 0, то после смерти монстра не создаётся его Tombstone mvpbcdx, mvpbcdy — Расположение по-умолчанию Tombstone (X, Y), это место, где будет установлен Tombstone при убийстве или отключение монстра через Admin NPC mvpbcx, mvpbcy, mvpbcx1, mvpbcy1 — X, Y - коордианты появления монстра (если координаты равны 0, то коордианты берутся случайным образом относительно всей локации), X1, Y1 - разброс в появление монстра (X, Y при этом являются центром зоны появления, а X1, Y1 - диаметром) mvpbaname$ — Название монстра для меню Admin NPC, если оставить пустым, то возьмётся имя из базы mvpbmname$ — Название монстра, можно указывать какое имя из базы брать ("--ja--" - корейское название, "--en--" - английское название, или указывать своё название) mvpbevent$ — Обработка Event после смерти моба, чаще всего необходима для создания квестов (смотрите пример в скрипте с Yggas'Worth) Пример для монстра Fallen Bishop: callsub(L_AddMobDB,1871,7200,600,238,73,236,78,21,18,"","--en--",""); Добавление монстра Добавление монстра проходит в две стадии — первая стадия включает в себя дубликата NPC на нужную локацию с определённым именем, вторая — прописывание данных в таблицу монстров скрипта. Итак, для начала добавляем дубликат NPC, тут ничего сложного, находим последнюю запись дубликатов, допустим, у нас всего два монстра и последняя запись, пусть будет примерно такая: prontera,0,0,0 duplicate(tombstone_dup) Tomb#2_mvp 565 Запоминаем, что название NPC — Tomb#2_mvp, сейчас нам очень важна скрытая часть названия «2_mvp» — здесь важная цифра, это «2», значит в таблице всего 2 монстра, добавляем нашего нового монстра, пусть это будет Beelzebub (#1873), заглядываем в npc/mobs/dungeons/abbey.txt и находим нашего монстра: abbey03,0,0,0,0 boss_monster Beelzebub 1873,1,43200000,600000,1 Комментируем эту строчку и добавляем после последнего найденного нами дубликата NPC в скрипте строчку, указывая в скрытом название NPC следующий номер (2_mvp был последним, значит теперь будет 3_mvp): abbey03,0,0,0 duplicate(tombstone_dup) Tomb#3_mvp 565 Отлично, теперь нам надо добавить информацию о монстре, добавляем в таблицу монстров скрипта строчку: callsub(L_AddMobDB,1873,43200,600,120,112,0,0,0,0,"","--en--",""); Монстр добавлен и при перезагрузке появится на указанной локации. Немного о глобальной функции Для взаимодействия самого скрипта монстров с внешними NPC было созданное небольшое API (не слишком хорошо написанное, но рабочее). Это функция tmvp_menu, она имеет входящие ключи для определения того, что именно вам нужно (getarg(0)), вот id ключей и их краткое описание: 0 - Вызывается при основном OnInit скрипта монстров, создаёт нужные переменные и устанавливает первый пункт для Admin NPC - «Nothing» 1 - Вызывается при OnInit скрипта монстров, запоминает нужные данные для последующей работы 2 - Возвращает созданное меню (список монстров со статусом, работает медленно, т.к. обращается к глобальным данным) 3 - Устанавливает режим монстра в «Суицид», входящим данным (getarg(1)) является номер пункта меню, возвращает 0 — если всё прошло успешно, 1 — монстр не может быть установлен в режим (режим уже установлен или монстр отключен) 4 - Устанавливает режим монстра в «Оживить», возвращает 0 — если монстр создан успешно, 1 — монстр уже создан и не может быть создан снова, входящим данным является номер монстра (mvpbid) в таблице монстров скрипта 5 - Возвращается текст из пункта меню (Обычно это имя монстра), входящим данным является номер пункта меню 6 - Устанавливает режим монстра в «Суицид», входящим данными является mvpbid и имя персонажа, которое будет установлено как имя убийцы монстра, возвращаемые данные такие же, как и для 3 7 - Возвращает состояние монстра (Текстовое сообщение), входящим данным является mvpbid 8 - Возвращается mvpbid, входящим данным является номер пункта меню 9 - Устанавливает режим монстра в «Убить и отключить», входяшими данными является mvpbid и имя персонажа, возвращает 0 — при успешном выполнение, 1 — если монстр уже отключён. Формат вызова функции: callfunc("tmvp_menu", <номер ключа>(, <входящие переменные>)); Входящие переменные: mvpbid — это ID монстра в таблице скрипта, это не одно и то же, что и MobID. номер пункта меню — это уникальный идентификатор пункта меню для Admin NPC, который создаётся в 0 и 1 ключах функции, вызывается такое меню ключом 2 charname — имя персонажа игрока Пример, убить монстра №2: callfunc("tmvp_menu", 6, 2, strcharinfo(0)); Пример, воскресить монстра №2: callfunc("tmvp_menu", 4, 2); Для наглядности в скрипт добавлен NPC Yggas'Worth, он создаёт Поринга с кастумным названием и ждёт пока вы его не убьёте. На самом деле это самый простой пример, но вы можете добавлять каких-либо сложных монстров и создавать на этой основе квесты. Немного о глобальных переменных Их несколько, но вы можете использовать их в своих скриптах для создания квестов: $tmvp<mvpbid>_state — Признак состояния монстра (см ниже) $tmvp<mvpbid>_nick$ — Имя персонажа убившего монстра (учтите, что при измененеие состояния эта переменная не очищается) $tmvp<mvpbid>_x и $tmvp<mvpbid>_y — Координаты где расположен Tombstone (учтите, что при измененеие состояния эта переменная не очищается) $tmvp<mvpbid>_time — Время (указан tick с момента начала эпохи) до начала действия признака события (используется только для подсчёта времени respawn'а монстра) $tmvp<mvpbid>_created — Создан ли монстр (необходимо для некоторых проверок) (0 - нет, не создан, 1 - создан и бегает) $tmvp<mvpbid>_frun — Первый или нет запуск (0 - первый запуск, 1 - запуск уже был), необходимо для квестовых мобов, чтобы они не создавались Признаки состояния монстров: 0 — Монстр жив и где-то бегает 1 — Признак на суицид 2 — Монстр убит и ожидает времени respawn'а 3 — Признак на немедленное оживление 4 — Признак на суицид и отключение 5 — Монстр отключён и ждёт включения 6 — Для квестового монстра, состояние его смерти (убит и ожидает оживления через квест) Вы можете использовать эти данные для написания скриптов квестов (смотрите пример в скрипте на Yggas'Worth). Механика Скрипт работает на режимах, это так называемые признаки событий, действия происходят не мгновенно, а только создают признак этого события. К примеру, вы выставляете монстру признак события на суицид, обработка этого события произойдёт в течени 5 секунд, когда внутренний обработчки скрипта распознает этот признак и примет решение о том, что нужно сделать. Итерация обработчика - 5 секунд (OnTimer5000), вы можете поменять это значение на другое, но на свой страх и риск, учтите, что чем меньше вы делаете время обработки, тем больше нагрузок создаётся на ваш сервер (я считаю идеальным обработку каждые 10 секунд, но выставил 5, чтобы задержка составляла минимальную серверную). Благодарности Своей девушке, что разрешала работать над скриптом по ночам Sanasol — автору основного скрипта, я взял кусочек его кода (функция вывода времени, копирайт указан в скрипте, прошу прощения, было лень писать точно такую же функцию). Heler'у — за то, что оказывал некоторую помощь. nndsl — за подкинутую идею.1 point