Posted
almost 8 years
ago
October & November Digest 2015
The following digest covers the month of October 1st - October 31st 2015 and November 1st - November 30th 2015.
October Digest
Team Changes
Aeromesi has joined the team as a Support Leader.
Frost has joined the
... [More]
team as a Script Developer.
Development Highlights
Add support for mob_db in conf format
Add Mob_db converter from txt to conf
Convert mob_db to new format
Add new config to allow player vend/chat room nearby hidden npc
Updated libconfig to GNU Bison 2.5
Fixed message ID to a lower value
Error message when talking to a pre-defined channel
Database Highlights
Converted all the commented out mob_db/mob_db22 entries to the new format
Update the Status Icons based in kRO Update 10-21-2015
Missing Teleport Skill in RMSC2012 Headgears
Script Highlights
Added Items needed in eden_iro.txt
October Statistics
During the period there were 56 Commits.
Of these 56 commits, 1 included bug-fixes.
15 Commits from Pull Requests.
November Digest
Team Changes
None
Development Highlights
Fixes missing new RC_ constants in some bonuses
Split the source path reference retain mechanism out of npc_parsename
Updated items trade restriction
Fixed a crash in some skills' multi-hit code
Renamed hQueue/hQueueIterator/hQueueOpt to latest standards
Refactored the script queue system
Fix @QMapChangeTo$ not usable when HQO_OnMapChange triggered
Fixed too-generic constant names of gettime() types
Fix npc initialisation in first map (m == 0)
Add option for fix hit after warp
Moved class and dir initializers to npc_create_npc
Added subtype initializer to npc_create_npc
Split frequently repeated code to add/register new NPCs
Split npc_duplicate_sub into separate functions
Fixed a compilation error when the memory manager is disabled
Split the duplication logic away from the parsing logic in NPC duplicates
Scripting Highlights
Fixes Chance of Comodo Gambling
Converted some dealers to new trader format
Database Highlights
Update new NPC ID's
SC Update (Added 'Eden Crystal Synthesis' statuses and added 'Geffen Magic Tournament' statuses)
Several item Updates
Part 1
Update Geffen Scrolls to its official behavior and effect.
Added Official item effect of Mental Potion.
Fixed Chinese Pestel item effect.
Fixed Vitata500 not giving 5% sp.
Added 'Costume: Time Accessory'.
Part 2
Update the item 'Acaraje' to its official effect. (Ref: http://herc.ws/board/tracker/issue-7773-acaraje-12375/)
Fix 'Vitata500' not giving additional % in sp. (Thanks to Haru) (Ref: http://www.divine-pride.net/database/item/12436)
Fix Ljosalfar and Mermaid Bubbles disappear its effect when died / dispell and etc.
Part 3
Update Flame Stone, Ice Stone, Wind Stone, and Shadow Orb selling price base on kRO.
Update 'Mother_Heart' item effect. (Ref: http://www.divine-pride.net/database/item/2885)
Update 'Fools_Day_Box' and 'Fools_Day_Box2' based on Aegis.
Update some item scripts based on Aegis.
Changed some ItemID into Constants, Partial commit of my ItemID to Constant assignment.
Added New items and its effect and trade restrictions:
• Mercenary_Casting_ (ID# 12807) (Ref: http://www.divine-pride.net/database/item/12807)
• Mother_Love_Box (ID# 12808) (Ref: http://www.divine-pride.net/database/item/12808)
• Level_Up_Box (ID# 12809) (Ref: http://www.divine-pride.net/database/item/12809)
• Zherlthsh_Tck_Box_ (ID# 12819) (Ref: http://www.divine-pride.net/database/item/12819)
Part 4
Change the effect of 'Devil Morocc Card' from MaxHP to MaxSP (Ref: http://www.divine-pride.net/database/item/4559)
Change the behavior of 'Fools Day Box' and 'Fools Day Box2'. (Thanks to Haru and Emistry)
Added the combo effect script of 'White Knightage Card' and 'Khalitzburg Knightage Card'. (Ref: http://www.divine-pride.net/database/item/4608)
Fix 'Birdcage Of Paradise' where the skill bonus is not working in Ranger Job and seperate its combo effect.
- Added 54 New Cards up to the latest kRO Sakray Update (November 18, 2015)
• Infinite Toad Card (ID#4642) (Ref: http://www.divine-pride.net/database/item/4642)
• Infinite Vagabond Card (ID#4643) (Ref: http://www.divine-pride.net/database/item/4643)
• Infinite Vocal Card (ID#4644) (Ref: http://www.divine-pride.net/database/item/4644)
• Infinite Eclipse Card (ID#4645) (Ref: http://www.divine-pride.net/database/item/4645)
• Infinite Chimera Card (ID#4646) (Ref: http://www.divine-pride.net/database/item/4646)
• Infinite Osiris Card (ID#4647) (Ref: http://www.divine-pride.net/database/item/4647)
• Infinite Eddga Card (ID#4648) (Ref: http://www.divine-pride.net/database/item/4648)
• Infinite Phreeoni Card (ID#4649) (Ref: http://www.divine-pride.net/database/item/4649)
• [WIP] Infinite Infinite Orc Hero Card (ID#4650) (Ref: http://www.divine-pride.net/database/item/4650)
• Infinite Tao Gunka Card (ID#4651) (Ref: http://www.divine-pride.net/database/item/4651)
• Nightmare Amon Ra Card (ID#4652) (Ref: http://www.divine-pride.net/database/item/4652)
• Nightmare Arclouse Card (ID#4653) (Ref: http://www.divine-pride.net/database/item/4653)
• Nightmare Mimic Card (ID#4654) (Ref: http://www.divine-pride.net/database/item/4654)
• Nightmare Minorous Card (ID#4655) (Ref: http://www.divine-pride.net/database/item/4655)
• [WIP] Nightmare Mummy Card (ID#4656) (Ref: http://www.divine-pride.net/database/item/4656)
• [WIP] Nightmare Ancient Mummy Card (ID#4657) (Ref: http://www.divine-pride.net/database/item/4657)
• Nightmare Verit Card (ID#4658) (Ref: http://www.divine-pride.net/database/item/4658)
• Eggring Card (ID#4659) (Ref: http://www.divine-pride.net/database/item/4659)
• Scout Basilisk Card (ID#4660) (Ref: http://www.divine-pride.net/database/item/4660)
• Charge Basilisk Card (ID#4661) (Ref: http://www.divine-pride.net/database/item/4661)
• Big Eggring Card (ID#4662) (Ref: http://www.divine-pride.net/database/item/4662)
• Leaf Lunatic Card (ID#4663) (Ref: http://www.divine-pride.net/database/item/4663)
• Grass Fabre Card (ID#4664) (Ref: http://www.divine-pride.net/database/item/4664)
• Wild Honet Card (ID#4665) (Ref: http://www.divine-pride.net/database/item/4665)
• Sweet Roda Frog Card (ID#4666) (Ref: http://www.divine-pride.net/database/item/4666)
• Hunter Wolf Card (ID#4667) (Ref: http://www.divine-pride.net/database/item/4667)
• Trance Spore Card (ID#4668) (Ref: http://www.divine-pride.net/database/item/4668)
• Jungle Mandragora Card (ID#4669) (Ref: http://www.divine-pride.net/database/item/4669)
• Fruit Pom Spider Card (ID#4670) (Ref: http://www.divine-pride.net/database/item/4670)
• Sorcerer Celia Card (ID#4671) (Ref: http://www.divine-pride.net/database/item/4671)
• Sura Chen Card (ID#4672) (Ref: http://www.divine-pride.net/database/item/4672)
• Minstrel Alphoccio Card (ID#4673) (Ref: http://www.divine-pride.net/database/item/4673)
• Guillotine Cross Eremes Card (ID#4674) (Ref: http://www.divine-pride.net/database/item/4674)
• Arch Bishop Magaleta Card (ID#4675) (Ref: http://www.divine-pride.net/database/item/4675)
• Ranger Cecil Card (ID#4676) (Ref: http://www.divine-pride.net/database/item/4676)
• Mechanic Howard Card (ID#4677) (Ref: http://www.divine-pride.net/database/item/4677)
• Warlock Kathryne Card (ID#4678) (Ref: http://www.divine-pride.net/database/item/4678)
• Rune Knight Seyren Card (ID#4679) (Ref: http://www.divine-pride.net/database/item/4679)
• Royal Guard Randel Card (ID#4680) (Ref: http://www.divine-pride.net/database/item/4680)
• Genetic Flamel Card (ID#4681) (Ref: http://www.divine-pride.net/database/item/4681)
• Shadow Chaser Gertie Card (ID#4682) (Ref: http://www.divine-pride.net/database/item/4682)
• Wanderer Trentini Card (ID#4683) (Ref: http://www.divine-pride.net/database/item/4683)
• True Eremes Guile Card (ID#4684) (Ref: http://www.divine-pride.net/database/item/4684)
• True Margaretha Sorin Card (ID#4685) (Ref: http://www.divine-pride.net/database/item/4685)
• True Kathryne Keyron Card (ID#4686) (Ref: http://www.divine-pride.net/database/item/4686)
• True Cecil Damon Card (ID#4687) (Ref: http://www.divine-pride.net/database/item/4687)
• True Howard Alt-Eisen Card (ID#4688) (Ref: http://www.divine-pride.net/database/item/4688)
• True Seyren Windsor Card (ID#4689) (Ref: http://www.divine-pride.net/database/item/4689)
• True Randel Lawrence Card (ID#4690) (Ref: http://www.divine-pride.net/database/item/4690)
• True Flamel Emure Card (ID#4691) (Ref: http://www.divine-pride.net/database/item/4691)
• True Celia Alde Card (ID#4692) (Ref: http://www.divine-pride.net/database/item/4692)
• True Chen Liu Card (ID#4693) (Ref: http://www.divine-pride.net/database/item/4693)
• True Gertie Card (ID#4694) (Ref: http://www.divine-pride.net/database/item/4694)
• True Trentini Card (ID#4695) (Ref: http://www.divine-pride.net/database/item/4695)
• True Alphoccio Card (ID#4696) (Ref: http://www.divine-pride.net/database/item/4696)
Part 5
Fix 'Light Concentration Potion', 'Light Awakening Potion' and 'Light Berserk Potion' not giving additional ASPD when used. Thanks to Emistry. (Ref: http://herc.ws/board/tracker/issue-8482-light-centerawakeningbersek-potion/)
Change the 'Fools Day Box' and 'Fools Day Box2' variable from .@i to .@temp.
Added 9 New Items and its trade restriction based on itemmoveinfov5.txt of kRO.
• Infinite Concentration Potion (ID#12884) (Ref: http://www.divine-pride.net/database/item/12884)
• Infinite Awakening Potion (ID#12885) (Ref: http://www.divine-pride.net/database/item/12885)
• Infinite Berserk Potion (ID#12886) (Ref: http://www.divine-pride.net/database/item/12886)
• Infinite Fly Wing (ID:12887) (Ref: http://www.divine-pride.net/database/item/12887)
• Infinite Concentration Potion Box (ID#17226) (Ref: http://www.divine-pride.net/database/item/17226)
• Infinite Awakening Potion Box (ID#17227) (Ref: http://www.divine-pride.net/database/item/17227)
• Infinite Berserk Potion Box (ID#17228) (Ref: http://www.divine-pride.net/database/item/17228)
• Infinite Fly Wing Box (ID:17229) (Ref: http://www.divine-pride.net/database/item/17229)
• Infinite Fly Wing Box 3Days (ID:17251) (Ref: http://www.divine-pride.net/database/item/17251)
Part 6
Fixes http://herc.ws/board/tracker/issue-8592-mega-resist-potion/, where the SC_TARGET_BLOOD is not working properly. Thanks to kyeme.
Adjust some whitespaces.
Part 7
Fixes http://herc.ws/board/tracker/issue-7330-halohalo/ where Item 'Halohalo' will not stack together w/ other Status Foods.
Change the Status Food Behavior based on Aegis: (NOTE: ID# 12202, 12203, 12204, 12205, 12206, 12207 and 12247)
Removed when the player dies.
Update its HP/SP percentheal based on Aegis script.
- Follow up e511dcf#commitcomment-14500629. Thanks to AnnieRuru.
- Follow up d9ad1cc#commitcomment-14502822. Thanks also to AnnieRuru.
- Change the sequence of our current Trade Restriction based on kRO's itemmoveinfov5.txt
Part 8
Implemented the Geffen Scrolls and Mental Potion official effects. Thanks to Kyeme. (Ref: http://herc.ws/board/topic/1125-please-implement-the-magic-scroll-mental-potion-etc/)
Part 9
Fixed 'Black Thing' not decreasing Stats and Movement Speed.
Fixed 'Enriched White Potion Z' no HP regeneration.
Part 10
Fix some item behavior that should not stack w/ other stat foods.
• Tyr's Blessing - http://www.divine-pride.net/database/item/14601
• Internet Cafe1 -
• Internet Cafe2 -
• Internet Cafe3 -
• Internet Cafe4 -
• Luxurious Western Food - http://www.divine-pride.net/database/item/14607
• Manchu-Han Imperial Feast - http://www.divine-pride.net/database/item/14608
Part 11
Fix some item behaviors based on Official Servers.
• Str_Dish10 (Healing percent)
• Citron
• Meat Skewer
• Mre_B
• Mre_C
• Spray Of Flowers
• Strawberry Cake
• Pineapple Juice
• Spicy Sandwich
• Grilled Corn
Implemented the follow SC:
• SC_FOOD_CRITICALSUCCESSVALUE (Based on Aegis VAR_CRITICALSUCCESSVALUE)
Part 12
Fix some item behavior based on Official Servers.
• Lucky Rice Cake
• Charm Of Luck
• Charm Of Happiness
• Rune Kn Test Int
• Takoyaki
• Evasion Scroll
• Concentration Scroll
Part 13
Added new official cash shop usable items and it's boxes:
• STR Biscuit Stick - http://www.divine-pride.net/database/item/14616
• VIT Biscuit Stick - http://www.divine-pride.net/database/item/14617
• AGI Biscuit Stick - http://www.divine-pride.net/database/item/14618
• INT Biscuit Stick - http://www.divine-pride.net/database/item/14619
• DEX Biscuit Stick - http://www.divine-pride.net/database/item/14620
• LUK Biscuit Stick - http://www.divine-pride.net/database/item/14621
• STR Biscuit Stick Box - http://www.divine-pride.net/database/item/17270
• VIT Biscuit Stick Box - http://www.divine-pride.net/database/item/17271
• AGI Biscuit Stick Box - http://www.divine-pride.net/database/item/17272
• INT Biscuit Stick Box - http://www.divine-pride.net/database/item/17273
• DEX Biscuit Stick Box - http://www.divine-pride.net/database/item/17274
• LUK Biscuit Stick Box - http://www.divine-pride.net/database/item/17275
Part 14
Added new official item status effect, 'SC_CUP_OF_BOZA'.
- Follow up f512a0b.
- Follow up ce33936.
- Follow up d8909d9.
- Follow up f65e032.
- Some white spaces adjustments.
November Statistics
During the period there were 82 Commits.
Of these 82 commits, 5 included bug-fixes.
7 Commits from Pull Requests.
[Less]
|
Posted
almost 8 years
ago
August & September Digest 2015
The following digest covers the month of August 1st - August 31st 2015 and September 1st - September 30th 2015.
August Digest
Team Changes
None
Development Highlights
Hotkey Rotate Packet Implemented
Fixes
... [More]
Unidentified items bug in client >= 20150226
npctalk support extra npc name parameter
Fix server crash with some ground skills or traps
Fixed a qiget/qicheck crash in queue iterators
Switched to the new, faster, travis build environment
New EquipPackets Support
Removed some unnecessary shared symbols, already present in interfaces
Added core HPM interface
Enabled HPMDataCheck for login and char servers
Added showmsg HPM interface
Improved plugin compile flag detection by the configuration script
Added script_mapquit plugin (moved from the StaffPlugins repository)
Automatically run ./config.status --recheck when necessary
Added check for execinfo.h/backtrace() to the configure script
Fix weapon field size in char_mmo_char_tobuf
Add n parameter to function pc_equipitem_pos
Subnet.conf overhaul
Corrected search order in itemdb_searchname
Fixed an issue caused by duel-song interaction
Removed script command checkre
Fixed a itemdb.c loading error
Script Highlights
Corrected a warp destination typo in The Sign quest
Fixed a typo in Eden Quest
August Statistics
During the period there were 80 Commits.
Of these 80 commits, 5 included bug-fixes.
18 Commits from Pull Requests.
September Digest
Team Changes
None
Development Highlights
Added pre-re/re support to the pet db
Fixed merge behaviour of map zones
Added Configuration in enabling/disabling monster hp bar on new clients
Autotrade Struct to HPM
Added several checks into chriff.c, cliff.c, duel.c, chat.c, channel.c, buyingstore.c, battleground.c, battle.c, atcommand.c
Added RE/Pre-RE start_point ability
Scripting Highlights
Episode 14.2 Criatura Academy Release
Moved novice_skills quests to pre-re
Fixed a bug in Lv4 Weapon Quest dialog
Fix in academy.txt
Fix incorrect condition checks in attaching map of Sealed Shrine
Database Highlights
Fixed const name of Academy Hat in Academy script
September Statistics
During the period there were 94 Commits.
Of these 94 commits, 3 included bug-fixes.
19 Commits from Pull Requests.
[Less]
|
Posted
about 8 years
ago
Problem
if your server having some custom plugin that crash your server, the error look something like this[Info]: Hercules 32-bit for Windows
[Info]: Git revision (src): '1e2f24a2fcb13b8a2fe06f4cc829670303760929'
[Info]: Git revision (scripts):
... [More]
'1e2f24a2fcb13b8a2fe06f4cc829670303760929'
[Info]: OS version: 'Windows 7 Ultimate Service Pack 1 (build 7601) [x86]'
[Info]: CPU: 'x86 CPU, Family 6, Model 23, Stepping 10 [2]'
[Info]: Compiled with Microsoft Visual C++ 2010 (v1600)
[Info]: Compile Flags: N/A
[Info]: Server supports up to '4096' concurrent connections.
[Status]: HPM: Loaded plugin 'HPMHooking' (0.2).
[Warning]: HPMDataCheck:movespeed: 'npc_chat_interface' size mismatch 1 != 36
[Fatal Error]: HPM:plugin_load: 'plugins/movespeed.dll' failed DataCheck, out of sync from the core (recompile plugin)!
Map-Server has terminated abnormally.
Restarting in 15 seconds, press Ctrl+C to cancelthere is a 'npc_chat_interface' size mismatch 1 != 36 error on it
..
Why it happen
this will happens to all plugins that has map/npc.h on it#include "map/npc.h"any plugin that has this line, will throw the above error
this is because Haru just recently added PCRE_SUPPORT on this commit
https://github.com/HerculesWS/Hercules/issues/909#issuecomment-161577329The sample plugin was updated in 1e2f24a with a missing predefined macro. As such, all third party plugins will need a similar update to their VS project... This is unfortunate, but it's pretty much the only viable way that Visual Studio allows..
How to solve
Windows Compiler
kindly follow the step 17 for windows compiler
http://herc.ws/wiki/Building_HPM_Plugin_for_MSVC#Step_17
Under Configuration Properties
- click C/C++
-- open Preprocessor
--- change 'Preprocessor Definitions' to _WINDLL;PCRE_SUPPORT;%(PreprocessorDefinitions)
yes, all plugins from now on has to compile with PCRE_SUPPORT; to prevent this error
now, someone has to post up the solution on non-windows platform [Less]
|
Posted
about 8 years
ago
Mob DB file structure overhaulHello~!Just like the Item DB, the Mob DB has a less than optimal (read: terrible) format, that doesn't play well with Git or any other Version Control System.For example, this is a snippet from the current
... [More]
file:1012,RODA_FROG,Roda Frog,Roda Frog,5,133,0,6,5,1,11,14,0,5,1,5,5,5,10,5,10,12,1,5,21,0x81,200,2016,816,288,0,0,0,0,0,0,0,918,9000,908,500,511,300,721,7,713,2000,0,0,0,0,0,0,0,0,4014,1
1013,WOLF,Wolf,Wolf,25,919,0,329,199,1,37,46,0,0,1,20,28,15,32,20,10,12,1,2,22,0x1089,200,1054,504,432,0,0,0,0,0,0,0,1011,20,920,9000,2308,10,517,650,528,1050,919,5500,578,600,0,0,0,0,4029,1
1014,SPORE,Spore,Spore,16,510,0,66,108,1,24,48,0,5,1,12,12,5,19,8,10,12,1,3,21,0x81,200,1872,672,288,0,0,0,0,0,0,0,921,9000,507,800,510,50,743,10,2220,40,7033,5,578,600,0,0,0,0,4022,1
1015,ZOMBIE,Zombie,Zombie,15,534,0,50,33,1,67,79,0,10,1,8,7,0,15,0,10,12,1,1,29,0x3885,400,2612,912,288,0,0,0,0,0,0,0,957,9000,724,5,938,1000,958,50,727,70,0,0,0,0,0,0,0,0,4038,1
Can you tell, at a glance, if any of these mobs drops a Strawberry? You certainly can't (unless you already know).Now, after locating the Strawberry drop, what happens if we want to remove it?1012,RODA_FROG,Roda Frog,Roda Frog,5,133,0,6,5,1,11,14,0,5,1,5,5,5,10,5,10,12,1,5,21,0x81,200,2016,816,288,0,0,0,0,0,0,0,918,9000,908,500,511,300,721,7,713,2000,0,0,0,0,0,0,0,0,4014,1
1013,WOLF,Wolf,Wolf,25,919,0,329,199,1,37,46,0,0,1,20,28,15,32,20,10,12,1,2,22,0x1089,200,1054,504,432,0,0,0,0,0,0,0,1011,20,920,9000,2308,10,517,650,528,1050,919,5500,0,0,0,0,0,0,4029,1
1014,SPORE,Spore,Spore,16,510,0,66,108,1,24,48,0,5,1,12,12,5,19,8,10,12,1,3,21,0x81,200,1872,672,288,0,0,0,0,0,0,0,921,9000,507,800,510,50,743,10,2220,40,7033,5,0,0,0,0,0,4022,1
1015,ZOMBIE,Zombie,Zombie,15,534,0,50,33,1,67,79,0,10,1,8,7,0,15,0,10,12,1,1,29,0x3885,400,2612,912,288,0,0,0,0,0,0,0,957,9000,724,5,938,1000,958,50,727,70,0,0,0,0,0,0,0,0,4038,1
How many Strawberry entries did I remove and from which lines? Can you tell at a glance? Certainly not.What happens if we try to diff it? (this is the output of 'git diff' with the modified file)@@ -16,8 +16,8 @@
1010,WILOW,Willow,Willow,4,95,0,5,4,1,9,12,5,15,1,4,8,30,9,10,10,12,1,3,22,0x81,200,1672,672,432,0,0,0,0,0,0,0,902,9000,1019,100,907,1500,516,700,1068,3500,1067,2000,1066,1000
,0,0,0,0,4010,1
1011,CHONCHON,Chonchon,Chonchon,4,67,0,5,4,1,10,13,10,0,1,10,4,5,12,2,10,12,0,4,24,0x181,200,1076,576,480,0,0,0,0,0,0,0,998,50,935,6500,909,1500,1205,55,601,100,742,5,1002,150
,0,0,0,0,4009,1
1012,RODA_FROG,Roda Frog,Roda Frog,5,133,0,6,5,1,11,14,0,5,1,5,5,5,10,5,10,12,1,5,21,0x81,200,2016,816,288,0,0,0,0,0,0,0,918,9000,908,500,511,300,721,7,713,2000,0,0,0,0,0,0,0,
0,4014,1
-1013,WOLF,Wolf,Wolf,25,919,0,329,199,1,37,46,0,0,1,20,28,15,32,20,10,12,1,2,22,0x1089,200,1054,504,432,0,0,0,0,0,0,0,1011,20,920,9000,2308,10,517,650,528,1050,919,5500,578,600
,0,0,0,0,4029,1
-1014,SPORE,Spore,Spore,16,510,0,66,108,1,24,48,0,5,1,12,12,5,19,8,10,12,1,3,21,0x81,200,1872,672,288,0,0,0,0,0,0,0,921,9000,507,800,510,50,743,10,2220,40,7033,5,578,600,0,0,0,
0,4022,1
+1013,WOLF,Wolf,Wolf,25,919,0,329,199,1,37,46,0,0,1,20,28,15,32,20,10,12,1,2,22,0x1089,200,1054,504,432,0,0,0,0,0,0,0,1011,20,920,9000,2308,10,517,650,528,1050,919,5500,0,0,0,0
,0,0,4029,1
+1014,SPORE,Spore,Spore,16,510,0,66,108,1,24,48,0,5,1,12,12,5,19,8,10,12,1,3,21,0x81,200,1872,672,288,0,0,0,0,0,0,0,921,9000,507,800,510,50,743,10,2220,40,7033,5,0,0,0,0,0,4022
,1
1015,ZOMBIE,Zombie,Zombie,15,534,0,50,33,1,67,79,0,10,1,8,7,0,15,0,10,12,1,1,29,0x3885,400,2612,912,288,0,0,0,0,0,0,0,957,9000,724,5,938,1000,958,50,727,70,0,0,0,0,0,0,0,0,403
8,1
1016,ARCHER_SKELETON,Archer Skeleton,Archer Skeleton,31,3040,0,483,283,9,128,153,0,0,1,8,14,5,90,5,10,12,1,1,29,0x2085,300,2864,864,576,0,0,0,0,0,0,0,932,4500,756,70,2285,3,17
08,35,1752,1000,507,1800,1701,150,0,0,0,0,4094,1
//1017,THIEF_BUG_FEMALE,Thief Bug Female,Thief Bug Female,10,170,0,35,18,1,33,40,5,5,1,15,10,5,23,5,10,12,1,4,27,0x651,200,988,288,768,0,0,0,0,0,0,0,955,3500,910,250,1108,15,9
28,200,507,400,716,50,1002,400,0,0,0,0,4026,1
Oh, so two lines were modified. Now, to locate the entry that was changed. By the way, you didn't notice that I purposely introduced a syntax error, did you? (hint: count the commas in the SPORE line: there's one less entry!)Now what happens if someone else changes the file (on a nearby, but unrelated line), and you pull the change?<<<<<<< HEAD
1012,RODA_FROG,Roda Frog,Roda Frog,5,133,0,6,5,1,11,14,0,5,1,5,5,5,10,5,10,12,1,5,21,0x81,200,2016,816,288,0,0,0,0,0,0,0,918,9000,908,500,511,300,721,7,713,2000,0,0,0,0,0,0,0,0,4014,1
1013,WOLF,Wolf,Wolf,25,919,0,329,199,1,37,46,0,0,1,20,28,15,32,20,10,12,1,2,22,0x1089,200,1054,504,432,0,0,0,0,0,0,0,1011,20,920,9000,2308,10,517,650,528,1050,919,5500,0,0,0,0,0,0,4029,1
1014,SPORE,Spore,Spore,16,510,0,66,108,1,24,48,0,5,1,12,12,5,19,8,10,12,1,3,21,0x81,200,1872,672,288,0,0,0,0,0,0,0,921,9000,507,800,510,50,743,10,2220,40,7033,5,0,0,0,0,0,4022,1
=======
1012,RODA_FROG,Roda Frog,Roda Frog,5,133,0,6,5,1,11,14,0,5,1,5,5,5,10,5,10,12,1,5,21,0x81,200,2016,816,288,0,0,0,0,0,0,0,918,9000,908,500,511,300,721,7,713,2000,578,600,0,0,0,0,0,0,4014,1
1013,WOLF,Wolf,Wolf,25,919,0,329,199,1,37,46,0,0,1,20,28,15,32,20,10,12,1,2,22,0x1089,200,1054,504,432,0,0,0,0,0,0,0,1011,20,920,9000,2308,10,517,650,528,1050,919,5500,578,600,0,0,0,0,4029,1
1014,SPORE,Spore,Spore,16,510,0,66,106,1,24,48,0,5,1,12,12,5,19,8,10,12,1,3,21,0x81,200,1872,672,288,0,0,0,0,0,0,0,0,921,9000,507,800,510,50,743,10,2220,40,7033,5,578,600,0,0,0,0,4022,1
>>>>>>> upstream change
Well, have fun figuring out how to merge it! (hint: a Strawberry drop was added to RODA_FROG -- could you tell? And now, are you sure nothing else was changed? Doublecheck? Would you believe it if I said that SPORE's Job EXP was also decreased by two? Anything else? I'll leave that as homework.)How do we fix it?Once again, we're switching to a different file format. Just like last time, it'll be libconfig. We're aware there are plenty of other suitable file formats out there (who said yaml?), but unfortunately this is not the time and place to change what was already started, and we'll have to stick with libconfig for the time being. (we'll see about writing some tools that leverage the Hercules libconfig parser to lessen everyone's pain).Some highlights:There is no need for those annoying sequences of zeros. If a mob drops less than 10 items, only the needed entries will be there.The mob_db2 entries can be left incomplete and set to inherit the original mob_db entry. If you want your SPORE to have higher Attack, , you can just write that in your mob_db2, and let it read the other values from the mob_db, so that if we update them, you get the update automaticallyWe can finally add more fields (to support new features) to the file at any time, easily and without having to edit all the lines (or force you to edit all the lines of your custom mob_db2)!What does it look like?Each entry follows this structure:{
// =================== Mandatory fields ===============================
Id: ID (int)
SpriteName: "SPRITE_NAME" (string)
Name: "Mob name" (string)
// =================== Optional fields ================================
Lv: level (int, defaults to 1)
Hp: health (int, defaults to 1)
Sp: mana (int, defaults to 0)
Exp: basic experience (int, defaults to 0)
JExp: job experience (int, defaults to 0)
AttackRange: attack range (int, defaults to 1)
Attack: [attack1, attack2] (int, defaults to 0)
Def: defence (int, defaults to 0)
Mdef: magic defence (int, defaults to 0)
Stats: {
Str: strength (int, defaults to 0)
Agi: agility (int, defaults to 0)
Vit: vitality (int, defaults to 0)
Int: intelligence (int, defaults to 0)
Dex: dexterity (int, defaults to 0)
Luk: luck (int, defaults to 0)
}
ViewRange: view range (int, defaults to 1)
ChaseRange: chase range (int, defaults to 1)
Size: size (int, defaults to 1)
Race: race (int, defaults to 0)
Element: (type, level)
Mode: {
CanMove: true/false (bool)
Looter: true/false (bool)
Aggressive: true/false (bool)
Assist: true/false (bool)
CastSensorIdle:true/false (bool)
Boss: true/false (bool)
Plant: true/false (bool)
CanAttack: true/false (bool)
Detector: true/false (bool)
CastSensorChase: true/false (bool)
ChangeChase: true/false (bool)
Angry: true/false (bool)
ChangeTargetMelee: true/false (bool)
ChangeTargetChase: true/false (bool)
TargetWeak: true/false (bool)
}
MoveSpeed: move speed (int, defaults to 0)
AttackDelay: attack delay (int, defaults to 4000)
AttackMotion: attack motion (int, defaults to 2000)
DamageMotion: damage motion (int, defaults to 0)
MvpExp: mvp experience (int, defaults to 0)
MvpDrops: {
AegisName: chance (string: int)
...
}
Drops: {
AegisName: chance (string: int)
...
}
}
Here's a PORING in the old format:1002,PORING,Poring,Poring,1,50,0,2,1,1,7,10,0,5,1,1,1,0,6,30,10,12,1,3,21,0x83,400,1872,672,480,0,0,0,0,0,0,0,909,7000,1202,100,938,400,512,1000,713,1500,512,150,619,20,0,0,0,0,4001,1And here's the same PORING in the new format:{
Id: 1002
SpriteName: "PORING"
Name: "Poring"
Lv: 1
Hp: 50
Sp: 0
Exp: 2
JExp: 1
AttackRange: 1
Attack: [7, 10]
Def: 0
Mdef: 5
Stats: {
Str: 1
Agi: 1
Vit: 1
Int: 0
Dex: 6
Luk: 30
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 3
Element: (1, 1)
Mode: {
CanMove: true
Looter: true
CanAttack: true
}
MoveSpeed: 400
AttackDelay: 1872
AttackMotion: 672
DamageMotion: 480
MvpExp: 0
Drops: {
Jellopy: 7000
Knife_: 100
Sticky_Mucus: 400
Apple: 1000
Empty_Bottle: 1500
Apple: 150
Unripe_Apple: 20
Poring_Card: 1
}
},
Not convinced yet it's better?Do you like Strawberries? Irrelevant? Not really:{
Id: 1012
SpriteName: "RODA_FROG"
Name: "Roda Frog"
Lv: 5
Hp: 133
Sp: 0
Exp: 6
JExp: 5
AttackRange: 1
Attack: [11, 14]
Def: 0
Mdef: 5
Stats: {
Str: 1
Agi: 5
Vit: 5
Int: 5
Dex: 10
Luk: 5
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 5
Element: (1, 1)
Mode: {
CanMove: true
CanAttack: true
}
MoveSpeed: 200
AttackDelay: 2016
AttackMotion: 816
DamageMotion: 288
MvpExp: 0
Drops: {
Sticky_Webfoot: 9000
Spawn: 500
Green_Herb: 300
Azure_Jewel: 7
Empty_Bottle: 2000
Roda_Frog_Card: 1
}
},
{
Id: 1013
SpriteName: "WOLF"
Name: "Wolf"
Lv: 25
Hp: 919
Sp: 0
Exp: 329
JExp: 199
AttackRange: 1
Attack: [37, 46]
Def: 0
Mdef: 0
Stats: {
Str: 1
Agi: 20
Vit: 28
Int: 15
Dex: 32
Luk: 20
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 2
Element: (2, 1)
Mode: {
CanMove: true
Assist: true
CanAttack: true
ChangeTargetMelee: true
}
MoveSpeed: 200
AttackDelay: 1054
AttackMotion: 504
DamageMotion: 432
MvpExp: 0
Drops: {
Emveretarcon: 20
Claw_Of_Wolves: 9000
Mantle_: 10
Meat: 650
Monster's_Feed: 1050
Animal's_Skin: 5500
Strawberry: 600
Wolf_Card: 1
}
},
{
Id: 1014
SpriteName: "SPORE"
Name: "Spore"
Lv: 16
Hp: 510
Sp: 0
Exp: 66
JExp: 108
AttackRange: 1
Attack: [24, 48]
Def: 0
Mdef: 5
Stats: {
Str: 1
Agi: 12
Vit: 12
Int: 5
Dex: 19
Luk: 8
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 3
Element: (1, 1)
Mode: {
CanMove: true
CanAttack: true
}
MoveSpeed: 200
AttackDelay: 1872
AttackMotion: 672
DamageMotion: 288
MvpExp: 0
Drops: {
Mushroom_Spore: 9000
Red_Herb: 800
Blue_Herb: 50
Spore_Doll: 10
Hat: 40
Poison_Spore: 5
Strawberry: 600
Spore_Card: 1
}
},
{
Id: 1015
SpriteName: "ZOMBIE"
Name: "Zombie"
Lv: 15
Hp: 534
Sp: 0
Exp: 50
JExp: 33
AttackRange: 1
Attack: [67, 79]
Def: 0
Mdef: 10
Stats: {
Str: 1
Agi: 8
Vit: 7
Int: 0
Dex: 15
Luk: 0
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 1
Element: (9, 1)
Mode: {
CanMove: true
Aggressive: true
CanAttack: true
Angry: true
ChangeTargetMelee: true
ChangeTargetChase: true
}
MoveSpeed: 400
AttackDelay: 2612
AttackMotion: 912
DamageMotion: 288
MvpExp: 0
Drops: {
Decayed_Nail: 9000
Cardinal_Jewel_: 5
Sticky_Mucus: 1000
Horrendous_Mouth: 50
White_Jewel: 70
Zombie_Card: 1
}
},
Is it easier to spot all the Strawberry there? I bet.{
Id: 1012
SpriteName: "RODA_FROG"
Name: "Roda Frog"
Lv: 5
Hp: 133
Sp: 0
Exp: 6
JExp: 5
AttackRange: 1
Attack: [11, 14]
Def: 0
Mdef: 5
Stats: {
Str: 1
Agi: 5
Vit: 5
Int: 5
Dex: 10
Luk: 5
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 5
Element: (1, 1)
Mode: {
CanMove: true
CanAttack: true
}
MoveSpeed: 200
AttackDelay: 2016
AttackMotion: 816
DamageMotion: 288
MvpExp: 0
Drops: {
Sticky_Webfoot: 9000
Spawn: 500
Green_Herb: 300
Azure_Jewel: 7
Empty_Bottle: 2000
Roda_Frog_Card: 1
}
},
{
Id: 1013
SpriteName: "WOLF"
Name: "Wolf"
Lv: 25
Hp: 919
Sp: 0
Exp: 329
JExp: 199
AttackRange: 1
Attack: [37, 46]
Def: 0
Mdef: 0
Stats: {
Str: 1
Agi: 20
Vit: 28
Int: 15
Dex: 32
Luk: 20
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 2
Element: (2, 1)
Mode: {
CanMove: true
Assist: true
CanAttack: true
ChangeTargetMelee: true
}
MoveSpeed: 200
AttackDelay: 1054
AttackMotion: 504
DamageMotion: 432
MvpExp: 0
Drops: {
Emveretarcon: 20
Claw_Of_Wolves: 9000
Mantle_: 10
Meat: 650
Monster's_Feed: 1050
Animal's_Skin: 5500
Wolf_Card: 1
}
},
{
Id: 1014
SpriteName: "SPORE"
Name: "Spore"
Lv: 16
Hp: 510
Sp: 0
Exp: 66
JExp: 108
AttackRange: 1
Attack: [24, 48]
Def: 0
Mdef: 5
Stats: {
Str: 1
Agi: 12
Vit: 12
Int: 5
Dex: 19
Luk: 8
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 3
Element: (1, 1)
Mode: {
CanMove: true
CanAttack: true
}
MoveSpeed: 200
AttackDelay: 1872
AttackMotion: 672
DamageMotion: 288
MvpExp: 0
Drops: {
Mushroom_Spore: 9000
Red_Herb: 800
Blue_Herb: 50
Spore_Doll: 10
Hat: 40
Poison_Spore: 5
Spore_Card: 1
}
},
{
Id: 1015
SpriteName: "ZOMBIE"
Name: "Zombie"
Lv: 15
Hp: 534
Sp: 0
Exp: 50
JExp: 33
AttackRange: 1
Attack: [67, 79]
Def: 0
Mdef: 10
Stats: {
Str: 1
Agi: 8
Vit: 7
Int: 0
Dex: 15
Luk: 0
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 1
Element: (9, 1)
Mode: {
CanMove: true
Aggressive: true
CanAttack: true
Angry: true
ChangeTargetMelee: true
ChangeTargetChase: true
}
MoveSpeed: 400
AttackDelay: 2612
AttackMotion: 912
DamageMotion: 288
MvpExp: 0
Drops: {
Decayed_Nail: 9000
Cardinal_Jewel_: 5
Sticky_Mucus: 1000
Horrendous_Mouth: 50
White_Jewel: 70
Zombie_Card: 1
}
},
Removed them all? Yup.Want to see a diff? sure:diff --git a/db/pre-re/mob_db.conf b/db/pre-re/mob_db.conf
index 0ac34d7..ff4f0bd 100644
--- a/db/pre-re/mob_db.conf
+++ b/db/pre-re/mob_db.conf
@@ -588,7 +588,6 @@ mob_db: (
Meat: 650
Monster's_Feed: 1050
Animal's_Skin: 5500
- Strawberry: 600
Wolf_Card: 1
}
},
@@ -634,7 +633,6 @@ mob_db: (
Spore_Doll: 10
Hat: 40
Poison_Spore: 5
- Strawberry: 600
Spore_Card: 1
}
},
Looks pretty? Very much so.What happens if we pull a commit like the one before?{
Id: 1012
SpriteName: "RODA_FROG"
Name: "Roda Frog"
Lv: 5
Hp: 133
Sp: 0
Exp: 6
JExp: 5
AttackRange: 1
Attack: [11, 14]
Def: 0
Mdef: 5
Stats: {
Str: 1
Agi: 5
Vit: 5
Int: 5
Dex: 10
Luk: 5
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 5
Element: (1, 1)
Mode: {
CanMove: true
CanAttack: true
}
MoveSpeed: 200
AttackDelay: 2016
AttackMotion: 816
DamageMotion: 288
MvpExp: 0
Drops: {
Sticky_Webfoot: 9000
Spawn: 500
Green_Herb: 300
Azure_Jewel: 7
Empty_Bottle: 2000
Strawberry: 600
Roda_Frog_Card: 1
}
},
{
Id: 1013
SpriteName: "WOLF"
Name: "Wolf"
Lv: 25
Hp: 919
Sp: 0
Exp: 329
JExp: 199
AttackRange: 1
Attack: [37, 46]
Def: 0
Mdef: 0
Stats: {
Str: 1
Agi: 20
Vit: 28
Int: 15
Dex: 32
Luk: 20
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 2
Element: (2, 1)
Mode: {
CanMove: true
Assist: true
CanAttack: true
ChangeTargetMelee: true
}
MoveSpeed: 200
AttackDelay: 1054
AttackMotion: 504
DamageMotion: 432
MvpExp: 0
Drops: {
Emveretarcon: 20
Claw_Of_Wolves: 9000
Mantle_: 10
Meat: 650
Monster's_Feed: 1050
Animal's_Skin: 5500
Wolf_Card: 1
}
},
{
Id: 1014
SpriteName: "SPORE"
Name: "Spore"
Lv: 16
Hp: 510
Sp: 0
Exp: 66
JExp: 106
AttackRange: 1
Attack: [24, 48]
Def: 0
Mdef: 5
Stats: {
Str: 1
Agi: 12
Vit: 12
Int: 5
Dex: 19
Luk: 8
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 3
Element: (1, 1)
Mode: {
CanMove: true
CanAttack: true
}
MoveSpeed: 200
AttackDelay: 1872
AttackMotion: 672
DamageMotion: 288
MvpExp: 0
Drops: {
Mushroom_Spore: 9000
Red_Herb: 800
Blue_Herb: 50
Spore_Doll: 10
Hat: 40
Poison_Spore: 5
Spore_Card: 1
}
},
{
Id: 1015
SpriteName: "ZOMBIE"
Name: "Zombie"
Lv: 15
Hp: 534
Sp: 0
Exp: 50
JExp: 33
AttackRange: 1
Attack: [67, 79]
Def: 0
Mdef: 10
Stats: {
Str: 1
Agi: 8
Vit: 7
Int: 0
Dex: 15
Luk: 0
}
ViewRange: 10
ChaseRange: 12
Size: 1
Race: 1
Element: (9, 1)
Mode: {
CanMove: true
Aggressive: true
CanAttack: true
Angry: true
ChangeTargetMelee: true
ChangeTargetChase: true
}
MoveSpeed: 400
AttackDelay: 2612
AttackMotion: 912
DamageMotion: 288
MvpExp: 0
Drops: {
Decayed_Nail: 9000
Cardinal_Jewel_: 5
Sticky_Mucus: 1000
Horrendous_Mouth: 50
White_Jewel: 70
Zombie_Card: 1
}
},
What do you expect? No conflicts.What's changed? Here:diff --git a/db/pre-re/mob_db.conf b/db/pre-re/mob_db.conf
index 0ac34d7..59a53b6 100644
--- a/db/pre-re/mob_db.conf
+++ b/db/pre-re/mob_db.conf
@@ -541,6 +541,7 @@ mob_db: (
Green_Herb: 300
Azure_Jewel: 7
Empty_Bottle: 2000
+ Strawberry: 600
Roda_Frog_Card: 1
}
},
@@ -588,7 +589,6 @@ mob_db: (
Meat: 650
Monster's_Feed: 1050
Animal's_Skin: 5500
- Strawberry: 600
Wolf_Card: 1
}
},
@@ -600,7 +600,7 @@ mob_db: (
Hp: 510
Sp: 0
Exp: 66
- JExp: 108
+ JExp: 106
AttackRange: 1
Attack: [24, 48]
Def: 0
@@ -634,7 +634,6 @@ mob_db: (
Spore_Doll: 10
Hat: 40
Poison_Spore: 5
- Strawberry: 600
Spore_Card: 1
}
},
But... I have several custom mobs, do I have to manually convert all of them...?It's true that you need to convert your item database to the new format, but we can do it for you!Go to http://haru.ws/hercules/mobdbconverter/ and paste (or upload) your mob_db2.txt (or even your mob_db.txt if you have custom entries there), pick between renewal or pre-renewal (or upload your item_db if it's customized), press the Convert button, wait a few seconds and you're done! It's already converted for you. Easy, isn't it?Don't trust us? No, no, we don't need your custom mobs, you can sleep safe... But if you still don't want to paste anything on a website... well, we have provided the source code of the converter script! It's in the 'tools' folder of the Hercules repository. All you need is a Python interpreter, version 2.6 or newer (and if you're running Linux or Mac OS, on either your server or your own computer, it's almost certain that you already have that). All you have to do is run it (example: python tools/mobdbconverter.py pre-re . < db/mob_db2.txt > db/mob_db2.conf), and your item database will be converted in a split second!What if I was using SQL mob databases?Well, you're out of luck. It was deprecated long ago and it's being removed. It'll stay available for website/control panel purposes though. An automated converter (much like the db2sql plugin for the item db) will be available soon, and even executed automatically whenever we update the mob db, to keep the sql counterpart in sync!I have this event mob entry that came with an old script I downloaded...No worries, you can get it converted. Use the same script (or the provided web page) you'd use to convert an entire mob database, it'll work just fine even for a mob or two!Special thanksTo Ind, for bringing up the idea, a long time ago.To Andrei Karas for actually doing it, after picking up this project from the bottom of our forgotten items box.To me, for putting this at the bottom of the forgotten items box, and burying it with several other things so that it'd stay there until now (sigh)LinksMerged pull request.Web-based converter. [Less]
|
Posted
over 8 years
ago
14.2 Criatura Academy
The Royal Criatura Academy is the new training area of adventurers in Rune-Midgarts. Novices must register themselves into the academy in order to take advantage of its educational benefits. The academy includes a grand hall
... [More]
, cafeteria, dispensary, a library, and a student lounge.
Changes
2012 Novice Grounds disabled (NPCs to help abandoned characters stuck in the area were added).
Little Porings added to prt_fild08 along with its channel maps.
Channel Warper name changed to official representation ("Channel Warp Official").
Academy script added.
Novice Skills script disabled due to First Aid and Trick Dead being implemented into the Academy script.
Fixed some AEGIS Names on a few items.
Novice start point changed to iz_int.
Why did this take so long?
Some may be asking themselves: "damn, Kisuka, you've had this for over two years, why did it take you so long?". Well, first off, I've been through two jobs in the last year so my life has been pretty crazy in that regard. Things got stable in beginning of 2015, so I started getting back to this script. The other issue of why this script took so long is due to the nature of the script itself.
In my opinion, this is one of the worst localized pieces of content in the history of Ragnarok Online. Each official server differs in how this script is implemented. The differences among official servers:
kRO: Job Teachers warp you to that classes' specific map once you decide to change to that job.iRO: They changed it to the teacher NPC just changes you to the job in Izlude. You never find out where the guild is.
iRO: Added custom NPCs around Izlude that give out free buffs.
kRO: A number of NPCs that give 'Combat Training' in the form of hunting quests.iRO: Removed / Missing them.
kRO / cRO: Cute Pet portion of the academy has misc poring NPCs to add more to the feel of the area during the dialog.iRO: Removed / Missing them.
iRO: Awful engrish translations and placeholder texts used during localization process left in-game.
euRO: Doesn't even have the script.
jRO: No idea, they block non-Japanese IPs.
Due to these differences, a large chunk of the script had to be manually translated due to iRO having stripped out those portions of dialog. I wanted to keep this content as close to kRO as possible so I chose not to remove them / not to copy iRO.
Missing Features
Due to either missing scripts / NPCs on official, no access to official script, or limitations in Hercules the following features are current missing in Criatura Academy:
A number of Quest Bubbles are disabled currently due to certain aspects not implemented yet in Hercules (min / max level, Pre-req quests, stacking).
ConsumeSpecialItem calls disabled due to lack of information / no implementation in Hercules.
A number of complimenting quest NPCs missing due to lack of them in official server (iRO).
Bugs
If you find a bug, please create a Pull Request or a New Issue.
Commit
https://github.com/HerculesWS/Hercules/commit/21564acf13fbfc10295e4b2e026c2d3b7ca07299 [Less]
|
Posted
over 8 years
ago
June & July Digest 2015
The following digest covers the month of June 1st - June 30th 2015 and July 1st - July 31st 2015.
June Digest
Team Changes
@4144 has joined the team as a Core Developer.
Development Highlights
Re-implemented
... [More]
clif->colormes to accept arbitrary colors
Plugin load failure now causes Fatal Error
Implemented strcmp Function
Improved the HPMHookingGen parser
Dropped VS9 (Visual Studio 2008) broken/outdated project
Fixed an issue causing some structs to be missing from the HPMDataCheck
Improved info/error messages during plugin loading
Fixing party creation failure condition
Database Highlights
Changed RC_DemiHuman to RC_DemiPlayer in Pre-Renewal
RC_Player, RC_DemiPlayer, RC_NonPlayer, RC_NonDemiPlayer, RC_All
Added New Item,Combo. Fixed some item scripts. CleanUp of Some Item
Added new costumes from JRO
Fix Veteran_Axe and Doom_Slayer_I item script
Updated item_bonus document, added missing race2 constants
Updated item_db with Race2 Constants
Script Highlights
Corrected a mistake in the OrcsMemory script
Renamed guild and guild2 folder to woe-fe and woe-se
Updated Eclage Warps
Updated Item Scripts
Sura quest fix
Fixed costume name in eclage quest
Updated Blacksmith job quest with some extra conditions.
Added Renewal quest items to Ayothaya Dungeon Entrance quest
Added and Optimized Halloween 2013
JobChanger Updated
Added duplicates of Riding Creature Master
Updated eden_iro.txt
Added Ninja Shop
Fix Izlude In Shops Location and Direction
Updated Buying Shops script
Added new NPC constants
Fixed Several Bugs(Old GlastHeim)
Added missing 'end' in some scripts
June Statistics
During the period there were 62 Commits.
Of these 62 commits, 8 included bug-fixes.
3 Commits from Pull Requests.
July Digest
Team Changes
None
Development Highlights
Fixes skill blocks overiding larger blocks
Fixed a compile error on armv7l (Raspberry Pi 2 model)
Add missing checks into login.c
Add missing checks to account_sql.c.
Add missing check and NONNULL attributes to char.c.
Add missing checks to pincode.c
Remove useless checks from char server.
Remove useless checks from map server.
Move check cards related code into separate functions.
Reduce memory usage in HPM in homunculus.c
Reduce memory usage in HPM in skill.c
Reduce memory usage in HPM in quest.c
Reduce memory usage in HPM in status.c
Reduce memory usage in HPM in mercenary.c
Scripting Highlights
Removed blank text contents in NPC scripts.
Update Unique ID system to match official now it cover all cash items…
Added 2013 Christmas Event
Implemented 2012 Headgears Quest
Implemented Kagerou/Oboro Gear Enchants.
Added Shadow item Refiner
Database Highlights
Removed all Default Values from item_db
ItemDB: Updated Promotional Shadow Item
July Statistics
During the period there were 38 Commits.
Of these 38 commits, 4 included bug-fixes.
3 Commits from Pull Requests.
[Less]
|
Posted
over 8 years
ago
Hello Everyone!
The staff and I have been having some discussions on the current application guidelines for developers. Today we're announcing some different changes and additions to our application guidelines for developers.
Previously we had it
... [More]
state:
be aware we wont accept only half a dozen lines of pull requests (if the bug you fixed required only a one/two-line edit, fix two or more bugs)
We are crossing that out. Even if your bug fix pull request is one or two lines, we'll still accept it (as long as it doesn't indirectly break anything else of course...)!
We now have it listed as:
If you'd like to apply for a Development position
You should know we require all dev applicants to submit pull requests prior to their application, we'll reject any applications from users with no approved pull requests. This is our way to be aware of your abilities, you can, for example, go through our bug tracker and Git Issue Tracker, find any not-yet fixed bugs, and fix them yourself. With that, send us a pull request (a pull request is when you fork our github project, commit changes to your fork and request your changes to be merged back into Hercules). Be aware that when you are fixing bugs, you must reference the bug you are fixing to either our forum Bug Tracker or our Git Issue Tracker.
Along with the changes to our developer position, we are adding a new position for our FluxCP!
If you'd like to apply for a Development position in our FluxCP
The process for applying as a developer for our FluxCP is similar as above. You'll be required to fix any bugs found in the FluxCP and/or make / add improvements (this could be addons, etc.) to the repo. You still will need to pull request to the repository so we can overlook the code.
We are currently accepting staff applications for Developer positions (i.e. Core, Script, and Flux). If you think you have what it takes to apply for these positions, you can apply by going to our navi -> + Others -> Staff Applications or by...
clicking here [Less]
|
Posted
over 8 years
ago
Hello Everyone!
The staff and I have been having some discussions on the current application guidelines for developers. Today we're announcing some different changes and additions to our application guidelines for developers.
Previously we had it
... [More]
state:be aware we wont accept only half a dozen lines of pull requests (if the bug you fixed required only a one/two-line edit, fix two or more bugs)
We are crossing that out. Even if your bug fix pull request is one or two lines, we'll still accept it (as long as it doesn't indirectly break anything else of course...)!We now have it listed as:If you'd like to apply for a Development position
You should know we require all dev applicants to submit pull requests prior to their application, we'll reject any applications from users with no approved pull requests. This is our way to be aware of your abilities, you can, for example, go through our bug tracker and Git Issue Tracker, find any not-yet fixed bugs, and fix them yourself. With that, send us a pull request (a pull request is when you fork our github project, commit changes to your fork and request your changes to be merged back into Hercules). Be aware that when you are fixing bugs, you must reference the bug you are fixing to either our forum Bug Tracker or our Git Issue Tracker.
Along with the changes to our developer position, we are adding a new position for our FluxCP!If you'd like to apply for a Development position in our FluxCP
The process for applying as a developer for our FluxCP is similar as above. You'll be required to fix any bugs found in the FluxCP and/or make / add improvements (this could be addons, etc.) to the repo. You still will need to pull request to the repository so we can overlook the code.
We are currently accepting staff applications for Developer positions (i.e. Core, Script, and Flux). If you think you have what it takes to apply for these positions, you can apply by going to our navi -> + Others -> Staff Applications or by...clicking here [Less]
|
Posted
over 8 years
ago
Hello everyone!
Hercules is now back up and running smoothly on the new host. We apologize for the downtime that was given as we were performing the migration! You may look for more information at this
... [More]
post: http://herc.ws/board/topic/9987-server-transfer-and-downtime/
There may be things that are still recuperating, please be patient with us as they will be recovered!
Once again, we apologize for the inconvenience this may have caused! [Less]
|
Posted
over 8 years
ago
Hello everyone~!
Following Ind's resignation from his administrator position last month, we've been working on transferring our services to a new host.
Some services have already been transferred without any downtime (most notably the stat-server)
... [More]
, and now it's finally time to move the rest.The remaining services will be transferred during the upcoming week, starting tomorrow (Sunday, June 28th). You can expect some downtime.
Forum: The forum can be expected to go offline on June 28th at 17:30 GMT, for about two hours. Some features will be temporarily disabled (commit and pull request sidebar widgets), and will be enabled again within 24 or 36 hours. - Completed
Wiki: The wiki can be expected to go offline on June 28th at 17:30 GMT, for about two hours. - Completed
Bugtracker, git repository: Bugtracker and git repository (hosted by GitHub) won't experience any downtime.
Stat-server: The stat-server won't experience any downtime.
Hercules IRC bot (commit announcements in the #hercules channel): The IRC bot will go offline on June 28th at 17:30 GMT, for about two hours. The commit announcement hook may experience a longer downtime (up to four more hours). - Completed
HerculesWSAPI: The HerculesWSAPI service (HPM Hooks and SQL Item DB automatic re-generation) will be disabled on June 28th at 17:30 GMT, for up to eight hours. - Completed
Through the week, there may be further, brief, downtimes (10-15 minutes each), for planned upgrades and improvements of the platform and individual services.
Given the complexity of the system, and the number of moving parts, there may be unforeseen delays on the scheduled times. We'll do our best to minimize those.
Status updates will be posted here as well as on IRC and on Twitter. [Less]
|