Skills, auto-attack, aura and chain lightning rework, Esc, cache fix

- Skill bar: no art selection; slot 0 is the right-click art, keys 0-6 cast
  slots directly; cooldown labels in exact seconds; slot 0 set apart.
- Arts regenerate on their own (casting no longer refills the group).
- Auto-attack after targeting or casting at a hostile creature, at the speed
  of a held button.
- Auras can be recast while active (renew, no second visual).
- Blicke wie Klingen hits every enemy in range, physical, with life leech.
- Blitzschlag steers the game's own chain: 3 + level/5 hits, 1 + level/10
  chains, re-hits a lone enemy.
- Weapon sets: click selects, drag only from the selected set; the leftmost
  set is clickable (signed hit tests).
- Esc closes open windows before opening the game menu.
- HUD: standalone buttons and texts are centred.
- Record cache sized for widened views (town lag while walking).
- Shared game code: orders, fx events, text drawing, cooldowns, effects.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
khallaandClaude Opus 5.5 committed 2026-10-16 00:11:38 +02:00
1 parent f721d2a486
commit 1fd89524d3
41 files changed
+2347 -214

No files matched your search

+14
View File
@@ -153,3 +153,17 @@
0x005a0980 cObjectFX::Construct
0x005a37b0 cObjectFX::ReceiveEvent # vf18; cEventFX 0x42 attaches it to an owner
0x0041e0a0 cEventFX::Construct
0x009eaee0 g_uiAtlasEntries # 0x54 each: texture +0, uv +4..+0x10; indexed by icon id (art icons, 3 per art)
0x009ed030 g_uiTaskbarSlotBackground # atlas entry: slot control background
0x009ed084 g_uiTaskbarSlotBackgroundSelected
0x009f7f14 g_uiTaskbarArtFrame # atlas entry: frame over an art slot
0x009f4be4 g_uiTaskbarArtFrameSelected
0x009f5d9c g_uiTaskbarArtFrameDropTarget # while dragging an art
0x00581c00 cArtCooldowns::Find # (art) -> entry index (also an art's variants); count if none
0x005829c0 cCreatureArts::HasEffectOfArt # (art): any active effect of the art (+0x1c)
0x00553840 cCreatureArts::FindEffectByKind # (kind) -> entry or null
0x00582710 cCreatureArts::RegenFor # (art) -> regeneration amount (float)
0x00562330 cCreatureArts::AddGroupRegen # (amount, group, filter): adds to every cooldown entry of the group
0x00536f20 cCreature::DistanceTo # (object id)
0x00ad1c60 g_nearbyCreatures # {object id, ?} x g_nearbyCreatureCount, creatures near the player
0x00ad1b48 g_nearbyCreatureCount