浏览代码

- Added script commands roclass/eaclass to enable scripts to access eA's job format. Read script_commands.txt and ea_job_system.txt for a more complete explanation of how this job system works.
- Removed doc/item.txt (seems like a totally useless file)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@8480 54d463be-8e91-2dee-dedb-b68131a5f0ec

skotlex 19 年之前
父节点
当前提交
78789dc389
共有 7 个文件被更改,包括 345 次插入1454 次删除
  1. 3 0
      Changelog-Trunk.txt
  2. 85 1
      db/const.txt
  3. 180 0
      doc/ea_job_system.txt
  4. 0 1451
      doc/item.txt
  5. 35 0
      doc/script_commands.txt
  6. 4 2
      src/map/pc.c
  7. 38 0
      src/map/script.c

+ 3 - 0
Changelog-Trunk.txt

@@ -4,6 +4,9 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK.  ALL UNTESTED BUGFIXES/FEATURES GO
 IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
 
 2006/08/25
+	* Added script commands roclass/eaclass to enable scripts to access eA's
+	  job format. Read script_commands.txt and ea_job_system.txt for a more
+	  complete explanation of how this job system works. [Skotlex]
 	* Added a flag to skill_delunitgroup, skill_delunit & skill_unit_onlimit.
 	  If 1 is passed, it will avoid UNT_WARP_ACTIVE to be transformed in 
 	  UNT_WARP_WAITING and will destroy it. [Toms]

+ 85 - 1
db/const.txt

@@ -78,8 +78,92 @@ Job_Star_Gladiator	4047
 Job_Star_Gladiator2	4048
 Job_Soul_Linker	4049
 
+EAJL_2_1	0x100
+EAJL_2_2	0x200
+EAJL_2	0x300
+EAJL_UPPER	0x1000
+EAJL_BABY	0x2000
+EAJ_UPPERMASK	0x0fff
+EAJ_BASEMASK	0x00ff
+
+EAJ_NOVICE	0x0
+EAJ_SWORDMAN	0x1
+EAJ_MAGE	0x2
+EAJ_ARCHER	0x3
+EAJ_ACOLYTE	0x4
+EAJ_MERCHANT	0x5
+EAJ_THIEF	0x6
+EAJ_TAEKWON	0x7
+EAJ_GUNSLINGER	0x9
+EAJ_NINJA	0x10
+
+EAJ_SUPER_NOVICE	0x100
+EAJ_KNIGHT	0x101
+EAJ_WIZARD	0x102
+EAJ_HUNTER	0x103
+EAJ_PRIEST	0x104
+EAJ_BLACKSMITH	0x105
+EAJ_ASSASSIN	0x106
+EAJ_STAR_GLADIATOR	0x107
+
+EAJ_CRUSADER	0x201
+EAJ_SAGE	0x202
+EAJ_BARDDANCER	0x203
+EAJ_MONK	0x204
+EAJ_ALCHEMIST	0x205
+EAJ_ROGUE	0x206
+EAJ_SOUL_LINKER	0x207
+
+EAJ_NOVICE_HIGH	0x1000
+EAJ_SWORDMAN_HIGH	0x1001
+EAJ_MAGE_HIGH	0x1002
+EAJ_ARCHER_HIGH	0x1003
+EAJ_ACOLYTE_HIGH	0x1004
+EAJ_MERCHANT_HIGH	0x1005
+EAJ_THIEF_HIGH	0x1006
+
+EAJ_LORD_KNIGHT	0x1101
+EAJ_HIGH_WIZARD	0x1102
+EAJ_SNIPER	0x1103
+EAJ_HIGH_PRIEST	0x1104
+EAJ_WHITESMITH	0x1105
+EAJ_ASSASSIN_CROSS	0x1106
+
+EAJ_PALADIN	0x1201
+EAJ_PROFESSOR	0x1202
+EAJ_CLOWNGYPSY	0x1203
+EAJ_CHAMPION	0x1204
+EAJ_CREATOR	0x1205
+EAJ_STALKER	0x1206
+
+EAJ_BABY	0x2000
+EAJ_BABY_SWORDMAN	0x2001
+EAJ_BABY_MAGE	0x2002
+EAJ_BABY_ARCHER	0x2003
+EAJ_BABY_ACOLYTE	0x2004
+EAJ_BABY_MERCHANT	0x2005
+EAJ_BABY_THIEF	0x2006
+EAJ_BABY_TAEKWON	0x2007
+
+EAJ_SUPER_BABY	0x2100
+EAJ_BABY_KNIGHT	0x2101
+EAJ_BABY_WIZARD	0x2102
+EAJ_BABY_HUNTER	0x2103
+EAJ_BABY_PRIEST	0x2104
+EAJ_BABY_BLACKSMITH	0x2105
+EAJ_BABY_ASSASSIN	0x2106
+EAJ_BABY_STAR_GLADIATOR	0x2107
+
+EAJ_BABY_CRUSADER	0x2201
+EAJ_BABY_SAGE	0x2202
+EAJ_BABY_BARDDANCER	0x2203
+EAJ_BABY_MONK	0x2204
+EAJ_BABY_ALCHEMIST	0x2204
+EAJ_BABY_ROGUE	0x2205
+EAJ_BABY_SOUL_LINKER	0x2206
+
 Option_Wedding	0x1000
-Option_Xmas 0x20000
+Option_Xmas	0x20000
 
 bc_all	0
 bc_map	1

+ 180 - 0
doc/ea_job_system.txt

@@ -0,0 +1,180 @@
+//===== Athena Script =====================================
+//= eAthena Job System
+//===== By ================================================
+//= Skotlex
+//===== Version ===========================================
+//= 0.1
+//=========================================================
+//= 0.1 - First release, explained as well as I could.
+//===== Compatible With ===================================
+//= ... does not apply.
+//===== Description =======================================
+//= A reference description of eA's inner job system (for
+//= use on scripts through the eaclass and roclass script
+//= commands)
+//=========================================================
+
+Preface:
+-------------------------------------------------------------------------------
+
+	Most scripters are aware of the class values used in RO and their constants specified on db/const.txt. Each class has a number associated to it for referencing, so when someone's class is 9 that means they are a wizard. However, this list of job numbers has no real order behind it, and no logic behind it's assignation.
+
+	You can add 3999 to a job to get their rebirth ID, but if you try to do the same to get the Baby class ID, that fails on the super Baby class. Also, there's no way to calculate, from a given first class, which classes would be their "evolution". That is, given the Archer's ID, you cannot just add a value that will return you "Hunter", and will still work if applied to the other classes. It didn't help much when they added Taekwon Boy, a first class, with an ID of 4046, and much later they added Ninja/Gunslinger with the IDs 25/24. How do you identify a first class on all this mess without recurring to very ugly range checks?
+
+The eA Job System:
+-------------------------------------------------------------------------------
+
+	Since the code also required to do this kind of checks for various skills (The Soul Linker Spirit buffs specially come to mind), an alternate job ID system was developed, which attempts to make more sense and make it easier to check where a particular job stands in relation to the rest.
+
+	The scheme consists in that every job can be broken down by 3 criteria:
+
+- Base Job: This determines to which class-tree a job belongs. All jobs can be traced back to their root. The base job of all classes has to be one of the following:
+
+	EAJ_NOVICE	0x0
+	EAJ_SWORDMAN	0x1
+	EAJ_MAGE	0x2
+	EAJ_ARCHER	0x3
+	EAJ_ACOLYTE	0x4
+	EAJ_MERCHANT	0x5
+	EAJ_THIEF	0x6
+	EAJ_TAEKWON	0x7
+	EAJ_GUNSLINGER	0x9
+	EAJ_NINJA	0x10
+
+- Branch: All classes can be classified as "1st Class", "2-1 Class" or "2-2 Class":
+	
+	EAJL_2_1	0x100
+	EAJL_2_2	0x200
+	EAJL_2	0x300
+
+- The third category is type. Classes can either be normal, rebirth/advanced or adopted.
+
+	EAJL_UPPER	0x1000
+	EAJL_BABY	0x2000
+
+So using these three categories, any job class can be constructed from the others. Let's take a swordman, for example.
+
+The first step is basic swordman, with nothing else:
+
+	EAJ_SWORDMAN
+
+The next step is to either become a 2-1 or a 2-2 job:
+
+	EAJ_SWORDMAN|EAJL_2_1 -> EAJ_KNIGHT
+	EAJ_SWORDMAN|EAJL_2_2 -> EAJ_CRUSADER
+
+if a swordman is adopted...
+
+	EAJ_SWORDMAN|EAJL_BABY -> EAJ_BABY_SWORDMAN
+
+Or getting out the rebirth versions of a swordman:
+
+	EAJ_SWORDMAN|EAJL_UPPER	-> EAJ_SWORDMAN_HIGH
+	EAJ_SWORDMAN|EAJL_2_1|EAJL_UPPER	-> EAJ_LORD_KNIGHT
+	EAJ_SWORDMAN|EAJL_2_2|EAJL_UPPER	-> EAJ_PALADIN
+
+Why are we using the bitwise OR operand ('|') rather than just adding? Because the OR is wreck-proof:
+
+	EAJ_SWORDMAN_HIGH|EAJL_UPPER -> EAJ_SWORDMAN_HIGH
+
+If we had used addition, we would have gotten a completely different result.
+
+The EAJL (eA Job Level) constants
+-------------------------------------------------------------------------------
+	There are a few constants which can be used to filter out and make job comparisons easier.
+
+EAJL_2_1:
+	Checks if the class is a 2-1 class:
+	if (@job&EAJL_2_1)
+		mes "Using the classic 2-1 job, huh?";
+
+EAJL_2_2:
+	Checks if the class is 2-2.
+
+EAJL_2:
+	Checks if the class is a 2nd Class. If the check fails, you can be sure the character is a first class.
+	if (!(@job&EAJL_2))
+		mes "Will you wait until Job 50 to change?";
+
+EAJL_UPPER:
+	Check if a class is Rebirth/Advanced:
+	if(@job&EAJL_UPPER)
+		mes "It must have taken you a LONG time...";
+
+EAJL_BABY:
+	Check if a class is an adopted class.
+	if (@job&EAJ_BABY)
+		mes "Don't you hate being weak?";
+
+EAJ_UPPERMASK:
+	The upper mask can be used to "strip" the upper/baby characteristics of a class, used when you want to know if someone is a certain class regardless of rebirth/adopted status. For example, the following code would go through for Monks, Champions and Baby Monks:
+	if ((@job&EAJ_UPPERMASK) == EAJ_MONK)
+		mes "Aren't knuckles such a cool weapon?";
+	
+	Note that if instead of EAJ_MONK you used EAJ_CHAMPION or EAJ_BABY_MONK, the check would had never passed, since the upper/baby state has been removed from the original job when checking.
+	
+EAJ_BASEMASK:
+	This mask strips also the 2nd class attributes. It can be used to check against the basic job of a character. For example, the following code would go through for Merchants (+Baby Merchant and High Merchant), Blacksmiths (+Baby blacksmiths and Whitesmith) and Alchemist (+Baby Alchemist and +Creator):
+	if ((@job&EAJ_BASEMASK) == EAJ_MERCHANT)
+		mes "Why I can't have discount like you guys do?";
+
+	Note that, like before, if you try to check versus any of the other classes (High merchant, blacksmith, etc) instead of basic merchant, the check will always fail for the same reasons previously explained.
+
+The script commands eaclass, roclass:
+-------------------------------------------------------------------------------
+
+	These script commands are what you can use in scripts to convert between the RO classic job id, and eA's job system. The following script code demonstrates how to use these script commands to guess what your next job will be:
+
+	set @eac, eaclass();
+	if (@eac&EAJL_2)
+	{	//2nd class
+		//If upper or baby, you can't rebirth
+		if (@eac&(EAJL_UPPER|EAJL_BABY)) {
+			mes "You can't go anywhere, can you?";
+			close;
+		}
+		//Note that if we remove the EAJL_BABY check up there, the following check
+		//will also fail, because there's no such thing as Rebirth-Baby classes.
+		set @newclass, roclass(@eac|EAJL_UPPER);
+		if (@newclass == -1) {
+			//Don't you hate this of SG and SL?
+			mes "Haha, your class doesn't has a rebirth version yet!";
+			close;
+		}
+		mes "Still dreaming of the day you become a "+jobname(@newclass)+"?";
+		close;
+	}
+	set @class1, roclass(@eac|EAJL_2_1);
+	set @class2, roclass(@eac|EAJL_2_2);
+	if (@class1 == -1) {
+		//NJ/GS are the only classes who get stuck on their 1st class forever.
+		mes "Looks like you are stuck forever on that class.";
+		close;
+	}
+	if (@class2 == -1) {
+		//Not quite true, currently the only 1st class that doesn't has two choices is Novice -> Supernovice (see s.novice section below)
+		mes "Looks like you have no choice but to be a "+jobname(@class1)+".";
+		close;
+	}
+	mes "Have you decided yet if you want to be a "+jobname(@class1)+" or a "+jobname(@class2)+"?";
+	close;
+
+
+Oddities of the System:
+-------------------------------------------------------------------------------
+About Bards and Dancers:
+	These two classes are considered the same in eA's job system, since they both are the 2-2 job of archers. The only way to tell them apart is by using the gender of the character we are referring to. The script command roclass() will automatically use the gender of the attached player (or 'male' if there's no such player), but you can also explicitly pass the gender to the script command when there's no player attached.
+
+About Novices and Super Novices:
+	These are treated a bit differently from you'd expect. Because.. for instance, a novice is not supposed to be a 1st class, but it is considered as one on this tree system:
+
+	EAJ_NOVICE -> Novice
+	EAJ_NOVICE|EAJL_2_1 -> EAJ_SUPER_NOVICE
+	EAJ_NOVICE|EAJL_UPPER -> EAJ_NOVICE_HIGH
+	EAJ_NOVICE|EAJL_BABY	-> EAJ_BABY	
+	EAJ_NOVICE|EAJL_BABY|EAJL_2_1 -> EAJ_SUPER_BABY
+
+	So as you can see, on this job system, the Super Novice is treated as the 2-1 job of a Novice, and the Novice job it's at the same level of the other 1st jobs. Even though that may seem like a hindrance, it makes it very easy to add a check to discard Novice types from a quest:
+
+	if ((@job&EAJ_BASEMASK) == EAJ_NOVICE)
+		//Novice class detected.

+ 0 - 1451
doc/item.txt

@@ -1,1451 +0,0 @@
-ID	Ename
-
-0	Default
-501	Red Potion
-502	Orange Potion
-503	Yellow Potion
-504	White Potion
-505	Blue Potion
-506	Green Potion
-507	Red Herb
-508	Yellow Herb
-509	White Herb
-510	Blue Herb
-511	Green Herb
-512	Apple
-513	Banana
-514	Grape
-515	Carrot
-516	Sweet Potato
-517	Meat
-518	Honey
-519	Milk
-520	Hinalle Leaflet
-521	Aloe Leaflet
-522	Mastela Fruit
-523	Holy Water
-525	Panacea
-526	Royal Jelly
-528	Monster's Feed
-529	Candy
-530	Candy Cane
-531	Apple Juice
-532	Banana Juice
-533	Grape Juice
-534	Carrot Juice
-535	Pumpkin
-536	Ice Cream
-537	Pet Food
-538	Well-baked Cookie
-539	Piece of Cake
-540	Falcon food
-541	Pecopeco food
-542	Festive Cookie
-543	Festive Rainbow Cake
-544	Raw Fish
-545	Red Potion Bottle
-546	Yellow Potion  Bottle
-547	White Potion Bottle
-548	Cheese
-549	Hot Potato
-550	Rice Popper
-551	Sushi
-552	Ketupat
-553	Dumpling
-554	Mochi
-555	??
-556	??????
-557	??????_???_??????
-558	Chocolate
-559	Hand-made Chocolate
-601	Fly Wing
-602	Butterfly Wing
-603	Old Blue Box
-604	Branch of Dead tree
-605	Anodyne
-606	Aloevera
-607	Yggdrasilberry
-608	Yggdrasil Seed
-609	Amulet
-610	Yggdrasil Leaf
-611	Magnifier
-612	Mini Furnace
-613	Iron Hammer
-614	Golden Hammer
-615	Oridecon Hammer
-616	Old Card Album
-617	Old Violet Box
-618	Worn Out Scroll
-619	Unripe Apple
-620	Orange Juice
-621	Bitter Herb
-622	Rainbow Carrot
-623	Earthworm the Dude
-624	Rotten Fish
-625	Rusty Iron
-626	Monster Juice
-627	Sweet Milk
-628	Well Dried Bone
-629	Singing Flower
-630	Dew Laden Moss
-631	Deadly Noxious Herb
-632	Fatty Chubby Earthworm
-633	Baked Yam
-634	Tropical Banana
-635	Horror of Tribe
-636	No Recipient
-637	Old Broom
-638	Silver Knife of Chastity
-639	Armlet of Obedience
-640	Shining Stone
-641	Contracts in Shadow
-642	Book of Devil
-643	Pet Incubator
-644	Gift Box
-645	Concentration Potion
-656	Awakening Potion
-657	Berserk Potion
-658	Tribal Solidarity
-659	Her Heart
-660	Red Candle
-661	Sky Apron
-663	Rice Cake
-664	Gift Box
-665	Gift Box
-666	Gift Box
-667	Gift Box
-668	Angpow
-669	??????_??????_????
-670	????
-671	??
-672	????
-673	??
-674	?????
-675	??
-676	????
-677	???
-678	??
-679	???
-701	Ora Ora
-702	Animal Gore
-703	Hinalle
-704	Aloe
-705	Clover
-706	Four-Leaf Clover
-707	Singing Plant
-708	Ment
-709	Izidor
-710	Illusion Flower
-711	Shoot
-712	Flower
-713	Empty Bottle
-714	Emperium
-715	Yellow Gemstone
-716	Red Gemstone
-717	Blue Gemstone
-718	Garnet
-719	Amethyst
-720	Aquamarine
-721	Emerald
-722	Pearl
-723	Ruby
-724	Cursed Ruby
-725	Sardonyx
-726	Sapphire
-727	Opal
-728	Topaz
-729	Zircon
-730	1 Carat Diamond
-731	2 Carat Diamond
-732	3 Carat Diamond
-733	Cracked Diamond
-734	Red Frame
-735	Chung Jah
-736	China
-737	Black Ladle
-738	Pencil Case
-739	Rouge
-740	Puppet
-741	Poring Doll
-742	Chonchon Doll
-743	Spore Doll
-744	Bouquet
-745	Wedding Bouquet
-746	Glass Bead
-747	Crystal Mirror
-748	Witherless Rose
-749	Frozen Rose
-750	Baphomet Doll
-751	Osiris Doll
-752	Grasshopper Doll
-753	Yoyo Doll
-754	Raccoon Doll
-756	Rough Oridecon
-757	Rough Elunium
-901	Danggie
-902	Tree Root
-903	Reptile Tongue
-904	Scorpion Tail
-905	Stem
-906	Pointed Scale
-907	Resin
-908	Spawn
-909	Jellopy
-910	Garlet
-911	Scell
-912	Zargon
-913	Tooth of Bat
-914	Fluff
-915	Chrysalis
-916	Feather of Birds
-917	Talon
-918	Sticky Webfoot
-919	Animal Skin
-920	Wolf Claw
-921	Mushroom Spore
-922	Orc's Fang
-923	Evil Horn
-924	Powder of Butterfly
-925	Bill of Birds
-926	Snake Scale
-928	Insect Feeler
-929	Immortal Heart
-930	Rotten Bandage
-931	Orcish Voucher
-932	Skel-Bone
-934	Memento
-935	Shell
-936	Scale Shell
-937	Venom Canine
-938	Sticky Mucus
-939	Bee Sting
-940	Grasshopper's Leg
-941	Nose Ring
-942	Yoyo Tail
-943	Solid Shell
-944	Horseshoe
-945	Raccoon Leaf
-946	Snail's Shell
-947	Horn
-948	Bear's Footskin
-949	Feather
-950	Heart of Mermaid
-951	Fin
-952	Cactus Needle
-953	Stone Heart
-954	Shining Scale
-955	Worm Peeling
-956	Gill
-957	Decayed Nail
-958	Horrendous Mouth
-959	Stinky Scale
-960	Nipper
-961	Conch
-962	Tentacle
-963	Sharp scale
-964	Crap Shell
-965	Clam Shell
-966	Clam Flesh
-967	Turtle Shell
-968	Heroic Emblem
-969	Gold
-970	Alchol
-971	Detrimindexta
-972	Karvodailnirol
-973	Counteragent
-974	Mixture
-975	Scarlet Dyestuffs
-976	Lemon Dyestuffs
-978	Cobaltblue Dyestuffs
-979	Darkgreen Dyestuffs
-980	Orange Dyestuffs
-981	Violet Dyestuffs
-982	White Dyestuffs
-983	Black Dyestuffs
-984	Oridecon
-985	Elunium
-986	Anvil
-987	Oridecon Anvil
-988	Golden Anvil
-989	Emperium Anvil
-990	Red Blood
-991	Crystal Blue
-992	Wind of Verdure
-993	Green Live
-994	Flame Heart
-995	Mystic Frozen
-996	Rough Wind
-997	Great Nature
-998	Iron
-999	Steel
-1000	Star Crumb
-1001	Star Dust
-1002	Iron Ore
-1003	Coal
-1004	Chivalry Emblem
-1005	Hammer of Blacksmith
-1006	Old Magic Book
-1007	Necklace of Wisdom
-1008	Necklace of Oblivion
-1009	Hand of God
-1010	Phracon
-1011	Emveretarcon
-1012	Frill
-1013	Rainbow Shell
-1014	Ant Jaw
-1015	Tongue
-1016	Rat Tail
-1017	Mole Whiskers
-1018	Mole Claw
-1019	Trunk
-1020	Black Hair
-1021	Dokebi Horn
-1022	Nine Tails
-1023	Fish Tail
-1024	Squid ink
-1025	Cobweb
-1026	Acorn
-1027	Porcupine Quill
-1028	Mane
-1029	Tiger Skin
-1030	Tiger's Footskin
-1031	Mantis Scythe
-1032	Maneater Blossom
-1033	Maneater Root
-1034	Blue Hair
-1035	Dragon Canine
-1036	Dragon Scale
-1037	Dragon Tail
-1038	Little Evil Horn
-1039	Little Evil Wing
-1040	Elder Pixie's Moustache
-1041	Lantern
-1042	Bug Leg
-1043	Orc Claw
-1044	Zenorc's Fang
-1045	Cultish Masque
-1046	Scorpion Nipper
-1047	Dead Medusa
-1048	Horrendous Hair
-1049	Skirt of Virgin
-1050	Tendon
-1051	Detonator
-1052	Single Cell
-1053	Ancient Tooth
-1054	Ancient Lips
-1055	Earthworm Peeling
-1056	Grit
-1057	Moth Dust
-1058	Moth Wings
-1059	Fabric
-1060	Golden Hair
-1061	Witched Starsand
-1062	Jack o' Pumpkin
-1063	Fang
-1064	Reins
-1065	Trap
-1066	Fine-grained Trunk
-1067	Solid Trunk
-1068	Barren Trunk
-1069	Orange Net Mushroom
-1070	Orange Gooey Mushroom
-1071	Unknown Testtube
-1072	DEL Message
-1073	Voucher
-1074	Voucher
-1075	Voucher
-1076	Voucher
-1077	Voucher
-1078	Voucher
-1079	Voucher
-1080	Voucher
-1081	DEL Box
-1082	DEL Box
-1083	DEL Box
-1084	Kapra Pass
-1085	Unknown Testtube
-1086	Unknown Testtube
-1087	Unknown Testtube
-1088	Morocc Solution
-1089	Payon Solution
-1090	Unknown Testtube
-1091	DEL Box
-1092	Empty Testtube
-1093	Empty Potion Bottle
-1094	Short Daenggie
-1095	Needle of Alarm
-1096	Round Shell
-1097	Worn Out Page
-1098	Manacles
-1099	Worn-out Prison Uniform
-1101	Sword
-1102	Sword
-1103	Sword
-1104	Falchion
-1105	Falchion
-1106	Falchion
-1107	Blade
-1108	Blade
-1109	Blade
-1110	Rapier
-1111	Rapier
-1112	Rapier
-1113	Scimiter
-1114	Scimiter
-1115	Scimiter
-1116	Katana
-1117	Katana
-1118	Katana
-1119	Tsurugi
-1120	Tsurugi
-1121	Tsurugi
-1122	Ring Pommel Saber
-1123	Haedonggum
-1124	Orcish sword
-1125	Ring Pommel Saber
-1126	Saber
-1127	Saber
-1128	Haedonggum
-1129	Flamberge
-1130	Nagan
-1131	Ice Falchon
-1132	Edge
-1133	Fire Brand
-1134	Caesar's Sword
-1135	Cutlas
-1136	Solar Sword
-1137	Excalibur
-1138	Mysteltainn
-1139	Talefing
-1140	Byeollungum
-1141	Immaterial Sword
-1142	Crystal Sword
-1143	Gaia Sword
-1144	Sashimi
-1145	Holy Avenger
-1151	Slayer
-1152	Slayer
-1153	Slayer
-1154	Bastard Sword
-1155	Bastard Sword
-1156	Bastard Sword
-1157	Two-handed Sword
-1158	Two-handed Sword
-1159	Two-handed Sword
-1160	Broad Sword
-1161	Balmung
-1162	Broad Sword
-1163	Claymore
-1164	Muramasa
-1165	Masamune
-bonus bStr	
-bonus bAspd	
-bonus bDefRate	
-bonus bDef2Rate	
- }	
-1166	Dragon Slayer
-1167	Schweizersabel
-1168	Zweihander
-1169	Executioner
-1170	Katzbalger
-1201	Knife
-1202	Knife
-1203	Knife
-1204	Cutter
-1205	Cutter
-1206	Cutter
-1207	Main Gauche
-1208	Main Gauche
-1209	Main Gauche
-1210	Dirk
-1211	Dirk
-1212	Dirk
-1213	Dagger
-1214	Dagger
-1215	Dagger
-1216	Stiletto
-1217	Stiletto
-1218	Stiletto
-1219	Gladius
-1220	Gladius
-1221	Gladius
-1222	Damascus
-1223	Fortune Sword
-1224	Swordbreaker
-1225	Mailbreaker
-1226	Damascus
-1227	Weeder Knife
-1228	Combat Knife
-1229	Mama's Knife
-1230	House Auger
-1231	Bazerald
-1232	Assasin Dagger
-1233	Excorcise
-1234	Walgwanggum
-1235	Azoth
-1236	Sucsamad
-1237	Grimtooth
-1238	Zeny Knife
-1239	Poison Knife
-1240	Princess Knife
-1241	Cursed Knife
-1242	Counter Knife
-1243	Novice's Main Gauche
-1250	Jur
-1251	Jur
-1252	Katar
-1253	Katar
-1254	Jamadhar
-1255	Jamadhar
-1256	Katar of Cold Icicle
-1257	Katar of Dusty Thornbush
-1258	Katar of Raging Blaze
-1259	Katar of Piercing Wind
-1260	Sharppened Legbone of Gh
-1261	Infiltrator
-1301	Axe
-1302	Axe
-1303	Axe
-1304	Orcish Axe
-1305	Cleaver
-1306	War Axe
-1351	Battle Axe
-1352	Battle Axe
-1353	Battle Axe
-1354	Hammer
-1355	Hammer
-1356	Hammer
-1357	Buster
-1358	Buster
-1359	Buster
-1360	Two-handed Axe
-1361	Two-handed Axe
-1362	Two-handed Axe
-1363	Bloody Axe
-1364	Great Axe
-1365	Sabbath
-1366	Light Epsilon
-1367	Slaughter
-1368	Tomahawk
-1369	Guillotine
-1401	Javelin
-1402	Javelin
-1403	Javelin
-1404	Spear
-1405	Spear
-1406	Spear
-1407	Pike
-1408	Pike
-1409	Pike
-1410	Lance
-1411	Lance
-1412	Lance
-1413	Gungnir
-1414	Gelerdria
-1415	Brocca
-1416	Tjungkuletti
-1417	Pole Axe
-1451	Guisarme
-1452	Guisarme
-1453	Guisarme
-1454	Glaive
-1455	Glaive
-1456	Glaive
-1457	Partizan
-1458	Partizan
-1459	Partizan
-1460	Trident
-1461	Trident
-1462	Trident
-1463	Halberd
-1464	Halberd
-1465	Halberd
-1466	Crescent Scythe
-1467	Bill Guisarme
-1468	Zephyrus
-1469	Longinus's Spear
-1470	Brionac
-1471	Hellfire
-1472	Soul Staff
-1473	Wizardy staff
-1501	Club
-1502	Club
-1503	Club
-1504	Mace
-1505	Mace
-1506	Mace
-1507	Smasher
-1508	Smasher
-1509	Smasher
-1510	Flail
-1511	Flail
-1512	Flail
-1513	Morning Star
-1514	Morning Star
-1515	Morning Star
-1516	Sword Mace
-1517	Sword Mace
-1518	Sword Mace
-1519	Chain
-1520	Chain
-1521	Chain
-1522	Stunner
-1523	Spike
-1524	Golden Mace
-1525	Long Mace
-1526	Slash
-1527	Quadrille
-1528	Grand Cross
-1529	Iron Driver
-1530	Mjollnir
-1531	Spanner
-1550	Book
-1551	Bible
-1552	Tablet
-1553	Book of Billows
-1554	Book of Mother Earth
-1555	Book of Blazing Sun
-1556	Book of Gust of Wind
-1557	Book of the Apocalypse
-1558	Girl's Diary
-1599	Angra Manyu
-1601	Rod
-1602	Rod
-1603	Rod
-1604	Wand
-1605	Wand
-1606	Wand
-1607	Staff
-1608	Staff
-1609	Staff
-1610	Arc Wand
-1611	Arc Wand
-1612	Arc Wand
-1613	Mighty Staff
-1614	Wand of Occult
-1615	Bone Wand
-1701	Bow
-1702	Bow
-1703	Bow
-1704	Composite Bow
-1705	Composite Bow
-1706	Composite Bow
-1707	Great Bow
-1708	Great Bow
-1709	Great Bow
-1710	Cross Bow
-1711	Cross Bow
-1712	Cross Bow
-1713	Arbalest
-1714	Gakkung
-1715	Arbalest
-1716	Gakkung
-1718	Hunter Bow
-1719	Roguemaster's Bow
-1720	Rudra's Bow
-1721	Repeating Crossbow
-1722	Ballista
-1750	Arrow
-1751	Silver Arrow
-1752	Fire Arrow
-1753	Steel Arrow
-1754	Crystal Arrow
-1755	Arrow of Wind
-1756	Stone Arrow
-1757	Immaterial Arrow
-1758	Stun Arrow
-1759	Freeze Arrow
-1760	Flash Arrow
-1761	Curse Arrow
-1762	Rusted Arrow
-1763	Poison Arrow
-1764	Sharp Arrow
-1765	Oridecon Arrow
-1766	Arrow of Counter Evil
-1767	Shadow Arrow
-1768	Sleep Arrow
-1769	Mute Arrow
-1770	Iron Arrow
-1801	Waghnakh
-1802	Waghnakh
-1803	Knuckle Duster
-1804	Knuckle Duster
-1805	Hora
-1806	Hora
-1807	Fist
-1808	Fist
-1809	Claw
-1810	Claw
-1811	Finger
-1812	Finger
-1813	Kaiser Knuckle
-1814	Berserk
-1901	Violin
-1902	Violin
-1903	Mandolin
-1904	Mandolin
-1905	Lute
-1906	Lute
-1907	Guitar
-1908	Guitar
-1909	Harp
-1910	Harp
-1911	Guhmoongoh
-1912	Guhmoongoh
-1950	Rope
-1951	Rope
-1952	Line
-1953	Line
-1954	Wire
-1955	Wire
-1956	Rante
-1957	Rante
-1958	Tail
-1959	Tail
-1960	Whip
-1961	Whip
-1962	Lariat
-1963	Rapture Rose
-1964	Chemeti
-2101	Guard
-2102	Guard
-2103	Buckler
-2104	Buckler
-2105	Shield
-2106	Shield
-2107	Mirror Shield
-2108	Mirror Shield
-2109	Book of Summoning
-2110	Holy Guard
-2111	Evangelist
-2112	Novice Guard
-2199	Ahura Mazda
-2201	Sunglasses
-2202	Sunglasses
-2203	Glasses
-2204	Glasses
-2205	Diver's Goggles
-2206	Wedding Veil
-2207	Fancy Flower
-2208	Ribbon
-2209	Ribbon
-2210	Hair Band
-2211	Bandana
-2212	Eye Patch
-2213	Kitty Band
-2214	Bunny Band
-2215	Flower Band
-2216	Biretta
-2217	Biretta
-2218	Flu Mask
-2219	Flu Mask
-2220	Hat
-2221	Hat
-2222	Turban
-2223	Turban
-2224	Goggle
-2225	Goggle
-2226	Cap
-2227	Cap
-2228	Helm
-2229	Helm
-2230	Gemmed Sallet
-2231	Gemmed Sallet
-2232	Circlet
-2233	Circlet
-2234	Tiara
-2235	Crown
-2236	Santa's Hat
-2237	Bandit Beard
-2238	Moustache
-2239	Single Glass
-2240	Beard
-2241	Granpa Beard
-2242	Purple Glasses
-2243	Geek Glasses
-2244	Big Ribbon
-2245	Sweet Gent
-2246	Golden Gear
-2247	Romantic Gent
-2248	Western Grace
-2249	Coronet
-2250	Cute Ribbon
-2251	Monk Hat
-2252	Wizard Hat
-2253	Sunflower
-2254	Angel Wing
-2255	Evil Wing
-2256	Majestic Goat
-2257	Snow Horn
-2258	Spiky Band
-2259	Mini Propeller
-2260	Mini Glasses
-2261	Army Cap
-2262	Pierrot Nose
-2263	Zoro Masque
-2264	Munak Hat
-2265	Ganster Mask
-2266	Iron Cane
-2267	Cigar
-2268	Pipe
-2269	Romantic Flower
-2270	Romantic Leaf
-2271	Jack a Dandy
-2272	Stop Post
-2273	Doctor Band
-2274	Ghost Bandana
-2275	Red Bandana
-2276	Eagle Eyes
-2277	Nurse Cap
-2278	Mr. Smile
-2279	Bomb Wick
-2280	Sakkat
-2281	Opera Masque
-2282	Heaven Ring
-2283	Ear Mufs
-2284	Antler
-2285	Apple o' Archer
-2286	Elven Ears
-2287	Pirate Bandana
-2288	Mr. Scream
-2289	Poo Poo Hat
-2290	Funeral Hat
-2291	Masquerade
-2292	Welding Mask
-2293	Pretend Murdered
-2294	Stellar
-2295	Blinker
-2296	Binoculars
-2297	Goblini Mask
-2298	Green Feeler
-2299	Orc Helm
-2301	Cotton Shirt
-2302	Cotton Shirt
-2303	Leather Jacket
-2304	Leather Jacket
-2305	Adventurer's Suit
-2306	Adventurer's Suit
-2307	Mantle
-2308	Mantle
-2309	Coat
-2310	Coat
-2311	Mink Coat
-2312	Padded Armor
-2313	Padded Armor
-2314	Chain Mail
-2315	Chain Mail
-2316	Full Plate
-2317	Full Plate
-2318	Lord's Clothes
-2319	Glittering Jacket
-2320	Formal Suit
-2321	Silk Robe
-2322	Silk Robe
-2323	Scapulare
-2324	Scapulare
-2325	Saint's Robe
-2326	Saint's Robe
-2327	Holy Robe
-2328	Wooden Mail
-2329	Wooden Mail
-2330	Tights
-2331	Tights
-2332	Silver Robe
-2333	Silver Robe
-2334	Mage Coat
-2335	Thief Clothes
-2336	Thief Clothes
-2337	Ninja Suit
-2338	Wedding Dress
-2339	Pantie
-2340	Novice Breastplate
-2341	Full Plate Armor
-2342	Full Plate Armor
-2343	Casting Robe
-2344	Fire Armor
-2345	Fire Armor
-2346	Water Armor
-2347	Water Armor
-2348	Wind Armor
-2349	Wind Armor
-2350	Earth Armor
-2351	Earth Armor
-2352	Novice Armor
-2401	Sandals
-2402	Sandals
-2403	Shoes
-2404	Shoes
-2405	Boots
-2406	Boots
-2407	Crystal Pumps
-2408	Ball'n'Chain
-2409	Highheals
-2410	Sleipnir
-2411	Greaves
-2412	Greaves
-2413	Safety Shoes
-2414	Novice Sandal
-2501	Hood
-2502	Hood
-2503	Muffler
-2504	Muffler
-2505	Manteau
-2506	Manteau
-2507	Cape of Old Marquess
-2508	Ragamuffin Manteau
-2509	Manteau of Life
-2510	Novice Hood
-2601	Ring
-2602	Earring
-2603	Necklace
-2604	Glove
-2605	Brooch
-2607	Clip
-2608	Rosary
-2609	Skull Ring
-2610	Gold Ring
-2611	Silver Ring
-2612	Flower Ring
-2613	Diamond Ring
-2614	Eye of Dullahan
-2615	Safety Ring
-2616	Critical Ring
-2617	Celebrant's Mitten
-2618	Matyr's Leash
-2619	Bow Thimble
-2620	Rogue's Treasure
-2621	Ancient Ring
-2622	Ancient Earring
-2623	Ancient Necklace
-2624	Ancient Glove
-2625	Ancient Brooch
-2626	Ancient Rosary
-2627	Ancient Belt
-2628	Novice Armlet
-2629	Magingiorde
-2630	Brysinggamen
-2631	Pebble Ring
-2634	Wedding Ring
-2635	Wedding Ring
-2636	Gold Christmas Ring
-2637	Silver Christmas Ring
-4001	Poring Card
-4002	Fabre Card
-4003	Pupa Card
-4004	Drops Card
-4005	Poring  Card
-4006	Lunatic Card
-4007	Pecopeco Egg Card
-4008	Picky Card
-4009	Chonchon Card
-4010	Wilow Card
-4011	Picky  Card
-4012	Thief Bug Egg Card
-4013	Andre Egg Card
-4014	Roda Frog Card
-4015	Condor Card
-4016	Thief Bug Card
-4017	Savage Babe Card
-4018	Andre Larva Card
-4019	Hornet Card
-4020	Farmiliar Card
-4021	Rocker Card
-4022	Spore Card
-4023	Desert Wolf Babe Card
-4024	Plankton Card
-4025	Skeleton Card
-4026	Thief bug Female Card
-4027	Kukre Card
-4028	Tarou Card
-4029	Wolf Card
-4030	Mandragora Card
-4031	Pecopeco Card
-4032	Ambernite Card
-4033	Poporing Card
-4034	Worm Tail Card
-4035	Hydra Card
-4036	Muka Card
-4037	Snake Card
-4038	Zombie Card
-4039	Stainer Card
-4040	Creamy Card
-4041	Coco Card
-4042	Steel Chonchon Card
-4043	Andre Card
-4044	Smokie Card
-4045	Horn Card
-4046	Martin Card
-4047	Ghostring Card
-4048	Poison Spore Card
-4049	Vadon Card
-4050	Thief bug Male Card
-4051	Yoyo Card
-4052	Elder Wilow Card
-4053	Vitata Card
-4054	Angeling Card
-4055	Marina Card
-4056	Dustiness Card
-4057	Metaller Card
-4058	Thara Frog Card
-4059	Soldier Andre Card
-4060	Goblin Card
-4061	Cornutus Card
-4062	Anacondaq Card
-4063	Caramel Card
-4064	Zerom Card
-4065	Kaho Card
-4066	Orc Warrior Card
-4067	Megalodon Card
-4068	Scorpion Card
-4069	Drainliar Card
-4070	Eggyra Card
-4071	Orc Zombie Card
-4072	Golem Card
-4073	Pirate Skeleton Card
-4074	BigFoot Card
-4075	Argos Card
-4076	Magnolia Card
-4077	Phen Card
-4078	Savage Card
-4079	Mantis Card
-4080	Flora Card
-4081	Hode Card
-4082	Desert Wolf Card
-4083	Rafflesia Card
-4084	Marine Sphere Card
-4085	Orc Skeleton Card
-4086	Soldier Skeleton Card
-4087	Giearth Card
-4088	Frilldora Card
-4089	Swordfish Card
-4090	Munak Card
-4091	Kobold Card
-4092	Skel Worker Card
-4093	Obeaune Card
-4094	Archer Skeleton Card
-4095	Marse Card
-4096	Zenorc Card
-4097	Matyr Card
-4098	Dokebi Card
-4099	Pasana Card
-4100	Sohee Card
-4101	Sandman Card
-4102	Whisper Card
-4103	Horong Card
-4104	Requiem Card
-4105	Marc Card
-4106	Mummy Card
-4107	Verit Card
-4108	Myst Card
-4109	Jakk Card
-4110	Ghoul Card
-4111	Strouf Card
-4112	Marduk Card
-4113	Marionette Card
-4114	Argiope Card
-4115	Hunter Fly Card
-4116	Isis Card
-4117	Sidewinder Card
-4118	Petit Card
-4119	Bathory Card
-4120	Petit  Card
-4121	Phreeoni Card
-4122	Deviruchi Card
-4123	Eddga Card
-4124	Medusa Card
-4125	Deviace Card
-4126	Minorous Card
-4127	Nightmare Card
-4128	Golden Bug Card
-4129	Baphomet  Card
-4130	Scorpion King Card
-4131	Moonlight Flower Card
-4132	Mistress Card
-4133	Raydric Card
-4134	Dracula Card
-4135	Orc Lord Card
-4136	Khalitzburg Card
-4137	Drake Card
-4138	Anubis Card
-4139	Joker Card
-4140	Knight Of Abyss Card
-4141	Evil Druid Card
-4142	Doppelganger Card
-4143	Orc Hero Card
-4144	Osiris Card
-4145	Berzebub Card
-4146	Maya Card
-4147	Baphomet Card
-4148	Pharaoh Card
-4149	Bon Gun Card
-4150	Orc Archer Card
-4151	Mimic Card
-4152	Wraith Card
-4153	Alarm Card
-4154	Arclouse Card
-4155	Rideword Card
-4156	Skel Prisoner Card
-4157	Zombie Prisoner Card
-4158	Dark Priest Card
-4159	Punk Card
-4160	Zherlthsh Card
-4161	Mysteltainn Card
-4162	Tirfing Card
-4163	Executioner Card
-4164	Anolian Card
-4165	Sting Card
-4166	Wander Man Card
-4167	Cramp Card
-4168	Filamentous Card
-4169	Brilight Card
-4170	Iron Fist Card
-4171	High Orc Card
-4172	Choco Card
-4173	Stem Worm Card
-4174	Penomena Card
-4175	Marin Card
-4176	Sasquatch Card
-4177	Antonio Card
-4178	Cruiser Card
-4179	Mystcase Card
-4180	Chepet Card
-4181	Knight Of Windstorm Card
-4182	Garm Card
-4183	Gargoyle Card
-4184	Raggler Card
-4185	Neraid Card
-4186	Pest Card
-4187	Injustice Card
-4188	Goblin Archer Card
-4189	Gryphon Card
-4190	Dark Frame Card
-4191	Wind Ghost Card
-4192	Merman Card
-4193	Cookie Card
-4194	Aster Card
-4195	Carat Card
-4196	Bloody Knight Card
-4197	Clock Card
-4198	C Tower Manager Card
-4199	Alligator Card
-4200	Dark Lord Card
-4201	Orc Lady Card
-4202	Megalith Card
-4203	Alice Card
-4204	Raydric Archer Card
-4205	Greatest General Card
-4206	Stalactic Golem Card
-4207	Tri Joint Card
-4208	Steam Goblin Card
-4209	Sage Worm Card
-4210	Kobold archer Card
-4211	Chimera Card
-5001	Headset
-5002	Jewel Crown
-5003	Joker Jester
-5004	Oxygen Mask
-5005	Gas Mask
-5006	Machoman's Glasses
-5007	Grand Circlet
-5008	Puppy Love
-5009	Safety Helmet
-5010	Indian Fillet
-5011	Aerial
-5012	Ph.D Hat
-5013	Lord Kaho's Horn
-5014	Fin Helm
-5015	Egg Shell
-5016	Boys Cap
-5017	Bone Helm
-5018	Feather Bonnet
-5019	Corsair
-5020	Kafra Band
-5021	Money Loser's Grief
-5022	Solar God Helm
-5023	Parcel Hat
-5024	Cake Hat
-5025	Angel Helm
-5026	Chef's Hat
-5027	Magic Instructor's Hat
-5028	Candle
-5029	Spore Hat
-5030	Panda Cap
-5031	Miner's Helmet
-5032	Sunday Hat
-5033	Smokie Hat
-5034	Lightbulb Hairband
-5035	Poring hat
-5036	Cross Hairband
-5037	Apple Hat
-5038	Deviruchi Hat
-5039	Spotted Eggshell
-5040	Innocence of Maiden
-5041	Heart Hairpin
-5042	Dumpling Decoration
-5043	Opera Ghost Mask
-5044	Wing's of Demon
-5045	Magic Hat
-5046	Bongun hat
-5047	Fashion Sunglasses
-5048	Cresent Hairpin
-5049	Striped Bandana
-5050	Mysterious Apple Hat
-5051	Bell of Pussycat
-5052	Blue Bandana
-5053	Sphinx Hat
-5054	Assassin Mask
-5055	Novice Eggshell
-5056	???
-7001	Mould Powder
-7002	Ogre Tooth
-7003	Anolian Skin
-7004	Mud Lump
-7005	Skull
-7006	Wing of Red Bat
-7007	Claw of Rat
-7008	Stiff Horn
-7009	Glitter Shell
-7010	Tail of Steel Scorpion
-7011	Claw of Monkey
-7012	Tough Scalelike Stem
-7013	Coral Reef
-7014	Old Portrait
-7015	Bookclip in Memory
-7016	Spoon Stub
-7017	Executioner's Mitten
-7018	Young Twig
-7019	Loki's Whispers
-7020	Mother's Nightmare
-7021	Foolishness of the Blind
-7022	Old Hilt
-7023	Blade Lost in Darkness
-7024	Bloody Edge
-7025	Lucifer's Lament
-7026	Key of Clock Tower
-7027	Key of Underground
-7028	Invite for Duel
-7029	Admission for Duel
-7030	Claw of Desert Wolf
-7031	Old Frying Fan
-7032	Piece of Egg Shell
-7033	Poison Spore
-7034	Red Socks with Holes
-7035	Matchstick
-7036	Fang of Garm
-7037	Coupon
-7038	Yarn
-7039	Novice Nametag
-7040	Megaphone
-7041	Fine Grit
-7042	Leather Bag of Infinity
-7043	Fine Sand
-7044	Vigorgra
-7045	Magic Paint
-7046	Cart Parts
-7047	Alice's Apron
-7048	Talon of Griffon
-7049	Stone
-7050	Cotton Mat
-7051	Silk Mat
-7052	Wasted Magazine
-7053	Cyfar
-7054	Brigan
-7055	Animal Poop
-7056	Payment Statement for Ka
-7057	Gallar Horn
-7058	Gullraifnir
-7059	Free Ticket for Kafra St
-7060	Free Ticket for Kafra Tr
-7061	Free Ticket for the Cart
-7062	Broken Turtle Shell
-7063	Soft Feather
-7064	Wing of Dragonfly
-7065	Sea Otter Fur
-7066	Ice Cubes
-7067	Piece of Rock
-7068	Half Burnt Log
-7069	Broken Armor Piece
-7070	Broken Shell
-7071	Tattered Clothes
-7072	Old Shuriken
-7073	Freyja's Jewel
-7074	Thor's Guntlet
-7075	Iron Maiden
-7076	Wheel of the Unknown
-7077	Silver Ornament
-7078	Wrath of Valkyrie
-7079	Feather of Angel Wing
-7080	Footprints of Cat
-7081	Woman's Moustache
-7082	Root of Stone
-7083	Spirit of Fish
-7084	Saliva of Bird
-7085	Tendon of Bear
-7086	Solar Bead
-7087	Breath of Soul
-7088	Snow Crystal
-7089	Omen of Tempest
-7090	Ripple
-7091	Billow
-7092	Drifting Air
-7093	Metal Wheel
-7094	Cabinet Chip
-7095	Tooth Fragment
-7096	Hardened Lava
-7097	Burning Heart
-7098	Fire Seed
-7099	Old Magical Circle
-7100	Sharpened Leaf
-7101	Peco's Feather
-7102	Nightmare
-7103	Yellwo Liquid Bottle
-7104	Imitation Angel's Wing
-7105	Imitation Soul's Band
-7106	Horn of Goat
-7107	Fur of Goat
-7108	Broken Shield
-7109	Shiny Spear Tip
-7110	Sharp Sword
-7111	String Paper
-7112	Transparent Paper
-7113	Onion Wand
-7114	Sphinx Mask
-7115	Blood Feather
-7116	Tooth of Lowblood
-7117	Torn Spell Book
-7118	Torn Scroll
-7119	Hypha Body
-7120	Burning Horseshoe
-7121	Honey Jar
-7122	Hot Feather
-7123	Dragon's Skin
-7124	Sand Lump
-7125	Crab Shot
-7126	Large Jellopy
-7127	Alcohol Making Book
-7128	Fire Bottle Making Book
-7129	Acid Bottle Making Book
-7130	Plant Bottle Making Book
-7131	Mine Bottle Making Book
-7132	Coating Wax Making Book
-7133	Slim Potion Making Book
-7134	Medicine Bowl
-7135	Fire Bottle
-7136	Hydrobolic Acid Bottle
-7137	Water Bottle
-7138	Mine Bottle
-7139	Coating Wax
-7140	Seed of Life
-7141	Water Flow
-7142	Ancient Life
-7143	Seperation Tubes
-7144	Potion Making Book
-7145	Ragnarok T-Shirt
-7146	Vacation Ticket
-7147	Jasmine
-7148	Mother's Letter
-7149	Yellow Plate
-7150	Bamboo Trunk
-7151	Oiled Paper
-7152	Glossy Hair
-7153	Old Kimono
-7154	Poison Powder
-7155	Poisonous Toad's Skin
-7156	Broken Shuriken
-7157	Black Mask
-7158	Broken Liquor Bottle
-7159	Demon's Nose
-7160	Passport From King
-7161	Skin of the Black Bear
-7162	Piece of Cloud
-7163	Hard Antennae
-7164	Very Hard Peach
-7165	Etherial Winged Clothing
-7166	Soft Silk Fabric
-7167	Strange Piece of Iron
-7168	Big Wing of Butterfly
-7169	Tae Guk Tablet
-7170	Tuxedo
-7171	Skin of Panther
-7172	Claw of Panther
-7173	Bun Buster Bag
-7174	Wrapping Thread
-7175	Wrapper
-7176	King's Proof Document
-7177	?????_?????_????
-7178	?????_?????
-7179	????_???????
-7180	0
-7181	0
-7182	Cacao
-7183	????
-7184	??????
-7185	??????
-7186	???
-7187	?????
-7188	????
-7189	????
-7190	????
-7191	?
-7192	????
-7193	?????
-7194	????????
-7195	????
-7196	????
-7197	????????
-7198	??????
-7199	20
-7200	???
-7201	??
-7202	????????
-7203	?????
-7204	??
-9001	Poring Egg
-9002	Drops Egg
-9003	Poporing Egg
-9004	Lunatic Egg
-9005	Picky Egg
-9006	Chonchon Egg
-9007	Steel Chonchon Egg
-9008	Hunter Fly Egg
-9009	Savage Babe Egg
-9010	Baby Desert Wolf Egg
-9011	Rocker Egg
-9012	Spore Egg
-9013	Poison Spore Egg
-9014	PecoPeco Egg
-9015	Smokie Egg
-9016	Yoyo Egg
-9017	Orc Warrior Egg
-9018	Munak Egg
-9019	Dokebi Egg
-9020	Sohee Egg
-9021	Isis Egg
-9022	Green Petite Egg
-9023	Deviruchi Egg
-9024	Bapho Jr. Egg
-9025	Bongun Egg
-9026	Alice Egg
-9027	Zherlthsh Egg
-9028	Test Egg
-9029	Test Egg
-10001	Skull Helm
-10002	Monster Oxygen Mask
-10003	Transparent Headgear
-10004	Pacifier
-10005	Wig
-10006	Queen's Hair Ornament
-10007	Silk Ribbon
-10008	Punisher
-10009	Wild Flower
-10010	Battered Pot
-10011	Stellar Hairpin
-10012	Tiny Egg Shell
-10013	Backpack
-10014	Rocker Glasses
-10015	Green Lace
-10016	Golden Bell
-10017	Bark Shorts
-10018	Monkey Circlet
-10019	Red Muffler
-10020	Sword of Chinese Exorcis

+ 35 - 0
doc/script_commands.txt

@@ -1267,6 +1267,41 @@ This command retrieves the name of the given job using the msg_athena entries 55
 
 ---------------------------------------
 
+*eaclass {<job number>}
+
+This commands returns the "eA job-number" corresponding to the given class (if none is given, it returns uses the invoking player's class as argument). The eA job-number is also a class number system, but it's one that comes with constants which make it easy to convert among classes. The command will return -1 if you pass it a job number which doesn't has a eA Job value equivalent.
+
+	set @eac, eaclass();
+	if ((@eac&EAJ_BASEMASK) == EAJ_SWORDMAN)
+		mes "You must be a swordman, knight, crusader, paladin, high swordman, lord knight, baby swordman, baby knight or baby crusader.";
+	if (@eac&EAJL_UPPER)
+		mes "You are a rebirth job.";
+	if ((@eac&EAJ_UPPERMASK) == EAJ_SWORDMAN)
+		mes "You must be a Swordman, Baby Swordman or High Swordman.";
+
+For more information on the eA Job System, see the docs/ea_job_system.txt file.
+
+---------------------------------------
+*roclass <job number> {,<gender>}
+
+Does the opposite of eaclass. That is, given a eA Job class, it returns which is the corresponding RO class number. A gender is required because both Bard and Dancers share the same eA Job value (EAJ_BARDDANCER), if it isn't given, the gender of the executing player is taken (if there's no player running the script, male will be used by default).
+The command returns -1 when there isn't a valid class to represent the required job (for example, if you try to get the baby version of a Taekwon class).
+
+	set @eac, eaclass();
+	//Check if class is already rebirth
+	if (@eac&EAJL_UPPER) {
+		mes "You look strong.";
+		close;
+	}
+	set @eac, roclass(@eac|EAJL_UPPER);
+	//Check if class has a rebirth version
+	if (@eac != -1) {
+		mes "Bet you can't wait to become a "+jobname(@eac)+"!";
+		close;
+	}
+
+---------------------------------------
+
 *input <variable>;
 
 This command will make an input box pop up on the client connected to the 

+ 4 - 2
src/map/pc.c

@@ -3640,7 +3640,8 @@ int pc_jobid2mapid(unsigned short b_class)
 			class_ = MAPID_XMAS;
 			break;
 		default:
-			ShowError("pc_jobid2mapid: Unrecognized job %d!\n", b_class);
+			if (battle_config.error_log)
+				ShowError("pc_jobid2mapid: Unrecognized job %d!\n", b_class);
 			return -1;
 	}
 	return class_;
@@ -3790,7 +3791,8 @@ int pc_mapid2jobid(unsigned short class_, int sex) {
 		case MAPID_BABY_ROGUE:
 			return JOB_BABY_ROGUE;
 		default:
-			ShowError("pc_mapid2jobid: Unrecognized job %d!\n", class_);
+			if (battle_config.error_log)
+				ShowError("pc_mapid2jobid: Unrecognized job %d!\n", class_);
 			return -1;
 	}
 }

+ 38 - 0
src/map/script.c

@@ -3901,6 +3901,8 @@ struct script_function buildin_func[] = {
 	{buildin_warpportal,"warpportal","iisii"},
 	// <--- [blackhole89]
 	{buildin_homunculus_evolution,"homevolution",""},	//[orn]
+	{buildin_eaclass,"eaclass","*"},	//[Skotlex]
+	{buildin_roclass,"roclass","i*"},	//[Skotlex]
 	{NULL,NULL,NULL},
 };
 
@@ -7760,6 +7762,42 @@ int buildin_homunculus_evolution(struct script_state *st)
 	return 0;
 }
 
+//These two functions bring the eA MAPID_* class functionality to scripts.
+int buildin_eaclass(struct script_state *st)
+{
+	int class_;
+	if( st->end>st->start+2 )
+		class_ = conv_num(st,& (st->stack->stack_data[st->start+2]));
+	else {
+		struct map_session_data *sd;
+		sd=script_rid2sd(st);
+		if (!sd) {
+			push_val(st->stack,C_INT, -1);
+			return 0;
+		}
+		class_ = sd->status.class_;
+	}
+	push_val(st->stack,C_INT, pc_jobid2mapid(class_));
+	return 0;
+}
+
+int buildin_roclass(struct script_state *st)
+{
+	int class_ =conv_num(st,& (st->stack->stack_data[st->start+2]));
+	int sex;
+	if( st->end>st->start+3 )
+		sex = conv_num(st,& (st->stack->stack_data[st->start+3]));
+	else {
+		struct map_session_data *sd;
+		if (st->rid && (sd=script_rid2sd(st)))
+			sex = sd->status.sex;
+		else
+			sex = 1; //Just use male when not found.
+	}
+	push_val(st->stack,C_INT,pc_mapid2jobid(class_, sex));
+	return 0;
+}
+
 /*==========================================
  *Œg‘Ñ—‘›z‰»‹@Žg—p
  *------------------------------------------