Skip to content

Commit

Permalink
Merge master into basajaun
Browse files Browse the repository at this point in the history
  • Loading branch information
gammafunk committed Sep 26, 2016
2 parents 522dbc7 + 0595f0e commit 86d965a
Show file tree
Hide file tree
Showing 47 changed files with 1,089 additions and 199 deletions.
1 change: 1 addition & 0 deletions .mailmap
Expand Up @@ -166,3 +166,4 @@ fixit_friend <newtn.rh@gmail.com>
xorxor <bpshacklett@gmail.com>
adibis <aditya.shevade@gmail.com>
neofelis <mrtnaigner@gmail.com>
aegolden <aegolden@gmail.com>
1 change: 1 addition & 0 deletions crawl-ref/.gitignore
Expand Up @@ -75,6 +75,7 @@ webtiles.log
debuglog.txt
dolls.txt
macro.txt
init.txt.persist

# Valgrind logs from misc/grind.sh
/source/grind.log
Expand Down
1 change: 1 addition & 0 deletions crawl-ref/CREDITS.txt
Expand Up @@ -130,6 +130,7 @@
Chris Galardi
Benoît Giannangeli
Ben Goetter
Aaron Golden
Ed Gonzalez
Rob Grant
John Greenberg
Expand Down
32 changes: 28 additions & 4 deletions crawl-ref/docs/changelog.txt
@@ -1,4 +1,4 @@
Stone Soup 0.19 (up to 0.19-a0-1375-g616abca)
Stone Soup 0.19 (up to 0.19-a0-1694-g2dd932f)
--------------------------------------------

Highlights
Expand All @@ -15,20 +15,26 @@ Branches, Environment
- Many powerful artefacts resting within ancient ruins.
* Lair is now six floors (formerly eight).
* Slime is now five floors (formerly six).
* The Slime treasure vault's walls disappear entirely on their master's death.
* Webs are no longer destroyed after creatures escape from them.
* Beogh will no longer smite creatures that destroy orcish idols.
* Ambient noise is more significant in Shoals, the Desolation, Crypt, and Tomb.
Lair and Orc no longer have ambient noise.
* Storm cloud damage is more common and much less severe.
* Non-opaque clouds created by the player vanish instantly when out of LOS.

Character
---------
* Flight expiring over deep water or lava no longer causes instant death;
instead, it causes heavy drain over time until reaching land.
* Flight or transformations expiring over deep water or lava no longer causes
instant death. Instead, they cause heavy drain over time until reaching land.
* Potions, scrolls and books can be used while still on the floor.
* Resistances granted by rN (to e.g. Pain effects) now scale with rN, only
reaching full immunity at rN+++ (instead of at rN+).
* Monks can now choose a weapon to start with.
* Corrosion slaying penalties now affect unarmed & auxiliary attacks.
* Satiated vampires can now berserk and transform; previously required Full.
* Spriggans can wield any weapons that kobolds and halflings can.
* Kobolds and halflings rebalanced toward & away from casting, respectively.
* Vampire blood level effects have been simplified and reworked.
* The undead always take stat damage if mutated, instead of sometimes rotting.
* Temporary mutations only have a 50% chance of affecting the undead.
* Mummy self-restoration has been removed.
Expand Down Expand Up @@ -86,6 +92,8 @@ Interface
* In tiles, monster attitude is indicated with colored auras instead of icons.
* Descriptions of monsters with multiple spellsets show which spells you've
seen them cast.
* Monster descriptions list their average max HP.
* New auto_butcher option, which butchers edible corpses during autoexplore.

Items
-----
Expand All @@ -100,6 +108,7 @@ Items
- Fencer's Gloves no longer increase Sbl/Lbl skill or provide +EV/AC, but let
the player riposte with any weapon (details below).
- Wyrmbane now has rC+ instead of +Rage.
- The greatsling Punk has a unique 'acid' brand, instead of freezing.
* Evocations:
- Wands of random effects can no longer produce digging or disintegration.
- Boxes of beasts and sacks of spiders have a fixed chance of destruction
Expand All @@ -108,6 +117,7 @@ Items
- Phials of floods impact damage significantly reduced.
* Players using long blades sometimes riposte when dodging attacks, launching
instant, automatic counterattacks.
* Weapons of protection give a temporary +7 AC on hit, replacing a passive +5.
* Amulets of harm now increase damage dealt more than damage taken, and are no
longer evil.
* Elemental enhancers no longer penalise spells of the opposite element.
Expand All @@ -134,6 +144,7 @@ Monsters
- ...and the residents of the Desolation of Salt.
* Uniques:
- Urug's weapons are now much nastier for their depth.
- Mennas always spawns with a sacred weapon.
- Donald can now cast Haste and Might.
- Asterion's Spectral Weapon has been replaced by Greater Servant of Makhleb.
- Xtahua can now roar to cast Paralyse.
Expand All @@ -153,12 +164,25 @@ Monsters
* Hellions no longer have fire resistance or cold vulnerability.
* Deep elf archers no longer fire their bows in melee.
* Death scarabs no longer trail miasma, but are somewhat tougher.
* Tzitzimimeh's melee slows and rots victims, instead of creating miasma.
* Friendly monsters will no longer open doors.
* Jellies no longer eat unseen items for non-Jiyva worshippers.
* Turtles no longer withdraw into their shells when injured.
* Giant eyeballs charge up their paralysis-stare 50% faster.
* Statues are now stabbable; obsidian & orange crystal statues gain sInv.
* Ushabti gain Dispel Undead and Warning Cry.
* Renamed monsters:
- Giant newt -> frilled lizard.
- Giant frog -> bullfrog.
- Giant gecko -> leopard gecko.
- Giant leech -> tyrant leech.
- Giant eyeball -> floating eye.
- Giant spore -> ballistomycete spore.
- Giant orange brain -> glowing orange brain.
* Removed monsters:
- Anubis guards.
- Boulder beetles.
- Griffons.
- Salamander stormcallers.
- Sheep.
- Norris.
Expand Down
2 changes: 1 addition & 1 deletion crawl-ref/source/Makefile
Expand Up @@ -432,7 +432,7 @@ endif

# Find the oldest SDK available, in attempt to make this build as
# backward-compatible as we possibly can.
SDK_VER := $(shell ls $(DEVELOPER_PATH)/SDKs | sort -n | head -1 | perl -pe 's/^MacOSX//g;s/.sdk$$//g')
SDK_VER := $(shell ls $(DEVELOPER_PATH)/SDKs | grep -v "MacOSX.sdk" | sort -n | head -1 | perl -pe 's/^MacOSX//g;s/.sdk$$//g')

ifeq ($(SDK_VER),10.4u)
SDK_VER := 10.4
Expand Down
4 changes: 2 additions & 2 deletions crawl-ref/source/ability.cc
Expand Up @@ -2702,8 +2702,8 @@ static spret_type _do_ability(const ability_def& abil, bool fail)
{
fail_check();
const item_def* const weapon = you.weapon();
const string msg = (weapon) ? weapon->name(DESC_YOUR)
: ("your " + you.hand_name(true));
const string msg = weapon ? weapon->name(DESC_YOUR)
: ("your " + you.hand_name(true));
mprf(MSGCH_DURATION, "A thick mucus forms on %s.", msg.c_str());
you.increase_duration(DUR_SLIMIFY,
random2avg(you.piety / 4, 2) + 3, 100);
Expand Down
3 changes: 2 additions & 1 deletion crawl-ref/source/attack.cc
Expand Up @@ -120,7 +120,7 @@ bool attack::handle_phase_damaged()

bool attack::handle_phase_killed()
{
monster * const mon = defender->as_monster();
monster* mon = defender->as_monster();
if (!invalid_monster(mon))
monster_die(mon, attacker);

Expand Down Expand Up @@ -1599,6 +1599,7 @@ bool attack::apply_damage_brand(const char *what)
switch (brand)
{
case SPWPN_PROTECTION:
if (attacker->is_player())
{
const monster* mon = defender->as_monster();
if (mon && !mons_is_firewood(*mon))
Expand Down
12 changes: 6 additions & 6 deletions crawl-ref/source/branch-data.h
Expand Up @@ -32,7 +32,7 @@ const Branch branches[NUM_BRANCHES] =
"Orcish Mines", "the Orcish Mines", "Orc",
nullptr,
BROWN, BROWN,
'O', {}, 4 },
'O', {}, 0 },

{ BRANCH_ELF, BRANCH_ORC, 2, 2, 3, 15,
BFLAG_DANGEROUS_END,
Expand All @@ -58,7 +58,7 @@ const Branch branches[NUM_BRANCHES] =
"Lair", "the Lair of Beasts", "Lair",
nullptr,
GREEN, BROWN,
'L', {}, 4 },
'L', {}, 0 },

{ BRANCH_SWAMP, BRANCH_LAIR, 2, 4, 4, 15,
BFLAG_DANGEROUS_END | BFLAG_SPOTTY,
Expand All @@ -74,7 +74,7 @@ const Branch branches[NUM_BRANCHES] =
"Shoals", "the Shoals", "Shoals",
nullptr,
BROWN, BROWN,
'A', { RUNE_SHOALS }, 3 },
'A', { RUNE_SHOALS }, 6 },

{ BRANCH_SNAKE, BRANCH_LAIR, 2, 4, 4, 15,
BFLAG_DANGEROUS_END,
Expand Down Expand Up @@ -123,15 +123,15 @@ const Branch branches[NUM_BRANCHES] =
"Crypt", "the Crypt", "Crypt",
nullptr,
LIGHTGREY, BROWN,
'C', {}, -3 },
'C', {}, -6 },

{ BRANCH_TOMB, BRANCH_CRYPT, 3, 3, 3, 21,
BFLAG_ISLANDED | BFLAG_DANGEROUS_END | BFLAG_NO_SHAFTS,
DNGN_ENTER_TOMB, DNGN_EXIT_TOMB, NUM_FEATURES,
"Tomb", "the Tomb of the Ancients", "Tomb",
nullptr,
BROWN, BROWN,
'W', { RUNE_TOMB }, -10 },
'W', { RUNE_TOMB }, -6 },

{ BRANCH_VESTIBULE, NUM_BRANCHES, 27, 27, 1, 27,
BFLAG_NO_ITEMS,
Expand Down Expand Up @@ -306,5 +306,5 @@ const Branch branches[NUM_BRANCHES] =
"Desolation", "the Desolation of Salt", "Desolation",
"You enter a great desolation of salt!",
LIGHTGREY, BROWN, // TODO
'9', {}, 2 },
'9', {}, 6 },
};
6 changes: 4 additions & 2 deletions crawl-ref/source/branch.cc
Expand Up @@ -211,9 +211,11 @@ branch_type branch_by_shortname(const string &branch)
return NUM_BRANCHES;
}

int current_level_ambient_noise()
int ambient_noise(branch_type branch)
{
return branches[you.where_are_you].ambient_noise;
if (branch == NUM_BRANCHES)
return branches[you.where_are_you].ambient_noise;
return branches[branch].ambient_noise;
}

branch_type get_branch_at(const coord_def& pos)
Expand Down
2 changes: 1 addition & 1 deletion crawl-ref/source/branch.h
Expand Up @@ -93,7 +93,7 @@ level_id current_level_parent();
branch_type branch_by_abbrevname(const string &branch, branch_type err = NUM_BRANCHES);
branch_type branch_by_shortname(const string &branch);

int current_level_ambient_noise();
int ambient_noise(branch_type branch = NUM_BRANCHES);

branch_type get_branch_at(const coord_def& pos);
bool branch_is_unfinished(branch_type branch);
Expand Down
23 changes: 23 additions & 0 deletions crawl-ref/source/dat/des/branches/snake.des
Expand Up @@ -993,6 +993,29 @@ xx.........xxxx
xxxxx
ENDMAP

NAME: cheibrodos_toxic_ritual
DEPTH: Snake
TAGS: no_item_gen no_monster_gen
ORIENT: float
MONS: green death, naga ritualist, naga mage, naga
NSUBST: - = 2:2 / *:.
NSUBST: _ = 2:2 / *:.
NSUBST: ' = 1:3 / 2:4 / 3=34 / *:.
NSUBST: " = 1:| / 3:* / 4=$%
MAP
.............
..ccc...ccc..
.cc"cc.cc"cc.
.c"""ncn"""c.
.c'''''''''c.
.c'''''''''c.
.c---c=c___c.
.c-1-n.n_1_c.
.ccAcc.ccAcc.
..ccc...ccc..
......@......
ENDMAP

################################################################################
# Snake endings
################################################################################
Expand Down
8 changes: 7 additions & 1 deletion crawl-ref/source/dat/des/branches/tomb.des
Expand Up @@ -32,10 +32,16 @@ function tomb_guardian_set(e, include_nothing)
return
end
if dgn.persist.tomb_guardian_sets == nil then
dgn.persist.tomb_guardian_sets = { 0, 0 }
dgn.persist.tomb_guardian_sets = { 0, 0, 0, 0 }
end
-- HACK: for save compat, double up the monster sets
-- Remove when TAG_MAJOR_VERSION > 34!
local sets =
{
"ushabti w:119 / guardian mummy w:79 / mummy w:28 / " ..
"ancient champion w:8 / skeletal warrior w:8 / bennu",
"guardian mummy w:119 / death scarab band w:79 / mummy w:28 / " ..
"ancient champion w:8 / skeletal warrior w:8 / bennu",
"ushabti w:119 / guardian mummy w:79 / mummy w:28 / " ..
"ancient champion w:8 / skeletal warrior w:8 / bennu",
"guardian mummy w:119 / death scarab band w:79 / mummy w:28 / " ..
Expand Down
22 changes: 13 additions & 9 deletions crawl-ref/source/dat/des/branches/zot.des
Expand Up @@ -2081,15 +2081,19 @@ ORIENT: float
{{
local teams = { "black", "yellow", "green", "purple", "red", "white",
"mottled" }
local team1 = crawl.random2(#teams) + 1
local team2 = 0
repeat
team2 = crawl.random2(#teams) + 1
until team2 ~= team1
mons(teams[team1] .. " draconian")
mons(teams[team1] .. " draconian knight")
mons(teams[team2] .. " draconian")
mons(teams[team2] .. " draconian knight")

local team1num = crawl.random2(#teams) + 1
local team1 = teams[team1num]

-- ensures we can't roll the same team twice
teams[team1num] = teams[#teams]

local team2 = teams[crawl.random2(#teams - 1) + 1]

mons(team1 .. " draconian")
mons(team1 .. " draconian knight")
mons(team2 .. " draconian")
mons(team2 .. " draconian knight")
}}
# The refs:
MONS: Killer Klown
Expand Down

0 comments on commit 86d965a

Please sign in to comment.