Search Results
Searched for posts by 4zb4 in all forums

Showing results 11 - 20 out of 981 total
Modify your search
Posted by 4zb4, Nov 12, 2017 at 3:14 pm
Goblins shouldn't spawn in UT in the first place!
Posted by 4zb4, Nov 10, 2017 at 1:16 am
capristo wrote
I'm going to have to get used to not just kicking down doors anymore. I've lost way too many scrolls to booby-trapped doors.

Kicking them diagonally reduces the risk a little.
Posted by 4zb4, Nov 3, 2017 at 8:52 am
I tested it out with Photoshop today, and while you can get it to work and not ruin the image when saving/editing, it's a pain in the ass to do so. You need to export the color table from the image, then load that as a swatch to ensure you don't use colors outside of the index range. Next you change the image mode from "indexed" to "RGB" for editing, and do your stuff. Then you need to convert the mode back to "indexed" and load the color table you exported earlier again to force it to only use the allowed colors. And THEN you save it as PNG.
Photoshop is a bit overkill for editing like this though.
Posted by 4zb4, Nov 2, 2017 at 2:28 pm
I believe this is why the recommended approach for graphics editing way back when fejoa was working on CLIVAN was to use IrfanView and GraphicsGale, because GraphicsGale automatically detects and uses the colour index of the image, and IrfanView made it easier to save to PCX (?).
Maybe now that IVAN uses PNGs we could just use GraphicsGale by itself?
Posted by 4zb4, Oct 31, 2017 at 12:39 am
Batman? wrote
Does your relationship with cleptia have an effect of the whip of thievery?

Yes, and it increases your relationship with her every time you receive that unique hit message.

truth whipofthievery::CleptiaHelps(ccharacter* Enemy, ccharacter* Hitter) const
{
  if(Enemy->IsImmuneToWhipOfThievery() || !Enemy->GetMainWielded() || GetMainMaterial()->GetFlexibility() <= 5)
    return false;

  if(Hitter->IsPlayer())
  {
    if(game::GetGod(CLEPTIA)->GetRelation() < 0)
      return false; //if your relationship with Cleptia is below 0, you cannot steal with the whip at all
    else
      return !RAND_N(10 - game::GetGod(CLEPTIA)->GetRelation() / 200);
  }
  else
    return !RAND_N(10);
}

The above code for some very bizarre reason generates a random number between 0 and the result of the following:

Quote
10 - [your relation to Cleptia] / 200

If that number ends up being 0, the check passes. Otherwise it fails.
(e.g. if your relationship value with Cleptia is 2000 you'll have guaranteed success every time because it generates a number between 0 and 0, but 1900 is a 50% chance per hit because it generates a number between 0 and 1.
However the relationship caps out at 1000, so you'll only ever have a maximum of a 17% chance.)

In fact there's a lot of code in IVAN which specifically looks to produce a negative number and then inverts it to see if it's 1 or 0 and I have no idea why. It seems like a very roundabout way to do checks/rolls.

The part of the hit code where it checks if Cleptia helps and increases the relationship is:

truth whipofthievery::HitEffect(character* Enemy, character* Hitter, v2 HitPos,
                                int BodyPartIndex, int Direction, truth BlockedByArmour)
{
  truth BaseSuccess = meleeweapon::HitEffect(Enemy, Hitter, HitPos, BodyPartIndex, Direction, BlockedByArmour);

  if(!IsBroken() && Enemy->IsEnabled() && Hitter && [b]CleptiaHelps(Enemy, Hitter)[/b]) 
  //the above checks whether the whip is broken, whether the enemy is immune to stealing, whether there's a person swinging the whip, and lastly whether Cleptia's relationship with the player is strong enough to deploy the steal action
  {
    if(Hitter->IsPlayer())
    {
      game::DoEvilDeed(10); //make player more chaotic
      game::GetGod(CLEPTIA)->AdjustRelation(10); //increase relationship with Cleptia
    }

    Enemy->GetMainWielded()->MoveTo(GetLSquareUnder()->GetStack()); // this is the part where it steals the weapon
    return true;

  }
  else
    return BaseSuccess;
}

Interestingly the code in there also says that an inflexible whip of thievery cannot steal items (flexibility must be at least 5, which is the flexibility of flesh and the most inflexible cloth materials)
Posted by 4zb4, Oct 26, 2017 at 5:20 pm
I'm all for a blindness status. It should still reduce your PER as a regular human of course but maybe not right down to zero, while still basically blacking out the map and reducing it to memory tiles.
Which enemies would cause blindness? Mommo slimes farting on your face?

Quick edit: Shouldn't affect PER if you have ESP, but would still affect infravision.
Posted by 4zb4, Oct 25, 2017 at 1:40 pm
Ischaldirh wrote
Personally, I think the simplest way would be to make some monsters resist certain damage types - hammers aren't too effective against slimes, spears don't really work against undead, swords tend to glance off of metal golems, etc...

I think this is the best approach and requires a LOT less of a balancing act to get right.
Currently the only damage bonus in the game for weapon types is scythes and sickles versus plants, which do 50% extra damage. I think an approach like that would work fine.

e.g.

Skeletons resist anything except blunt damage
Golems resist based on material
Humanoids should resist depending on their armor but the penalties should be much smaller since most of the enemies it would matter for are already really goddamn beefy

We should also think about elemental damage bonus/malus for enemies because it'd make magic much more interesting than "which of these damage wands still has charges left"

Any way we go about this should be good though because it would encourage players to try using more than one weapon type the whole way through the game. Oh that's a skeleton? Let me swap to my hammer.
Posted by 4zb4, Oct 22, 2017 at 6:39 pm
Yes we're all still creating dungeons manually.
Yes there should be a tool to make it easier, which would enable a great many more people to contribute.

The only saving grace we have is the dev team took the time to separate dungeon.dat out into separate .dat files to make things at least a little easier for players to mod.

If we were hypothetically going to have a dungeon modder, for the UI I think something simple like the Binding of Isaac room editor would work just fine. Similar to Isaac we'd be using the editor to create rooms that the game stitches together procedurally, but there's a few points of difference between Isaac and IVAN's level generator that we'd need to account for. For example, Isaac doesn't feature hallways and every room is pre-defined, whereas IVAN has both random and set room types.
You'd also need to define whether an object you placed in the room is positioned exactly where you've placed it, or whether it can appear on any free tile, plus the spawn chance (if any).
Posted by 4zb4, Oct 17, 2017 at 5:44 pm
red_kangaroo wrote
I thought this was because a (non-broken) bottle is a container, while a broken bottle is not?

Yep this is exactly the case outlined by some comments in the files by the devs.

A bottle is a container, but a CONFIG beneath it would also need to be a container.
Instead they made broken bottles a separate object since a broken bottle logically cannot contain anything.
Posted by 4zb4, Oct 17, 2017 at 5:42 am
fejoa wrote
I too was confused. I think I had it figured out once, but I'll need a refresher. I just liked the colourful squares with the sagely words in them.

Trying again right now but my brain is trying to make my eyes turn off while trying to read that wiki.
It's like I know it's written plain English, but it isn't at the same time.



I'll get there in the end, probably.

EDIT2:
Quote
Writing a metaphysics is, in the strictest mystic sense, a degenerate activity.