Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - LazyCat

Pages: 1 [2] 3 4 ... 14
16
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 06, 2016, 02:42:40 AM »
More bugs...

This one is really funny and quite unfortunate, present in v5, v4, and also Epyx 1.48:

Quote
    /*
     * If the creature being attacked is not running (alseep or held)
     * then the attacker gets a plus four bonus to hit.
     */
    if (!on(*thdef, ISRUN))
   hplus += 4;

File "fight.c", function roll_em(). This is supposed to give the player bonus chance to hit sleeping (held) monsters, and monsters to get this bonus when player is faint or frozen/paralyzed. The funny part is that it actually gives monsters this bonus all the time, while player never gets it. Ha-ha! As if the game was not intended to be hard enough these bugs make it still much harder and super-very unfair. And that Squeeealer managed to beat it with all these bugs and against all odds, I have to say again it's some kind of miracle.

Anyhow, there are two problems. First, ISRUN flag for the player is not handled properly somewhere else in the code so effectively the player is always "fainted" and thus the monsters always get this to-hit bonus. Second, in function fight(), there is a call to function runto(), which wakes up monsters, before the dice roll, so by the time it is decided whether to give the player to-hit bonus for sleeping/held monsters they are already up and running and thus the player never gets it.

17
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 06, 2016, 12:27:48 AM »
Just looked at v4 source from rlgallery and indeed it doesn't have that second test:

Quote
   if (hurl)
       if ((weap->o_flags&ISMISL) && cur_weapon != NULL &&
         cur_weapon->o_which == weap->o_launch)
       {
      cp = weap->o_hurldmg;
      hplus += cur_weapon->o_hplus;
      dplus += cur_weapon->o_dplus;
       }
       else
      cp = weap->o_hurldmg;


Epyx 1.48 version handles it without additional test as well:

Quote
    cp = weap->o_damage;
    if (hurl && (weap->o_flags&ISMISL) && cur_weapon!=NULL && cur_weapon->o_which==weap->o_launch)
    {
      cp = weap->o_hurldmg;
      hplus += cur_weapon->o_hplus;
      dplus += cur_weapon->o_dplus;
    }

...but this fails to assign throwing damage for all the other cases, so instead those projectiles incorrectly deal melee damage, or so it would seem.


Also, in Epyx 1.48 missile wand has "bolt.o_hplus = 1000;" which should make them hit every time, while elemental wands have "bolt.o_hplus = 30;" that probably also makes them hit pretty much every time. In v5 they all have "bolt.o_hplus = 100;", so I think the intention was to make them hit every time, which makes sense for them being late game weapon and it's really needed to help handle late game monsters.

Now looking back at Squeeealer's victory without being able to use these very helpful wands, it was really a some kind of miracle.

18
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 05, 2016, 11:39:36 PM »
That test is there to rule out weapons which need a launcher that you don't have equipped.  Otherwise o_hurldmg would be used for all thrown weapons.  There would be no difference between shooting arrows with a bow and throwing them by hand unless the bow had an enchantment.

Quote
        if (hurl)
        {
            if ((weap->o_flags&ISMISL)
                && cur_weapon != NULL && cur_weapon->o_which == weap->o_launch)
            {
                cp = weap->o_hurldmg;
                hplus += cur_weapon->o_hplus;
                dplus += cur_weapon->o_dplus;
            }
            else
            if (weap->o_launch < 0)
                cp = weap->o_hurldmg;
        }

It looks to me the first test takes care of arrows when bow is equipped. So then for every other case I don't think there should be any test and cp would simply be initialized with the default damage.

19
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 05, 2016, 11:19:55 PM »
I know for sure I've hit with elemental staves in v4, and I'm pretty sure I've gotten them to hit in v5.  If there is a bug, and it was present in the original, I'd like to have the option to still play the game with its original balance.

What is the original, Epyx version for DOS? Then perhaps you also want different ID scrolls be merged into one, to have ability to throw potions and affect monsters, to have vorpal enchant, ice monsters to shoot ice blasts? Also, I doubt very much "the original" has this bug. I'm certain Mac and Atari ST originals don't.

Unfortunately, judging by the lack of features and presence of bugs, it seems v4, v5 and whole that branch was split from the original source before the game was actually complete or properly tested. Anyway, what v4 are you talking about, where did you get it?

20
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 05, 2016, 02:27:13 AM »
@LazyCat: I think you're right about the elemental staves.  I'm going to run it through the debugger to make sure, but the fix should be online soon.  Thanks for reporting this.

Code: [Select]
.
.
            else
            if (weap->o_launch < 0)
                cp = weap->o_hurldmg;

It is puzzling to me why is there that test for o_launch being less than zero at all. Without it would work, if it was just like this:

Code: [Select]
.
.
            else
                cp = weap->o_hurldmg;

Let me know if you figure out more about it.

21
The latest Web version looks neat.  But I think you have an off-by-one error somewhere in the mouse click processing.  There was an Emu on my left, and when I clicked on it, I rested.  I had to click two cells to the left to hit the Emu.  When I click on my @ sign, I move right.

Hold on, you are not talking about pixels, but whole size of the characters? What OS, what browser was that?

I tested this on Puppy and Ubuntu Linux with Firefox, and in Windows with Chrome, Opera, and Firefox. It works pretty much the same across, and there was a few pixel offset which is now fixed, but you seem to be talking about something far more severe. Please check if you still get the same problem.

22
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 03, 2016, 12:27:12 AM »
Getting confused by Medusa's gaze can be avoided by making her invisible, by making yourself blind, or by taking hallucinogenic drugs. So some of those negative potions are not useless after all, that's what I call versatility!

23
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 02, 2016, 12:31:42 PM »
That's funny you mention elemental staves - I was just thinking about them last night. Right now I consider them disposable because the juice doesn't seem to be worth the squeeze. They miss so often and seem awfully weak for such cool sounding items.

Looking at the code I think they actually never hit. The damage is 6d6 (6-36), so it's pretty good, but range is limited.

Note to Elwin:
Quote
        if (hurl)
        {
            if ((weap->o_flags&ISMISL)
                && cur_weapon != NULL && cur_weapon->o_which == weap->o_launch)
            {
                cp = weap->o_hurldmg;
                hplus += cur_weapon->o_hplus;
                dplus += cur_weapon->o_dplus;
            }
            else
            if (weap->o_launch < 0)
                cp = weap->o_hurldmg;
        }

In "fight.c", function roll_em(), there is that piece of code which assigns damage string to 'cp' variable.  The thing is 'o_launch' is never defined for elemental wands, and without it cp doesn't get initialized with o_hurldmg, so it stays NULL and thus the dice don't roll. My quick fix for that is to initialize "bolt.o_launch= -1;" in "sticks.c", fire_bolt() function.

24
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 01, 2016, 10:37:50 PM »
The thing about improving Rogue is that the roguelike genre has gotten so much better over the years that there's no point. 
You're never gonna tweak Rogue until it's more tactical than Sil or has as much cool stuff as Nethack or is as overall excellent as Brogue.  The reason for playing Rogue is because it's Rogue, you know?  Not because it's the best roguelike but because of its historical importance, or so you can say you've beaten such an infamous game.

I don't think "better" is quite adequate, for they are in different categories. I play Rogue for kind of similar reasons I might play some Solitaire card game rather than playing Chess. Different game categories scratch different kind of itch and fit in different time-investment slots. Rogue, in its category, let's call it "coffee-break", I think is still one of the best.

So when I'm talking about improving Rogue, it's not about making it more complex, but more balanced. It's not about adding new stuff, but rather making what's already there more versatile, and in turn perhaps making it slightly more tactical.


Anyhow, I agree with the changes you suggested. Ultimately they all would make the game easier, but I think they would also make it more balanced, which is more important, or so I say. Look at those Solitaire games for example, again, the fact you can beat them relatively often doesn't take away from their replayability at all.

25
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 01, 2016, 08:52:04 AM »
I went back and watched the TTYREC, and while I was proud that I made some good moves, I still feel like there was plenty of luck involved or that I was somehow "blessed" for that moment in time.

It was luck that you got the dungeon generated with a theoretical chance to be beaten, but that you actually made it through had to be due to your skill, or let's call it ability to not make (many) tactical/strategic mistakes. In other words, it's definitively something you can brag about. However, it does make me wonder if another 100 people played as many games as you did, how many times, if any, would they ascend.

This brings me to Brogue, and what I really like about it. However relatively hard, and always challenging, it seems with every dungeon there is still at least some theoretical chance to make it out with the amulet. I call that well-balanced game, and I think in that sense Rogue should be more Broguelike.

26
Classic Roguelikes / Re: Rogue - let's beat it
« on: August 01, 2016, 08:30:58 AM »
That's not to say that I think it's a perfect or that I wouldn't have made any changes...

I was asking before and I am still interested to hear what changes anyone think would benefit the game. So please, do tell, what would you change?


I think some use for useless/negative items would make the game more interesting. For example, potions of LSD, blindness and confusion could have confuse effect when thrown at monsters, while potion of poison could decrease monster's HP by point each turn. Also negative/useless wands. There could be "break a wand" action which could give its effect to the player, so breaking haste monster wand could haste you instead, while breaking invisibility wand could give you 'ring of stealth' effect.

Dark rooms, are they really a difficulty factor, or more of an annoyance factor? If there were no dark rooms at all, would you really be able to beat the game more often? Would the game be more enjoyable with less dark rooms, and is that worth making it slightly less difficult?


I already know the objection, people do not like the idea of making the game easier. But how much easier are we talking about, and does easier really mean "worse"? I think there is about only 1 in 100 dungeons with actual realistic chance to beat the game, even if you play every dungeon with the best logic and strategy. You will die 99% of the time simply because your sword does not hit hard or often enough. And so those changes I'm talking about will actually not make much difference, perhaps increase the chance of beating the game from 1% to 2%. But if they are going to make it more interesting, more enjoyable, even by 1%, then I think it's worth it, and easier game in that case would actually mean "better" game.

27
Personally, I find the mouse interface kinda cumbersome, plus it does not seem possible to do everything with just the mouse.

Can you be more specific please?

Macintosh and Atari ST Rogue don't have any keyboard commands, and they were made by the original authors. As soon as they moved out of graphically and input constrained environment they decided to replace ASCII characters with graphics and keyboard input with mouse controls. Surely they thought to be making a superior version, and I agree, so I find it baffling why would anyone want to use a keyboard still.

28
Have you fully removed classic keyboard functions from Rogue+?
I tried a bit of 'e', 'r', etc. and got "invalid command".

I get the design philosophy behind all-mouse, but I'm just curious if the official switch has happened or if this is an error?

Yes, most keyboard commands are removed. They were not working properly in combination with the new mouse input functionality flow, and I don't see a need for them any more than a motorbike needs bicycle pedals.

29
In general, I'm having trouble moving as precisely as I do with the keyboard. It can be hard to click on a specific "."  Also, I noticed when I want to move diagonally I can only do so one space at a time. If I click my destination it takes me the long way around. Not saying it should be changed, but it is a shortcoming. Precision is sometimes the difference between life and death, even when moving one space.

Here is video:
https://youtu.be/n06_Ynd2_vM

Notice I rarely click on a specific tile, mostly just when searching/shooting, but other times it's somewhere further away in general direction I want to move/attack. Also, see how quickly you can zig-zag search dark rooms. -- Tip: use right-click on '@' to search 10x, it will automatically stop searching if a monster shows up or hidden passage is discovered.

30
scp depends on support from the shell.  I use dgamelaunch as the login shell, and it doesn't support copying.  You probably want to use the ForceCommand setting in sshd_config to make sure the shell only runs that one command.

Ok thanks.

Pages: 1 [2] 3 4 ... 14