Skip to content

Commit

Permalink
feat: gnoll and gnoll packs
Browse files Browse the repository at this point in the history
  • Loading branch information
goblinhack committed Nov 18, 2023
1 parent 5a1bd02 commit 9d0bf5d
Show file tree
Hide file tree
Showing 21 changed files with 298 additions and 183 deletions.
139 changes: 1 addition & 138 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
<!-- Bugs -->
<!-- ------ -->
<!-- mummy necro would not move and would kill own snakes -->
<!-- -->
<!-- Idea list -->
<!-- --------- -->
Expand Down Expand Up @@ -160,147 +159,11 @@ Press TAB to switch between modes during the game.
Bestiary
--------
<!-- begin monsters type marker -->
| Monster | Class/Rarity | Dngr | Attack | # Attcks | Other attacks | Immunity |
| :--- | --- | --- | --- | --- | --- | --- |
| Reaper | E/common | 824 | 1d6+6 | 2 | | Acid<br />Cold<br />Fire<br />Holy-damage<br />Necrosis<br />Negation<br />Paralysis<br />Confusion<br />Confusion<br />Blinding<br />Poison<br />Holding<br />Sanctuary-tiles<br />Slowing<br />Webs<br />Draining<br />Vorpal-Weapons<br />Non-Magical-Weapons<br /> |
| Fire Demon | D/uncommon | 566 | 1d14+4 | 2 | Fire:1d6+6<br /> | Cold<br />Fire<br />Necrosis<br />Poison<br />Vorpal-Weapons<br /> |
| Cthulite | D/rare | 440 | 1d14+4 | 2 | Acid:2d6<br />Poison:2d12<br /> | Acid<br />Cold<br />Necrosis<br />Confusion<br />Confusion<br />Poison<br />Draining<br />Vorpal-Weapons<br /> |
| Ettin, Two Headed Giant | D/rare | 382 | 1d10+4 | 2 | | |
| Flesh Golem | C/rare | 346 | 2d8+4 | 2 | | Cold<br />Confusion<br />Confusion<br />Poison<br />Draining<br /> |
| Tentacle Horror | B/common | 332 | 2d6+2 | 1 | Acid:1d6<br /> | Acid<br />Necrosis<br /> |
| Undead Bear | C/common | 328 | 2d8+5 | 2 | Necrotic:1<br /> | Cold<br />Necrosis<br />Poison<br />Draining<br /> |
| Bearowl | C/common | 290 | 2d8+5 | 2 | | |
| Baby Kraken | D/rare | 251 | | 1 | Bite:3d8+10<br />Digest:1d20<br />Drown:1d20<br /> | Water<br /> |
| Colossal Scorpion | E/v-rare | 243 | | 1 | Bite:2d8+6<br />Digest:1d40<br />Poison:1d20+10<br /> | |
| Fire Troll | B/uncommon | 241 | 1d12+4 | 1 | | Fire<br />Poison<br /> |
| Yeti | C/rare | 209 | 1d12+8 | 1 | | Cold<br /> |
| Mummy | B/common | 208 | 1d10+10 | 2 | Drain:1d10<br /> | Cold<br />Fire<br />Necrosis<br />Poison<br />Draining<br /> |
| Giant Skeleton | C/common | 197 | 1d6 | 1 | | Cold<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Draining<br /> |
| Stone Troll | B/common | 197 | 1d12+4 | 1 | | Poison<br /> |
| Dungeon Cleaner | B/common | 189 | 1d10 | 1 | Digest:1d40<br /> | Acid<br />Necrosis<br /> |
| Black Pudding | B/common | 188 | 3d6+2 | 1 | Acid:2d6<br /> | Acid<br />Cold<br />Electricity<br />Lightning<br />Necrosis<br /> |
| Cement Man | C/common | 184 | 3d8+6 | 1 | | Cold<br />Fire<br />Confusion<br />Confusion<br />Poison<br />Draining<br /> |
| Mummy Necromancer | C/uncommon | 154 | 1d6+2 | 1 | Necrotic:1<br /> | Cold<br />Necrosis<br />Poison<br />Draining<br /> |
| Bone Spider | C/common | 152 | 1d8+3 | 1 | Poison:2d8<br /> | Cold<br />Necrosis<br />Poison<br />Webs<br />Draining<br />Vorpal-Weapons<br /> |
| Lesser Tentacleye | C/common | 141 | 2d6 | 1 | | Cold<br />Necrosis<br />Poison<br />Draining<br />Water<br /> |
| Flameskull | C/uncommon | 140 | 2d6 | 1 | | Acid<br />Cold<br />Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Draining<br />Vorpal-Weapons<br />Non-Magical-Weapons<br /> |
| Giant Spider | B/common | 140 | 1d8+3 | 1 | Poison:2d8<br /> | Webs<br /> |
| Gargoyle | C/common | 134 | 2d6 | 1 | | Cold<br />Necrosis<br />Poison<br />Draining<br />Water<br />Vorpal-Weapons<br /> |
| Murder Bunny | B/rare | 132 | 1d8 | 2 | Bite:1d6<br />Claw:1d4<br /> | |
| Portable Hole | B/uncommon | 127 | | 0 | | Acid<br />Cold<br />Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Webs<br />Draining<br />Vorpal-Weapons<br /> |
| Hill Ogre | B/common | 127 | 1d10+4 | 1 | | |
| Iceman | B/common | 126 | | 1 | Cold:1d8<br /> | Cold<br /> |
| Unleashed Gargoyle | C/common | 124 | 1d6+2 | 1 | | Necrosis<br />Poison<br />Draining<br />Water<br />Vorpal-Weapons<br /> |
| Demon Goat | B/rare | 106 | 2d6+2 | 1 | | Fire<br />Necrosis<br />Poison<br /> |
| Giant Piranha | B/v-rare | 103 | 1d10+3 | 1 | Bite:1d8<br /> | Water<br /> |
| Giant Battle Duck | C/v-rare | 98 | 1d8+4 | 1 | Bite:1d10<br />Claw:1d6<br /> | Water<br /> |
| Treasure Chest | B/common | 93 | 1d8+4 | 1 | | Water<br />Vorpal-Weapons<br /> |
| Treasure Chest Mimic | B/common | 93 | 1d8+4 | 1 | | Water<br />Vorpal-Weapons<br /> |
| Flaming Skeleton | B/common | 92 | 1d4 | 1 | | Cold<br />Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Draining<br /> |
| Acid Blob | A/common | 90 | 1d10 | 1 | | Acid<br />Necrosis<br /> |
| Burning Skeleton | B/common | 89 | 1d3 | 1 | | Cold<br />Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Draining<br /> |
| Electric Eel | B/rare | 87 | 1d3+1 | 1 | Bite:1d4<br /> | Electricity<br />Water<br /> |
| Mantisman | B/uncommon | 85 | 1d12+8 | 1 | | |
| Dreadfire Snake | C/rare | 83 | 1d3+1 | 1 | Poison:1d4<br /> | Webs<br />Water<br /> |
| Flux Spider | B/uncommon | 82 | 1d3 | 1 | Necrotic:1<br />Poison:1d4<br /> | Cold<br />Necrosis<br />Poison<br />Webs<br />Vorpal-Weapons<br /> |
| Gargoyle Baby | C/common | 80 | 1d6 | 1 | | Cold<br />Necrosis<br />Poison<br />Draining<br />Water<br />Vorpal-Weapons<br /> |
| Hellpup | B/rare | 78 | 1d6+2 | 1 | | Cold<br />Fire<br />Necrosis<br />Poison<br />Draining<br /> |
| Zorblin Priest | B/common | 78 | 1d6+2 | 1 | | |
| Assassin Duck | B/v-rare | 77 | 1d6+1 | 1 | Bite:1d8<br />Claw:1d6<br /> | Water<br /> |
| Zorblin Leader | B/common | 76 | 1d4+2 | 1 | | |
| Zorblin Pirate | B/common | 76 | 1d4+2 | 1 | | |
| Gaseous Gloat | B/common | 75 | 1d20 | 1 | Digest:1d40<br /> | Necrosis<br /> |
| Firefox | B/rare | 74 | 1d6+2 | 1 | | Fire<br />Water<br /> |
| Dungeon Belcher | B/common | 74 | 1d20 | 1 | Digest:1d10<br /> | Confusion<br />Confusion<br /> |
| Teletoad | B/common | 73 | 1d3+1 | 1 | Poison:1d10<br /> | Cold<br />Water<br /> |
| Death Hornet | A/uncommon | 72 | 1d4+1 | 1 | Bite:1d10<br />Poison:1d10<br /> | |
| Zoblin | A/common | 70 | 1d6 | 1 | | Cold<br />Necrosis<br />Poison<br />Draining<br /> |
| Zoblin | A/common | 70 | 1d6 | 1 | | Cold<br />Necrosis<br />Poison<br />Draining<br /> |
| Zorblin Soldier | A/common | 70 | 1d4+2 | 1 | | |
| Huge Fluffy Bat | B/common | 67 | 1d4+2 | 1 | Bite:1d4<br />Claw:1d6<br />Poison:1d4+1<br /> | Water<br /> |
| Deathstalker Scorpion | B/rare | 66 | 1d6+1 | 1 | Poison:1d30<br /> | |
| Dogman | A/common | 65 | 1d4+1 | 1 | | Water<br /> |
| Molekin | A/uncommon | 64 | 1d4+2 | 1 | | Water<br /> |
| Zorblin Wizard | C/common | 64 | 1d4+2 | 1 | | |
| Lesser Zorblin | A/common | 64 | 1d4+2 | 1 | | |
| Pyrolizard | B/common | 64 | 1d6+1 | 1 | | Fire<br /> |
| Gnome Knight | B/common | 63 | 1d6+1 | 1 | | Poison<br /> |
| Zorblomancer | B/common | 62 | 1d4+2 | 1 | | |
| Zorblin Eldster | B/common | 62 | 1d4+2 | 1 | | |
| Rock Gnome | B/common | 61 | 1d6+1 | 1 | | Poison<br /> |
| Carcass Creeper | A/common | 61 | 1d6+2 | 1 | Bite:1d8<br />Claw:1d6<br />Poison:1d10<br /> | Poison<br /> |
| Piranha | A/rare | 61 | 1d4+3 | 1 | Bite:1d4<br /> | Water<br /> |
| Gnorf | A/common | 60 | 1d4+1 | 1 | | Cold<br />Poison<br /> |
| Brown Extrovert Spider | A/uncommon | 59 | 1d3 | 1 | Necrotic:1<br />Poison:1d3<br /> | Necrosis<br />Webs<br /> |
| Battle Goat | B/uncommon | 58 | 1d6+2 | 1 | | Poison<br />Water<br /> |
| Gnome Thief | A/common | 54 | 1d2+1 | 1 | | Cold<br />Poison<br /> |
| Slime Jumper | A/common | 54 | 2d6+2 | 1 | Acid:1d6<br /> | Acid<br />Necrosis<br /> |
| Kraken Tentacle | A/common | 52 | 1d3+1 | 1 | Poison:1d8+1<br /> | Water<br /> |
| Thylacine | B/v-rare | 52 | 1d6+2 | 1 | | Water<br /> |
| Onyx Widow | A/common | 52 | 1d3 | 1 | Poison:1d4<br /> | Webs<br /> |
| Meatfairy | A/common | 51 | 1d3+1 | 1 | Bite:1d4<br />Claw:1d2<br /> | Vorpal-Weapons<br /> |
| Blinkcat | B/common | 50 | 1d3+1 | 1 | | Cold<br />Water<br />Vorpal-Weapons<br /> |
| Noble Warrior | /common | 50 | 1d3 | 1 | | Sanctuary-tiles<br /> |
| Spectral Blade | B/unique | 49 | 1d4 | 1 | | Cold<br />Fire<br />Necrosis<br />Paralysis<br />Confusion<br />Confusion<br />Blinding<br />Poison<br />Webs<br />Draining<br />Vorpal-Weapons<br /> |
| Moresquito | A/common | 48 | 1d3+1 | 1 | Bite:1d4<br />Claw:1d3<br />Poison:1d4<br />Drain:1d4<br /> | |
| Para Spider | B/uncommon | 48 | 1d3 | 1 | Poison:1d4<br /> | Cold<br />Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Webs<br />Draining<br />Vorpal-Weapons<br /> |
| Spectral Blade | B/unique | 48 | 1d3 | 1 | | Cold<br />Fire<br />Necrosis<br />Paralysis<br />Confusion<br />Confusion<br />Blinding<br />Poison<br />Webs<br />Draining<br />Vorpal-Weapons<br /> |
| Spectral Blade | B/unique | 48 | 1d3 | 1 | | Cold<br />Fire<br />Necrosis<br />Paralysis<br />Confusion<br />Confusion<br />Blinding<br />Poison<br />Webs<br />Draining<br />Vorpal-Weapons<br /> |
| Orb Of Energy | B/uncommon | 47 | | 0 | | Cold<br />Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Webs<br />Draining<br /> |
| Dog | A/uncommon | 46 | 1d4+2 | 1 | | Water<br /> |
| Cuddly Eel | A/common | 45 | 1d3+1 | 1 | Bite:1d4<br /> | Water<br /> |
| Giant Rat | B/common | 45 | 1d6+2 | 1 | | Water<br /> |
| Scorpion | A/common | 45 | 1d3+1 | 1 | Poison:1d12<br /> | |
| Skeleton | A/common | 45 | 1d3 | 1 | | Cold<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Draining<br /> |
| Ghost | A/common | 45 | | 1 | Cold:1<br /> | Acid<br />Cold<br />Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Webs<br />Draining<br />Water<br /> |
| Orb Of Fire | B/uncommon | 45 | | 0 | | Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br /> |
| Ghost Minion | A/common | 45 | | 1 | Cold:1<br /> | Acid<br />Cold<br />Fire<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Webs<br />Draining<br />Water<br /> |
| Asp | A/common | 45 | 1d3+1 | 1 | Poison:1d3+1<br /> | Webs<br />Water<br /> |
| Narhornet | A/uncommon | 44 | 1d4+1 | 1 | Bite:1d4<br />Poison:1d8<br /> | |
| Centipede | A/common | 44 | 1d4+2 | 1 | Bite:1d8<br />Claw:1d4<br />Poison:1d4<br /> | Poison<br /> |
| Skeleton | A/common | 43 | 1d3 | 1 | | Cold<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Draining<br /> |
| Skeleton Minion | A/common | 42 | 1d2 | 1 | | Cold<br />Necrosis<br />Paralysis<br />Blinding<br />Poison<br />Draining<br /> |
| Baby Black Pudding | B/common | 41 | 1 | 1 | Acid:1d5<br /> | Acid<br />Cold<br />Electricity<br />Lightning<br />Necrosis<br /> |
| Rabid Bat Minion | A/common | 40 | 1 | 1 | Bite:1d3<br />Claw:1d2<br /> | Water<br /> |
| Giant Dungeon Duck | A/rare | 39 | 1d3+1 | 1 | Bite:1d4<br />Claw:1d3<br /> | Water<br /> |
| Rat | A/common | 38 | 1d3+2 | 1 | | Water<br /> |
| Fluffy Bat | A/common | 38 | 1 | 1 | Bite:1d3<br />Claw:1d2<br /> | Water<br /> |
| Jade Viper | B/common | 37 | 1d3+1 | 1 | Poison:1d2<br /> | Webs<br />Water<br /> |
| Clingy Leech | A/common | 37 | 1d3+1 | 1 | Bite:1d4<br />Drain:1d4<br /> | Water<br /> |
| Jackalope | A/rare | 36 | 1d4 | 1 | | |
| Sewer Crab | A/common | 32 | 1d3+1 | 1 | | Water<br /> |
| Fleshbee | A/common | 32 | 1d3+1 | 1 | Bite:1d4<br />Claw:1d3<br /> | |
| Goldfish | A/common | 31 | 1 | 1 | Bite:1d1+1<br /> | Water<br />Vorpal-Weapons<br /> |
| Baby Slime Jumper | A/common | 29 | 1 | 1 | Acid:1d3<br /> | Acid<br />Necrosis<br /> |
| Sheep | B/common | 27 | 1d3+2 | 1 | | Water<br /> |
| Lava Ant | A/common | 27 | 1d3+1 | 1 | Bite:1d4<br />Claw:1d3<br />Fire:1d3+1<br /> | Fire<br /> |
| Bloated Bloodbug | A/common | 24 | 1d2+1 | 1 | Bite:1d2<br />Drain:1d1<br /> | |
| Vampire Rose | A/common | 24 | 1d3 | 1 | Digest:1d5<br /> | Confusion<br />Confusion<br /> |
<!-- end monsters type marker -->

Weapons
-------
<!-- begin weapons type marker -->
| Name | Class/Rarity | Damage | Damage Roll | Special | Weapon Damaged Chance | Runic Chance | Gold Value |
| :--- | --- | --- | --- | --- | --- | --- | --- |
| Sword Of Darkness | C/v-rare | 12 - 42 | 6d6+6 | Immunity-Acid<br /> | 0.01 % | Y | 1000 |
| Warhammer | C/common | 4 - 32 | 4d8 | Swing-penalty<br />Hits all surrounding<br /> | 0.01 % | Y | 450 |
| Mace | C/common | 3 - 24 | 3d8 | Swing-penalty<br /> | 0.01 % | Y | 350 |
| Double Shovel | C/uncommon | 2 - 20 | 2d10 | Hits in-front and behind<br /> | 1.00 % | Y | 50 |
| Holy Sword Of Clonrichet | C/v-rare | 5 - 20 | 1d16+4 | Immunity-Acid<br />Immunity-Cold<br />Immunity-Poison<br />x2 undead<br />Hits all surrounding<br /> | 0.01 % | Y | 2500 |
| Scythe | C/uncommon | 3 - 18 | 3d6 | Hits all surrounding<br /> | 0.05 % | Y | 250 |
| Sword Of Plutonium | C/v-rare | 5 - 16 | 1d12+4 | Immunity-Acid<br /> | 0.01 % | Y | 1000 |
| Sword Of Draining | C/v-rare | 1 - 12 | 1d12 | Damage-Drain:1d20<br /> Immunity-Drain<br /> Additional-attack<br /> | 0.05 % | Y | 1000 |
| Sword Of Duck Summoning | C/v-rare | 3 - 12 | 1d10+2 | Immunity-Acid<br /> | 0.01 % | Y | 1500 |
| Very Broadsword | C/uncommon | 1 - 12 | 1d12 | Hits adjacent<br /> | 0.01 % | Y | 350 |
| Pike | B/uncommon | 1 - 10 | 1d10 | Hits two ahead<br /> | 0.50 % | Y | 10 |
| Cutlass | B/rare | 1 - 10 | 1d10 | | 0.20 % | Y | 100 |
| Shovel | B/uncommon | 1 - 8 | 1d8 | | 0.50 % | Y | 5 |
| Short Sword | A/common | 1 - 8 | 1d8 | | 0.10 % | Y | 100 |
| Rusty Short Sword | A/common | 2 - 7 | 1d6+1 | Damage-Poison:1d2+1<br /> | 2.00 % | Y | 50 |
| Short Axe | B/uncommon | 1 - 6 | 1d6 | Hits all surrounding<br /> | 0.05 % | Y | 150 |
| Dagger | A/common | 1 - 4 | 1d4 | | 0.05 % | Y | 15 |
| Wooden Short Sword | A/common | 1 - 4 | 1d4 | | 1.00 % | Y | 25 |
<!-- end weapons type marker -->

Pixelart Screenshots
Expand Down Expand Up @@ -552,7 +415,7 @@ Content
Other content
-------------
<!-- begin type marker -->
- 120 x monsters
- 123 x monsters
- 52 x food
- 25 x items
- 24 x treasure
Expand Down
Binary file modified data/gfx.tgz
Binary file not shown.
16 changes: 8 additions & 8 deletions python/gfx.py
Original file line number Diff line number Diff line change
Expand Up @@ -2785,14 +2785,14 @@ def init_tiles_16x16_main():
"",
"",
############################################################
""
""
""
""
""
""
""
""
"gnoll.sleeping.1",
"gnoll.sleeping.2",
"gnoll.1",
"gnoll.2",
"gnoll.3",
"gnoll.4",
"gnoll.dead.1",
"",
"flameskull.1",
"flameskull.2",
"flameskull.3",
Expand Down
2 changes: 1 addition & 1 deletion python/things/dungeon/bridge.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,11 +45,11 @@ def tp_init(name, tiles=[], bot3_tiles=[]):
my.is_biome_lava(self, True)
my.is_bridge(self, True)
my.is_burnable(self, True)
my.is_combustible(self, True)
my.is_cursor_can_hover_over(self, True)
my.is_described_in_leftbar(self, True)
my.is_described_when_hovering_over(self, True)
my.is_flat(self, True)
my.is_combustible(self, True)
my.is_interesting(self, True)
my.is_one_per_tile(self, True)
my.on_death_do(self, "bridge.on_death()")
Expand Down
2 changes: 2 additions & 0 deletions python/things/monsters/dog.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

def on_born(me, x, y):
my.thing_friend(me, "is_dog")
my.thing_enemy(me, "dogman")
my.thing_enemy(me, "gnoll")


def on_you_nat_attack_attempt(me, x, y):
Expand Down
6 changes: 4 additions & 2 deletions python/things/monsters/dogman.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

def on_born(me, x, y):
my.thing_friend(me, "dogman")
my.thing_enemy(me, "gnoll")
my.thing_carry(me, "dagger")
my.thing_carry(me, "dart")

Expand Down Expand Up @@ -111,9 +112,9 @@ def tp_init(name, text_long_name):
my.is_daring(self, True)
my.is_described_in_leftbar(self, True)
my.is_described_when_hovering_over(self, True)
my.is_dogman(self, True)
my.is_eater_of_meat(self, True)
my.is_eater_of_red_blood(self, True)
my.is_gnome(self, True)
my.is_hittable(self, True)
my.is_humanoid(self, True)
my.is_immune_to_water(self, True)
Expand Down Expand Up @@ -163,7 +164,8 @@ def tp_init(name, text_long_name):
my.text_a_or_an(self, "a")
my.text_description_long2(self, "Dogmen have amazing hearing and are hard to creep up on.")
my.text_description_long3(self, "Very skilled with throwing darts.")
my.text_description_long4(self, "Where the dogwomen live is a well kept secret.")
my.text_description_long4(self, "Dogmen detest gnolls. Dogmen are solitary and do not appear in packs, unlike gnolls.")
my.text_description_long5(self, "Where the dogwomen live is a well kept secret.")
my.text_description_long(self, "A mildly odorous dogman. Half man, half mutt and blessed with the intellectual capabilities of a human, this poor creature is often very confused as to where it is.")
my.text_description_short(self, "A perma-panting dogman.")
my.text_hits(self, "gores")
Expand Down
Loading

0 comments on commit 9d0bf5d

Please sign in to comment.