| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Delete train_skill, an unused function.
|
|
|
|
|
| |
Sometimes, they're there to emphasize a break between two sections of code,
which is good. In a majority of cases, though, they're just inconsistent.
|
|
|
|
|
|
| |
Multiple manuals for different skills can be used at once. If there are
multiple manuals for the same skill, the one with least charges is used
up first.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I had to rename distance() (in coord.h) to distance2() because it conflicts
with the STL function to compare 2 iterators. Not a bad change given how it
returns the square of the distance anyway.
I also had to rename the message global variable (in message.cc) to buffer.
I tried to fix and improve the coding style has much as I could, but I
probably missed a few given how huge and tedious it is.
I also didn't touch crawl-gdb.py, and the stuff in prebuilt, rltiles/tool
and util/levcomp.*, because I have no clue about those.
|
|
|
|
|
|
|
|
|
| |
This avoids unnecessary non-inlined copies.
Also, we had a few large functions that had no reason for inlining, let's
have them be regular ones.
I also made "static inline" always use the same order, for easier grepping.
|
|
|
|
|
|
|
|
| |
Also, remove a few special cases that considered Spellcasting to be
non-magic below level one for Troglodytes; this hasn't been necessary
since scrolls stopped training Spellcasting in ee84c39.
This reverts commit 1d240c20e937d950ff3de459d85665fcc06969ff.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
So it's not influenced by cross/anti training and manuals anymore. Early game
cost will raise at the same rate for all backgrounds too. The ones with low
skill levels used to have a low cost for a longer time, allowing them to
catch up more quickly to the others.
Globally, early game cost will raise a bit faster, so this might need to
be balanced a bit (although I'm not sure how).
On the other hand, the new system is cleaner and simpler.
Also, in wizmode, changing skill levels don't have any effect on skill cost
anymore, however, changing XL does.
|
|
|
|
|
|
| |
Instead of forcing the first one. Also, if all your skills are maxxed or
untrainable, but at least one could be trained, put a message, because the
XP won't accumulate in the hidden pool anymore.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Some general refactoring and simplification.
Simplified initialisation of the various arrays and exercise queue.
No more "You stop training foo" messages at startup.
Skills are displayed in grey whenever their training percentage is nil.
Skills that start with some points but with a level < 1.0 still get some
training percentage. More generally, there shouldn't be any special case
for "unknown" skills anymore.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There's no more restriction on training unknown skills. By default, they are
disabled in manual mode and enabled in auto mode, but they can be freely
toggled if restrictions are met.
A skill can be trained if there's any available mean of exercising it.
Fighting, throwing, dodging, stealth, stabbing, T&D, UC and spellcasting can
always be trained.
Weapon skills require carrying a weapon of the type.
Armour requires wearing an armour with an evasion penalty.
Shields needs either wearing a shield, knowing condensation shield or being able
to cast it from a rod of warding or having the divine shield ability.
Evocations requires carrying an evocable item, or having a Nemelex ability.
Spell schools require knowing a spell of the school (Necromancy can be trained
with having a Kiku ability).
Invocations requires having any divine ability that exercises it.
For edge cases, requirements are a bit loose. No need to carry missiles to
train throwing (or it disables itself when you run out), no minimum spell
success, no cap on skill level with buckler and leather for example.
|
|
|
|
| |
This reverts commit 9e8371aef827bd406ea52ac882227487bcca14f8.
|
|
|
|
| |
It's quite useless and confusing, better to just hide it.
|
|
|
|
|
| |
And not at all when just simulating. This should fix this assert:
ASSERT(next_level > 0) in 'skills.cc' at line 618 failed.
|
|
|
|
|
|
|
| |
The skill menu is shown and the player can toggle skills and use focus. The
level reached by each skill is showned.
This is to prevent players from having to adjust skills before quaff iding or
drawing from wonders in case of experience.
|
| |
|
|
|
|
|
| |
It can happen when a draconian turns red or white and his weak skill is at
level 1. With the aptitude change, the skill lose its level.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
When a lot of XP is gained at once, the skill cost level can raise several
time over the course of training all skills. We split it up so that all
skills pay the same cost.
We still need to randomize the order in case of bonus skill points from
manual or crosstraining which can make the cost higher for the last trained
skill.
|
| |
|
|
|
|
|
|
|
| |
Exercised are stored in a queue and skills are trained immediately when XP is
gained. There's a manual mode in which only the selected skills are trained.
No XP pool. No victory dancing.
|
|
|
|
|
|
|
|
|
|
| |
The cost in XP of a skill point is no longer dependent on the skill level.
Skill training order is no longer relevant, end result will be the same.
Also, the cost in skill point of the first level has been greatly reduced,
so gaining a skill is no longer a penalty.
See the wiki for a detailed discussion:
https://crawl.develz.org/wiki/doku.php?id=dcss:brainstorm:skills:experience_system#new_skill_cost
|
|
|
|
|
|
|
| |
"File:" is shown in your editor's status bar.
"Written by:" was used only for the first person who changed a file. We got
git for that now, and pre-DCSS history is so woefully inaccurate it doesn't
really matter.
|
|
|
|
|
|
| |
This is a hacky solution and only handles Spellcasting, Conjurations,
and Invocations. Also, for the default skills already set in ng-setup
reassess_starting_skills (now moved to skills.cc) is applied twice.
|
|
|
|
| |
It's not needed anymore now that reskilling doesn't use exercise.
|
|
|
|
|
|
| |
Transfering skill points isn't instantaneous anymore, it's done each time
you earn some XP. The rate might need some adjustment.
It increases TAG_MINOR_VERSION
|
| |
|
|
|
|
|
| |
Make it compatible with the new anti-training system. It is also much simpler
and don't use the exercise function anymore.
|
| |
|
|
|
|
|
| |
Removed all the slower training conditions for magic schools and replaced it
with double XP cost but only for opposite elemental schools.
|
|
|
|
|
| |
It also now takes a just_check boolean as an optional parameter, and return the
number of level gained/lost. Not used right now, but it will be.
|
| |
|
| |
|
|
|
|
|
|
| |
I did review it manually to find places where they made sense (like some
tables), but for a massive sed job like this there might be places that
I missed.
|
|
|
|
|
|
| |
These were of questionable use and freshness.
Signed-off-by: Robert Vollmert <rvollmert@gmx.net>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Loosen restrictions on spell levels of unknown spells for normal books,
so there are more matches even for untrained schools.
* Add a new option dump_book_spells that, if set to true (default), will
dump the spells even for non-randart book. Useful if you don't know
the books' contents by heart and want to know spells at your disposal
without checking some spoilers.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9143 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
|
|
|
|
|
|
| |
into a file crawlhistory.txt in docs/obsolete.
I used a perl script to do this under the assumption that all these
change logs used the same system following the keyword "Change History".
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6930 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
|
|
|
|
| |
huge number of files. Also correct file name comments.
No coding changes.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3539 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
| |
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@452 c06c8d41-db1a-0410-9941-cceddc491573
|
|
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10 c06c8d41-db1a-0410-9941-cceddc491573
|