Starting bounty: $25 USD
Looking for someone to merge/convert all the monster files from CipSoft (only .mon- there are 159) and complement them with those from a 7.7 distribution like Nostalrius, into Fibula's JSON format (link to example below).
I don't really care how you do it (you could technically do it by hand if you don't know how to code), or the conversion tool you build (if you do), so long the data is consistent + accurate to the source .mon file and the output format is compliant with the JSON schema (I'll be validating the converted files against it). You can validate them using a tool like this JSON Schema Validator.
I don't have a time constraint, I just don't want to invest my time into doing grunt work. I'll just say (for the heck of it), between 1 and 3 weeks should be enough (depending on your method)?
I do expect you to deliver by opening a pull request against the monster_new folder, which by the way serves as proof to this community that you have completed the work, and so that I can leverage GitHub's review tools.
The conversion process is explained in detail here with a glossary here and, at a glance, it looks like this:
Haggle here I guess, or contact me (Discord id in my signature, right side).
Thanks.
Looking for someone to merge/convert all the monster files from CipSoft (only .mon- there are 159) and complement them with those from a 7.7 distribution like Nostalrius, into Fibula's JSON format (link to example below).
I don't really care how you do it (you could technically do it by hand if you don't know how to code), or the conversion tool you build (if you do), so long the data is consistent + accurate to the source .mon file and the output format is compliant with the JSON schema (I'll be validating the converted files against it). You can validate them using a tool like this JSON Schema Validator.
I don't have a time constraint, I just don't want to invest my time into doing grunt work. I'll just say (for the heck of it), between 1 and 3 weeks should be enough (depending on your method)?
I do expect you to deliver by opening a pull request against the monster_new folder, which by the way serves as proof to this community that you have completed the work, and so that I can leverage GitHub's review tools.
The conversion process is explained in detail here with a glossary here and, at a glance, it looks like this:
JSON:
{
"article": "a",
"name": "warlock",
"blood": "blood",
"experienceYield": 4000,
"look": {
"type": "outfit",
"id": 130,
"head": 0,
"body": 52,
"legs": 128,
"feet": 95
},
"corpse": "4240",
"stats": {
"hitpoints": 3200,
"baseSpeed": 75,
"carryStrength": 900
},
"flags": [
"CannotBePushed",
"CanPushItems",
"CanPushCreatures",
"CanSeeInvisible"
],
"combat": {
"baseAttackPower": 40,
"baseDefensePower": 50,
"baseArmor": 32,
"distance": 4,
"immunities": {
"poison": 1.00,
"fire": 1.00,
"energy": 1.00,
"lifeDrain": 1.00,
"paralysis": 1.00
},
"skills": {
"Fist": {
"level": 50,
"targetCount": 100,
"factor": 1.10,
"increase": 2
}
},
"strategy": {
"changeTarget": {
"chance": 0.5
},
"flee": {
"hitpointThreshold": 1000
},
"closest": 100,
"weakest": 0,
"strongest": 0,
"random": 0
},
"abilities": [
{
"type": "self",
"casterEffect": "SparklesBlue",
"actions": [
{
"type": "heal",
"base": 80,
"variation": 20
}
],
"chance": 0.25
},
{
"type": "self",
"casterEffect": "SparklesBlue",
"actions": [
{
"type": "lookChange",
"targetLook": {
"type": "invisible"
},
"duration": 20000
}
],
"chance": 0.1
},
{
"type": "target",
"range": 7,
"projectileEffect": "Energy",
"targetEffect": "None",
"actions": [
{
"type": "damage",
"kind": "Physical",
"base": 75,
"variation": 30
}
],
"chance": 0.5
},
{
"type": "target",
"range": 7,
"projectileEffect": "None",
"targetEffect": "None",
"actions": [
{
"type": "damage",
"kind": "ManaDrain",
"base": 55,
"variation": 20
}
],
"chance": 0.166
},
{
"type": "target",
"range": 7,
"projectileEffect": "None",
"targetEffect": "SparklesRed",
"actions": [
{
"type": "speedChange",
"base": -80,
"variation": 20,
"duration": 40000
}
],
"chance": 0.111
},
{
"type": "selfArea",
"radius": 0,
"areaEffect": "SparklesBlue",
"actions": [
{
"type": "summon",
"monsterFile": "stonegolem",
"maximumCount": 1
}
],
"chance": 0.1
},
{
"type": "targetArea",
"range": 7,
"casterEffect": "None",
"projectileEffect": "Fire",
"areaEffect": "AreaFlame",
"radius": 2,
"actions": [
{
"type": "damage",
"kind": "Fire",
"base": 130,
"variation": 40
}
],
"chance": 0.333
},
{
"type": "targetArea",
"range": 7,
"casterEffect": "None",
"projectileEffect": "Fire",
"areaEffect": "None",
"radius": 0,
"actions": [
{
"type": "magicField",
"kind": "Fire"
}
],
"chance": 0.143
},
{
"type": "targetArea",
"range": 7,
"casterEffect": "None",
"projectileEffect": "Fire",
"areaEffect": "None",
"radius": 1,
"actions": [
{
"type": "magicField",
"kind": "Fire"
}
],
"chance": 0.2
},
{
"type": "targetDirection",
"length": 8,
"spread": 0,
"areaEffect": "DamageEnergy",
"actions": [
{
"type": "damage",
"kind": "Energy",
"base": 175,
"variation": 30
}
],
"chance": 0.125
},
]
},
"inventory": [
{ "id": "3567", "name": "blue robe", "maximumCount": 1, "chance": 0.02 },
{ "id": "3600", "name": "bread", "maximumCount": 1, "chance": 0.11 },
{ "id": "2917", "name": "candlestick", "maximumCount": 1, "chance": 0.15 },
{ "id": "3590", "name": "cherry", "maximumCount": 4, "chance": 0.20 },
{ "id": "3007", "name": "crystal ring", "maximumCount": 1, "chance": 0.01 },
{ "id": "3728", "name": "dark mushroom", "maximumCount": 1, "chance": 0.03 },
{ "id": "3051", "name": "energy ring", "maximumCount": 1, "chance": 0.03 },
{ "id": "3031", "name": "gold coin", "maximumCount": 80, "chance": 0.30 },
{ "id": "3360", "name": "golden armor", "maximumCount": 1, "chance": 0.003 },
{ "id": "3509", "name": "inkwell", "maximumCount": 1, "chance": 0.13 },
{ "id": "3062", "name": "mind stone", "maximumCount": 1, "chance": 0.025 },
{ "id": "3299", "name": "poison dagger", "maximumCount": 1, "chance": 0.10 },
{ "id": "2852", "name": "red tome", "maximumCount": 1, "chance": 0.004 },
{ "id": "3006", "name": "ring of the sky", "maximumCount": 1, "chance": 0.002 },
{ "id": "3324", "name": "skull staff", "maximumCount": 1, "chance": 0.07 },
{ "id": "3029", "name": "small sapphire", "maximumCount": 1, "chance": 0.014 },
{ "id": "3081", "name": "stone skin amulet", "maximumCount": 1, "chance": 0.005 },
{ "id": "3034", "name": "talon", "maximumCount": 1, "chance": 0.011 }
],
"speech": [
"Learn the secret of our magic! YOUR death!",
"Even a rat is a better mage than you.",
"We don't like intruders!"
]
}
Haggle here I guess, or contact me (Discord id in my signature, right side).
Thanks.