Skip to content

Scale creature power across thirty levels - #184

Open
Rokk001 wants to merge 95 commits into
tomluchowski:shaders-improvementfrom
Rokk001:pr/creature-level-progression-2026-09-21
Open

Rokk001 wants to merge 95 commits into
tomluchowski:shaders-improvementfrom
Rokk001:pr/creature-level-progression-2026-09-21

Conversation

@Rokk001

@Rokk001 Rokk001 commented Sep 27, 2026 •

Copy link
Copy Markdown

Scale creature health, damage, defenses, skill power and related level-derived values across thirty levels, with progressively longer experience requirements and the existing maximum level retained.

Depends on #182 and updated #162. Review this contribution alone.

Validation: progression checks pass 5,295 assertions across 34 species, the experience table passes 986 checks, and the integrated progress-packet probe passes 377. The user confirmed creatures level up in the complete fork. No new full-game, balance campaign or other-platform run is claimed.

No matching narrow open issue was identified.


Supersedes #132, closed and force-pushed by mistake; recreated with the same content and cleaned-up commit trailers.

Rokk001 and others added 30 commits September 7, 2026 00:29
Embed per-monitor DPI awareness and maintain the verified OGRE 13.6.5 renderer patch required for context-safe window replacement, runtime GL options and correct fullscreen client geometry.

Validation: clean Release build, DPI and 3440x1440 fullscreen probes, three GL3Plus variants and the patch reverse check passed; version 0.7.1 remains unchanged because this is unreleased work and the project has no changelog.
Apply display, input, audio, gameplay, minimap, shadow and negotiated nickname changes to the running session while preserving rollback for failed window or input transitions and keeping the 3440x1440 navigation visible.

Validation: clean Release and Debug builds, packet tests, DPI, layout and GL3Plus probes passed; the user confirmed the reported resolution, fullscreen, cursor, flicker and navigation failures are fixed. Version 0.7.1 remains unchanged because this is unreleased work and the project has no changelog.
The spells tab put its ten buttons in a single row of 60 pixel squares running
out to x=700. The pane they live in is the window width minus the 200 pixels of
minimap, so at the 800 wide minimum window it is 600 pixels across, and the last
two spells, Weakness and the Eye of Evil, hung past its right edge where they
could be neither seen nor clicked. Only a window at least 900 wide showed the
whole row, and nothing said so.

The rooms tab solved the same problem long ago: two rows of 40 pixel buttons.
The spells tab now uses the same shape, five spells to a row, ending at x=300
with room to spare at any size the game accepts. The cooldown bar inside each
button now covers exactly its button too, instead of overhanging 20 pixels on
both sides, which with narrower buttons would have bled half way across the
neighbours.

The rooms tab had the tail of the same bug: the temple and portal buttons the
editor uses sat at x=570 to 690, past the same edge. They join the end of the
second row instead.

(cherry picked from commit 10db1cb)
Keep the accepted grip angle and strike animation while using the visible left blade tip as the tile-selection hotspot. No version, README or changelog change is required because this completes the existing unreleased hand contribution without changing controls or data formats.
# Conflicts:
#	source/render/RenderManager.cpp
Use the actual striking-face axis, retain the accepted left-end cursor hotspot and reuse the digging wrist animation frame for frame. The README now describes the shared movement; no version or changelog change is required because this completes an unreleased visual feature without changing controls or data formats.
# Conflicts:
#	source/render/RenderManager.cpp
Retain the normal empty-hand wrist angle for both effects and synchronize the index-finger flex with all three yo-yo return cycles. The README now records the completed behavior; no version or changelog change is required because this refines an unreleased visual feature without changing controls or data formats.
Remove depleted fills and borders while preserving surviving health segments and the centre. Update player guidance and add the 200-check texture regression. No release version or protocol change is needed; the existing PR documents this unreleased feature correction.
This packages the accepted implementation without private development notes. No release version or changelog change is required for this unreleased contribution.
# Conflicts:
#	README.md
#	source/entities/Creature.cpp
This packages the accepted implementation without private development notes. No release version or changelog change is required for this unreleased contribution.
Replace the auto declarations introduced by this branch with explicit types,
as requested in issue tomluchowski#42 and required by the project coding guidelines. No behavioural change.
Rokk001 added a commit to Rokk001/OpenDungeonsPlus that referenced this pull request Sep 29, 2026
The merge commits c58f317 (in tomluchowski#184) and 6c919da (in tomluchowski#173), both named
"Replace creature indicator prerequisite with corrected assembly"
(2026-09-21), replace source/entities/Creature.cpp in their PR branches
with an assembled version and thereby drop code of other features. Like
the trim commit c28f93d of tomluchowski#218 they only cut the pull request to size
and are not content decisions, so their deletions are not taken over.
When tomluchowski#173 (step 63) and tomluchowski#184 (step 64) were merged, Git applied these
deletions without a conflict.

Restored in source/entities/Creature.cpp, in the version of
full-build-h1-h7, which matches the PR branches that still contain it
(e.g. tomluchowski#176, tomluchowski#177, tomluchowski#179, tomluchowski#203):
- exportToStream()/doUpkeep(): only creature particle effects are saved,
  timed non-creature effects expire (upstream 00011b8 "Add worker
  creation effect", PR tomluchowski#109)
- addParticleEffect() (same origin)
- doUpkeep(): get-up animation after knock-out (tomluchowski#171, 6c2ec11)
- useAttack(): face creature targets, ranged and melee attack animations
  (tomluchowski#176, 80c42b2)
- fireCombatImpact() (tomluchowski#176, 80c42b2) and fireChickenFeeding() (tomluchowski#177,
  7efafff)
- setDestination() and checkWalkPathValid(bool) with the room object
  check, plus the RoomObjectNavigation include (tomluchowski#179, 8c48b90)

Without these definitions Creature.h declared functions that
Creature.cpp no longer defined.
Rokk001 added a commit to Rokk001/OpenDungeonsPlus that referenced this pull request Sep 29, 2026
Follow-up to 307358c: the assembly merges c58f317 (tomluchowski#184) and 6c919da
(tomluchowski#173) also reverted these lines in source/entities/Creature.cpp. They
are restored in the version of full-build-h1-h7, which matches the PR
branches that still contain them:
- handleIdleAction(): a failed wander is retried next turn instead of
  repeatedly in the same upkeep (tomluchowski#179, 8c48b90)
- useAttack(): comment on the ranged attack animation (tomluchowski#176, 80c42b2)
Rokk001 added a commit to Rokk001/OpenDungeonsPlus that referenced this pull request Sep 29, 2026
Records in docs/development/INTEGRATION-ORDER.md that the merge commits
c58f317 (tomluchowski#184) and 6c919da (tomluchowski#173) also trimmed other features out of
source/entities/Creature.cpp, how that was repaired (307358c,
4319745), and that corrections and work taken over from
full-build-h1-h7 follow the 83 merges as separate commits.
Combining the creature indicator work into this branch replaced
source/entities/Creature.cpp with an older version. Creature.h kept the
declarations, but several definitions and behaviours of work this branch
builds on were gone, so the game no longer linked:

- worker creation effect (tomluchowski#109): addParticleEffect(); exportToStream()
  saves and counts only creature particle effects; doUpkeep() lets timed
  non-creature effects expire
- hand drop: a knocked-out creature plays its get-up animation when it
  recovers
- creature combat: useAttack() faces creature targets and uses the
  ranged or melee attack animation; fireCombatImpact()
- feeding animations: fireChickenFeeding()
- room object navigation: setDestination() only walks when a path was
  set, checkWalkPathValid(bool) checks room objects (with the
  RoomObjectNavigation include), and a failed wander is retried next turn

The restored code matches the branches of these features.
@Rokk001
Rokk001 force-pushed the pr/creature-level-progression-2026-09-21 branch from fbfa937 to 0b60029 Compare September 30, 2026 05:00

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants