transportation-schema.json 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. {
  2. "type": "object",
  3. "properties": {
  4. "events": {
  5. "type": "object",
  6. "additionalProperties": {
  7. "type": "array",
  8. "items": {
  9. "type": "object",
  10. "properties": {
  11. "name": {"type": "string"},
  12. "probability": {"type": "number"},
  13. "karma-probability-modifier": {"type": "number"},
  14. "explanations": {
  15. "type": "array",
  16. "items": {
  17. "type": "string",
  18. "minItems": 1
  19. }
  20. },
  21. "actions": {
  22. "type": "array",
  23. "items": {
  24. "type": "object",
  25. "minItems": 0,
  26. "properties": {
  27. "karma": {"type": "number"},
  28. "label": {"type": "string"},
  29. "description": {"type": "string"},
  30. "effects": {
  31. "type": "array",
  32. "items": {
  33. "type": "string",
  34. "minItems": 0
  35. }
  36. }
  37. },
  38. "required": [
  39. "karma",
  40. "description",
  41. "effects"
  42. ]
  43. }
  44. },
  45. "default-effects": {
  46. "type": "array",
  47. "items": {
  48. "type": "string",
  49. "minItems": 0
  50. }
  51. }
  52. },
  53. "required": [
  54. "name",
  55. "probability",
  56. "karma-probability-modifier",
  57. "explanations",
  58. "actions",
  59. "default-effects"
  60. ]
  61. }
  62. }
  63. }
  64. },
  65. "required": [
  66. "events"
  67. ]
  68. }