Skip to content

Commit

Permalink
Merge branch 'master' into sdl-fix-atlas-tile-split
Browse files Browse the repository at this point in the history
  • Loading branch information
ZhilkinSerg committed Dec 19, 2017
2 parents 329dcc4 + 91b92d6 commit 3e80249
Show file tree
Hide file tree
Showing 74 changed files with 1,261 additions and 1,308 deletions.
18 changes: 0 additions & 18 deletions data/json/effects.json
Original file line number Diff line number Diff line change
Expand Up @@ -411,24 +411,6 @@
"vomit_chance": [60]
}
},
{
"type": "effect_type",
"id": "lightsnare",
"name": ["Stuck in a light snare"],
"desc": ["You can't move until you get free!"],
"apply_message": "You are snared!",
"rating": "bad",
"show_in_info": true
},
{
"type": "effect_type",
"id": "heavysnare",
"name": ["Stuck in a heavy snare"],
"desc": ["You can't move until you get free!"],
"apply_message": "You are snared!",
"rating": "bad",
"show_in_info": true
},
{
"type": "effect_type",
"id": "beartrap",
Expand Down
15 changes: 0 additions & 15 deletions data/json/items/generic.json
Original file line number Diff line number Diff line change
Expand Up @@ -1755,21 +1755,6 @@
"bashing": 8,
"to_hit": -2
},
{
"type": "GENERIC",
"id": "crude_brick",
"symbol": ",",
"color": "red",
"name": "unfired clay brick",
"category": "spare_parts",
"description": "A soft, unfired clay brick. Firing it in a brick kiln would harden it up, making it suitable for use in a construction project.",
"price": 1500,
"material": ["stone", "freshclay"],
"weight": 1269,
"volume": 2,
"bashing": 8,
"to_hit": -2
},
{
"type": "AMMO",
"id": "mortar_build",
Expand Down
5 changes: 5 additions & 0 deletions data/json/items/migration.json
Original file line number Diff line number Diff line change
Expand Up @@ -400,5 +400,10 @@
"id": "pda_flashlight",
"type": "MIGRATION",
"replace": "cell_phone"
},
{
"id": "crude_brick",
"type": "MIGRATION",
"replace": "brick"
}
]
55 changes: 0 additions & 55 deletions data/json/items/tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -3653,27 +3653,6 @@
"symbol": ";",
"color": "light_gray"
},
{
"id": "heavy_snare_kit",
"type": "TOOL",
"name": "heavy snare kit",
"description": "This is a kit for a simple trap consisting of a rope noose and a snare trigger. It requires a tree nearby. It is effective at trapping monsters.",
"weight": 1066,
"volume": 1,
"price": 250,
"cutting": 10,
"material": "wood",
"symbol": ";",
"color": "brown",
"use_action": {
"type": "place_trap",
"needs_neighbor_terrain": "t_tree",
"trap": "tr_heavy_snare",
"moves": 200,
"practice": 4,
"done_message": "You set the snare trap."
}
},
{
"id": "hoe",
"type": "TOOL",
Expand Down Expand Up @@ -4352,27 +4331,6 @@
"done_message": "You place the leather funnel, waiting to collect rain."
}
},
{
"id": "light_snare_kit",
"type": "TOOL",
"name": "light snare kit",
"description": "This is a kit for a simple trap consisting of a string noose and a snare trigger. It requires a young tree nearby. It is effective at trapping and killing some small animals.",
"weight": 886,
"volume": 1,
"price": 100,
"cutting": 6,
"material": "wood",
"symbol": ";",
"color": "brown",
"use_action": {
"type": "place_trap",
"needs_neighbor_terrain": "t_tree_young",
"trap": "tr_light_snare",
"moves": 150,
"practice": 2,
"done_message": "You set the snare trap."
}
},
{
"id": "lighter",
"type": "TOOL",
Expand Down Expand Up @@ -6650,19 +6608,6 @@
"charges_per_use": 1,
"use_action": "OXYGEN_BOTTLE"
},
{
"id": "snare_trigger",
"type": "TOOL",
"name": "snare trigger",
"description": "This is a stick that has been cut into a trigger mechanism for a snare trap.",
"weight": 850,
"volume": 1,
"price": 0,
"to_hit": -1,
"material": "wood",
"symbol": ";",
"color": "brown"
},
{
"id": "soldering_iron",
"type": "TOOL",
Expand Down
24 changes: 0 additions & 24 deletions data/json/traps.json
Original file line number Diff line number Diff line change
Expand Up @@ -215,30 +215,6 @@
"difficulty" : 99,
"action" : "blade"
},
{
"type" : "trap",
"id": "tr_light_snare",
"name" : "light snare trap",
"color" : "brown",
"symbol" : "^",
"visibility" : 5,
"avoidance" : 10,
"difficulty" : 2,
"action" : "snare_light",
"drops" : ["light_snare_kit"]
},
{
"type" : "trap",
"id": "tr_heavy_snare",
"name" : "heavy snare trap",
"color" : "brown",
"symbol" : "^",
"visibility" : 3,
"avoidance" : 10,
"difficulty" : 4,
"action" : "snare_heavy",
"drops" : ["heavy_snare_kit"]
},
{
"type" : "trap",
"id": "tr_landmine",
Expand Down
20 changes: 20 additions & 0 deletions data/mods/More_Survival_Tools/effects.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
[
{
"type": "effect_type",
"id": "lightsnare",
"name": ["Stuck in a light snare"],
"desc": ["You can't move until you get free!"],
"apply_message": "You are snared!",
"rating": "bad",
"show_in_info": true
},
{
"type": "effect_type",
"id": "heavysnare",
"name": ["Stuck in a heavy snare"],
"desc": ["You can't move until you get free!"],
"apply_message": "You are snared!",
"rating": "bad",
"show_in_info": true
}
]
55 changes: 55 additions & 0 deletions data/mods/More_Survival_Tools/items.json
Original file line number Diff line number Diff line change
Expand Up @@ -636,5 +636,60 @@
"reload": 300,
"valid_mod_locations": [ [ "underbarrel", 1 ], [ "sights", 1 ], [ "accessories", 2 ] ],
"flags": [ "PRIMITIVE_RANGED_WEAPON" ]
},
{
"id": "heavy_snare_kit",
"type": "TOOL",
"name": "heavy snare kit",
"description": "This is a kit for a simple trap consisting of a rope noose and a snare trigger. It requires a tree nearby. It is effective at trapping monsters.",
"weight": 1066,
"volume": 1,
"price": 250,
"cutting": 10,
"material": "wood",
"symbol": ";",
"color": "brown",
"use_action": {
"type": "place_trap",
"needs_neighbor_terrain": "t_tree",
"trap": "tr_heavy_snare",
"moves": 200,
"practice": 4,
"done_message": "You set the snare trap."
}
},
{
"id": "light_snare_kit",
"type": "TOOL",
"name": "light snare kit",
"description": "This is a kit for a simple trap consisting of a string noose and a snare trigger. It requires a young tree nearby. It is effective at trapping and killing some small animals.",
"weight": 886,
"volume": 1,
"price": 100,
"cutting": 6,
"material": "wood",
"symbol": ";",
"color": "brown",
"use_action": {
"type": "place_trap",
"needs_neighbor_terrain": "t_tree_young",
"trap": "tr_light_snare",
"moves": 150,
"practice": 2,
"done_message": "You set the snare trap."
}
},
{
"id": "snare_trigger",
"type": "TOOL",
"name": "snare trigger",
"description": "This is a stick that has been cut into a trigger mechanism for a snare trap.",
"weight": 850,
"volume": 1,
"price": 0,
"to_hit": -1,
"material": "wood",
"symbol": ";",
"color": "brown"
}
]
24 changes: 24 additions & 0 deletions data/mods/More_Survival_Tools/traps.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,29 @@
"drops" : ["tarp"],
"benign" : true,
"funnel_radius": 342
},
{
"type" : "trap",
"id": "tr_light_snare",
"name" : "light snare trap",
"color" : "brown",
"symbol" : "^",
"visibility" : 5,
"avoidance" : 10,
"difficulty" : 2,
"action" : "snare_light",
"drops" : ["light_snare_kit"]
},
{
"type" : "trap",
"id": "tr_heavy_snare",
"name" : "heavy snare trap",
"color" : "brown",
"symbol" : "^",
"visibility" : 3,
"avoidance" : 10,
"difficulty" : 4,
"action" : "snare_heavy",
"drops" : ["heavy_snare_kit"]
}
]
73 changes: 73 additions & 0 deletions doc/COLOR.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# Colors

DDA is colorful game. You can use several foreground and background colors in various places:

* map data (terrain and furniture);
* item data;
* text data;
* etc.

**Note:** Map data objects can only have one color-related node defined (either `color` or `bgcolor`).

## Color string format

Whenever color is defined in JSON it should be defined in following format: `Prefix_Foreground_Background`.

`Prefix` can take one of following values:

* `c_` - default color prefix (can be ommited);
* `i_` - optional prefix which indicates that foreground color should be inverted (special rules will be applied to foreground and background colors);
* `h_` - optional prefix which indicates that foreground color should be highlighted (special rules will be applied to foreground and background colors).

`Foreground` - defines mandatory color of foreground/ink/font.

`Background` - defines optional color of background/paper.

**Note:** If color was not found by its name, then `c_unset` is used for `Foreground` and `i_white` for `Background`.

## Examples of color strings

- `c_white` - `white` color (with default prefix `c_`);
- `black` - `black` color (default prefix `c_` is ommited);
- `i_red` - inverted `red` color;
- `dark_gray_white` - `dark_gray` foreground color with `white` background color;
- `light_gray_light_red` - `light_gray` foreground color with `light_red` background color;
- `dkgray_red` - `dark_gray` foreground color with `red` background color (deprecated prefix `dk` instead of `dark_`);
- `ltblue_red` - `light_blue` foreground color with `red` background color (deprecated prefix `lt` instead of `light_`).

## Color code

Color code is short string which defines color and can be used, for example, in maps notes.

## Possible colors

| Color (image) | Color name (dda) | Color name (curses) | Default R,G,B values | Color code | Notes |
|:--------------------------------------------------------:|:------------------:|:-------------------:|:--------------------:|:----------:|:------------------------------------------------------:|
| ![#000000](https://placehold.it/20/000000/000000?text=+) | `black` | `BLACK` | `0,0,0` | | |
| ![#ff0000](https://placehold.it/20/ff0000/000000?text=+) | `red` | `RED` | `255,0,0` | `R` | |
| ![#006e00](https://placehold.it/20/006e00/000000?text=+) | `green` | `GREEN` | `0,110,0` | `G` | |
| ![#5c3317](https://placehold.it/20/5c3317/000000?text=+) | `brown` | `BROWN` | `92,51,23` | `br` | |
| ![#0000c8](https://placehold.it/20/0000c8/000000?text=+) | `blue` | `BLUE` | `0,0,200` | `B` | |
| ![#8b3a62](https://placehold.it/20/8b3a62/000000?text=+) | `magenta` or `pink`| `MAGENTA` | `139,58,98` | `P` | |
| ![#009650](https://placehold.it/20/009650/000000?text=+) | `cyan` | `CYAN` | `0,150,180` | `C` | |
| ![#969696](https://placehold.it/20/969696/000000?text=+) | `light_gray` | `GRAY` | `150,150,150` | `lg` | deprecated `lt` prefix can be used instead of `light_` |
| ![#636363](https://placehold.it/20/636363/000000?text=+) | `dark_gray` | `DGRAY` | `99,99,99` | `dg` | deprecated `dk` prefix can be used instead of `dark_` |
| ![#ff9696](https://placehold.it/20/ff9696/000000?text=+) | `light_red` | `LRED` | `255,150,150` | | deprecated `lt` prefix can be used instead of `light_` |
| ![#00ff00](https://placehold.it/20/00ff00/000000?text=+) | `light_green` | `LGREEN` | `0,255,0` | `g` | deprecated `lt` prefix can be used instead of `light_` |
| ![#ffff00](https://placehold.it/20/ffff00/000000?text=+) | `light_yellow` | `YELLOW` | `255,255,0` | | deprecated `lt` prefix can be used instead of `light_` |
| ![#6464ff](https://placehold.it/20/6464ff/000000?text=+) | `light_blue` | `LBLUE` | `100,100,255` | `b` | deprecated `lt` prefix can be used instead of `light_` |
| ![#fe00fe](https://placehold.it/20/fe00fe/000000?text=+) | `light_magenta` | `LMAGENTA` | `254,0,254` | `lm` | deprecated `lt` prefix can be used instead of `light_` |
| ![#00f0ff](https://placehold.it/20/00f0ff/000000?text=+) | `light_cyan` | `LCYAN` | `0,240,255` | `c` | deprecated `lt` prefix can be used instead of `light_` |
| ![#ffffff](https://placehold.it/20/ffffff/000000?text=+) | `white` | `WHITE` | `255,255,255` | `W` | |

**Note:** Default RGB values are taken from file `\data\raw\colors.json`.
**Note:** RGB values can be redefined in file `\config\base_colors.json`.

## Color rules

There are two types of special color transformation which can affect both foreground and background color:

* inversion;
* highlight.

**Note:** Color rules can be redefined (for example, `\data\raw\color_templates\no_bright_background.json`).
14 changes: 9 additions & 5 deletions doc/GAME_BALANCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -191,10 +191,12 @@ Ammo ID | Description | Energy, J | Dmg | Base Brl |
-------------------|-----------------------------|-----------|-----|----------|-------------------------------
.22LR | 40gr unjacketed bullet | 141 | 12 | 6in | |
.22LR FMJ | 30gr FMJ bullet | 277 | 17 | 6in | |
.32 ACP | 60gr JHP bullet | 218 | 15 | 4in | |
7.62x25mm | 85gr JHP bullet | 544 | 23 | 4.7in | |
9x19mm FMJ | 115gr FMJ bullet | 420 | 24 | 5.9in | |
9x19mm +P | 115gr JHP bullet | 632 | 25 | 5.9in | |
9x19mm +P+ | 115gr JHP bullet | 678 | 26 | 5.9in | |
9x19mm JHP | 116gr JHP bullet | 533 | 23 | 5.9in |damage increased by 3 |
9x19mm JHP | 115gr JHP bullet | 533 | 23 | 5.9in |damage increased by 3 |
9x18mm 57-N-181S | 93gr FMJ bullet | 251 | 16 | 3.8in | |
9x18mm SP-7 | 93gr bullet | 417 | 20 | 3.8in | |
9x18mm RG028 | 93gr hardened steel core bullet | 317 | 18 | 3.8in | damage reduced by 4 |
Expand All @@ -212,24 +214,26 @@ Ammo ID | Description | Energy, J | Dmg | Base Brl |
.500 S&W Magnum | 500gr bullet | 3056 | 55 | 8.4in | |
5.7x28mm SS190 | 31gr AP FMJ bullet | 534 | 23 | 10.4in | damage reduced by 3 |
4.6x30mm | 31gr copper plated steel bullet | 505 | 22 | 7.1in | damage reduced by 4 |
7.62x39mm | 123gr FMJ bullet | 2179 | 46 | 16.3in | |
7.62x39mm M43 | 123gr steel core FMJ bullet | 1607 | 47 | 16.3in | damage lowered by 15 |
7.62x39mm M67 | 123gr steel core FMJ bullet | 1607 | 47 | 16.3in | damage lowered by 9 |
5.45x39mm 7N10 | 56gr FMJ bullet | 1402 | 37 | 16.3in | damage increased by 3 |
5.45x39mm 7N22 | 57gr steel core FMJ bullet | 1461 | 38 | 16.3in | |
.223 Remington | 36gr JHP bullet | 1524 | 39 | 20in |Uses 5.56 NATO barrel baseline; damage increased by 5 |
5.56x45mm M855A1 | 62gr copper core FMJBT bullet | 1524 | 43 | 20in | |
.308 Winchester | 168gr hollow point bullet | 3570 | 60 | 24in | |
7.62 NATO M80 | 147gr FMJ bullet | 3304 | 57 | 24in | |
7.62 NATO M62 | 147gr FMJ bullet | 3304 | 57 | 24in | Belt with 1/5 tracer rounds |
.270 Winchester | 130gr soft point bullet | 3663 | 61 | 24in | |
.30-06 Springfield | 165gr soft point bullet | 3894 | 62 | 24in | damage increased by 4 |
.30-06 M2 | 165gr FMJ bullet | 3894 | 62 | 24in | damage reduced by 10 |
.30-06 M2 | 165.7gr AP bullet | 3676 | 60 | 24in | damage reduced by 10 |
.30-06 M14A1 | Incendiary ammunition | 3894 | 62 | 24in | damage reduced by 10 |
.300 Winchester Magnum | 220gr JHP bullet | 5299 | 73 | 24in | damage increased by 5 |
7.62x54mmR | 150gr FMJ bullet | 2677 | 52 | 28in | |
.32 ACP | 60gr JHP bullet | 161 | 13 | 4in | |
7.62x25mm | 85gr JHP bullet | 544 | 23 | 4.7in | |
7.62x54mmR | 150gr FMJ bullet | 3629 | 60 | 28in | |
.700 NX | 1000gr JSP bullet | 12100 | 110 | 28in | |
.50 BMG Ball | 750gr FMJ-BT bullet | 17083 | 131 | 45in | |
.50 BMG M33 Ball | 706.7gr bullet | 18013 | 134 | 45in | |
.50 BMG M903 SLAP | 355gr tungsten AP bullet | 17083 | 131 | 45in | Can't be used with M107A1 |

# LIQUIDS:
Multi-charge items are weighed by the charge/use. If you have an item that contains 40 uses, it'll weigh 40x as much (when found in-game) as you entered in the JSON. Liquids are priced by the 250mL unit, but handled in containers. This can cause problems if you create something that comes in (say) a gallon jug (15 charges) and price it at the cost of a jug's worth: it'll be 15x as expensive as intended.
Expand Down
Loading

0 comments on commit 3e80249

Please sign in to comment.