mirror of
https://codeberg.org/noisytoot/notnotdnethack.git
synced 2025-04-04 07:30:42 +01:00
Compare commits
20 commits
de81d63156
...
d94c5b3507
Author | SHA1 | Date | |
---|---|---|---|
d94c5b3507 | |||
6ca7d4cad5 | |||
957574c55a | |||
e8c6f7b65b | |||
7baf86b221 | |||
![]() |
7dcd7393ad | ||
![]() |
cf42f9aaa2 | ||
![]() |
e4be5923ee | ||
![]() |
b6f5a19521 | ||
![]() |
7c861331af | ||
![]() |
bdbb58899e | ||
![]() |
5895e0b3c5 | ||
![]() |
973e084a2a | ||
![]() |
5e678970ca | ||
![]() |
57789fff30 | ||
![]() |
982d3e8de1 | ||
![]() |
eb3f82be49 | ||
![]() |
b28c0b89cd | ||
![]() |
16052920f9 | ||
![]() |
414f7fc52a |
13 changed files with 75 additions and 36 deletions
|
@ -33,7 +33,6 @@ CPPFLAGS += -Wno-unused-label
|
|||
CPPFLAGS += -Wno-unknown-pragmas
|
||||
CPPFLAGS += -Wno-missing-braces
|
||||
CPPFLAGS += -Wno-format-overflow
|
||||
#CPPFLAGS += -Werror
|
||||
|
||||
.DELETE_ON_ERROR:
|
||||
|
||||
|
|
|
@ -132,6 +132,13 @@ alhoon
|
|||
with _dry brown stains of a troubling kind_ from former
|
||||
Sacrifices.
|
||||
[ The Tough Guide to Fantasyland, by Diana Wynne Jones ]
|
||||
*amalgamated skies
|
||||
*Know* that there is nothing in all the Worlds that can stand
|
||||
against unity. When all know a single purpose, when all hands
|
||||
are guided by one will, and all act with the same intent, the
|
||||
Planes themselves may be moved.
|
||||
[ The Unbroken Circle of Zerthimon,
|
||||
Planescape Torment ]
|
||||
amat*rasu *
|
||||
The Shinto sun goddess, Amaterasu Omikami is the central
|
||||
figure of Shintoism and the ancestral deity of the imperial
|
||||
|
@ -7787,6 +7794,26 @@ serpent man of Yoth
|
|||
was prostrate.
|
||||
[ S. Petersen's Field Guide to
|
||||
Creatures of the Dreamlands ]
|
||||
*silver sky
|
||||
Hear not just my words, but the meaning behind them.
|
||||
Zerthimon's will, my will, your will. Let us all be as one.
|
||||
In this place, broken upon shadow, carved deep in earth.
|
||||
What once was sundered, from two peoples born.
|
||||
Make all that was scattered whole again
|
||||
by the heart that guides the will.
|
||||
By the will that guides the hand.
|
||||
And the hand... that guides the blade.
|
||||
[ Neverwinter Nights 2 ]
|
||||
*sky reflected
|
||||
Zerthimon took the blade and studied its surface.
|
||||
In it, he saw his reflection. It was in the
|
||||
reflection of the steel that Zerthimon first *knew*
|
||||
himself. Its edge was sharp, its will the wearer's.
|
||||
It was the blade that would come to be raised against
|
||||
Gith when Zerthimon made the Pronouncement of Two
|
||||
Skies.
|
||||
[ The Unbroken Circle of Zerthimon,
|
||||
Planescape Torment ]
|
||||
*speed*
|
||||
"Attack on ground where your enemy believes you will not, from an unexpected
|
||||
direction at an unexpected time. Defend where your enemy believes you are not,
|
||||
|
|
|
@ -92,7 +92,7 @@ LEVEL: "stair5" "L" @ (6, 0)
|
|||
LEVEL: "sanctum" "none" @ (-1, 0)
|
||||
LEVEL: "wizard1" "none" @ (7, 0)
|
||||
CHAINLEVEL: "wizard2" "X" "wizard1" + (1, 0)
|
||||
CHAINLEVEL: "wizard3" "Z" "wizard1" + (2, 0)
|
||||
CHAINLEVEL: "wizard3" "none" "wizard1" + (2, 0)
|
||||
LEVEL: "hell3" "none" @ (-3, 0)
|
||||
LEVALIGN: lawful
|
||||
RNDLEVEL: "hell2" "A" @ (-6, 0) 4
|
||||
|
@ -105,7 +105,7 @@ RNDLEVEL: "abyss" "D" @ (-12,9) 6
|
|||
LEVALIGN: chaotic
|
||||
RNDLEVEL: "brine" "none" @ (-12,9) 3
|
||||
LEVALIGN: chaotic
|
||||
LEVEL: "fakewiz1" "E" @ (-12,9)
|
||||
LEVEL: "fakewiz1" "none" @ (-12,9)
|
||||
LEVEL: "fakewiz2" "F" @ (-12,9)
|
||||
LEVEL: "fakewiz3" "G" @ (-12,9)
|
||||
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
* 3.21.3: Blades of mercy, Aphanacts, species favored spells, crystal skulls, magic torch on grue level, tweaks to regular insight monsters, and misc bug fixes.
|
||||
* 3.21.4: War-helm of the dreaming and monster madnesses, Silver flame cult, Chaos 1 revision, Black goat revision, Monk quest revision and move fixes/improvements, ring artifacts, Singing sword is nameable, Jrt Netjer hell vaults, Insight commanders in hell, Golden Knight artifact, halve con bonus to hp, ds undead flasks, better handling for polyform weapons, Inv. weight, daughters of Naunet, move system improvements, #downboy and #getem, and misc bug fixes.
|
||||
* 3.22.0: Drow Healer, Elf Madman, Healer quest revision, Human, Vampire, and Gnome madman differentiation, new psychic and goatmom monster spells, center of all balance adjustments, y'ha-talla insight traits, amnesia cures monster madnesses, complex ward handling refactor, blasphemous lurker madness, the many wormy fingers entity (internally the "psurlon" template, but this is an artifact name), tweak glyph code to leak less info to blind PCs, allow option-file setting of template symbols, quest guardian-ship is a faction, named ("semiunique") monsters in hell get max HD and HP, and misc bug fixes and tweaks.
|
||||
* 3.23.0: Yog-Sothoth cult, Cult revisions and mutations system, Descendant option, Knight fighting styles, Advanced spellcasting fixes, Monk moves are free, Samurai "Kendo", Attack and Passive pet commands, Mercurial weapon insight traits and gith artifact "swords", Scorpion Carapace revision, MC3 nerf, Monster smiths and forges v1, Random Insight monsters, Depths monster gen zone, Variable monster Hit Dice sizes, and misc bug fixes and tweaks.
|
||||
* 3.23.0: Yog-Sothoth cult, Cult revisions and mutations system, Bokrug "cult", Descendant option, Knight fighting styles, Advanced spellcasting fixes, Monk moves are free, Samurai "Kendo", Half dragon level 15 intrinsics, Attack and Passive pet commands, Mercurial weapon insight traits and gith artifact "swords", Scorpion Carapace revision, MC3 nerf, Monster smiths and forges v1, Random Insight monsters, Depths monster gen zone, Variable monster Hit Dice sizes, and misc bug fixes and tweaks.
|
||||
*/
|
||||
#define PATCHLEVEL 15
|
||||
/*
|
||||
|
|
|
@ -29,7 +29,7 @@ chaos_temple_quest,Asinine paradigm,Completed the chaos temple quest,dnh_chaos1_
|
|||
mithardir_quest,Chasing after the wind,Completed the mithardir quest,x,,- on white sand
|
||||
mordor_quest,Fossil of the First Age,Completed the mordor quest,x,,& under ground with elves walking over it
|
||||
second_thoughts,Second thoughts,Completed a drow shared quest loyally before completing the traitor's quest,x,,Drow surrounded by corpses
|
||||
illuminated,Illuminated,Learned every word of creation and accumulated 30 passive sylabel bonuses,dnh_illuminated.png,24/05/2022,
|
||||
illuminated,Illuminated,Learned every word of creation and accumulated 30 passive syllable bonuses,dnh_illuminated.png,24/05/2022,
|
||||
exodus,Exodus,Ascended with a pet android commander or operator android,dnh_exodus.png,29/04/2024,
|
||||
fully_upgraded,Super Fighting Robot,Acquried all clockwork upgrades (except high-tension spring),x,,
|
||||
hunter_of_nightmares,Hunter of Nightmares,Defeated at least one of each of the secret insight bosses,dnh_nightmare_hunter.png,9/6/2022,
|
||||
|
@ -45,6 +45,8 @@ bokrug_ascension,Detestable gods,Completed Bokrug's ascension ritual,x,,Bokrug s
|
|||
healer_quest,Plague of stolen lives,Completed healer quest,x,,H standing among %
|
||||
drow_healer_quest,Twisted by dreams,Completed drow healer quest,x,,U surrounded by h
|
||||
monk_quest,You must defeat Sheng Long to stand a chance,Completed monk quest,x,,@ with a bandana?
|
||||
New June 2024,,,,,
|
||||
iea_upgraded,The Elfdalorian,15+ upgrades on a set of imperial elven armor,,,
|
||||
notdNetHack,,,,
|
||||
get_kroo,Kroo's Bling,Acquire the dismal swamp completion prize.,,
|
||||
get_raggo,Pet Rock,Acquire the gnomish mines completion prize.,uses same image as luckstone,
|
||||
|
@ -58,4 +60,4 @@ used_smith,If The Shoe Fits...,Pay for an armorsmith service.,,
|
|||
max_punch,Not Pulling Punches,Land a punch with all 4 offensive mystic powers active.,,
|
||||
garnet_spear,Garnet Rod,Land a hit with a garnet tipped spear.,,
|
||||
inked_up,Inked Up,Get a tattoo in The Sigil from Fell.,,
|
||||
new_races,New Races. New Faces.,"Ascend either a salamander, a symbiote, or an etheraloid",,
|
||||
new_races,New Races. New Faces.,"Ascend either a salamander, an etherealoid, an ent, or an octopode.",,
|
||||
|
|
Can't render this file because it has a wrong number of fields in line 50.
|
|
@ -309,7 +309,7 @@ get_satiationlimit(void)
|
|||
*/
|
||||
if (Race_if(PM_INCANTIFIER)) return max((u.uenmax*4)/5, 200);
|
||||
|
||||
if (uclockwork) return (hungermax*3)/4;
|
||||
if (uclockwork) return min(hungermax-850, (hungermax*3)/4);
|
||||
|
||||
return hungermax/2;
|
||||
}
|
||||
|
|
|
@ -35,27 +35,28 @@ create_explode_region(void)
|
|||
static void
|
||||
add_location_to_explode_region(int x, int y, void * _reg)
|
||||
{
|
||||
ExplodeRegion *reg = _reg;
|
||||
int i;
|
||||
ExplodeLocation *new;
|
||||
for(i = 0; i < reg->nlocations; i++)
|
||||
if (reg->locations[i].x == x && reg->locations[i].y == y)
|
||||
return;
|
||||
if (reg->nlocations == reg->alocations) {
|
||||
reg->alocations = reg->alocations ? 2 * reg->alocations : 32;
|
||||
new = (ExplodeLocation *)
|
||||
alloc(reg->alocations * sizeof(ExplodeLocation));
|
||||
if (reg->locations)
|
||||
(void) memcpy((void *)new, (void *)reg->locations,
|
||||
reg->nlocations * sizeof(ExplodeLocation));
|
||||
free((void *)reg->locations);
|
||||
reg->locations = new;
|
||||
}
|
||||
reg->locations[reg->nlocations].x = x;
|
||||
reg->locations[reg->nlocations].y = y;
|
||||
/* reg->locations[reg->nlocations].blast = 0; */
|
||||
/* reg->locations[reg->nlocations].shielded = 0; */
|
||||
reg->nlocations++;
|
||||
ExplodeRegion *reg = _reg;
|
||||
int i;
|
||||
ExplodeLocation *new;
|
||||
for(i = 0; i < reg->nlocations; i++)
|
||||
if (reg->locations[i].x == x && reg->locations[i].y == y)
|
||||
return;
|
||||
if (reg->nlocations == reg->alocations) {
|
||||
reg->alocations = reg->alocations ? 2 * reg->alocations : 32;
|
||||
new = (ExplodeLocation *)
|
||||
alloc(reg->alocations * sizeof(ExplodeLocation));
|
||||
if(reg->nlocations > 0){
|
||||
(void) memcpy((void *)new, (void *)reg->locations,
|
||||
reg->nlocations * sizeof(ExplodeLocation));
|
||||
}
|
||||
free((void *)reg->locations);
|
||||
reg->locations = new;
|
||||
}
|
||||
reg->locations[reg->nlocations].x = x;
|
||||
reg->locations[reg->nlocations].y = y;
|
||||
/* reg->locations[reg->nlocations].blast = 0; */
|
||||
/* reg->locations[reg->nlocations].shielded = 0; */
|
||||
reg->nlocations++;
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
|
@ -218,8 +218,13 @@ summon_god_minion(int godnum, boolean talk)
|
|||
if (!Blind)
|
||||
pline("%s appears before you.", An(Hallucination ? rndmonnam() : mon->data->mname));
|
||||
}
|
||||
mon->mpeaceful = FALSE;
|
||||
/* don't call set_malign(); player was naughty */
|
||||
if(mon->mpeaceful){
|
||||
mon->mpeaceful = FALSE;
|
||||
if(godnum != u.ugodbase[UGOD_CURRENT])
|
||||
set_malign(mon);
|
||||
/* else don't call set_malign(); player was naughty */
|
||||
newsym(mon->mx,mon->my);
|
||||
}
|
||||
mon->msleeping = 0;
|
||||
mon->mcanmove = 1;
|
||||
|
||||
|
|
|
@ -630,13 +630,15 @@ do_digging_projectile(
|
|||
boolean youagr = (magr && (magr == &youmonst));
|
||||
int newx = bhitpos.x + dx;
|
||||
int newy = bhitpos.y + dy;
|
||||
|
||||
struct rm *room;
|
||||
boolean shopdoor = FALSE, shopwall = FALSE;
|
||||
|
||||
/* Location must be valid */
|
||||
if (!isok(newx, newy))
|
||||
//If we're out of bounds, return. Can happen if a bolt hits the level boundery.
|
||||
if(!isok(newx, newy))
|
||||
return;
|
||||
|
||||
struct rm *room = &levl[newx][newy];
|
||||
room = &levl[newx][newy];
|
||||
|
||||
/* Projectile must be a digger */
|
||||
if (!((thrownobj->otyp == BLASTER_BOLT || thrownobj->otyp == HEAVY_BLASTER_BOLT || thrownobj->otyp == CARCOSAN_BOLT || thrownobj->otyp == LASER_BEAM)))
|
||||
|
|
|
@ -2789,7 +2789,7 @@ give_ascension_trophy(void)
|
|||
achieve.trophies |= HALF_ASC;
|
||||
else if(Race_if(PM_YUKI_ONNA))
|
||||
achieve.trophies |= YUKI_ASC;
|
||||
if(Race_if(PM_SALAMANDER) || Race_if(PM_ETHEREALOID) || Race_if(PM_ENT))
|
||||
if(Race_if(PM_SALAMANDER) || Race_if(PM_ETHEREALOID) || Race_if(PM_ENT) || Race_if(PM_OCTOPODE))
|
||||
achieve.new_races = 1;
|
||||
int i;
|
||||
int keys = 0;
|
||||
|
|
|
@ -1063,6 +1063,7 @@ domonnoise(struct monst *mtmp, boolean chatting)
|
|||
if(obj->objsize == MZ_GIGANTIC) obj->objsize = MZ_HUGE;
|
||||
else obj->objsize--;
|
||||
verbalize("Shrunk her down!");
|
||||
fix_object(obj);
|
||||
made_purchase = TRUE;
|
||||
break;
|
||||
case 2://grow armor
|
||||
|
@ -1097,6 +1098,7 @@ domonnoise(struct monst *mtmp, boolean chatting)
|
|||
if(obj->objsize == MZ_HUGE) obj->objsize = MZ_GIGANTIC;
|
||||
else obj->objsize++;
|
||||
verbalize("Combined em!");
|
||||
fix_object(obj);
|
||||
made_purchase = TRUE;
|
||||
break;
|
||||
case 3://repair armor
|
||||
|
@ -1193,6 +1195,7 @@ domonnoise(struct monst *mtmp, boolean chatting)
|
|||
obj->otyp - GRAY_DRAGON_SCALES;
|
||||
obj->objsize = MZ_HUMAN;
|
||||
obj->known = 1;
|
||||
fix_object(obj);
|
||||
made_purchase = TRUE;
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -2923,7 +2923,7 @@ u_init(void)
|
|||
|
||||
u.oonaenergy = !rn2(3) ? AD_FIRE : rn2(2) ? AD_COLD : AD_ELEC;
|
||||
u.ring_wishes = -1;
|
||||
dungeon_topology.alt_tower = 1;//!rn2(8);
|
||||
dungeon_topology.alt_tower = !rn2(8);
|
||||
|
||||
u.silver_flame_z.dnum = u.uz.dnum;
|
||||
u.silver_flame_z.dlevel = rn2(dunlevs_in_dungeon(&u.uz)) + dungeons[u.uz.dnum].depth_start;
|
||||
|
|
|
@ -315,7 +315,7 @@ get_item_property_list(int *property_list, struct obj *obj, int otyp)
|
|||
}
|
||||
}
|
||||
//From scorpion carapace
|
||||
if(obj->oartifact == ART_SCORPION_CARAPACE){
|
||||
if(obj && obj->oartifact == ART_SCORPION_CARAPACE){
|
||||
switch(cur_prop){
|
||||
case SWIMMING:
|
||||
if(check_carapace_mod(obj, CPROP_SWIMMING))
|
||||
|
|
Loading…
Add table
Reference in a new issue