Learning to Modify Angband

G

Guest

Guest
Archived from groups: rec.games.roguelike.angband (More info?)

Hello,

I'm taking my first steps into tinkering around with the angband code
(Starting with Steamband, firstly because I have rudimentary knowledge
in C programming...and I really like the way the game is set up, very
cool ideas, etc). I'm just poking through the Edit files first and just
toying around with the effects there. When I get brave enough, I'm
going to try and tackle the source code itself...

My question is, how are beggining HP (And WP in the case of steam) and
SP handled in band and its variants? In the /edit files I see that
there's a number that controls HP growth, but none for SP (I notice in
"I:" row in the p-class.txt file Steam has numbers in those columns
that the file say are unusued).

Thanks for any input, help, etc...

P.S.: Steam is an amazing variant, spellcasting has never been so
volatile or so much fun.
 

valis

Distinguished
Mar 24, 2005
380
0
18,780
Archived from groups: rec.games.roguelike.angband (More info?)

In article <1112149669.989645.177740@o13g2000cwo.googlegroups.com>,
le.putois@gmail.com wrote:

> Hello,
>
> I'm taking my first steps into tinkering around with the angband code
> (Starting with Steamband, firstly because I have rudimentary knowledge
> in C programming...and I really like the way the game is set up, very
> cool ideas, etc). I'm just poking through the Edit files first and just
> toying around with the effects there. When I get brave enough, I'm
> going to try and tackle the source code itself...
>
> My question is, how are beggining HP (And WP in the case of steam) and
> SP handled in band and its variants? In the /edit files I see that
> there's a number that controls HP growth, but none for SP (I notice in
> "I:" row in the p-class.txt file Steam has numbers in those columns
> that the file say are unusued).

Hi!

Wound Points are calculated based on no random information. Your race,
statistics and skills + some other stufs determine your wound point
total. It is a constant value that can only be altered by those things.
It's a simple calculation made in several places, but most noteable in
xtra2.c in calc_wp. (I, uh, am quoting from memory, so I might have it
wrong).

Hit Points are calculated like in normal band, which IIRC is a life
rating, combined with stats, and level. It prerolls for hp gain at the
beginning of the game and stores that data in a table to avoid hp
scumming on level gain. (Brilliant idea IMHnovice programmersO). I
believe it is also found in xtra2.c (along with birth.c?) under calc_hp.

I could be totally wrong.

> Thanks for any input, help, etc...
>
> P.S.: Steam is an amazing variant, spellcasting has never been so
> volatile or so much fun.

There are currently a lot of hacks in the code. Once I get it fairly
stable (041 sometime soon) I'll be cleaning up a lot of it. After that
it's to work on AI, terrain, and balance. Feel free to ask questions - I
may not know the answers. :)

-Campbell
 
G

Guest

Guest
Archived from groups: rec.games.roguelike.angband (More info?)

Cool, It's in xtra1.c actually. :) I found out how the HP and WP
bonuses are dealt out, but how is mana dealt with? My knowledge of C is
very rudimentary, and I'm not quite sure how it's done. What stats are
taken into account? It seems to be based more on Stats and Class as
opposed to race, is this correct? Which number govern the maximum?

This brings back memories of C++ in high school, I think there's a
reason I only got a B- in the class, heh.


VALIS wrote:
> In article <1112149669.989645.177740@o13g2000cwo.googlegroups.com>,
> le.putois@gmail.com wrote:
>
> Hi!
>
> Wound Points are calculated based on no random information. Your
race,
> statistics and skills + some other stufs determine your wound point
> total. It is a constant value that can only be altered by those
things.
> It's a simple calculation made in several places, but most noteable
in
> xtra2.c in calc_wp. (I, uh, am quoting from memory, so I might have
it
> wrong).
>
> Hit Points are calculated like in normal band, which IIRC is a life
> rating, combined with stats, and level. It prerolls for hp gain at
the
> beginning of the game and stores that data in a table to avoid hp
> scumming on level gain. (Brilliant idea IMHnovice programmersO). I
> believe it is also found in xtra2.c (along with birth.c?) under
calc_hp.
>
> I could be totally wrong.
>
> > Thanks for any input, help, etc...
> >
> > P.S.: Steam is an amazing variant, spellcasting has never been so
> > volatile or so much fun.
>
> There are currently a lot of hacks in the code. Once I get it fairly
> stable (041 sometime soon) I'll be cleaning up a lot of it. After
that
> it's to work on AI, terrain, and balance. Feel free to ask questions
- I
> may not know the answers. :)
>
> -Campbell
 

valis

Distinguished
Mar 24, 2005
380
0
18,780
Archived from groups: rec.games.roguelike.angband (More info?)

In article <1112164914.756662.251230@l41g2000cwc.googlegroups.com>,
le.putois@gmail.com wrote:

> Cool, It's in xtra1.c actually. :) I found out how the HP and WP
> bonuses are dealt out, but how is mana dealt with? My knowledge of C is
> very rudimentary, and I'm not quite sure how it's done. What stats are
> taken into account? It seems to be based more on Stats and Class as
> opposed to race, is this correct? Which number govern the maximum?

Every class has a spell stat (given in the edit files) and that
spellstat is used for calc_mana (in xtra1.c).

> This brings back memories of C++ in high school, I think there's a
> reason I only got a B- in the class, heh.
>

-Campbell