Page 1 of 1

[BMA] Thank you Berendol!

Posted: Fri 16.01.2004, 21:25
by Rogue
heh Rogue happened/s to be my first char on ur server... i probly missed that part of the rules.... im glad u was so nice... i have worse luck normaly(aka whenever i can be pked.... i will attract lke 5 of the strongest pks that are alloud to attack me, this has been tested by me in every mangband, uo server, playerworlds servr.... ext..... heh) kinda makes me never want to pass lv10(on playerworlds thats noobie status, and many mangbands..../tomenet....) anyway just want to say thanks again!

Re: Thank you Berendol!

Posted: Sat 17.01.2004, 08:20
by Berendol
Well my server turned out to be a refuge to all the persecuted MAngband players everywhere. Which isn't what it was intended to be, therefore I received no input from the players I wanted it from the most, but it gave some people something to do. But what is your normal name?

You played Tomenet, eh?

Those jerks seemingly stole two of my armors (Dracolisk Scale Mail and Crystal DSM) and another that was suggested (Dracolich Bone Mail) around three weeks after I put them in my game, and they didn't bother to thank or mention me. They have been heavily modified of course, but the timing is just too close to have been coincidence. You can verify the timing by looking at my whatsnew.txt and their CVS history of k_info.txt. Here's to friendly collaboration...!

Re: Thank you Berendol!

Posted: Mon 15.08.2005, 02:35
by Fink
I would like to know what a staff of holiness is good for besides money!

Re: Thank you Berendol!

Posted: Mon 15.08.2005, 13:34
by Avenger
I'm not entirely sure, since I never use them, but after looking through the source, I found the following code describing the activation of a staff of holiness:

case SV_STAFF_HOLINESS:
           {
                 if (dispel_evil(Ind, 120)) ident = TRUE;
                 k = 3 * p_ptr->lev;
                 if (set_protevil(Ind, p_ptr->protevil + randint(25) + k)) ident = TRUE;
                 if (set_poisoned(Ind, 0)) ident = TRUE;
                 if (set_afraid(Ind, 0)) ident = TRUE;
                 if (hp_player(Ind, 50)) ident = TRUE;
                 if (set_stun(Ind, 0)) ident = TRUE;
                 if (set_cut(Ind, 0)) ident = TRUE;
                 break;
           }

My interpretation of this is that staves of holiness have the following effects: Dispel evil, Protection from evil, heal, cure poison, remove fear, cure stun, and stop bleeding. I may be wrong, so if someone who understands the code better wants to correct or clarify this, please do.

Re: Thank you Berendol!

Posted: Wed 17.08.2005, 19:47
by Fink
Thanks Avenger! I think you are right on that... I got the same interpretation... I would have checked the soarce my self except I didn't really know where to begin looking since i thought that the programing wouldn't be legible to me... I am glad you took that intitial step for me! The code looks similar to C. Which I have never seen before :).

On a side note... Do you happen to have any characters on mangband server that have gear for sale? I am having trouble finding equip so that I can dive deeper... I have $ but nothing to spend it on :/. I will continue to check the Black market but those prices are a bit steep seeing as i make about 5-12k per dive. Otherwise it would be cool to learn from someone who has beat the game. I can improve my skills with practical lessons rather than just text help... which i have found helpful, but it saves time to learn it when diving with someone else. I learn more affectively when shown how rather than just told how.

Re: Thank you Berendol!

Posted: Sat 27.08.2005, 23:47
by Berendol
That's C code, though. The entire game is written in C. Visual Basic is a *very* different animal. You're thinking of a Visual Basic SELECT CASE.. END SELECT block, whereas C has the switch { ... } block you see a snippet of here.

It's interesting how a lot of languages have similar constructs and syntax, isn't it?

Back when I wrote AMPFI and BAE and the Angband Editing Utilities (for which the source code was lost due to a hard drive crash), I had to translate thousands of lines of C to VB.

If you want to find the workings of those effect function calls, you will need to grep *.c in the server/ directory for the names.