Community Mod

Discussion in 'Modding' started by Blind Piper, Feb 17, 2012.

  1. The progress tracker sheet:
    • More people should be on it! It's great to see an at-a-glance summary of where we're at, what's left, and what awesome milestones we've hit! (and which to do list items have been tackled and defeated!)
    • Thanks for pointing out my naming errors, that was rather sloppy. The reason I made a recipe that disassembles wads of favor is just in case the player has second thoughts about a big purchase, and wants to instead purchase a smaller item.
    • Werediggler, I posted some info about your pants.
    Monsters:
    • There aren't any "ranged attack" monsters in the game currently. We can make monsters that deal physical damage with their "spells" and thus sorta have ranged attacks.
    • The unicorn horn should be less powerful for DoD, because the DoD player has access to a lot more re-usable skills, as well as potion vending machines, unlike Nethack. It should be single-use and rare, IMO, or repeatable with large chance of (disastrously) failing.
    • Mimics can be both a random, walking-around spawn as well as a custom blocker triggered event. We can trick the player by adding rooms to the game that are identical to existing chest-filled rooms, but ours have mimics. They might get the normal room, they might get the mimic room. (Bonus points if the whole room is some sort of evil deathtrap that activates when a mimic customblocker is broken open)
    Lutefisk Currency:
    • I'm finding it easier to wrap my mind around the idea of pricing for lutefisk if I convert the "lutefisk equivalent" into an "artifact equivalent". 1 katamari + 2 mounds is roughly 100 lutefisk, which would be enough to get a crappy artifact from a shrine. 4 katamari is 256 lutefisk, which is half of the 500 lutefisk you'd need to get a good (but random) artifact from a shrine. That currently means that all blessings, items, or other rewards should be helpful, but less exciting than getting a good result from 500 lutefisk at a shrine.
    • I think that's good & fine. Lutefisk God has a niche: blowing a massive amount of lutefisk hoping for a great item, kinda like roulete, with both huge losses as well as fabulous prizes. Then we have our niche: useful boosts, consumables, or ammo that will devour chunks of your currency, but not break your bank. However, if people think we should be competing directly with the Lutefisk God by selling bigger-ticket items, we'll need a bigger unit of currency - Lutefisk Planetoids or something like that.
    • Oveall, this is not a big concern. It's something we can worry about later on down the road after we (or our pet playtester) has seen some of the stuff in action. These are simply some thoughts I've had on the issue, and I'm looking to hear others' thoughts when you have em!
     
    Kazeto and Wi§p like this.
  2. Blind Piper

    Blind Piper Member

    I like this a lot. It gives us a comparison to something already available in-game, which is exactly what we need.

    As for the ranged physical damage monsters, we could add something like Elves and Dwarves, I suppose. The monster list is quite large already, but ranged physical damage is a very good point. Dwarves don't exactly scream "ranged attacks," but I think they should come packaged with Elves, simply for all the Dredmor text that indicates Elves and Dwarves aren't on great terms.

    Dwarven trappers could be another "spell mine" monster, like the Giant Spiders, dropping physically damaging "traps."

    EDIT: Two questions related to monsters:

    1: Do monsters incapable of casting spells requires a casting animation? I only ask in case there's an event that could cause such a monster to run that animation.

    2: Is there a way to make the tint effect on monDB.xml work for custom monsters? I've pretty much finished a Copper Golem and tinting could save me time and also reduce file size.
     
  3. Thrown axes, thrown mugs, thrown eggs, thrown chairs, thrown wives

    Thinking up that list makes me feel like we could ostensibly forego the whole "dwarven warrior" stereotype by making ALL the dwarves ranged, but in a way that's still appropriately dwarven.

    Where does that leave elves? They're just monsters with extremely high dodge chance, extremely high magic resist, are worth good experience... and are constantly running away

    Or whatever. The idea and its implementations belongs to whoever codes it first, but those are my ideas and what I'll try to code if it needs doing after I clear some other things on my various to-do lists.
     
  4. Dray`Gon

    Dray`Gon Member

    Definately is looking to be interesting so far. I'm excited about trying this out to see how it works. Probably should focus on trying to break it though, when it's ready for testing, since that's the best way to find out if there's any bugs or imbalance in the mod.
     
  5. Loswaith

    Loswaith Member

    OK on some testing it doesnt apperar agressivness is the reaction range on a monster setting it to 1 the monster still chases me around even from 4-5 blocks away.

    Tinting doesnt seem to work, any value of tinting I tried to use on a png image just crahsed the game.

    hope that helps someone.

    Edit: corrected spelling errors
     
    Ryvian and Rarefied Horse Meat like this.
  6. Ryvian

    Ryvian Member

    These are my spiders so far, did a few of them, increasingly deadly kinds

    haha, well I guess I won't touch the tinting. Well, I hate testing, to the core of my being, but I'll try to test the ones I make at least, after I'm done with the monsters. Basically, I use blobby skins, because hey, lol doesn't really matter for testing. Also, these spiders might end up just a little too dangerous lol. More details on the web spells later, though they are missile type spells based on other spells.

    wish I had spoiler tags for times like these
    Code:
    - <monDB>
     
    -<monster type="1" subtype="1" name="Large Spider" level="1" tiny="1" splat="goo" taxa="Animal">
        <idleSprite left="sprites/monster/blobby/blobby_run_l.spr" right="sprites/monster/blobby/blobby_run_r.spr" up="sprites/monster/blobby/blobby_run_u.spr" down="sprites/monster/blobby/blobby_run_d.spr" />
      <attackSprite left="sprites/monster/blobby/blobby_atk_l.spr" right="sprites/monster/blobby/blobby_atk_r.spr" up="sprites/monster/blobby/blobby_atk_u.spr" down="sprites/monster/blobby/blobby_atk_d.spr" />
      <hitSprite left="sprites/monster/blobby/blobby_hit_l.spr" right="sprites/monster/blobby/blobby_hit_r.spr" up="sprites/monster/blobby/blobby_hit_u.spr" down="sprites/monster/blobby/blobby_hit_d.spr" />
      <dieSprite name="sprites/monster/blobby/blobby_die.spr" />
      <ai aggressiveness="3" span="4" />
      <onhit spell="Small Weak Poison Cloud" onechancein="5" />
      <stats numFig="2" xpValue="5" />
      <damage slashing="2" piercing="2" toxic="1"/>
      <secondarybuff id="4" amount="-3" />  <!--  crit  -->
      <secondarybuff id="6" amount="10" />  <!--  dodge  -->
      <resistances toxic="1" piercing="2" />
      <info latin="(Magna Aranea Generis)" text="A fairly large spider, careful its bite, it's a bit poisonous." />
     
    - <monster name="Web Spitter" level="3">
      <palette tint="-20" />
      <resistances toxic="3" asphyxiative="1"/>
      <stats numFig="3" numRog="1" xpValue="20" />
      <damage piercing="3" toxic="2" asphyxiative="1" />
      <secondarybuff id="4" amount="2" /> <!--  crit  -->
      <secondarybuff id="6" amount="13" />  <!--  dodge  -->
      <info latin="(Telam Expuens Aranea)" text="A dangerous predator that shoots immobilizing webbing from afar!" />
      <spell name="Light Webbing" />
      <ai aggressiveness="5" span="4" spellPercentage="8" />
      <onhit spell="Weak Poison Cloud" onechancein="10" />
      </monster>
     
    - <monster name="Venomous Hunter Spider" level="5">
      <palette tint="-45" />
      <resistances toxic="4" />
      <stats numFig="1" numRog="7"  xpValue="40" />
      <damage piercing="4" toxic="4" acidic="0" />
      <secondarybuff id="4" amount="5" />  <!--  crit  -->
      <secondarybuff id="6" amount="20" />  <!--  dodge  -->
      <info latin="(Tarantula Venator Venenosis)" text="A large spider with a tendency to jump and ambush unsuspecting prey, injecting its victim with deadly toxins." />
      <spell name="Sticky Webbing" />
      <ai aggressiveness="5" span="4" spellPercentage="10" />
      <onhit spell="Poison Cloud" onechancein="10" />
      </monster>
     
    - <monster name="Deathly Widower" level="7">
      <palette tint="-155" />
      <resistances toxic="5" />
      <stats numFig="4" numRog="5" xpValue="65" />
      <damage piercing="5" toxic="5" acidic="0" />
      <secondarybuff id="4" amount="8" />  <!--  crit  -->
      <secondarybuff id="6" amount="24" />  <!--  dodge  -->
      <info latin="(Aranea Nigrum Vidua)" text="A large black spider with a fatal poison." />
      <onhit spell="Vile Poison" onechancein="8" />
      <ai aggressiveness="7" span="12" />
      </monster>
     
    - <monster name="Terror on 8 Legs" level="9">
      <palette tint="120" />
      <resistances piercing="4" toxic="6" />
      <stats numFig="6" numRog="9" xpValue="95" />
      <damage piercing="9" toxic="6" />
      <secondarybuff id="10" amount="3" />  <!--  armour  -->
      <secondarybuff id="6" amount="15" />  <!--  dodge  -->
      <info latin="(Aranea Monstrum Timor)" text="A nightmarish 8 legged freak with sharp fangs, deadly poison and a strong webbing." />
      <spell name="Sticky Webbing"/>
      <ai aggressiveness="7" span="16" spellPercentage="12"/>
      </monster>
     
    - <monster name="Arachnophobia" level="11">
      <onhit spell="Vile Poison" onechancein="12" />
      <palette tint="150" />
      <resistances toxic="8" piercing="6" />
      <stats numFig="10" numRog="6" numWiz="8" xpValue="130" />
      <damage piercing="10" toxic="8" />
      <info latin="(Arachnophobia)" text="Creatures that escaped from humanity's most primal fears. It preys onn " />
      <spell name="Suffocating Webbing" />
      <ai aggressiveness="7" span="20" spellPercentage="8" />
      </monster>
     
    - <monster name="Nightmare Fuel" level="13">
      <palette tint="165" />
      <stats numFig="12" numRog="15" numWiz="12" xpValue="180" />
      <damage Piercing="12" necromantic="4" existential="4" toxic="8"/>
      <resistances necromantic="4"  existential="4" toxic="8" />
      <onhit spell="Vile Poison" onechancein="15" />
      <spell name="Suffocating Webbing"/>
      <secondarybuff id="10" amount="5" />  <!--  armour  -->
      <secondarybuff id="4" amount="12" />  <!--  crit  -->
      <secondarybuff id="6" amount="25" />  <!--  dodge  -->
      <ai aggressiveness="7" span="26" spellPercentage="12"/>
      <info latin="(Aranea Tantibus)" text="A waking nightmare on 8 legs, it feasts on your fears, it's existence carved out of a dreamworld far removed." />
      </monster>
    </monster>
     
  7. Essence

    Essence Will Mod for Digglebucks

    Tinting alone won't work, you have to re-index the sprite before it'll work. PM Loren, she knows much more than I do about it.
     
  8. Fayd

    Fayd Member

    I just had a thought when looking through the document. A really strange thought: The depreciated Wand Lore stat can still have a value, yes? Could one use this to track "Divine Favor" or some other sort of boon type deal? Add to it's current value when you want it to go up, permanently decrease it if you want to demonstrate some deific wrath/spend it on a miracle.
     
  9. Essence

    Essence Will Mod for Digglebucks

    That's a very interesting idea. Scale to it, and the only glitch you'll have are the occasional Kronging that add or subtract from it unexpectedly -- all in all a probable nonissue. I love the idea.
     
  10. Blind Piper

    Blind Piper Member

    The only risk is if it ends up getting used or removed in the future.

    EDIT: I shouldn't say only risk. There could be others, for all I know. Diggles, for one. Diggles are risky.
     
    Essence likes this.
  11. The question is, will they remove Wand Lore completely in 1.0.10, and if they don't remove it, is the stat actually being tracked by the game engine, or effectively zero at all times?

    Could be very cool though! Then we could have:

    HP/mana/ammo - semi-renewable resources used for fighting
    zorkmids - helps renew those resources, fills holes in your gear until you find a good artifact
    lutefisk - semi-divine currency, gets you boons and blessings via the crafting system, mainly unaffected by skillsets
    wand lore - a measure of INSERTGODHERE's disposition towards you, heavily influenced by the skillset you choose, not compatible with multiple gods
     
  12. Loswaith

    Loswaith Member

    Ok I have the preliminary working for a mimic monster (it's till very weak for testing purposes).
    I couldnt get the mimic to actually not move as a monster untill you get close so its a set room object so far.

    The downside with a room object is it needs allot of triggers to account for all the squares a player can stand on around the "decoy chest". This is compounded with the factor that a spawned in monster wont act for a turn, so for the mimic to behave corectly you generaly want the triggers with a one square gap away from the place the mimic will spawn so if the player moves up to a point diagonally to the chest it steps up to attack them.

    The upside is just about anything could be made into a mimic.

    I'll keep playing around with it however and see if I cant come up with a better solution.

    conditionals as far as i can tell work on an and basis if put in the same script (ie all have to be true), not sure if there is a way to set it up like an or statement (just one to be true) without seperate scripts.
     
  13. Blind Piper

    Blind Piper Member

    Loswaith, does teleporting past the triggering squares allow you to stand next to an inactive mimic without worry?
     
  14. Lorrelian

    Lorrelian Member

    Um... I hate to point this out but the Wand Lore stat still seems to be used as a measure of wand crafting level, much as :tinkerer: measures tinkering level and :smithing: measures smithing level. So it's probably not going to go away, but I don't know as you can mess with it arbitrarily... unless you're not worried about free wand crafting being a part of your mod. It's not a skill I hear much about people using, so it might be a non-issue.
     
  15. Kazeto

    Kazeto Member

    Teleporting past any triggering squares means the "mimic" would be a normal obstacle you can do nothing to, and it'll start acting when you accidentally step on one of those squares later.

    Come to think of it, that means we can do challenge rooms with mimics. Imagine stepping into a corridor full of candlesticks/tables/whatever else, only for some of them to animate once you're inside.

    @Loswaith: How about pre-spawning the mimic in a hidden slot when you step on a square that is one space from the "chest", and then teleporting it from there to the location where said "chest" was when you step on a tile adjacent to it? It's not perfect, but slightly better, since the mimic won't be there until you get close to it, and it should be able to act on the turn when it "spawns".
     
  16. Null

    Null Will Mod for Digglebucks

    That's technically a different stat. Haven't you ever noticed that when Krong gives you wand lore the number doesn't go up. Wand lore is id 18, and wandcrafting has the same icon but is 22 I believe.
     
  17. Kazeto

    Kazeto Member

    The last time I checked, it was 15/23. But you are right here, that's a different stat.
     
  18. badboy80

    badboy80 Member

    We should add a scorpion that pulls you towards it. It could yell "Get over here!", and it would encourage warriors.
     
  19. Fayd

    Fayd Member

    It would be kind of nice if they would allow us to make some "dummy stats"... a request in a new patch perhaps?
     
  20. Null

    Null Will Mod for Digglebucks

    They may already exist anyway. You can probably buff them and even if they don't show up it might set a value to it.