Attnam / ivan

Iter Vehemens ad Necem - a continuation of the graphical roguelike by members of http://attnam.com
GNU General Public License v2.0
300 stars 43 forks source link

Detecting carrot #429

Closed andrewtweber closed 5 years ago

andrewtweber commented 6 years ago

It always seemed strange to me that I'm not allowed to detect carrot. Can we enable this? And any other foods I guess, although carrot is the one I'm always interested in to try to grab them before any rabbits do.

AquariusPower commented 6 years ago

selection_102 it seems to be working here, may be the latests commits, probably festring fixes, let it happen? the near one I dropped thru wiz mode, the far one no :)

andrewtweber commented 6 years ago

Sorry I should have clarified:

You can always detect carrot in wizard mode. You're not allowed to outside of wizard mode

AquariusPower commented 6 years ago

I tried in normal mode and couldnt either xD

May be, we could create an option called: difficulty mode

I think vanilla mode is: hard or even very hard

we could add modes that would make things easier so who wants vanilla could still have it working, so a: medium or normal mode would allow detect materials that grant us permanent powers (as that being only thru wizard, was considered a cheat)

I havent tried but omel fluids are detectable? healing/antidote potions? talking to dolphins only works in wizard also, could have a limit of 3 or 5 in medium and 5 or 10 in easy. It is so fun that should grant random max +1 in vanilla (talk til you get the point) :) is there something else?

so in normal/medium difficulty mode, they could be allowed to be detected.

Adding to that, near death, a luck dice roll could spare us so we have a few more turns to try more things: 50% in medium mode + 1 to 3 granted alive turns, 75% in easy mode + 3 to 5 granted alive turns.

This could be another issue: difficulty modes.

But then... we would have to change the name of the game right? at least temporarily or to create separate high score lists. what about "iter non tanto vehemens ad necem" aka Intvan ?

so dificulty modes could be named like that: Ivan (hardcore) Intvan (medium difficulty) Iiavan (easy mode, "iter iustus aliquantulus vehemens ad necem")

would have to be selected during startup of a new game only.

PS.: I used goggle translator and it was quite difficult to provide something useful from it (this means such names are probably wrong lol), if you swap the translation languages it translates to something completely different too! :o

andrewtweber commented 6 years ago

Talking to dolphins works outside of wizard mode. You just need 50+ intelligence and wisdom

Hm, nice idea, but I think it should be an even playing field. If anything, a difficulty mode could affect danger level or something, but I don't think it should affect other mechanics.

I don't think detecting carrot is overpowered, but does anyone disagree? There isn't much use for detecting material in UT, and it would probably help you get more perception early on.

AquariusPower commented 6 years ago

Interesting and much easier to be implemented I guess, simply modify the danger level reference may be the trick, but I still think it should prevent scoring on the main list.

Not that carrot is overpowered, just that the effect is quite good and permanent. But with the new option of seeing far lights (a natural thing), we can throw lanterns or carry stronger sources and it affects how far we can see even at the big aranea cave (may be it should be nerfed there?).

jakwings commented 6 years ago

I usually detect walls of rooms, granite altars and stairs, iron mines and minerals (but golems scare me).

wands of mirroring + carrots = ooooooh (before the carrots rot)

wands of mirroring + scrolls of golem creation = if I can survive before my pets die

And permanently transform into an undead creature: I don't starve anymore!

Carrots are not that special, I think, but I never win this game so I don't know how unbalanced it is. :P

AquariusPower commented 6 years ago

may be, instead of detecting the specific organic materials, it could detect foods general, may be raw foods like kiwi or pineapple and carrots, but I dont know how complicated it would be to filter like that

I mean, instead of having nothing or being sure, the uncertain something is a nice in-between :) as you may run to the wrong direction but still be able to decide to run xD

btw... thinking well... I rarely use the detect material ring and ignore or sell the scrolls, so may be, just allowing carrots and other enpowering things to be detected would make that ring and scrolls actually useful (just thought on that...)

EDIT: may be wand's materials could be described on the inventory list to let us use the detect material to find them and other things like ammys rings etc. Or better an option to examine the item (like the use of stethoscope, may be a magnifying lens would be cool)

AquariusPower commented 6 years ago

ok, I found that what blocks carrot is ~CAN_BE_WISHED at

material.dat
  Config CARROT_FLESH;
    CommonFlags = Base|IS_VALUABLE&~CAN_BE_WISHED;

thru

void scrollofdetectmaterial::FinishReading(character* Reader)
    TempMaterial = protosystem::CreateMaterial(Temp);
material* protosystem::CreateMaterial(cfestring& What, long Volume, truth Output)
        if(ConfigData[c2]->CommonFlags & CAN_BE_WISHED || game::WizardModeIsActive())
          return ConfigData[c2]->ProtoType->Spawn(ConfigData[c2]->Config, Volume);

the problem is: carrot should still not be wishable, but could be detectable? to solve it, we would need a new overriding flag: CAN_BE_DETECTED, that would allow detecting w/o allowing wishing.

unless... the scroll of wishing is so powerful... who would wish for a carrot? so why not just remove that flag from material.dat? :) like:

CommonFlags = Base|IS_VALUABLE;

feel free to and commit if you agree :)

PS.: I didnt test it tho, was just thru reading the code. To test it we need a scroll of detection/ring on a non wizard game, what I dont have right now...

andrewtweber commented 6 years ago

Yeah it seems bizarre that carrot cannot be wished for either.

red-kangaroo commented 6 years ago

The problem is not scroll of wishing, but SOCM. I think ~CAN_BE_WISHED blocks all wishing for carrot flesh, be it scroll of wishing, change material or detect material. You could SOCM large chest into carrot flesh and easily get huge Per.

andrewtweber commented 6 years ago

Ahhh good point, thanks @red-kangaroo

So in that case maybe detectable should be a separate flag

AquariusPower commented 6 years ago

@red-kangaroo wow, thx!

AquariusPower commented 6 years ago

@andrewtweber https://github.com/Attnam/ivan/pull/460/commits/0c35ee417b2ae9a1db0c85d5425910803f0767c5 I saw no reason to prevent any material from being detectable, but still any can be individually forbidden on the material.dat file :)

andrewtweber commented 5 years ago

@AquariusPower Thanks! Love detecting those fresh carrots 😄