2769 lines
175 KiB
Markdown
2769 lines
175 KiB
Markdown
# COMPLETED Oct30 04:00CET: flightregions committed + group observation
|
||
|
||
Observation endedautomatically04:00:00.126CET; monitorPID387861/execcell67325 exited0.
|
||
ConfigRotationPercent restored15,LoaderEnabled1,targets50/5/50/5. Server389322
|
||
remainsrunning ports8085/8087. Codecommits373818628d(regions+previousfeatures),
|
||
77648c6b53(earlyfallbackrepinfix) installed. No pendingbuild/restart orpush.
|
||
Fullreportdoc/clientless/2026-10-30-group-observation.md;safecheckpointdirectory
|
||
2026-10-30-group-observation. Needreport/doccommit anduserfinalreply now.
|
||
|
||
92participants76instance16raid,18under15excluded,110online,max26groups,final17.
|
||
156capitalchatmessages,220invites,3full5-playergroupsbeforeplannedfixrestart.
|
||
Sixactualentriesandsixreturns(normalmodesonly),injuries1–46pct. FourRaidvisitors
|
||
550(twoinstances),twoStockade34(twoinstances). MightyWind4north+3returntrips;
|
||
Kraken3northsuccessful BUT92/118interruptedexitloop12620duplicategaperrors.
|
||
No unplannedruntimecrash;RSSmax7.521GiB. Gameplaynotfullypassed:6/92entries,
|
||
largepathrecoverycounts,NativeGuildlessGroupRestorebug remainsunfixed,52botuses
|
||
level58portal,sologroupless754raid denied. Nonfatalshortspline21warnings,one126
|
||
deathwithcemeteryfallback. Userinformedofmainfindingsduringwatch.
|
||
|
||
FinalJSON/tmp/vcore-group-observation-20261030/final.json +summary.json. NAV logs
|
||
ROTATED: mustinclude.2026-10-30_02-32-32 and.2026-10-30_03-50-52 plusactivefile,
|
||
filter02:20:56–04:00. Server.log wasTRUNCATED byreloadconfig at04:00(appenderw),
|
||
notcrash. Console/tmp/vcore-flight-regions-group-test-start-20261030.log preserved
|
||
all;limittofinal.log_offsets[console] forwindow,returnAt1793328900/deadline1793329200
|
||
identifytestentries/returns. Collector/tmp/vcore-final-group-report.py handlesit.
|
||
Nevercopy/tmp/vcore-group-test-20261030/worldserver.conf.before (credentials).
|
||
|
||
# Watch update03:38CET — no finish before04:00CET
|
||
|
||
ObserverPID387861/session67325 unchanged,finalserver389322active110online,
|
||
RSS~7.4GiB. Five confirmedinstanceentries sofar:110Elaansa20Stockade34instance1;
|
||
56Hilddis29Stockade34instance3;64/74/53 sameTheEye550instance2(raidgroup). Allmode0
|
||
native(normal); no heroic entryproofyet. ReturnAt03:55, observeexit+injury/rest.
|
||
|
||
Transport NAV log extract/tmp/vcore-group-observation-20261030/transport-events.json
|
||
created03:28:57 boarding/75riding/214leaving/28arrived/174failed(rawretries).
|
||
Arrived includesMightyWind42Zulana69Org->Warsong03:19:11,132Braneron81Warsong
|
||
03:23:50,91Rixzek68Warsong03:28:32;42returnedOrg03:26:48 whenleadergoalschanged.
|
||
Kraken104Lillini75 ARRIVEDValiance03:22:06, so routeworksforsome;92Tholgarstill
|
||
interruptedexitloop. OthertripsBravery/Tiefenbahn succeeded. NativeTransportState
|
||
isNAVIGATION logger, canonicalobserverServer.log counters missit; extractbytime
|
||
02:20:56–04:00 directly atfinal. File95MB, streamingfast. 174failedincludes144
|
||
unsafe-gap retriesmostly92,13safeDockcancel(expected),11departedlandtransition,
|
||
6timeouts—not174separate brokenrides! Computeuniqueactors andclassify.
|
||
|
||
Regionaltrainingaudit11savedbots inrequiredregions allriding225,license1,cold1,
|
||
3profilemounts; no unqualifiedregionalbotobserved. ThreeCataplayer85aroundHyjal/
|
||
Uldum/Deepholm and5inNorthrend etc. Preserveproof ifneeded.
|
||
|
||
NewnativeENTRY_DENIED121Braneven85entry6672 map754SkywallRaid(ThroneFourWinds),
|
||
no group atdenial; earlierINTERACTION_GROUP_LEAVE121 reasonleader-afk. Thus solo
|
||
raid needsnativegroup despitevalidlevel; remainingpolicygap—notflightfailure.
|
||
Severalbotgroupsdisbandedforleader-afk(legitimateconfiguredrulebutmayreflect
|
||
stalledleadernavigation). One death126released+cemeteryfallbackrevive, no chain.
|
||
Nonfatalshortsplinewarnings~15(mixedNPC/Player). Stillno unplannedservercrash.
|
||
No furthercode changes/restart duringtest. Twofeaturecommits373818628d,77648c6b53.
|
||
After04verifyautomaticrotation15restore,writefinalreport+safeartifact, doccommit.
|
||
|
||
# Observation milestones approx03:20CET — remain active to04:00CET
|
||
|
||
BackgroundmonitorstillPID387861/session67325;server389322healthy110online.
|
||
03:00allnormalgather deadlines expired,allhandoffs cleaned. First confirmed
|
||
INSTANCE_ENTERED110Elaansa20 intoStockade34instance1, returnAt03:55. Itsoriginal
|
||
nextdaygoalStockade preserved despiteearlyleadergoalDeadmines, good slotproof.
|
||
Only1confirmedentrycurrently;manypathsfallingback. No newEARLYloop afterfix,
|
||
cumulative1693 allpre-fixretries. RuntimeRole/PvP logic untouched.
|
||
|
||
Actual ZEPP NORTH SUCCESS:42Zulana Horde69 usesMightyWindspawn12 fromOrg toWarsong:
|
||
boarding03:16:41,riding03:16:59,leaving03:18:21,ARRIVED03:19:11passenger0native
|
||
TRANSPORT_STATE in adventurebot-navigation.log. Newroute genuinelypassed once.
|
||
Native transportevents are in NAVIGATION log, notServer.log, so currentmonitor
|
||
counterkeys show0! Forfinalreport extractnavigationevents by timestamp window
|
||
02:20:56–04:00 directly;don'tinferzero transportactivityfromcanonicalcounter.
|
||
|
||
Kraken BUG:92TholgarAlliance79 boardedSW03:05:48, beganValianceexit03:08:32,
|
||
vehicledeparted03:09:36mid-exit. Re-adoption03:10+ repeatedlytriesfinalstandfrom
|
||
mid-recorded-ramp andfails unsafe gap>8yd. Recordings ARE continuous:SWmax4.043yd,
|
||
Valiancemax3.013yd. Savedlocalpoint(6.26951,11.5472,5.66344) ismid-Valiancepath,
|
||
~9ydfromstand. No recordingschanged/no fixdeploy;observefuture. FindingsJSON
|
||
/tmp/vcore-group-observation-20261030/findings.json storesproof/times.
|
||
|
||
Currentwarnings~10shortspline rejections, mixNPCandPlayer,nonfatal. Somereal
|
||
travelobserved:56Hilddis nativeTaxiIF6->43AeriePeak;61Mirariel taxi22->42 etc.
|
||
OnlyNativeGuildlessGroupLoadbug remainsidentifiednotfixed;groupsreformedafter
|
||
ourplannedrestart. No additionalrestart! Continueuntil04andreport withallcaveats.
|
||
|
||
# Additional read-only findings during running watch (approx02:48CET)
|
||
|
||
KEEP MONITOR UNTIL04:00CET. ExistingwatchscriptPID387861/session67325 active.
|
||
New server389322 healthy, no repeatedEARLYevents afterfix; cumulative1693 all
|
||
pre-fix loops. Full69test baseline,3regressiontests forfix pass, bothcodecommits.
|
||
|
||
IMPORTANT correction: DB groupdefinitions25/70memberrows were loaded onrestart,
|
||
but native Group::LoadMemberFromDB deletes guildless members because it requires
|
||
GetPlayerGuildIdByGUID success. CharacterCache.cpp:223 returnsfalse forGuildId0.
|
||
Thus groups rebuilt afterrestart; do NOT claim existing memberships survived.
|
||
Read-onlysource root located, NOT fixed (no additional testrestart). Native code
|
||
preexisting affects guildless humans too. Savedfinding/tmp/vcore-group-observation-
|
||
20261030/findings.json. Add tofinalreport asremainingissue. Currentgroups growing
|
||
again19+,110botsonline. Initialfull3groups'15snapshots persist; some bots nowSolo
|
||
becausemembershiplost, keepcopiedactivity asintended.
|
||
|
||
Safe-native-state details for56Hilddis and61Mirariel are actual ongoing TAXI
|
||
routes, not proven freezes:DB56map0Arathi taxi6->43;61map1Mulgore taxi22->42;
|
||
57taxi22->58,63/67taxi22->42,87taxi22->58. Observercapturespositionssaveall5min.
|
||
Currentwarnings3:oneNPC Entry5840 +PlayerGUID68/94 short-spline reject, nonfatal.
|
||
Do not broaden fixes during watch; assesshour03:00switch andactualentries, then
|
||
04:00autoRotationrestore +report. SourceRole/PvP/etc unchanged.
|
||
|
||
# ACTIVE MONITOR AFTER FIX DEPLOYED — wait until04:00CET=03:00UTC Oct30
|
||
|
||
Featurecommit373818628d and regressionfix77648c6b53 both committed, no push.
|
||
Fix fullbuild-j10+three targeted production tests passed. Installed after graceful
|
||
shutdown387859, new389322 ready fresh andports8085/8087. Nativegroups25, all15
|
||
handoffs/15visits preserved. NewServer.log afterrestart has no repeated early
|
||
handoff events; cumulative monitorEARLY1693 was the PRE-FIX retryloop, not1693
|
||
realdepartures. Original15armedbots correspondthreefull5-playergroups.
|
||
|
||
Still MUST continue observation until04:00CET thenreport. Current02:39CET approx.
|
||
Backgroundmonitor PID387861 execsession67325 /tmp/vcore-observe-groups.py remains
|
||
active and deadline-aware; log/tmp/vcore-group-observation-console.log;
|
||
state/tmp/vcore-group-observation-20261030/state.json; final.json at04:00 and
|
||
RotationPercent15 auto-restored then. Originalconfbackup containssecrets;nevercopy.
|
||
Console remains SAME appended/tmp/vcore-flight-regions-group-test-start-20261030.log.
|
||
Monitor handlesnewServer.log truncation. Maintenance restart documented in
|
||
/tmp/vcore-group-observation-20261030/maintenance-events.json; emptyPID samples
|
||
02:37:19/39 were PLANNED maintenance, initial02:20:56 emptyPID was spawnrace.
|
||
No unplannedcrash sofar. FirstphaseoneNPC splinewarning Entry5840, notPlayerbot.
|
||
|
||
Test110bots total:92participants (Alliance41instance/6raid,Horde35instance/10raid),
|
||
18under15excluded. Current02–03formationcity,03–04plannedmixedvalidtargets.
|
||
All110onlinebeforerestart;stagedloaderreturningthemnow. Never resettestagain.
|
||
Observe group/route/entryprogress, snapshoterrors, inspect anomaliesread-only.
|
||
After04:00 monitorwritesfinal;checkrotationrestored,writeconciseGermanreportand
|
||
safeevidence, updatecheckpoint+optionalreportcommit. Do notclaim gameplay tested
|
||
fromcompilealone. FullZeppelinride notyetobserved. No pendingbuild/install.
|
||
|
||
# CURRENT FINDING / FIX IN BUILD: early snapshot repins travel fallbacks
|
||
|
||
During observation initial full groups began early correctly, but when route
|
||
planning failed, UpdateDeparture kept overwriting normal fallback destination
|
||
with original copied goal every tick. Repeated GROUP_EARLY_DEPART/INSTANCE_PLAN
|
||
were retries, NOT additional successful departures. Preserved state
|
||
/tmp/vcore-group-observation-20261030/before-fallback-fix.json. Server never crashed.
|
||
|
||
User informed and targeted fix+brief planned restart announced, preserving test
|
||
plans/groups. Changed ONLY BehaviorMgr.cpp +departure regression: applycopy only
|
||
while actual intent still formation/empty; GroupPlan and AdoptGroup use effective
|
||
Wanted fallback after application; leaving group keeps fallback within copied
|
||
intent. No new schema/header. Real production regression for repeatedmaintenance,
|
||
leaderfallback inheritance andkick added; departure+groupplan tests pass, intent
|
||
state targetedtest included in build command. Build-j10 running execsession82369,
|
||
log/tmp/vcore-group-fallback-build.log. Need wait buildfinish, commit fix, graceful
|
||
shutdown387859 andinstall/restart finalfix, no testDBreset. Monitor continues until
|
||
04:00CET/03:00UTC, script67325/PID387861; note plannedrestartgap separate fromcrash.
|
||
Currentconsole/tmp/vcore-flight-regions-group-test-start-20261030.log; afterrestart
|
||
use new uniqueconsole filename and adjust monitor console tracking if needed.
|
||
Server.log/navigation/DBErrors monitoring survives truncation automatically.
|
||
RotationPercent0 stillmustrestore15 at04:00. Otherobservation instructions below.
|
||
|
||
# RUNNING OBSERVATION: do not finish before04:00CET Oct30 (03:00UTC)
|
||
|
||
Commit373818628d contains all requested feature changes. Latest flight-region
|
||
binary installed, final server387859 in tmuxvcore-worldserver, freshready10s,
|
||
ports8085/8087 good. Console/tmp/vcore-flight-regions-group-test-start-20261030.log.
|
||
Do NOT restart/alter gameplay during observation unless critical recovery needed.
|
||
|
||
Group test applied successfully to92 of110bots:76instance,16raid next block;
|
||
18below15 excluded entirely. All targets validated with native eligibility after
|
||
logging in candidates as needed. Manifest/tmp/vcore-group-test-20261030/state.json
|
||
phaseapplied. Current02:00–03:00groupformation atpoi_guard_22(SW)/poi_guard_179(Org),
|
||
next03:00–04:00mixed valid native modes. Offlinecapitalrelocation plus stalevisit,
|
||
ghost,corpse,handoff cleanup applied; other22day slots preserved. Loader restored
|
||
Enabled1; RotationPercent deliberately0 through observation (original15).
|
||
|
||
MONITOR ACTIVE: Python/tmp/vcore-observe-groups.py, execsession67325. Writes every
|
||
20s to/tmp/vcore-group-observation-20261030/state.json and minute progress to
|
||
/tmp/vcore-group-observation-console.log. Deadline04:00Europe/Berlin=03:00UTC.
|
||
At deadline it automatically restores onlyRotationPercent to original15, reloads
|
||
config/population, writes final.json and exits. First processmissing alert was
|
||
initial spawn race before server started, NOT a mid-test crash. Script snapshot
|
||
loops capture server PID/RSS/CPU, native event counters, errors, groups/membership,
|
||
visits and handoffs every120s; saveall every300s for positions. Raw backups include
|
||
worldserver.conf.before containingcredentials, NEVER print/copy it into repo.
|
||
|
||
Next: check monitor state/logs periodically, investigate anomalies read-only,
|
||
recover testserver only if genuinely down. Keep turn active until04:00then
|
||
self-contained report withcounts,commit373818628d, findings andunverifiedparts.
|
||
Copy safe evidence +write report/checkpoint thenlocaldoccommit if useful; no push.
|
||
Current feature git tree was clean aftercommit; thisresumeupdate isintentional.
|
||
All builds must remain-j10. No pending build/install/test prep operations.
|
||
|
||
# ACTIVE USER REQUEST: commit flight-region extension, repeat groups, observe until04:00CET
|
||
|
||
Current dateOct30; user requires flight not only Northrend but also Outland and
|
||
Cataclysm regions. Implemented AreaMgr guard for catalog prefer_flight regions;
|
||
keeps map530 racial low-level zones separate. Cold68+ onlyNorthrend; otherflight
|
||
regions require60+, actual native flight,90267 outside530/571. Build-j10 and69
|
||
suite tests passed, logs copied to checkpoints/2026-10-30-flight-regions. Commit
|
||
all pending requested work before starting group test, no push. Still need deploy
|
||
this final small AreaMgr change (previous broader feature already installed).
|
||
|
||
Then repeat group test: current local hour(groupformation) atAllianceStormwind/
|
||
HordeOrgrimmar, next hour mixed valid normal/heroic dungeons/raids. Exclude bots
|
||
below15 as user previously requested. IncludeArthoran26 plus110readygenerated.
|
||
Preparation script/tmp/vcore-repeat-group-test.py prepare running (log
|
||
/tmp/vcore-group-test-prepare.log). It builds native map/mode bands, uses exact
|
||
server eligibility, logs in offline candidates as needed, falls back from raids
|
||
without valid entrances to suitable dungeons. Output/tmp/vcore-group-test-20261030/
|
||
state.json. NO test DB/config edits yet; prepare onlynativechecks/logins.
|
||
|
||
Next steps: ensure prepare completes; run script pause (pauses loader, rotation0,
|
||
requests participant logout); shutdown current385679 via dedicated session; wait
|
||
full exit (oldknown shutdownSIGSEGVpossible); script apply edits onlytwo current
|
||
andnextday slots, teleports offlineparticipants factioncapitals, clearsvisit/ghost/
|
||
oldhandoff state, restores loader enabled1 but rotation remains0 during test.
|
||
Install compiled finalregionalbinary, startfreshdedicatedtmux, verifyreadyports.
|
||
RotationPercent previous15 saved in /tmp/vcore-group-test-20261030/worldserver.conf.before
|
||
(contains secrets! Never print/copy into repo). Restore onlyRotationPercent at04:00.
|
||
|
||
Observe bots+logs+server until **2026-10-30 04:00 Europe/Berlin =03:00UTC**, report
|
||
then. Clock atinitialrequest01:06UTC(local02:06). Must actually monitor, not final
|
||
prematurely. Currentserver385679/sessionvcore-worldserver console
|
||
/tmp/vcore-northrend-flight-final-start-20261030.log. Olduser `vcore` session is
|
||
shell only; leave it. No secondworldserver. User insists all builds -j10; own build
|
||
processes inherit oom_score_adj1000 to prefer build termination over server if
|
||
memory exhausted. No running build now. Currentmanifest prepare needsfollow-up.
|
||
|
||
# Latest: mandatory flight build INSTALLED, final server READY
|
||
|
||
User says no ground-only bots in Northrend. New source+previous pending instance
|
||
modes/group-handoff WIP installed; worldSQL08 applied. Final helper uses existing
|
||
native FlightMgr::Enabled, not a direct mounted-speed aura assumption (initial
|
||
live mistake fixed). All builds -j10,69 tests passed with updated fixtures and
|
||
production native-flight harness. Final dedicated tmuxvcore-worldserver PID385679,
|
||
ready12s,8085+8087 listening. Console
|
||
/tmp/vcore-northrend-flight-final-start-20261030.log. Build/install/tests saved
|
||
under checkpoints/2026-10-30-northrend-flight. No commit/push requested.
|
||
|
||
Old manually started371982 sessionvcore retained as user's shell after known
|
||
shutdownSIGSEGV. Intermediate383849 stopped before final install. Do not start a
|
||
second server. Recording hold released by user earlier. Zeppelin1826 and all
|
||
recordings unchanged. Final native area probes PASS:26 Arthoran60 ship_valiance_kraken allowed0;
|
||
55Zanzul82 zeppelin_warsong allowed1. DB after saveall:26riding225,license1,
|
||
cold0,flightmounts1;55riding225,license1,cold1,flightmounts3. No final
|
||
mandatory flight/BOT_MANAGER_CHECK errors observed.35/36not used (offline).
|
||
|
||
# Active: mandatory Northrend flight; final correction built, deploy/verify next
|
||
|
||
User forbids ground-only bots anywhere in Northrend; all60+ autonomous bots must
|
||
have basic flight,68+ cold weather. Implemented profile defaults (legacy too),
|
||
legacy manager maintenance without inventory cleaning, actual native provisioning,
|
||
map571 admission guard requiring68+54197+FlightMgr::Enabled. No DungeonBot changes.
|
||
See northrend-flight-requirement.md. Added production harness with native
|
||
FlightType/Enabled and69 tests (two fixture fixes passed separately).
|
||
|
||
User finished recording. Explicitly announced install/restart and deployed prior
|
||
ready instance-mode/handoff WIP together with flight policy; applied worldSQL08.
|
||
Old manual sessionvcore371982 stopped, encountered known shutdown SIGSEGV (console
|
||
preserved in vcore); installed, started dedicated vcore-worldserver PID383849,
|
||
ready12s +8085/8087 verified. Live Arthoran26 revealed helper's direct-speed-aura
|
||
mount validation was wrong for native Cataclysm mount data. Fixed ProvisionFlight
|
||
to reuse ClientlessFlightMgr::Enabled. Final rebuild -j10 log
|
||
/tmp/vcore-northrend-flight-final-build.log currently linking; wait/check before
|
||
redeploy. Do NOT claim final correction live until installed. Old373849 remains
|
||
running (actual PID383849), installation must wait for its full shutdown.
|
||
Earlier first build log /tmp/vcore-northrend-flight-build.log; install log
|
||
/tmp/vcore-northrend-flight-install.log; first-start console
|
||
/tmp/vcore-northrend-flight-start-20261030.log. SQL08 already applied, do not lose
|
||
user's new Zeppelin edge1826/recordings. No push/commit requested. All builds -j10.
|
||
|
||
# Latest: recorded Orgrimmar–Warsong Zeppelin activated live, no restart
|
||
|
||
User finished recording routes and asked to validate/activate new Horde Northrend
|
||
zeppelin. Existing manual server371982 runs in tmux session `vcore` (NOT
|
||
`vcore-worldserver`). No restart/install performed. Previous source feature build
|
||
is successful but still undeployed; migration08 remains unapplied.
|
||
|
||
Validated native service12 entry186238 The Mighty Wind, period298828ms, two docks
|
||
and two map legs. Both recorded stops load natively: zeppelin_org_northrend(map1,
|
||
5points,9.45yd) and zeppelin_warsong(map571,10points,16.70yd), same stand
|
||
mighty_wind_center; deck endpoints within3yd. Core link command successfully
|
||
created enabled bidirectional edge1826, zeppelin,cost100. Added explicit Horde-only
|
||
allowed_factions2 to both nodes; adventure catalogs+graph reloaded live.
|
||
Original recordings unchanged. Source connected via ground edge1819 to
|
||
orgrimmar_zeppelintower1. Destination has no recorded onward ground edge yet;
|
||
nearest taxi257 is on another storey, so do not invent an untested straight edge.
|
||
Native timetable pauses60s at each dock. Native node permission probes with
|
||
36Edwin85 allowed both,35Karggan85 denied both (nodeMask2). No forced bot
|
||
relocation, no claimed live passenger ride acceptance.
|
||
|
||
# Latest user instruction: retain -j10 for builds
|
||
|
||
User explicitly requires builds with -j10, including after crashes. Do not replace
|
||
this with -j1/-j2 as a standing policy. This supersedes the temporary lower-job
|
||
recommendations below. Final implementation build already succeeded Oct30
|
||
01:45:11; latest BehaviorMgr object is newer than source. All67 Adventure tests
|
||
passed; latest intent-state, departure and native-DBC variant tests rechecked.
|
||
No migration applied, no install/restart, no commit/push. Existing server371982
|
||
remains running with unchanged installed binary. Deployment hold still applies.
|
||
|
||
# Latest: instance modes / full-group early departure — deployment HOLD
|
||
|
||
User requested implementation of dungeon upper levels (raid minimum-only), native
|
||
normal/heroic dungeon+raid planning and early departure of complete groups.
|
||
USER RECORDING ROUTES: DO NOT INSTALL, APPLY SQL OR RESTART until hold released.
|
||
Current source WIP is intentional, not unexpected changes; preserve it.
|
||
|
||
Added logical per-mode destination variants reusing physical BaseKey; native LFG
|
||
map/mode bands, max+5 dungeon tolerance, raid min-only, reject zero-capacity native
|
||
placeholders, native difficulty session handlers and mode/capacity inheritance.
|
||
Added per-bot persistent current-block copy in world migration08, actual-members
|
||
full detection (human-led too), min(now+300, original hour end, armed source end),
|
||
existing gather micro handling, no kick/vacancy rollback, unchanged next day slot,
|
||
restart restore/expiry/tempbot cleanup and explicit admin command cancellation.
|
||
See group-departure-and-instance-modes.md and tests/checkpoint.
|
||
|
||
IMPORTANT INCIDENT: Initial -j10 compilation alongside installed worldserver used
|
||
all VM RAM; kernel OOM-killed worldserver362937 at2026-10-29 23:36:38 CET. No
|
||
shutdown/restart/install was issued by agent. User informed with cause/apology.
|
||
At interruption worldserver was OFFLINE. On Oct30 resumption, found an externally
|
||
started worldserver371982 (startedOct29 23:57:44). Do not touch it. Installed
|
||
executable remains21:21:03 Oct29 unchanged.
|
||
Do not restart under recording hold, even to restore the old binary. Future builds
|
||
must follow the user-mandated -j10. The temporary -j1 resumption build is
|
||
historical and must not be treated as a new build policy. No unrelated service touched.
|
||
|
||
Final build log /tmp/vcore-group-difficulty-final-build.log; test results
|
||
/tmp/vcore-group-difficulty-tests.json. Completed successfully Oct30 01:45:11, final object/source timestamps checked.
|
||
No SQL08 applied, no live gameplay verification, no commit/push requested.
|
||
|
||
# Commit checkpoint: transport resumption, deck return and capital portals
|
||
|
||
User requested a local commit of all completed changes since19075b6c75. Includes
|
||
stopped-only recorded deck stand fallback, adoption of restored native ship
|
||
passengers and safe recorded exit, capital Cataclysm/Tol Barad/Vashjir graph
|
||
bindings and scoped spell repairs (migration07), plus tests/docs/evidence.
|
||
Transport final build and six tests passed; portal native tests verified all12
|
||
transfers and both-faction Vashjir graph denial. Temporary profiles/tele fixtures
|
||
removed, generated profiles/schedules restored. Final server362937 is operational;
|
||
no lifecycle operation or push as part of committing. Earlier uncommitted/pending
|
||
notes below are historical; consult git log for the resulting commit.
|
||
|
||
# Latest: capital Cataclysm/Tol portals COMPLETE, all12 native transfers verified
|
||
|
||
Applied SQL07 graphbindings forSW/Org Hyjal,Deepholm,Uldum,TwilightHighlands,
|
||
TolBarad,Vashjir (6/capital). Sources factionACL1/2, duplicateOrgTol219035 skipped.
|
||
Nine existing templates keptdata6=0 and worked. OrgTol206595 failednativeclick
|
||
atdata6=0 twice, nowvisitorcast1 and verifiednative88341arrival732. Vash90244/
|
||
90245 previouslyempty; native DBteleporteffects160117/118 + existingSmugglersScar
|
||
fixedtarget(-4570.29,3478.06,-101.809), visitorcast207690/691. Explicitfixedcave
|
||
landing, NOT retailquestprogress destinations. Other targets/conditions unchanged.
|
||
|
||
All12 nativeclicks/expectedarrivalcoordinates verified using35Karggan/36Edwin85.
|
||
Finalresults/evidence doc/clientless/checkpoints/2026-10-29-capital-cata-portals.
|
||
Area5146/children policies byteunchanged. Nativebothbotquery target5057 mask0
|
||
allowed0, both hardgraphtravelattempts rejected destinationdenied. Nodes/edges
|
||
remainpresent/enabled. Migrationreplay preservedbindings/effects/targets. Three
|
||
existing portal/ACK/area-node regressions passed; no newC++ changes/buildneeded.
|
||
|
||
Temp profileskarggan.lua/edwin.lua removed after verifyingexacttestcontents;
|
||
generatedprofiles+daily schedulesrestored. Bothtestbotsreturnedowncapitals;
|
||
12vcore_cata_probe_*gametelefixturesdeleted,cache reloaded,count0. No human edits.
|
||
EarlierHyjalbaselinefalsefailurewasreadingtooearly; finalsaveproveditworked,
|
||
userinformed andblanketcasterchange undone. AfterfixfirstTolretestattempt before
|
||
Edwinonline was rejected; real afteronline nativeclickARRIVED andfinalJSONcorrect.
|
||
|
||
Final server362937 undergdb/tmuxvcore-worldserver, console/tmp/vcore-cata-portals-
|
||
final-start-20261029.log. Freshready11s/process+8085/8087 verified. Known old
|
||
OutdoorPvPshutdowntracespreserved. No commit/push. Prior uncommitteddeckreturn/
|
||
resumedpassengerWIP preserved. SQL07intent-to-add becausecustomSQLignored.
|
||
See capital-cataclysm-portals.md. Taskcomplete; report andwaituserfeedback.
|
||
|
||
# Active task: capital Cataclysm/Tol Barad portals incl blocked Vashjir
|
||
|
||
User asks graph entries + real functionality checks for bothcapitals inclVashjir,
|
||
keeping global area ban. Native imports done12 unique spawns (OrgTol duplicate
|
||
219035 intentionally skipped). SQL07 prepared/applied, scoped data6visitorcast
|
||
for206595 (OrgTol FAILED live twice atdata6=0),207690/207691 (Vash emptyserver
|
||
spells). Nine other templates keep originaldata6=0 and native targets/conditions.
|
||
Vash90244/90245 hadNOeffects/targets; added DBnative teleport effects160117/118
|
||
and fixed existing gameteleSmugglersScar landing(-4570.29,3478.06,-101.809),
|
||
NOT claimed retailquest-dependent destination logic. GraphSQL seedonlypreserves
|
||
manual positions/enabledflags. SourceACL Alliance/Horde; area catalog unchanged.
|
||
|
||
Temp tests use35KargganAlliance85 and36EdwinHorde85, nohumans. Temporary specific
|
||
profiles karggan.lua/edwin.lua under sourceadventure/profiles copied fromgenerated
|
||
DB thenbehavior.enabled/daily_schedule=false. ORIGINAL backups /tmp/vcore-cata-
|
||
portals/*-profile-original.lua; files DID NOT EXIST before task. MUST REMOVEONLY
|
||
these2 profiles aftertests; luareload+scheduleon torestoregeneratedbehavior.
|
||
12 temporary game_tele namesvcore_cata_probe_<spawn> created; deleteonlythatprefix
|
||
and reloadgame_tele aftertests. No testfixtureleftinrepo/DB onfinish.
|
||
|
||
Probe script/tmp/vcore-cata-portals/probe.py completed12tests;11successful.
|
||
Failure OrgTolspawn211264 remainedsource after30s/retry; nowchangeddata6=1 and
|
||
issued shutdown10 to361432 (console/tmp/vcore-cata-portals-start-20261029.log)
|
||
for cache reload. Needwaitfullexit+gdbtrace thenstartsameinstalledbinaryfreshgdb
|
||
console/tmp/vcore-cata-portals-final-start-20261029.log,verifyready/ports. Retest
|
||
211264 withEdwin36 viaGMtelefixture+nativeclientlessportalobjectuse; pollsaveall/
|
||
DBuntiltargetmap732(-603.724,1387.62,22.0498). Original probes JSONsaved beforefix
|
||
/tmp/vcore-cata-portals/probes-before-tol-fix.json. Update finalprobes.json entry.
|
||
Other11 includingBOTHVashlandings passednativeclick->expectedposition. Native
|
||
35 areaqueriesbothVashtargets returnedfactionMask0/allowed0 area5057; real hard
|
||
travel_to_node35 targetVash rejected detail destinationdenied. Need repeat36
|
||
areaqueries whennotintransfer. Verifypolicy before.tsv byteunchanged.
|
||
|
||
Corrected earlier misleadingHyjalbaseline: firstDBread tooearly, finalsave proved
|
||
native0 worked; user informed, blanketcasterchange undone before tests. Do NOT
|
||
claim all portals broken. Otherexistinguncommitteddeckreturn/resumedpassengerWIP
|
||
preserved. No newC++ source changes inthisportal task; DBreloadrequiredrestarts.
|
||
Next finishOrgTolretest,cleanupfixtures/profiles, tests/docs/evidence,report.
|
||
|
||
# Latest: resumed-passenger build INSTALLED, server READY; Shanron on normal plan
|
||
|
||
User explicitly released recording hold and requested install/restart. Old349322
|
||
fully exited after known OutdoorPvP shutdown destructor crash (oldconsole trace
|
||
retained). Installed successful prepared build using existing CMake:
|
||
/tmp/vcore-transport-resume-install.log. Fresh gdb/tmux vcore-worldserver
|
||
PID356681, console/tmp/vcore-transport-resume-start-20261029.log. NewServer.log
|
||
freshready12s, both8085/8087 listening, process persists. No source/config/DB
|
||
changes for deployment; prior uncommitted deck-return+passenger-resume WIP remains.
|
||
|
||
Requested native clientless login140 to check Shanron without manual position/
|
||
profile/dayplan override. Core LoadFromDB reported transportGUID2 unavailable,
|
||
teleported him to homebind before controller startup; same warning for26.
|
||
Thus no restored attachment existed to exercise new ResumePassenger for140.
|
||
Confirmed140 online/profileloaded, normal restintent poi_guard_111 arrived and
|
||
rest_sleep/rest_look micros. No TRANSPORT_RESUME live event observed yet; do not
|
||
claim restored-passenger/exit behavior live-proven from this deployment. Six
|
||
focused tests and complete build previously passed. Core inability to restore
|
||
certain ship bindings remains a separate observed limitation. User was told
|
||
Shanron resumed ordinary schedule via core homebind fallback, not new deck exit.
|
||
No push/commit requested. Server operational. Recording hold is now released.
|
||
|
||
# Latest: orphan-passenger fix READY; USER HOLD NO INSTALL/RESTART
|
||
|
||
Final complete build passed/tmp/vcore-transport-resume-final-build.log (source
|
||
TransportMgr object rebuilt after final edits, link completed). Six targeted
|
||
tests pass/tmp/vcore-resumed-passenger-tests.json. Latest additional detached
|
||
land-tail ownership assertion passes in test_transport log. Native attachment
|
||
adoption + next permitted recorded halt + ordinary exit implemented; current
|
||
installed server349322/executable21:00:04 unchanged. No runtime console commands,
|
||
DB/profile/dayplan changes, installation or restart in this task. Existing
|
||
uncommitted stopped-deck-return fallback work retained. New fix is source/build
|
||
only and NOT live-verified. See resumed-transport-passengers.md.
|
||
USER IS RECORDING ROUTES. Notify ready and WAIT for explicit hold release before
|
||
install/restart. No pending builds/test processes. No commit/push requested.
|
||
|
||
# Latest: resumed-passenger fix prepared; USER RECORDING, NO RESTART/INSTALL
|
||
|
||
User explicitly requests fix for Shanron's orphaned native ship attachment but
|
||
NO restart while recording more routes. Added TransportMgr::ResumePassenger
|
||
and Resumed flag; Lua Adventure controller invokes before actions, after
|
||
observation/maintenance. Preserve normal active rides; require actual known
|
||
recorded vehicle+managed alive noncombat passenger, no taxi/pending teleport,
|
||
allowed stop. Lazy ensure both stop and graph data load. Reconstruct only Riding
|
||
state, never reboard/teleport/change schedule. At each Riding update choose actual
|
||
currently stopped permitted recorded dock; no guessed prior destination. Reuse
|
||
normal deck return/budget/recorded exit incl native map-transfer ACK; keep control
|
||
through detached land tail until arrived. No exiting at newly forbidden stops.
|
||
Unrecorded/forbidden services untouched. No static tram DB persistence repair.
|
||
Six tests passed/tmp/vcore-resumed-passenger-tests.json; extended production
|
||
transport harness includes restart adoption, preserved normal rides, complete
|
||
native-modeled exits, denied stops, unknown/unmanaged, landtail and cross-map.
|
||
Final build running/tmp/vcore-transport-resume-final-build.log. Source latest
|
||
changes after initialbuild must be included; verify final completion.
|
||
Current server349322 remains unchanged, NO console/lifecycle/DB/profile changes.
|
||
Doc resumed-transport-passengers.md. Previous uncommitted deck-return fallback
|
||
work preserved. Next finish final build/checks, tell user ready; WAIT for user
|
||
recording hold release before any install/restart. Live behavior unverified.
|
||
|
||
# Latest diagnosis: Shanron140 attached to ship but no resumed ride controller
|
||
|
||
User observes Shanron aboard ship toSW. Native console transport status140:
|
||
`No transport ride state for this character.` actioninfo140 Idle/empty. Character
|
||
DB online map0(-8644.53,1335.31,6.12629),transguid2(The Bravery). Currentserver
|
||
349322. Both previous and current boot logged generated140 startup but no native
|
||
boarding/travel progression; normal core restores MO_TRANSPORT attachment from
|
||
saved character, CPC `_rides` exists only in memory and Start refuses already
|
||
attached players. Thus restored ship passenger has no ride driver to initiate
|
||
recorded exit/deck fallback. Distinct from120Brynna's repeated return issue.
|
||
No code/DB/lifecycle/relocation changes for Shanron investigation; existing
|
||
uncommitted stopped-deck fallback changes preserved. Needed follow-up: adopt
|
||
already attached managed passengers after login/restart using matching recorded
|
||
service; disembark only at an actual safe recorded dock, then resume normal plan.
|
||
Do not simply detach/teleport a passenger in transit. Existing120fallback still
|
||
requires a tracked ride to call DeckMgr::Update and cannot solve orphaned ride.
|
||
|
||
# Latest: stopped deck-return fallback INSTALLED, server READY
|
||
|
||
User permits transfer to recorded onboard stand after return failure only while
|
||
vehicle stopped. Implemented checked direct native spline launch + persistent
|
||
return failure state and safe native passenger relocation fallback. No detach,
|
||
no transportGUID changes, exact recorded local anchor, same transport/map,
|
||
alive/no combat/no pending teleport, valid coordinates, stopped+exitBudget1s
|
||
reserve independently rechecked. Ordinary recorded exit still follows.
|
||
Five tests PASS: deck control (including failed start/return, motion and short
|
||
halt rejection), actual fallback helper with doubles, real meshes, generic
|
||
transport, grid loading. Build/tmp/vcore-deck-return-build.log PASS. Installed
|
||
/tmp/vcore-deck-return-install.log after341932 fully exited (old known OutdoorPvP
|
||
shutdown fault trace retained). Fresh gdb/tmux PID349322, console
|
||
/tmp/vcore-deck-return-start-20261029.log, freshready13s,8085/8087 listeners,
|
||
process verified. Installed binary contains DECK_RETURN_FALLBACK string.
|
||
No native fallback event seen yet; no live/visual acceptance claim. Natural bot
|
||
loader active; no manual forced action, DB relocation or profile/plan override.
|
||
Doc deck-return-fallback.md. All these changes UNCOMMITTED after19075b6c75.
|
||
Previous SESSION diagnostic edit is intentional. Report completion; await user.
|
||
|
||
# Latest: stopped deck-return fallback implemented, build passed
|
||
|
||
User explicitly permits transfer back to recorded onboard stand after return
|
||
navigation fails, only while vehicle stopped. Added Passenger.Returning/
|
||
ReturnFailed, checked immediate native spline launch, failed/timeout/interrupted
|
||
return handling; helper rechecks actual same passenger/map, stopped and exit
|
||
reserve+1s, life/combat/teleport, valid local/world coordinates. Native local
|
||
position+TransportBase passenger relocation+broadcast; attachment never removed.
|
||
Ordinary recorded exit remains unchanged. Tests controller/native helper/real
|
||
mesh passed, generic transport/grid tests running. Build
|
||
/tmp/vcore-deck-return-build.log complete PASS. Not yet installed. Currentserver
|
||
341932 remains running. Prior SESSION diagnostic change is expected WIP after
|
||
commit19075b6c75. New doc deck-return-fallback.md. Next: finish test checks,
|
||
graceful shutdown/install/restart undergdb, freshready+ports, observe boarding/
|
||
returns/exits; do not claim actual fallback occurred until logged.
|
||
|
||
# Latest: Brynna120 stuck aboard tram; diagnosed repeated deck return
|
||
|
||
User observes Brynna in wagon. Branch19075b6c75 clean at investigation start.
|
||
Native status120 Riding SW->IF spawn18803 point4 elapsed238825, abort0, action
|
||
Moving. Prior rescueSW completed20:45:28, normal boarding20:46:42/Riding20:46:43.
|
||
Deck outing target(2.419,-3.118,-10.445). At destination20:47:55 and20:47:58
|
||
repeated DECK_WALK return target(-0.112,-0.187,-10.345),length3.87. Next dock
|
||
20:50:17..22 dozens of identical return launches per second, NO Leaving state.
|
||
This confirms recurring deck-return problem, not lost attachment after restart.
|
||
DeckMgr::Launch reports success unconditionally via MotionMaster LaunchMoveSpline
|
||
(void), Update uses IsSplineEnabled and retries when actual local target not
|
||
reached. Exact cause (launch failure, motion slot priority, competing stop) not
|
||
proven yet. Unit UpdateSplinePosition does update transport-local position.
|
||
Server.log has _checkPathLengths validation errors for76/110, NOT120; do not
|
||
attribute those to Brynna without evidence. No code or DB/teleport/lifecycle
|
||
changes in this diagnosis. Server341932 remains running. Ordinary rescue refuses
|
||
attached passengers by design; do not detach/teleport moving wagon passenger.
|
||
Next fix should validate actual deck spline start/completion, avoid repeated
|
||
return issuance, reserve enough dock time, retain safe passenger attachment.
|
||
|
||
# Commit checkpoint: group follow, grounded portal and explicit tram rescue
|
||
|
||
User requested a local commit of the current completed changes. Includes group
|
||
meeting spacing/road formation and player-led flight mount/hover fixes, grounded
|
||
Outland Dark Portal source/capital-return ACL migration05, and explicit rescue
|
||
node category/ordinary graph exclusion/recorded escape execution + migration06.
|
||
Tests, documentation and native evidence are included. Final rescue build3 and
|
||
ten focused tests passed; installed server341932 reached ready with8085/8087.
|
||
Native exits verified forDurndan58/Tinkbin33/Hilddis56. Full visual acceptance,
|
||
all walking rescues and core static-transport passenger persistence are not
|
||
claimed. Earlier UNCOMMITTED/pending install notes below are historical task
|
||
checkpoints; consult git log for final commit. No push or restart in commit task.
|
||
|
||
# Latest: explicit tram rescue LIVE, successful native exits verified
|
||
|
||
Implemented rescue node category, ordinary graph exclusion, scoped recorded
|
||
escape search, walk-first then map369-only native transfer fallback after normal
|
||
replans/flight exhausted. Applied SQL06; bothnodesrescue/Alliance1. Verified
|
||
recorded edges1781/1782/1783 and all points byte-for-byte unchanged against saved
|
||
DBsnapshot. Final complete build3 and10 targeted tests PASS. Installed
|
||
/tmp/vcore-rescue-route-install.log. Fresh gdb/tmux vcore-worldserver PID341932,
|
||
console/tmp/vcore-tram-rescue-start-20261029.log, newready12s verified, process
|
||
persists,8085/8087 listening. Old328503 fully exited before install.
|
||
|
||
LIVE:58Durndan transferIF20:38:59, authored rescuecomplete20:39:09,
|
||
nativeexit2166 map0 at20:39:11, resumed groupformation/tavern preparation inIF.
|
||
33Tinkbin transferIF20:39:11, rescuecomplete20:39:34, then normal tram route and
|
||
nativeSWexit2171 at20:42:17; resumed citytravel/groupchat.56Hilddis transferSW
|
||
20:41:38, rescuecomplete20:41:48, resumed original route including real tram
|
||
SW->IF Arrived20:43:18, nativeIFexit2166 map0 at20:43:32.76Renalin started
|
||
WALKING rescue20:42:42 with transferred=0, recorded corridor underway (completion
|
||
not yet verified). Other automatic rescue transfers/completions78,80,82,88,90,94
|
||
observed. No manual player/bot relocation or forced intent used for these tests.
|
||
Evidence checkpoints/2026-10-29-tram-rescue/live-rescue.log. Core static transport
|
||
passenger persistence remains unchanged; requested emergency exit covers stranded
|
||
bots. End-to-end exits verified for58,33,56, not all bots/visual acceptance.
|
||
|
||
All previous groupfollow/portal WIP preserved and UNCOMMITTED; SQL05/06 are
|
||
intent-to-add under ignored sql/custom. No push. User's latest interruption
|
||
message handled by resuming live verification. Next: report completion; await
|
||
user feedback. Do not claim every walking rescue or future restart is tested.
|
||
|
||
# Latest rescue install in progress: final build3 SUCCESS
|
||
|
||
Latest complete source build passed/tmp/vcore-rescue-route-final-build3.log;
|
||
all10 targeted tests pass. Added missing-anchor and partial-route-end hooks on
|
||
rescue-network maps; source newer than build2 is compiled in finalbuild3.
|
||
Issued shutdown10 to328503. Wait for complete exit/gdb OutdoorPvP trace, apply
|
||
migration06, verify recorded edges/points unchanged, install then start fresh
|
||
vcore-worldserver undergdb to/tmp/vcore-tram-rescue-start-20261029.log. Verify
|
||
fresh ready/listeners and observe native RESCUE_ROUTE_START/TRANSFER/COMPLETE,
|
||
portal exits for stranded56,58. No rescue migration/installation performed yet.
|
||
|
||
# Latest WIP: explicit rescue network implemented, final build/testing
|
||
|
||
User recorded tram_rescue_sw,tram_rescue_if and edges1781,1782,1783. Implemented
|
||
rescue node category + command validation. Graph normal roots/anchors/static/
|
||
adaptive/virtual bridge/flight edges exclude rescue; scoped PlanRescueRoute
|
||
admits allowed same-map recorded ground escape paths to ordinary nodes. Walk
|
||
first; if no approach, map369 only may nativeTeleportTo+ACK closest allowed
|
||
rescue node with a real recorded escape. Managed/alive/not combat/transit only,
|
||
at most2 rescue starts per action (second reserved for failed walking rescue).
|
||
Executor tries rescue after normal recovery radii+fallbackflight fail; initial
|
||
no-progress/missing anchor/partial completion on rescue-network maps now reach
|
||
ordinary recovery instead of silently cycling. Other maps preserve prior initial
|
||
failure semantics. Keep original destination, replan on ordinary escape endpoint,
|
||
no group formation/opportunistic MMAP exits during authored escape. Core tram
|
||
passenger persistence itself unchanged; this implements user-requested escape.
|
||
Migration06 prepared, NOT YET applied: classify two existing nodes rescue and
|
||
AllianceACL1; recorded geometry untouched/snapshot in
|
||
checkpoints/2026-10-29-tram-rescue/recordings-before.tsv. Category SQL ignored by
|
||
.gitignore; add with -N -f like migration05 when ready. Existing source WIP
|
||
from group flight+portals must be preserved.
|
||
Ten targeted tests passed (/tmp/vcore-rescue-tests.json), new production rescue
|
||
graph/executor tests. Later no-shortcut assertion rechecked. Final incremental
|
||
build running/tmp/vcore-rescue-route-final-build2.log; one late partial-recovery
|
||
hook changed Executor after compilation may require final incremental rebuild.
|
||
DO NOT install stale binary. Current testserver328503 still running; no lifecycle
|
||
or DB changes in this rescue task yet. Next: finish latest build+verify tests,
|
||
applySQL06 while stopped, install, restart undergdb and verify freshready/ports,
|
||
observe native rescue behavior for stranded58Durndan/56Hilddis and other369bots.
|
||
User says recording completed; normal authorized test restart allowed.
|
||
|
||
# Latest: diagnosed stranded tram bots; no fix/relocation/restart yet
|
||
|
||
User observes bots stuck in Deeprun Tram. Read-only diagnostics confirm58Durndan
|
||
(5.774,858.385,-84.745) and56Hilddis(3.825,1299.646,-125.218),map369,
|
||
native live probes match saved positions, no supported feet floor, not flying,
|
||
falling or mounted. Both have NO transport ride state after restart.16 bots
|
||
have saved online positions on369; do not infer all16 independently verified.
|
||
Action58 Completed with `no useful travel progress available`, repeated intent
|
||
fallback every30s. Core Player::SaveToDB stores transportGUID only for dynamic
|
||
Transport*(MO_TRANSPORT); static GO transport tram176081 is excluded. Load
|
||
restores only HighGuid::Mo_Transport. Thus static passenger binding is lost on
|
||
restart while world position in tunnel persists. TransportMgr ride/recovery is
|
||
in-memory and absent after restart. Generic navigation rescue also recognizes
|
||
only Failed; Completed/no-useful-progress doesn't increment failure counter;
|
||
Fallback switches StateIdle, resetting stall evidence. Separate disembark issue:
|
||
124Marnra boarded19:16:50, Leaving19:18:02, then Riding19:18:18 after departure
|
||
before transition finished. Not established as cause for all bots. No new code,
|
||
DB relocation or lifecycle actions; previous WIP preserved. Evidence
|
||
checkpoints/2026-10-29-tram-stranding/live.log. Server328503 remains running.
|
||
|
||
# Latest: group follow build installed, portal graph corrected, server READY
|
||
|
||
User released recording restart hold. Installed successful final build using
|
||
existing CMake install (/tmp/vcore-group-follow-fixes-install.log). Old317961
|
||
fully exited with previously known OutdoorPvP shutdown destructor SIGSEGV;
|
||
backtrace preserved in oldconsole. Fresh gdb/tmux vcore-worldserver PID328503,
|
||
console/tmp/vcore-group-follow-fixes-start-20261029.log. NewServer.log reports
|
||
worldinitialized12s + daemonready; process persists and8085/8087 listeners
|
||
verified. Normal loader enabled/staged. No critical startup/portal rejection
|
||
errors observed; existing unrelated DB content warnings remain.
|
||
Portal164 graphimport creates enablededge1776/Hordeonlysource; source4352
|
||
nativeground84.380 replaces DBCboxcenter144.362, unchangedXY within trigger,
|
||
target4354unchanged. Applied guarded SQLmigration05, retained originalrow and
|
||
nativeprobe evidence. Nativeobjectimport164 afterstartup CONFIRMED current graph accepts binding
|
||
(idempotent preserves nodepositions); freshconsole line787.
|
||
Source WIP and migration05 (intent-to-add because sql/custom ignored) uncommitted.
|
||
Eleven targeted tests/build passed; gameplay/visual acceptance still pending.
|
||
See dark-portal-return-graph.md and group-follow-spacing-flight.md.
|
||
|
||
# Latest: restart hold released; portal graph corrections applied
|
||
|
||
User explicitly authorized installation/restart. Native GO import164 succeeded,
|
||
edge1776 Hellfire->Orgrimmar enabled; previously tested click had no graphbinding.
|
||
Applied worldmigration2026_10_29_05: source164 Horde2, existing170 Alliance1,
|
||
portal_at_4352_source grounded Z84.380 (native feetprobe49, DBCcenter144.362,
|
||
actualtriggervertical77.462..211.262). Arrivalnode4354target unchanged.
|
||
See dark-portal-return-graph.md and before.tsv checkpoint. No DBC/native teleport
|
||
edits. Groupfollow final build passed; eleven tests passed. Existing WIP preserved.
|
||
Issued `.server shutdown 10` to PID317961 before install. Next verify full stop
|
||
(including known gdb shutdown-crash capture), install existing CMake build,
|
||
restart under gdb with fresh console, verify new ready+listeners8085/8087.
|
||
|
||
# Latest: gathering/formation and player-led flight fixes prepared, DO NOT RESTART
|
||
|
||
User is actively recording routes and explicitly requested code/build first,
|
||
notification before install/restart. Preserve current running worldserver
|
||
PID317961. No console commands, DB/profile/plan changes or lifecycle actions
|
||
performed in this task. New source WIP after54d77d1e4d is intentional.
|
||
Changes: gathering uses existing safe nearby positioning+reservations within
|
||
meeting neighborhood and finishes spacing walks; ground-follow destination
|
||
reuse0.75yd; recorded road row wait also across brief executing-leader stops,
|
||
long mounted row window, native taxi/transport boarding released; prepare native
|
||
profile flying mount when leader equips one; retain it on actual takeoff;
|
||
owned stale ground route cannot block flight; follow does not depend on ordinary
|
||
visual detection range (same map/phase and all safety checks retained);
|
||
stationary aerial flags+Fly animation native publication without idle flood,
|
||
Ground tier on regular touchdown. New test_group_flight_mount.py plus updated
|
||
production harnesses. Eleven tests passed, summary/tmp/vcore-group-fixes-tests.json.
|
||
Initial and final complete builds passed; final log
|
||
/tmp/vcore-group-follow-fixes-final-build.log.
|
||
See group-follow-spacing-flight.md. Not installed, not live tested, not committed.
|
||
Next: final build is successful; notify user ready for install/restart,
|
||
WAIT for route-recording interruption to be released before stopping server.
|
||
|
||
# Commit checkpoint: group preparation, public portals and flight recovery
|
||
|
||
User requested committing all current changes. This checkpoint combines the
|
||
preparation microactions and five-minute gathering rule, public portal SQL fixes
|
||
and diagnostics, and safe flight departure/landing/return recovery, including
|
||
targeted tests and native validation artifacts. Latest successful build and live
|
||
state are recorded below. Earlier "No commit" statements describe their original
|
||
work-in-progress checkpoints; consult git log for the resulting local commit.
|
||
The known gathering-point overlap and formation/mount-follow observations remain
|
||
separate follow-up work. No push or server restart is part of this commit task.
|
||
|
||
# Latest: flight departure/landing repair finished and live-verified
|
||
|
||
Final build+install /tmp/vcore-flight-safe-return-final-build.log and-install.log
|
||
succeeded. Current serverPID317961, tmuxvcore-worldserver undergdb; console
|
||
/tmp/vcore-flight-safe-return-final-start.log. Freshready+8085/8087 verified.
|
||
Eight targeted flight tests pass. Final native evidence: Brynli84 resumed native
|
||
mount, completed54.32yd/3segments, landed18:17:12 and free_flight edge to
|
||
portal_at_4455_target completed recovery0; next route step began normally.
|
||
Tholgar92 completed396.61yd/19segments/zeroavoidances landed18:17:44. Earlier
|
||
real MMAP8.18yd departure under overhang + >1km flight also recorded.
|
||
Safe nearby return-landing search0/8/16/24/40yd,80yd3D bound,fullColumn+Corridor+
|
||
area checks added after direct hover column proved blocked. Complete production
|
||
helper tests cover blocked column/safe neighbor/no candidate/catalog denial.
|
||
Ground approach abort does not interrupt unrelated combat spells. Ground/air
|
||
start, five-ray landing volume, short low final descent and native feet touchdown
|
||
fixes are active. No teleport or profile/DB/plan overrides in this flight task.
|
||
Docs flight-departure-repair.md and checkpoints/2026-10-29-flight-departure,
|
||
including final-live.log. Complete final intent journey/visual acceptance remains
|
||
unverified; intermediate flight legs are verified. No commit/push. Existing WIP
|
||
from prior tasks preserved. Separate known OutdoorPvP shutdown destructor SIGSEGV
|
||
still occurs during graceful shutdown; gdb captures preserved. Original runtime
|
||
vector assertion unresolved. No active finite flight observer remains.
|
||
|
||
# Latest: Outland flight departure investigation and repair
|
||
|
||
Diagnosed84Brynli: mounted nativeCanFly1 but suspended~10ydaboveground,
|
||
oldcodeinsistedgroundstart.92Tholgar: actualfootfloor35.852,skyquery48.203
|
||
(overheadlayer). Neithercasewater. Added nativeprobe feet/liquid/mountflags.
|
||
Implemented airborne profile-mount reuse (no dismount), checked MMAP ground
|
||
walk to nearby open takeoff if on a lower supporting floor, cancel/timeout
|
||
safety, shared-trail identity preservation, per-action flight_origin blacklist
|
||
that preserves ground alternatives. Verified live both resumed/tookoff.
|
||
Then discovered short final approach oscillation + skyfloor touchdown/hover
|
||
return anchor issue. Added collision-checked short low landing, feet-level
|
||
support/body check, five-ray volume for takeoff AND landing candidates and
|
||
verified ground return anchor beneath resumed hover. No teleport/height fudge.
|
||
Eight targeted flight tests PASS (production handler doubles + real planner).
|
||
Build/install latest /tmp/vcore-flight-departure-volume-build.log and-install.log.
|
||
TestserverPID315309, tmuxvcore-worldserver undergdb, latest console
|
||
/tmp/vcore-flight-departure-volume-start.log. Freshready+8085/8087 verified.
|
||
Native logins84/92 requested; final live observer /tmp/vcore-flight-departure-volume-live.log.
|
||
Docs flight-departure-repair.md, checkpoints/2026-10-29-flight-departure.
|
||
No profile/DB/plan overrides for this flight task. Prior uncommitted work
|
||
preserved. No commit/push. Separate known shutdown OutdoorPvP destructor
|
||
SIGSEGV repeatedly captured by gdb; original runtime vector assertion still
|
||
unresolved (not this task). Latest final live findings to append below.
|
||
|
||
# Latest: public portal repair completed
|
||
|
||
Migrations03/04 applied: visitor level58 condition and twelve static public
|
||
portal templates use playerCast1. Source only diagnostics: GameObject cast-fail
|
||
WARN + GM clientless portal object use guid spawn (native click, no bypass).
|
||
Ten available spawns transferred successfully including Shattrath/Hellfire,
|
||
Dalaran and Darkmoon returns; two Darkmoon entrances gated by inactive event3.
|
||
See public-portal-repair.md and checkpoints/2026-10-29-public-portals.
|
||
Three targeted tests pass; existing ACK harness updated for delayed guard.
|
||
Build/install succeeded; latest serverPID304210, gdb/tmuxvcore-worldserver,
|
||
console /tmp/vcore-public-portals-fixed-start.log, fresh ready+8085/8087 checked.
|
||
Temporary game_tele fixtures and specific corren/mahuwa profile files removed,
|
||
profiles restored via luareload and schedule on issued for83/102. Rootloglevel5
|
||
restored. Arthoran override original; no human character changed. No commit.
|
||
Separate shutdown OutdoorPvP destructor SIGSEGV stack captured; original runtime
|
||
vector<unsigned int> assertion unresolved. Earlier checkpoints below historic.
|
||
|
||
# Latest: crash investigation 16:19
|
||
|
||
Server aborted SIGABRT16:19:22; libstdc++ const vector<unsigned int>::operator[] bounds assertion. Immediately preceding VMAP530.vmtree missing warning, but file exists3.46MB; exact cause unconfirmed, no crash dump. Evidence preserved /tmp/vcore-crash-20261029-1619/. Recovered under gdb batch to capture all-thread backtrace on next failure, PID299009, dedicated tmux unchanged. Console /tmp/vcore-crash-watch-start-20261029.log; fresh ready in newly generated Server.log and8085/8087 listeners verified. No code/config changes. Unfinished manual transport recordings may need restart; no persistent recorded docks discarded.
|
||
|
||
# Latest: Blasted Lands portal activation
|
||
|
||
Native imports219963/211359/211298 active, edges1758-1760. Source ACL Alliance1/Horde2. Adventure reload issued. See blasted-lands-portals.md. Server unexpectedly already absent before first import (no shutdown by agent); recovered PID295252, fresh ready and listeners8085/8087 verified. Console /tmp/vcore-portal-enable-start-20261029.log. No binary/source changes. Gameplay traversal pending. Existing WIP preserved.
|
||
|
||
# Aktueller Auftrag: Fünf-Minuten-Sammelregel implementieren
|
||
|
||
Nutzer hat Regel inzwischen ausdrücklich beauftragt. Source ergänzt:
|
||
AdventureGroupPolicy::Gathering(groupformation,deadline,now): letzte300s,
|
||
exakt am Deadlineende wieder false. Record.Gathering/GatherRetryAt und
|
||
AdventureBehaviorMgr::UpdateGathering vor normalem OnSite/Micro-Verhalten.
|
||
Laufender Fußausflug erhält StopRequested und retraced tatsächlich gelaufene
|
||
Checkpoints; andere Micros beendet. Danach lokaler MMAP-Rückweg zum Anker,
|
||
Hold bei3.5m, gescheiterter Weg10sRetry. Kein Warten über Intentdeadline hinaus,
|
||
kein Teleport. Reisen/Kampf/Transport/Intentwechsel haben Vorrang.
|
||
Micro/LeisureAvailable/adminmicro verhindern neue Aktionen im Sammelfenster;
|
||
Gruppenchat/Einladungen bleiben normal aktiv. Regel ausDeadline abgeleitet,
|
||
gilt auch für manuelle und nach Neustart wiederhergestellte Pläne.
|
||
Neue tests/clientless/test_adventure_group_gather.py: echter Handler mitDoubles,
|
||
Grenzen301/300/1/0s, Ausflugabbruch, Vorbereitungsende, Retry, Hold und Release.
|
||
Dieser Test plus leisure+intent_state erfolgreich. Breitere Checks ebenfalls erfolgreich (insgesamt sieben Tests).
|
||
Build2 /tmp/vcore-group-gather-build2.log erfolgreich, installiert nach sauberem
|
||
Shutdown. NeuerTestserverPID290160, tmuxvcore-worldserver, Konsole:
|
||
/tmp/vcore-group-gather-start-20261029.log. Freshready+Ports8085/8087 bestätigt.
|
||
SiebengezielteTests erfolgreich /tmp/vcore-group-gather-test-results.json.
|
||
LiveCutoff14:55 beobachtet: GROUP_GATHER_START/READYmehrererBots;
|
||
Arthoran26 vorCutoff explizitgroup_search_walk gestartet (keinScheduleoverride),
|
||
beiCutoffRückweg4Legs+LEISURE_COMPLETE, dannGROUP_GATHER_READY bestätigt.
|
||
Testdeadline15:00 unverändert. LaufendeBotpopulation gestaffelt wiederhergestellt.
|
||
Native14:56StatusArthoran26:microleer,waiting at group meeting point;
|
||
adminmicroprofession_tools imFenster abgelehnt.42verschiedeneBots bereits
|
||
START+READY. Noch kein nativer15:00Wechselbeobachtet, Deadlinefreigabegetestet.
|
||
Dokumentation group-preparation.md und checkpoints/2026-10-29-group-gather/.
|
||
Keine neuen Planänderungen für dieseRegel erforderlich.
|
||
SQL02 der vorherigenKorrektur ist wegenRepoIgnore jetzt mit git add -N -f als
|
||
Intent-to-add sichtbar; Inhalt angewendet, noch kein Commit/Push.
|
||
Alle vorhandenen Source-/Dokumentations-WIP sind eigene vorherige Änderungen,
|
||
nicht verwerfen. Siehe ältere Checkpoints unten.
|
||
|
||
---
|
||
|
||
# Laufende Korrektur: sichtbare Vorbereitung während Gruppensuche
|
||
|
||
Nutzer beobachtete: Bots sammeln sich in Gilded Rose, keine sichtbare
|
||
Vorbereitung/Stadtsuche. Diagnose: walk nur8-12m/budget18m; profession_tools
|
||
DBzugeordnet, aber Available UND Update verboten außerhalbprofession;
|
||
Gruppenmitglieder FollowMember verhinderte eigene Micros.
|
||
Implementiert (noch nicht committed):
|
||
- Groupwalk70/110mRadien,220mPfadbudget,Minspan65m,Endpunkt muss draußen sein;
|
||
Weg darf von Inn nach draußen führen, bleibt in Hauptstadt+250mAnkerumkreis,
|
||
vollständigeMMAP-Korridore und Rückweg unverändert.
|
||
- ProfessionPolicy::IntentAllows erlaubt nurprofession_tools zusätzlich für
|
||
groupformation; Available/Update benutzen dieselbe Regel. Keine Berufsausübung
|
||
währendGruppensuche freigeschaltet.
|
||
- Botgruppenmitglieder folgen währendForming nicht zwangsweise Leader,
|
||
können eigene Micros machen; normales Folgen außerhalbForming bleibt.
|
||
- SQL2026_10_29_02_adventure_group_preparation_walk.sql angewendet:
|
||
group_search_walk120-240s statt35-65; VorherwertBackup
|
||
/tmp/vcore-group-preparation-action-before.tsv.
|
||
6gezielte Tests erfolgreich, Ergebnisse /tmp/vcore-group-preparation-test-results.json.
|
||
Build2 erfolgreich /tmp/vcore-group-preparation-build2.log; installiert.
|
||
AlterTestserverPID280452 sauber gestoppt. NeuerStart ready und PID287554
|
||
bestätigt; Ports8085/8087 lauschen. Konsole:
|
||
/tmp/vcore-group-preparation-start-20261029.log. Native Logs bestätigen Aelion29
|
||
Stadtgang (14Wegpunkte) sowieAldren32 span70m/8Wegpunkte und195sDauer.
|
||
Arthoran26 profession_tools per micro-Befehl geprüft: SOCIAL_START und
|
||
SOCIAL_CUE CheckGear20/Listen4 bestätigt; kein Scheduleoverride gesetzt. Loader1 mit50/5/50/5; persistierte Testpläne14Gruppensuche/15InstanzRaid
|
||
bleiben erhalten. Externe Ports intern8085/8087 behalten.
|
||
Nutzerkurzfrage: ob5minvorIntentwechselSammelpflicht existiert. Geantwortet:
|
||
NEIN, nur Rückweg nach einzelnen Suchgängen, keine feste5minRegel. Eine solche
|
||
Regel NICHT implementiert/noch nicht zusätzlich beauftragt. Nutzerunterbrechung
|
||
hat bereits ausgelösten Shutdown nicht rückgängig gemacht; Server daher zunächst
|
||
wieder in Betrieb nehmen, dann vorherige Korrektur live prüfen.
|
||
Kein Commit/Push. Vorherige SESSION-RESUME-Änderungen sind eigeneroperativerWIP,
|
||
nicht verwerfen. Sämtliche übrigen Sourceänderungen dieserGruppensucheKorrektur.
|
||
|
||
---
|
||
|
||
# Gruppensuche-Test vorbereitet und vollständig aktiv (2026-10-29)
|
||
|
||
Nutzer verlangt Wiederholung des Tests: Bots in Fraktionshauptstädte,
|
||
aktueller Stundenblock Gruppensuche, nächster Instanz/Raid gemischt.
|
||
Zusatzentscheidung Nutzer: Bots ohne gültiges Instanzziel vom Test ausnehmen.
|
||
94Teilnehmer (49Allianz,45Horde);16Bots unter15 ausgeschlossen und nicht verändert.
|
||
110Bots insgesamt; Loader wiederEnabled1 mit50/5/50/5, läuft normal.
|
||
Teilnehmer nativ abgemeldet, scoped DB-Positionen nach Sturmwind/Orgrimmar,
|
||
Reise-/Ghost-/performative Instanzreste dieser94 bereinigt; Allitester unberührt.
|
||
Tagesplan persistent20261029:14:00-15:00 groupformation, Sammelpunkte
|
||
Allianzpoi_guard_22 /Hordepoi_guard_179.15:00-16:00 80instance+14raid.
|
||
Raidfähige Bots jeFraktion abwechselndRaid/Instanz; alle Ziele VOR Änderung
|
||
vom nativen eligibility-Check als own1 bestätigt. Mindestlevel15, Fraktionen
|
||
und Gebietskatalog bleiben gültig. Keine Profil-/Level-/Codeänderung.
|
||
Andere22Tagesplanblöcke nach Snapshotvergleich unverändert (187geänderteSlots,
|
||
einer der188Zielslots hatte schon den gewünschten Wert).
|
||
Abschluss:94/94online undlautDBinrichtigerHauptstadt;94nativeRuntimeStatus
|
||
bestätigen intentgroupformation+schedule1. GROUP_CHANNEL-Meldungen beobachtet.
|
||
Sämtliche Snapshots, Auswahl, Phasenstatus, Runtimechecks unter:
|
||
/tmp/vcore-capital-group-test-20261029/ (state.json Phase ready).
|
||
Skripte /tmp/vcore-capital-group-test.py (Nativevalidation),
|
||
/tmp/vcore-capital-group-test-apply.py (abgeschlossen; nicht blind erneut starten).
|
||
TestserverPID280452, Ports8085/8087; kein Neustart nötig/ausgeführt.
|
||
Keine VPS-Änderung, keine laufende Netzwerkbeobachtung, kein Commit/Push.
|
||
|
||
---
|
||
|
||
# Normaler Botbetrieb wieder aktiviert
|
||
|
||
Nutzer bestätigt externen Login nach Portumstellung und verlangt normale
|
||
Botanmeldung. Installierte Config Loader.Enabled wieder1; reload config und
|
||
clientless population reload durchgeführt. Staffelung aktiv, erste erfolgreiche
|
||
Logins Arthoran26 und Aelion29 bestätigt; DBonline_bots2 bei erster Prüfung.
|
||
Ziele unverändert50persistente+5temporäre jeFraktion (gesamt110).
|
||
WorldserverPID280452/tmuxvcore-worldserver bleibt aktiv, Ports8085/8087.
|
||
Konsole /tmp/vcore-instance-8087-start-20261029.log. Keine laufende
|
||
Netzwerkbeobachtung. Alte Hinweise 'Bots offline halten' unten sind historisch
|
||
und durch diese Nutzeranweisung aufgehoben. Kein Code/Commit/Push.
|
||
|
||
---
|
||
|
||
# Testserver für zweite öffentliche Verbindung auf8087 umgestellt
|
||
|
||
Auf Nutzerauftrag NUR installierte Testserver-Config angepasst:
|
||
WorldServerPort8085 unverändert, InstanceServerPort von8086 auf8087.
|
||
Sauber heruntergefahren, neu gestartet, frischer ready-Start bestätigt,
|
||
PID280452, tmux vcore-worldserver, Konsole:
|
||
/tmp/vcore-instance-8087-start-20261029.log.
|
||
Listener0.0.0.0:8085 und0.0.0.0:8087 bestätigt;8086 lokal nicht mehrListener.
|
||
Realmlist2 unverändert: cata.viano-software.de:8086, local192.168.56.10.
|
||
Keine VPS/Auth-DB-Änderung durchgeführt. Nutzer richtet VPS:8087->VM:8087 ein,
|
||
bisher VPS:8086->VM:8085 bleibt. Externer End-to-End-Test noch nicht erfolgt.
|
||
Bots bleiben offline (DBonline_bots0), Loader.Enabled0; keine Reaktivierung.
|
||
Vorbereitete Beobachter /tmp/vcore-dual-port-watch.py und
|
||
/tmp/vcore-until-login-watch.py auf8085/8087 und dynamische PID angepasst,
|
||
NICHT gestartet. Keine Codeänderung, kein Build nötig, kein Commit/Push.
|
||
|
||
---
|
||
|
||
# Dritter Verbindungstest: Allitester erfolgreich online
|
||
|
||
Auf Nutzerwunsch maximal120s oder bis erfolgreichem Login überwacht. Bei erster
|
||
Prüfung13:27:11MEZ Allitester21 online1 (nativer Onlineflag wird nach Map-Add
|
||
und LoginVerifyWorld gesetzt). Daher Beobachter automatisch sofort beendet.
|
||
Beide Ports hatten ESTAB-Verbindungen:8085 über10.0.0.3,8086 über192.168.56.10.
|
||
CharakterMap0/Zone1519, Sturmwind. Kein laufender Beobachter.
|
||
Artefaktverzeichnis in /tmp/vcore-until-login-last-dir; dort metadata,
|
||
samples.jsonl und finished.json mit erfolgreichem Login als Abbruchgrund.
|
||
Bots bleiben offline, Loader.Enabled0; Wiederaktivierung nicht angeordnet.
|
||
|
||
---
|
||
|
||
# Zweiter externer Verbindungstest abgeschlossen
|
||
|
||
Nutzertest mit beiden Ports8085/8086 lief13:16:39-13:18:39MEZ (120.24s),
|
||
automatisch beendet, Beobachter nicht mehr aktiv. Verzeichnis steht in
|
||
/tmp/vcore-dual-port-last-dir; dort metadata/samples/server-new/summary/finished.
|
||
274Socket-Samples, beide PortsLISTEN; Verbindung nur auf8085 beobachtet,
|
||
keine8086Verbindung in Samples. Allitester21 weiterhinonline0. Im Testfenster
|
||
nur CPC_PERF, keine neue Login-Abbruchmeldung (voriger Versuch hatte fünf
|
||
fehlgeschlagene World-Socket-Verbindungen). Kein Paketmitschnitt: Abwesenheit
|
||
in Socket-Samples ist kein Beweis für ausbleibende SYN-Pakete.
|
||
Externe Portzuordnung/Zieladresse weiterhin verdächtig: Realmlist2 annonciert
|
||
cata.viano-software.de:8086, Worldserver intern8085/Instance8086. Keine
|
||
Netzwerk-/Realmänderung vorgenommen. Bots bleiben offline, Loader.Enabled0.
|
||
Keine laufende Überwachung. Nutzer hat Wiederaktivierung noch nicht angeordnet.
|
||
|
||
---
|
||
|
||
# Externer Verbindungstest: Beobachtung beendet
|
||
|
||
Fünfminuten-Fenster auf Nutzerwunsch ab13:05:43MEZ, automatische Abschaltung
|
||
13:10:46MEZ (letzte ss-Abfrage verlängerte Abschluss um ca3s). Beide Beobachter
|
||
beendet. Ergebnis /tmp/vcore-five-minute-connection-test/summary.json,
|
||
Samples und Serverlog-Deltas im selben Verzeichnis; Anfangsphase im bisherigen
|
||
/tmp/vcore-connection-watch.log. TCP durchgehendESTAB, kein beobachteter Abbruch,
|
||
RTT rund40-50ms, zuletzt alle2132gesendetenBytes bestätigt. Kein Paketmitschnitt.
|
||
Bots bleiben OFFLINE, Loader.Enabled bleibt0. NICHT automatisch reaktivieren:
|
||
Nutzer hat nur Ende der Überwachung angeordnet. Worldserver bleibt aktiv.
|
||
Keine weitere laufende Netzwerkbeobachtung.
|
||
|
||
---
|
||
|
||
# Betriebszustand: externer Verbindungstest vorbereitet
|
||
|
||
Auf Nutzerwunsch alle Bots ausgeloggt, DB und native Loaderstatus bestätigen0
|
||
online/pending, manager0. Test-worldserver PID270857 läuft weiter, TCP8085 offen.
|
||
Installierte Config Clientless.Adventure.Loader.Enabled vorübergehend von1 auf0,
|
||
per reload config und clientless population reload wirksam. Poolziele50/5/50/5
|
||
unverändert. NICHT vor Ende des Nutzertests reaktivieren! Nutzer gibt Startsignal.
|
||
Passiver TCP-Socket-Beobachter: /tmp/vcore-connection-watch.py, PID-Datei
|
||
/tmp/vcore-connection-watch.pid, Log /tmp/vcore-connection-watch.log (max2h).
|
||
Paketmitschnitt nicht verfügbar: CAP_NET_RAW fehlt; sudo benötigt Authentifizierung.
|
||
Socketzustände/Queues/TCP-Infos und Serverlogs sind ohne Root verfügbar.
|
||
Nach Test nur auf entsprechende Nutzeranweisung Loader wieder aktivieren und
|
||
Beobachter beenden. Originalzustand in /tmp/vcore-external-connection-test-state.txt.
|
||
Bordnavigation inzwischen committed als2841ee973b; nachfolgender Text historisch.
|
||
|
||
---
|
||
|
||
# Aktuelle Aufgabe: freie Bordnavigation (2026-10-29)
|
||
|
||
Vorheriger Schritt lokal committed als49712aadfe. Bordnavigation implementiert
|
||
und getestet; lokaler Commit vom Nutzer angefordert.
|
||
Nutzer hat lokale Navigationsnetze für Tiefenbahnwagen und The Bravery beauftragt.
|
||
TransportDeckMesh baut Recast/Detour-Netze aus vorhandenen VMAP-Modellen;
|
||
ClientlessTransportDeckMgr steuert Platzwahl bei Halt und Rückkehr vor Ausstieg.
|
||
Modelle werden pro Display einmal erzeugt, nur Bravery176310 und Tram176080-86.
|
||
Recast ist jetzt als private game-Abhängigkeit eingebunden, daher großer Build.
|
||
Build erfolgreich: /tmp/vcore-deck-build.log; installiert und neu gestartet.
|
||
Build3 mit korrigiertem Abfahrtsbudget erfolgreich und installiert.
|
||
Finaler Testserver PID270857, tmux vcore-worldserver, Konsole:
|
||
/tmp/vcore-deck-final-20261029.log.
|
||
Frischer ready-Start und TCP8085 verifiziert.
|
||
Echte Geometrietests: Schiff1678Polygone/259 erreichbare Rasterziele mit Rückweg,
|
||
Tram105/59. Alle sechs gezielten Tests erfolgreich, auch Controller-/Transport-/Gruppenflugtests.
|
||
Native Diagnose bestätigt beide Netze. Kontrollierte Fahrt Renaisia70 von
|
||
ship_sw_br nach ship_ruttheran_br: abgeschlossen; Schedule70 ist wieder ON
|
||
(confirmed Schedule mode updated). Sie hat einen
|
||
2m-Netzweg an Bord zurückgelegt; gespeicherte lokale Position bestätigt Ziel
|
||
(-1.74993,7.03908,6.14418) während fahrendem Schiff. Rückweg0.79m am Ziel,
|
||
Leaving und Arrived/passenger0 bestätigt. Noralin80 wurde per nativem tele name
|
||
(offline) an DeeprunTram gesetzt und eingeloggt; normaler Tagesplan führt sie
|
||
von tram_if nach tram_sw. Erste Tramfahrt abgeschlossen:11:40:47Riding;11:41:55Rückweg1.07m;
|
||
11:41:57Arrived/passenger0. Keine manuelle Scheduleänderung bei80.
|
||
Das anfängliche Bordverteilen war zu konservativ zeitlich reserviert; Build3
|
||
reserviert an Abfahrt nur Hinweg+2s, Rückweg/Ausstieg am Ziel. Controltest passt.
|
||
Finaler Start erfolgreich. Native Diagnose für weiteres Tram-Entry176080
|
||
bestätigt ebenfalls105Polygone/59Ziele+Rückwege. Noralin80 offline erneut per
|
||
tele name an DeeprunTram gesetzt und eingeloggt; ihr normaler Tagesplan nimmt
|
||
wieder tram_if->tram_sw. KEIN manueller Scheduleoverride80 (daher nichts
|
||
zurückzustellen). Finale Tram-Bordverteilung bestätigt11:48:02,2m, lokales Ziel per saveall
|
||
bestätigt. Rückweg11:49:13,Leaving11:49:19; unter massiven Worldtick-Stalls
|
||
(50.8s/8ticks) Abfahrt11:49:26 während Ausstieg: bestehende Sicherung bleibt
|
||
angehängt/Riding+Abort bis sicherem Dock. KEIN vollständiger finaler Ausstieg
|
||
behaupten. Frühere vollständige Schiff-/Tramfahrten waren erfolgreich.
|
||
Recovery80 abgeschlossen11:51:36 Failed/passenger0='cancelled at safe dock';
|
||
sicher an Land ausgestiegen, normaler Tagesplan wieder aktiv. Kein manueller
|
||
Override bleibt; Schiff70ScheduleON,80war nie überschrieben.
|
||
Siehe transport-deck-navigation.md. Keine Schema-/Config-Änderung; native Testpositionierung80 dokumentiert.
|
||
Änderungen werden lokal committed; kein Push.
|
||
|
||
---
|
||
|
||
# Umsetzung 2026-10-29: Navigation und Verhaltensgrenzen
|
||
|
||
Die unten festgehaltene Liste ist implementiert; lokaler Commit vom Nutzer angefordert.
|
||
Nächster besprochener Schwerpunkt: sichere Fahrzeugnavigation an Bord.
|
||
Build8 erfolgreich, installiert; finaler Neustart erfolgreich, ready und TCP8085,
|
||
PID264359, tmux vcore-worldserver, Konsole /tmp/vcore-recovery-final-20261029.log.
|
||
23 gezielte Regressionstests erfolgreich; spätere Flugstart-Blacklist- und native
|
||
rekursive Skill-Aktivierungstests ebenfalls erfolgreich. Änderungen werden lokal committed; kein Push.
|
||
Frühe Startversuche fanden einen bestehenden MAX(id)/GetUInt64-Typfehler bei
|
||
Instanz-ID-Initialisierung: Abfrage explizit nach UNSIGNED gecastet, Daten erhalten.
|
||
Live auf vorherigem Zwischenbuild: Terrainprobe Orgrimmar jetzt valid1;
|
||
Aldren32/Talzul97 Reiten225/Lizenz1; Naxx level60/78 abgelehnt,85 erlaubt.
|
||
Finaler Build behebt zusätzlich rekursive Skillpersistierung und respektiert
|
||
Blacklist für Flugstart-Anschlüsse. Endgültige DB-Persistenzprüfung erfolgreich: character_skills762 für32 und97
|
||
beide225/225 nach nativem saveall. Loader läuft mit50/5 jeFraktion weiter.
|
||
Siehe navigation-recovery.md und checkpoints/2026-10-29-navigation-recovery/.
|
||
Lunna nicht reproduziert, gemäß Zeitlimit vertagt. Keine Verteilung an Bord:
|
||
verlässliche lokale Fahrzeugnavigation fehlt; gemeinsamer sicherer Standplatz bleibt.
|
||
|
||
---
|
||
|
||
# Nächster Entwicklungsschritt: vereinbarte Anforderungen (noch KEIN Code)
|
||
|
||
Letzter Commit321a28640c Gebietskatalog/NodeACL/Planerreiseintegration, vorher0173a434f4.
|
||
Nutzer verlangte erstCommit, dann Liste vorCode. AktuellePräzisierungen vomNutzer:
|
||
|
||
1 Flugreisen regulärmitGraphkosten vomStandortzumNode,zwischenNodesundalsallgemeiner
|
||
Fallback,auchlokalerAbreiseknotenbeifernemZielaufandererMap. TerrainFallback aus
|
||
untenstehenderDiagnosekorrigieren,Phase169Standardnichtändern,KollisionundBounds
|
||
nichtabschalten. NichtblindfehlendePhasenkachelnmitBasisdateienkopieren.
|
||
2 LunnaDock-Flugmeister-PendelnRuttheran: nurkurznachdirekterUrsachesuchen,
|
||
sonstüberspringen; bereitsvorGebietskatalogbeobachtet.
|
||
3 BergungbeidauerhaftfestgefahrenerNavigation NICHTvoreilig. Ruhesteinanimation
|
||
verwenden; ZielnichtindividuellerHeimatortsondernFraktionshauptstadtSturmwindbzw
|
||
Orgrimmar. Zeiten/SchwellenfürfestgefahrennochmitvernünftigerkonservativerWahl
|
||
implementieren; keinNutzerwunschfürsofortigeRettungbeieinzelnenPathRejected.
|
||
4 Kettentod: nachWiederbelebunginnerhalb60swiedersterben,5malhintereinander.
|
||
DannbeimnächstenToddenbestehendenGeistheiler/FriedhofFallbackfürunerreichbare
|
||
Leichenversuchen. WeiterOHNEWiederbelebungsschwäche/Haltbarkeitsstrafe; kein
|
||
normalerNPCGeistheilerhandel. Nichtwillkürlichbereitsnach1-2Todenretten.
|
||
5 LetzterTagesplanblockGruppenbildung -> durchRuheersetzen, daFolgeintentfehlt.
|
||
6 EigeneDungeon/RaidZielwahlMindestlevelprüfen. BotlädtSpielernur±5seinesLevels
|
||
undnurwennZielpersonMindestlevelvonDungeon/Raid/Abenteuergebieterfüllt.
|
||
SpielerlädtBot: Botmehrals5LevelÜBERSpieler lehntIMMERab, nachUNTENkeineLevel-
|
||
Sperre. AlleanderenbereitsvereinbartenPersönlichkeits-/Intentregelnbleibengelten.
|
||
7 Transport: zuerstNodeerreichen, dannnaheMMAP-sichereWarteplätzeverteilen;
|
||
beiFahrzeugankunftdentatsächlichgegangenenWegzurückzumNode, normalereinsteigen.
|
||
8 AufVehikelVerteilungNURwennsicherzuverlässignavigierbarundkeinRunterfallen.
|
||
VorAusstiegRückwegzumherkömmlichengemeinsamenStandplatz, dannbisherigerAusstieg.
|
||
Gruppenstaffelung/FormationerstnachvollständigabgeschlossenemAusstiegwieder.
|
||
9 BeianderenAktivitätenAbstandzuNPC/Botssuchen,beiPlatzmangeleng/überlappenderlaubt.
|
||
|
||
ZusätzlichAldren/Talzuljetztgeprüft:32AldrenDK60,97TalzulDruide66,beideonline.
|
||
BeidekennenHordeFlightmounts32243/44/45und90267; Aldrenkennt34090,Talzulnicht.
|
||
Beidenfehltcharacter_skills762auchNACHbestätigtemnativemsaveall(Allplayerssaved).
|
||
Skillgesamtzahlen30bzw26,nichtvoll. GeladeneProfilebeidecanGroundMount1 und
|
||
aktuelleProfilbewegungaufFlugausgelegt. RuntimeGetSkillValuenichtdirektgelesen,
|
||
fehlendepersistierteReitfertigkeitistaberreproduzierbar. NativeSetSkillhatpotenziell
|
||
fehlerhafteSlot0Sentinelprüfung(PLAYER_MAX_SKILLS-Schleife,if(!skillSlot)),OHNE
|
||
konkretenNachweisfürdiese2Bots. KeineLogsTriedtoaddskill762gefunden. Imkommenden
|
||
SchrittBereitstellung+Speicherung+Laufzeitdiagnosekontrollieren, nichtvoreiligallein
|
||
DBnullalsvollständigenBeweisfürjedenLaufzeitstatusdarstellen.
|
||
|
||
FürdieseTurnpräzisierungennochkeineC++/Lua/DBÄnderung,vomnormalensaveallabgesehen.
|
||
SourcebisaufdieseAnforderungsnotizsauber;keineBinaries/Config/Intentsverändert.
|
||
ServerPID247021,tmuxvcore-worldserver,Console/tmp/vcore-area-start-verified-20261029.log.
|
||
|
||
---
|
||
|
||
# WICHTIGSTER NEUER BEFUND: Freiflug scheitert an fehlendem Terrain-Fallback
|
||
|
||
Native `clientless flight probe 128 1751.49 -4389.67` (09:20CETca) ergab
|
||
valid0 ground0 ceiling0. DIREKT davor in aktuellemConsoleLog:
|
||
Map file /home/wow_admin/wow_cata_server/data/maps/7192840.map does not exist!
|
||
Karte719lautlokalerMapDBC=Hyjal,Parent1(Kalimdor). PhysischeBasiskachel
|
||
0012840.map sowie001_28_40.vmtile/001.vmtree sind vorhanden.
|
||
ClientlessFlightMgr::Sample(Zeile~166) benutztPhasingHandler::GetTerrainMapId
|
||
undverlangtTerrainMgr::ExistMapAndVMap(terrain,x,y) fürdiesesChildTerrain.
|
||
BeiFehlenreturn{} bevor eigentlicheHeight/CeilingChecks. Normales
|
||
TerrainInfo::GetGrid(281ff) lädtBasiskarteundnutztChildnurdann,wennesfürdiesenOrt
|
||
eineChildGridMapgibt;ansonstenbleibtBasiskarte. UnsereExtravorprüfungignoriert
|
||
diesenFallback undverhindertsoFlügeauchmit225Reiten/Lizenzen/Mounts.
|
||
NichtPhase169ändern(istStandard)! Nichtblind719Kachelnfälschen/kopieren oder
|
||
Kollisionsprüfungenabschalten. NötigwäreeineTerrainprüfung mitdemtatsächlich
|
||
verwendetenKachelfallback,danachweiterVMAP/Bounds/Clearanceprüfen.
|
||
ZweiterBefundbleibtGraph-AnschlussnurperMMAPundfinalerCrossMapFallbackungeeignet.
|
||
KeineCodeänderung/DBwrites/IntentänderungeninderDiagnose. NutzerTeilbefund
|
||
soebenkommentiert;jetztkurzabschließendzusammenfassen.
|
||
|
||
---
|
||
|
||
# Neueste Diagnose: Horde-Navigation/Fliegen, keine Änderungen umgesetzt
|
||
|
||
Nutzer bat Horde-Navigation anzusehen, höherlevelige solltenfliegenkönnen.
|
||
55Horde online,22ab60 nativStatusangefragt (09:18CET):19ActionCompleted/
|
||
PhaseOnSite,1Failed(Volakmar128,L80,Naxxramasgoal571),1Idle(Gruppeninteraktion),
|
||
1Moving. Allestanden gespeichertnochinOrgrimmar nachUmsiedlung, vieleerfüllen
|
||
legitimStadtintents. Logs zeigenvorallembeiLowlevels wiederholteMMAP/Graph-
|
||
Startprobleme anOrgrimmarsHöhenplattformen.
|
||
|
||
KonkreteCodeLücke: PlanAdaptiveRoute startetGraph nurüberlokalenMMAP-Weg zum
|
||
Startnode (inklDeferredPartial), keinFlugvomaktuellenStandortzumeinemStartnode.
|
||
FreieFlugalternativen beginnen erst INNERHALB desGraphs. TryFallbackFlight in
|
||
ClientlessActionExecutorMgr.cpp1890 prüft nurGetTravelGoal(finalesZiel) und
|
||
brichtbeiandererMap sofortab. Volakmar128,L80,hat225Reiten,90267+54197 und
|
||
HordeFlugmounts32243/44/45,willNaxxramas571,bleibtinOrgrimmar anStart-MMAP
|
||
hängen,keinFlightState. Grundrouten fehlen,aberFlugzukünftigzumgeeigneten
|
||
legalenAbreiseknoten muss dieseAnschlusslücke überbrücken. Keine pauschale
|
||
Flugsperre inOrgrimmar ausdiesenDatenbewiesen. NativeFlightSurfaceProbe128
|
||
bei1751.49,-4389.67 zuletztgesendet.
|
||
|
||
22HighLevels gespeichertmeist225; Aldren32undTalzul97habenKEINcharacter_skills
|
||
RIDING762Datensatz,obwohlLizenzen/Mountspells und geladeneProfileGroundMount1.
|
||
DBistgespeicherterZustand, liveSkillnochNICHTausgelesen,nichtalsdefinitiven
|
||
aktuellenSkillbugverkaufen. Reconcile SetSkill nurwennCanGroundMount true;
|
||
KontrollederLaufzeitvorbereitung/speicherung sinnvoll. StoredAldrenProfil
|
||
beginntfalseLegacy,weiterhintenmovementm überschreibtesaufaktuelltrue.
|
||
|
||
Artefakte:/tmp/vcore-horde-flight-guids.txt, ...flight-offset.txt,
|
||
/tmp/vcore-horde-flight-diagnosis.txt. NativeConsoleweiter
|
||
/tmp/vcore-area-start-verified-20261029.log,ServerPID247021. SourceWIP
|
||
unverändert,keineConfig/DBwrites/IntentsänderungenwährenddieserDiagnose;
|
||
nurreadonlyStatus/FlightSurfaceprobe. NutzerkurzerklärteTeilbefundekommentiert.
|
||
NochkeineImplementierungfürdieseLückeangefordert; aufDiagnoseabschließen.
|
||
|
||
---
|
||
|
||
# Neuester Auftrag:110AdventureBots in sichere Hauptstädte umgesiedelt
|
||
|
||
Nutzer bat alleBots nachSturmwind/Orgrimmar zu versetzen, um alteStrandungen zu
|
||
beseitigen. OhneCode/Build/Serverrestart umgesetzt: TestLoader kurz perConfig
|
||
Enabled0+reloadconfig+populationreload pausiert,110nativeClientlessLogouts,
|
||
DBOffline geprüft, nur explizitgenerierte readyBots inCharacterDB verlagert.
|
||
55Allianz aufnativeGameTeleStormwind954(Map0,Zone1519,-8833.07,622.778,93.9317),
|
||
55Horde aufOrgrimmar703(Map1,Zone1637,1569.97,-4397.41,16.0472).
|
||
Gespeicherte Taxi-/Transport-/Instanzfelder bereinigt, alteInstanceVisits und
|
||
BotCorpse/Geist-Auren8326/20584 entfernt, Health>=1, keineWiederbelebungsschwäche.
|
||
KeineProfile/Intents/Tagespläne geändert. LoaderEnabledOriginal1 und50/5/50/5
|
||
wiederhergestellt, normalesgestaffeltesEinloggen. ServerPID247021 bliebgleich.
|
||
Audit/engePositionsbackups /tmp/vcore-capital-relocation-20261029/,
|
||
Skript /tmp/vcore-capital-relocate.py, AblaufLog /tmp/vcore-capital-relocate.log.
|
||
State normal_loader_restored. NachSQL alle110fraktionsrichtiginHauptstädten,
|
||
0alteReisezustände. Livepositionsprobe26Area5148(Sturmwind),32Area1637(Orgrimmar)
|
||
beideerlaubt. NormaleTagespläne dürfen dieBots wiederlegalweiterreisenlassen.
|
||
AbschlussNativePopulation110/110,50/5/50/5,0pending,errorleer geprüft.
|
||
GMreloadconfig meldetErfolg nurGlobalGM, nichtConsole -> nichtdaraufwarten,
|
||
ConsoleFIFO viaanschließendenpopulationreload mitenabledStatus prüfen.
|
||
KeineandererenSpielerangefasst, keinCommit/Push. VorigeSource-WIP bleibtbewahrt.
|
||
|
||
---
|
||
|
||
# ABSCHLUSS: finaler Testserver geprüft,110Bots online
|
||
|
||
Gebietskatalog-Integration fertig gebaut/installiert. LetzterStart
|
||
/tmp/vcore-area-start-verified-20261029.log, PID247021, tmuxvcore-worldserver.
|
||
Ready-Prozess-Port8085 geprüft. NativePopulation110,50/5/50/5,0pending,errorleer.
|
||
FinalerTagesplanaudit2640Slots,keineleerenZiele,0Verstöße inMetadaten;
|
||
298Slots ohneexpliziteGebiets-ID werdennativüberKoordinatengeprüft.
|
||
FinaleLiveproben: Allianz26Tiefenbahn erlaubt,Horde32Sturmwindportal verboten,
|
||
Vashjir26verboten. KeinADVENTURE_DISABLED/Assert/SQLKollationsfehler imletztenStart.
|
||
Nachweise doc/clientless/checkpoints/2026-10-29-area-catalog/ inklfinal-server-smoke.log.
|
||
ZehnTestsbestanden. KeineweiterenArbeitenvorAbschlussnötig. Serverlaufenlassen.
|
||
NochkeinCommit/Push. AbschließendNutzermelden: Funktionenaktiv,Reloadkommando,
|
||
Build/Tests/110Botsgeprüft;Gameplayvisuellnichtabgenommen. AlteTaxi-Hänger und
|
||
kalte/großeDebug-Routen(mehrereSekunden)bleibengesonderteThemen.
|
||
|
||
---
|
||
|
||
# Aktuell29.10.2026: Gebietskatalog LAUFZEIT-INTEGRATION implementiert
|
||
|
||
Nutzerauftrag: Bots und Tagesplaner müssen Gebietskatalog verwenden; keine
|
||
Locations in gesperrten/zu hochstufigen Gebieten. Frühere Katalog-only-Notizen
|
||
unten sind HISTORISCH, nicht als aktuelles Arbeitsverbot verstehen!
|
||
|
||
Implementiert: AdventureAreaMgr + getestete AdventureAreaPolicy. Snapshots aus
|
||
WorldDB, Eltern-Fraktionsschnittmenge, MinLevel+Gap(default5), bekannte Bereiche,
|
||
unbekannte Freilandbereiche unter85 gesperrt, native Flugpräferenzen. Neue/alte
|
||
Tagespläne über Allowed/PickLocation/Generate prüfen und illegale Ziele persistent
|
||
ersetzen, Intents/Stunden bewahren. AreaRevision bewirkt Revalidierung nachReload.
|
||
AdventureLocationMgr bezieht Levelgewichte nur noch aus neuem Katalog.
|
||
|
||
Node-ACL vcore_clientless_node_access für alle Nodearten, explizit4Allianz-Nodes
|
||
(Tiefenbahn, SW-Ruttheran-Schiff). Automatische Taximasken aus Creature-Spawn-NPCflag
|
||
COALESCE(c.npcflag,t.npcflag) und NPC-Fraktionsvorlagen (auch neutral).314TaxiNodes
|
||
zugeordnet,141ungeklärt und zu. Masken werden im Manager abgeleitet, nicht mit
|
||
manuellen Masken verwechselt. Optional flightmaster_spawn_id für konkreteBindung.
|
||
Tabellen-Kollation utf8mb4_unicode_ci passend zu bestehenden Nodekeys!
|
||
|
||
TravelGraph alle Suchpfade, virtuelle Brücken/Ein-/Ausstiege, cachedMMAPgeometry,
|
||
Executor vorRouteStep und realenRecordedSplines, TravelMgr Diagnose+Ausführung,
|
||
Taxi-DBC-Strecken, FreeFlight Planung+Segmente und nativeTransportStarts prüfen.
|
||
Gruppenreise: JourneyFollow Portalziel ebenfalls prüfen, da dieser Pfad native
|
||
Portale direkt verwendet. Neues Kommando `clientless adventure area <guid> [node]`.
|
||
`clientless adventure reload` lädt Snapshot+Locations+Graph, ungültigeArea-Daten
|
||
lassen bisherigenSnapshot bestehen. KeinNeubuild/Restart für spätereDatenedits.
|
||
|
||
GeometrieCache zwischen Fraktionen/Levels und nativeTerrainSwaps geteilt,
|
||
Berechtigungen bleiben live. Terrainsharedptrs halten, sonst massivesRemoteMap-
|
||
Neuladen. Cachegröße begrenzt mit teilweiserEviction. DijkstraFlight-Vorprüfung
|
||
über sichereKostenuntergrenze40+0.4*Distanz vermeidet unnötigeTerrainproben,
|
||
keine Kandidaten/Graphverbindungen einfach abgeschnitten.
|
||
|
||
Quellcode erfolgreichgebaut mit bestehenderDebugCMake, letztesBuild
|
||
/tmp/vcore-area-build-verified.log, Installation /tmp/vcore-area-install-verified.log.
|
||
ZehnTestprogramme bestanden, nativeLivechecks einschließlichbeiderNeutralitäts-
|
||
seiten, Vashjir, HordeTram/Schiff, neutralerCapitalPortalnode, DalaranLevel60,
|
||
NodeEdit+Reload+Restore und absichtlichungültigerSnapshot+Restore bestanden.
|
||
Alle110Bots imvorigenLaufgeladen:2640Planslots,0leereZiele,0Metadatenverstöße;
|
||
298Slots ohneGebietsmetadaten werden imProduktionsplaner überKoordinatengeprüft.
|
||
Nachweise doc/clientless/checkpoints/2026-10-29-area-catalog/; Doku area-catalog.md.
|
||
|
||
LETZTER TESTSERVERSTART: neuer frischer tmux vcore-worldserver mit
|
||
/tmp/vcore-area-start-verified-20261029.log (nach finalesPortalFollow-Update).
|
||
BeiWiederaufnahme zuerstReady+Prozess+Port8085 und Loaderstatus prüfen!
|
||
Worldserver/Bots laufenlassen. Zieleweiter50/5/50/5. KeineProduktion, keinPush,
|
||
keinCommit. Branch feature/clientless-player-core Basis0173a434f4, erwarteteWIP
|
||
Katalogdaten+Integration+Tests+Docs. SQL02 und03 explizit gitadd-f, da*.sqlignoriert.
|
||
|
||
Grenzen: keinevisuelleAbnahme, gespeicherteTaxi-Hänger/gestrandeteBots nicht
|
||
teleportiert/behoben. Bewegungssampling40yards statt mathematischerGrenzbeweis.
|
||
Kalte/großeDebug-Routen teilsmehrereSekunden, weiterePerformancearbeitbleibt.
|
||
KnownMaps719/736 fehlenweiter. EinfrüherTestshutdownmitzuvordeaktiviertemKatalog
|
||
hatteGetMapAssertnachHalting; nachfolgendeShutdownsnichtreproduziert, Rohlog
|
||
/tmp/vcore-area-start-20261029.log. SQLKollationsfehlerseitdembehoben.
|
||
|
||
Nächste Schritte für Abschluss dieserTurnarbeit: finalenServerstartverifizieren,
|
||
Nativeprobe26/32undPopulationstatusnochmalsprüfen, finalePID/Loaderstandhier
|
||
kurzergänzen. KeineweiterenCodeänderungennötig. DannkurzerdeutscherAbschlussbericht
|
||
mitFeatures, Build/10Tests/Livechecks, Reloadkommando und verbleibendenGrenzen.
|
||
|
||
---
|
||
|
||
# Aktuell29.10.2026: Gebietskatalog angelegt, Integration steht AUS
|
||
|
||
Nachtbeobachtung beendet07:00CET; automatischer Wächter lief trotz Turnunterbrechung
|
||
bis Deadline. Nutzer erhielt Bericht nach07:27. Server lief ohne Neustart,
|
||
110Bots. Befunde Taxi-Hänger, Fraktionsrouten, Todesschleifen, Navigation.
|
||
Vorheriger Nachtauftrag unten ist abgeschlossen, NICHT erneut ausführen.
|
||
|
||
Neuester Nutzerauftrag zieht vor jeder weiteren Implementierung einen ohne
|
||
Neukompilierung/Installation bearbeitbaren Gebietskatalog vor. Dafür ausschließlich
|
||
Datenbasis angelegt, NOCH KEINE Runtime-Regeln oder C++-Änderungen!
|
||
WorldDB: vcore_adventure_area_catalog(3206AreaTable-Gebiete inkl2931Untergebiete),
|
||
vcore_adventure_map_catalog(207Karten inkl1fehlender nativer Map alsTyp255).
|
||
Migration sql/custom/world/2026_10_29_02_adventure_area_catalog.sql bereits auf TEST
|
||
angewandt; reproduzierbarer DBC-Exporter contrib/clientless/export_area_catalog.py.
|
||
Bestehende78Levelbereiche aus vcore_adventure_zone übernommen. Doku
|
||
doc/clientless/area-catalog.md erklärt Felder, SQL-Änderungen und offene Integration.
|
||
Erneutimport identisch, keine fehlenden Eltern/Karten, keine Zyklen, Vashjir-Chain
|
||
geprüft. Native Spieldaten/C++/laufender Server unverändert. Kein Build nötig,
|
||
kein Restart, kein Commit/Push. Bestehende SESSION-RESUME-WIP erhalten.
|
||
|
||
Vereinbarte spätere Integration: Gebiet einschließlich Vorfahren über Node über
|
||
Verbindung; Fraktionsmasken0=zu,1=Allianz,2=Horde,3=beide,NULL=erben. Kind/neutraler
|
||
Node darf Elternsperre nicht aufheben. Gebiete weit über Botlevel meiden auch bei
|
||
Transit; DefaultLevelGap5, max_level ist KEIN Verbot für höherstufige Heimkehrer.
|
||
Vashjir5146 komplett zu inkl4815/5144/5145. Startregionen/Hauptstädte fraktionsgebunden.
|
||
Scherbenwelt/Nordend/Cata-Flugpräferenz nur bei nativer Erlaubnis/Fähigkeit.
|
||
Karte530 enthält auch Startergebiete -> nicht pauschal Outland-Fluggebiet!
|
||
Alle Nodes müssen individuelle Fraktionsfreigabe erhalten können. Flugknoten
|
||
automatisch aus zugeordneten Flugmeister-NPC-Fraktionsvorlagen ableiten, neutrale
|
||
beiden erlauben, unklare nicht automatisch neutral. Tiefenbahn und Schiff
|
||
Sturmwind-Teldrassil für Horde sperren. Hauptstadtportale Ziel-Fraktion beachten.
|
||
Start/Ziel/Zwischenstationen, virtuelle Graphverbindungen, lokale Wege und Executor
|
||
absichern. Bot in gesperrtem Gebiet braucht sicheren Ausweg. Runtime-Katalog-
|
||
Reload erst in nächster Integration einbauen; bisheriger adventure reload wertet
|
||
neue Tabellen NICHT aus. Eine erstmalige Anbindung benötigt Build/Installation,
|
||
danach dürfen Katalogänderungen keinen Build/Restart brauchen.
|
||
|
||
---
|
||
|
||
# AKTIVER NACHTAUFTRAG: Bis29.10.2026 07:00CET beobachten und DANN berichten
|
||
|
||
Nutzer geht schlafen und bittet, Bots frei ihren Intents folgen zu lassen,
|
||
regelmäßig Logs auf Fehler/Auffälligkeiten zu prüfen und um07:00 mitteleuropäisch
|
||
Beobachtung zu beenden und Bericht zu geben. CET/Berlin+01:00 heute korrekt,
|
||
Deadline2026-10-29T07:00:00+01:00 (06:00UTC). NICHT frühzeitig mit Abschlussbericht
|
||
enden. Aktiven Turn bis Deadline betreuen, neue Benutzersteuerung berücksichtigen.
|
||
Worldserver/Bots nach07:00 NICHT stoppen, nur Beobachtung beenden.
|
||
|
||
Aktueller Commit0173a434f4, Branch feature/clientless-player-core, Quellcode sauber
|
||
zu Auftragsbeginn; nur diese Resume-Notiz geändert. KEINE Features/Fixes/Commits/
|
||
Deployments während Beobachtung. Keine Produktion, keine Subagents. Native Test-
|
||
Crash-Recovery ist gemäß bestehenden Serverregeln erlaubt, nicht bei Warnungen.
|
||
|
||
Worldserver PID214924, tmux vcore-worldserver, Installation server/debug/bin,
|
||
Console /tmp/vcore-performance-retry-start1.log.110Bots50/5/50/5 normaler Tagesplan,
|
||
Mapworker4. Gruppenfindungsmanipulation um01:00 abgelaufen und Helfer inaktiv.
|
||
NativeStatus-Befehle sind nur lesend. Fehlende Karten719/736 und Transportprobleme
|
||
(Lunna49, falsche Fraktionsroute Falaeriel54) schon VORHER bekannt, getrennt werten.
|
||
|
||
Persistenter Wächter gestartet in eigener tmux-Session
|
||
vcore-overnight-monitor-20261029. Skript
|
||
/tmp/vcore-overnight-20261029/monitor.py, Parameter --until2026-10-29T07:00:00+01:00
|
||
--out/tmp/vcore-overnight-20261029 --recover. NICHT doppelt starten oder State
|
||
überschreiben! Console /tmp/vcore-overnight-20261029/monitor-console.log.
|
||
Liest minütlich ab aktuellem Dateiende Server.log, DBErrors.log,
|
||
adventurebot-navigation.log (inkl.Rotation) und Console. Native Population alle5min,
|
||
alle15min Intent-/Transportstatus und gespeicherte110Botpositionen/Fertigkeiten
|
||
(nur gewählte Characterfelder, KEINE Credentials). CPU/RSS minütliche Deltas.
|
||
DB-Abfragenfehler werden nur protokolliert, kein Eingriff ins Spielverhalten.
|
||
Watch-Skript geprüft mit2Einzelzyklen, letzter01:51CET/110Charaktere/kein Fehler.
|
||
|
||
Dateien: status.json (kurz), state.json (alle Daten), events.jsonl (Auffälligkeiten),
|
||
characters.jsonl (15min-Snapshots), report.md (laufende Zusammenfassung, final um07).
|
||
Script zählt native Ereignisse und Warnungen getrennt. Fehlende Maps separat;
|
||
Transit>15min und wiederholtes gespeichertes Transguid>30min sind Kandidaten,
|
||
keine automatisch bestätigten Bugs. Server-/Nav-/DB-Fehler werden gesammelt,
|
||
CPC_PERF/SlowRoutes ebenfalls. Gespeicherte Positionen können90s alt sein.
|
||
|
||
Bei Prozessverlust: Wächter startet NUR exakt diese Testinstallation, höchstens3
|
||
Versuche je Recovery, jeweils frische Readiness/Portkontrolle, ca10s zwischen
|
||
Versuchen. Mehr als3Crash-Episoden/30min -> Recovery aus. Nicht bei Warnungen neu
|
||
starten! Prozess vorhanden aber keine CPC-/Populationantwort>10min -> Event
|
||
possible_hang; dann selbst diagnostizieren, nicht blind Neustart. Unbekannte
|
||
Prozessmengen werden nicht angerührt. Bei07 stoppt Watcher und schreibt Endbericht;
|
||
Server bleibt an. Falls der Turn unterbrochen wurde, vorhandene Dateien lesen,
|
||
bis07 weiter beobachten oder bei Wiederaufnahme nach07 Ergebnis berichten.
|
||
|
||
Nächste Schritte: status.json nach erstem Minutenzyklus prüfen, dann regelmäßig
|
||
(ca5min) selbst neue Events/Counter/Population/Performance auswerten; Tool-Waits
|
||
höchstens60s, sinnvoll clock.sleep60000 oder functions.wait yield<=60000 verwenden.
|
||
Nicht einfach zurückgeben, bevor07. Am Morgen aussagekräftige Befunde mit Uhrzeiten,
|
||
Crash-/Neustartzahl, Botzahl, Datenfehlern/Transport-Kandidaten/Leistung berichten;
|
||
keine visuellen Gameplay-Verifikationen behaupten. Rohbericht ggf. nach
|
||
Doc-Checkpoint kopieren, kein Commit ohne Nutzerauftrag.
|
||
|
||
Zusatz zur Nacht: Exakte kategorisierte Nav-Auswertung per
|
||
`python3 /tmp/vcore-overnight-20261029/audit-navigation.py`; inkrementell über
|
||
aktuelle/rotierte Navlogs, Timestampfilter01:51:59..07:00. Zustand navigation-audit.json.
|
||
Um07 unbedingt zuletzt ausführen: Hauptwächter normalisiert Timestamps nicht,
|
||
seine auf300begrenzten Warnsignaturen laufen früh über. Ereigniszähler/CPU/Population
|
||
und Warnkategorien bleiben korrekt, für Navgründe/Severity/Actors Audit verwenden!
|
||
Manuelle Notizen manual-observations.md.
|
||
Zusätzlicher rein lesender sample-actions.py (gleiches/tmp-Verzeichnis) sammelt
|
||
110native Aktionszustände und markiert lange Taxi-Legs ohne Complete zwischen
|
||
Stichproben. Erstes Sample02:33:59,18Taxi-Legs; nächste ca02:49, dann15min.
|
||
Dateien actions.jsonl, taxi-candidates.jsonl. Verdacht vor allem2301(608Map0->23Map1),
|
||
807(6Map0->213Map530), außerdemGarenden62auf2108(sameMap1). Siehe manuelle
|
||
Notizen; mögliche fehlende Teleport-ACKs nicht als bewiesen ausgeben. Nicht fixen! Stand02:50:110stabil, keine Neustarts,
|
||
Nav-ERROR bisher alles RECOVERY_FAILED; viele normale WARN/Retry-Pfadabbrüche.
|
||
2neue DBErrors sind fehlende creature_text für Stormwind Royal Guard42218,
|
||
keine SQL-Verbindungsfehler. Letzter Snapshot02:07 keine gespeicherten Passagiere.
|
||
Keine Eingriffe in Bot-/Serververhalten.
|
||
Neuste relevante Befunde: Darilwin127(Worgen27) inUnterstadt beiCaptainDonaldAdams60
|
||
in sehr schneller Tod/Reclaim-Schleife; RuhezielStormwindBench, solo. Details und
|
||
andere Betroffene in manual-observations.md, Zähler nicht blind als eindeutige
|
||
Todesanzahl werten. ZweiteAktionsprobe02:50:17Taxi-Legs seit02:33:59gleich, ohne
|
||
Complete in Console dazwischen. VieleMapwechsel2301/807/766/767, zusätzlich62sameMap2108.
|
||
NächsteActions-Probe ca03:05, dann15min nach letztem actions.jsonlZeitstempel.
|
||
110online/keineRecovery/CPUca25%main/RSS4.4GiB. Watch läuft unverändert bis07!
|
||
|
||
---
|
||
|
||
# Aktuell: Performance-Verbesserungen implementiert und mit110Bots gemessen
|
||
|
||
Nutzer beauftragte geringere Last/bessere Mehrkernnutzung im Hinblick auf spätere
|
||
Produktion. Branch feature/clientless-player-core, letzter Commit cac4142ec1.
|
||
Sämtliche vorherigen Arthoran/Worgen/PvP/nativer-LFG-Änderungen enthalten.
|
||
Dieser Stand wird auf ausdrücklichen Nutzerauftrag lokal committet; kein Push.
|
||
Doku doc/clientless/performance.md, Nachweise checkpoints/2026-10-29-performance/.
|
||
|
||
Aktuelle Installation: letzter erfolgreicher Build /tmp/vcore-performance-retry-build.log,
|
||
Install /tmp/vcore-performance-retry-install.log. Testserver PID214924 in tmux
|
||
vcore-worldserver, frischer Start /tmp/vcore-performance-retry-start1.log; aktuelle
|
||
ready-Meldung, Prozess und TCP8085 LISTEN bestätigt. Keine Produktion berührt.
|
||
Aktive Config MapUpdate.Threads=4 (vorher1), Network.Threads=1, Loader weiter
|
||
50 persistent+5 temporär pro Fraktion. ALLE110 online, pending0, error leer.
|
||
Gruppenfindungstest-Deadline01:00 abgelaufen; kein Setup-Helfer aktiv. Normale
|
||
persistente Tagespläne werden nach Neustart verfolgt, Test nicht heimlich verlängert.
|
||
|
||
Letzte /proc-Messung10.069s bei110Bots: Hauptthread26.2% eines logischen Kerns,
|
||
vier Mapworker38.6/37.6/38.1/38.5%. Vorherige Beobachtung95.1% Hauptthread,
|
||
9.9% einzelner Mapworker. Verschiedene laufende Situationen, KEIN deterministischer
|
||
Benchmark/keine garantierte Prozentverbesserung. CPU-Datei im Checkpoint.
|
||
Letztes30.011s CPC-Fenster110Bots: Actions7.762s, Controllers1.612s. Baseline
|
||
16Bots/31.923s: Actions24.381s, Controllers1.032s. Zeiten sind Wandzeiten,
|
||
keine CPU-Prozente. Debug-CMake unverändert -g OHNE Optimierung; Produktion
|
||
benötigt gesonderten optimierten Build/Lasttest, keine1,000Bot-Freigabe behaupten.
|
||
|
||
Hauptursache gemessen: Flugkostenbewertung im Graphen (21,456Calls,292.767ms
|
||
von355.109ms warmer Suche). Scoped Flight-Planning-Snapshot reduziert wiederholte
|
||
Config-/Profilabfragen auf einmal pro Suche; exakte binäre Gebietsschlüssel
|
||
statt float-Textformatierung. Native tatsächliche Start-/Lizenz-/Gebietsregeln
|
||
bleiben wirksam. Spätere ähnliche20k-Calls-Suchen34..37ms Flugbewertung, ca100ms
|
||
Gesamtsuche. Kalte Terrain-/Loginvorgänge können weiterhin Einzelspitzen erzeugen.
|
||
|
||
Weitere Änderungen: ClientlessGraphProbeCache erfolgreiche statische feste MMAP-
|
||
Verbindungen (Map/Instanz/Richtung/exakteKoordinaten), max32768, Graph-Reload leert;
|
||
max4096 feste Graphnachbarschaften als Würfel-Superset mit allen bisherigen
|
||
Radius/Sperrlisten/Wegeprüfungen. Nur innerhalb EINER Suche Startpfade teilen,
|
||
auch über Suchtiers; keine globalen Playerpfade/negativen/transienten Proben.
|
||
Reisefehlerbackoff2..30s mit Jitter, neuer Intent setzt Retry zurück, Zeitblock-
|
||
Deadline unverändert, Kampf und Benachrichtigungen nicht verzögert. Verhindert
|
||
beobachtete heiße Schleifen mit>50Fehlzielen innerhalb weniger Minuten.
|
||
CPC_PERF alle30s + CPC_ROUTE für Suchanfragen>=50ms bleiben als Diagnose.
|
||
|
||
Alle86 Clientless-Tests bestanden, /tmp/vcore-performance-retry-tests.log,
|
||
inklusive neuer Cache-/Retry-/Scoped-Planning-/Koordinaten-/Routenregressionen,
|
||
16parallel schreibenden Mapworker-Notifications und native Masterpfade. Gameplay-
|
||
Abnahme und produktionsnaher optimierter Lasttest bleiben getrennt offen.
|
||
Bot/Lua/Player-Manager bleiben Worldthread-eigen; native Mapjobs parallel, einzelne
|
||
Map weiterhin seriell. Kein blindes Parallelisieren geteilter Zustände.
|
||
|
||
---
|
||
|
||
# Performance-Fortschritt: Cache/Mapworker bereit, Vergleich noch offen
|
||
|
||
Interne Baseline-CPC_PERF bestätigt Actions als Engpass:16Bots/31.923s Fenster
|
||
24.381s Actions,1.032s Controllers,27ms Perception. Bei20Bots nur10Ticks/31.537s,
|
||
27.872s Actions. Bei59Bots12Ticks/32.301s,26.331s Actions. Baseline-Logs
|
||
/tmp/vcore-perf-baseline-start1.log und derzeitiges Server.log (vor Neustart sichern).
|
||
|
||
Implementiert: ClientlessGraphProbeCache.h, maximal32768 erfolgreiche statische
|
||
MMAP-Proben, genaue Floatbits/direktional/Map-/Instanzschlüssel. Keine Playerpfade,
|
||
Detour-Pointer, negativen/unvollständigen/transienten Ergebnisse speichern.
|
||
In PlanAdaptiveRoute nur zukünftige feste Graphpunkte. Aktuelle Einstiegswege
|
||
und alle ausführenden Wegprüfungen bleiben nativ. Reload leert Cache.
|
||
Zusätzlich maximal4096 Graph-Nachbarschaften nach Ausgangsknoten/Radius; Würfel-
|
||
Superset, ursprüngliche genaue Radius-/Sperrlisten-/Pfadregeln bleiben aktiv.
|
||
CPC_ROUTE-Trace für Suchanfragen>=50ms mit Gesamt-/Navzeit/Probezahl/Cachehits.
|
||
|
||
Cache-Unit, Produktionsplaner (kalte/warme identische Route, weniger Proben,
|
||
Sperrlisten und Cacheleerung), 16-Thread-Damage-Handoff erfolgreich. Social-Handoff
|
||
und Gruppenreise zielgerichtet laufen/Ergebnisse prüfen. Baseline-Build cache1
|
||
war erfolgreich; aktueller abschließender cache2-Build enthält zusätzliche
|
||
Routenzeiten: /tmp/vcore-performance-cache-build2.log, Session65518, vorher
|
||
pgrep ninja vor weiterem Build! Native Baseline-Server204663 vollständig beendet.
|
||
Testconfig MapUpdate.Threads=4 gesetzt (vorher1), Netzwerk unverändert1; nur
|
||
Testserver, Produktion unverändert. Noch NICHT installiert/neu gestartet.
|
||
|
||
Nächster Schritt: Build/Tests fertig prüfen, installieren, frisch starten,
|
||
Ready/Port/4Mapworker prüfen. CPC_PERF/CPC_ROUTE und CPU-Deltas nach Cache-Warmup
|
||
bei dokumentierter Botzahl vergleichen. Noch KEINE Verbesserung behaupten;
|
||
falls Navigation nicht dominant im CPC_ROUTE-Trace, weiteren Engpass messen.
|
||
Alle früheren WIP erhalten, kein Commit/Push, keine Subagents.
|
||
|
||
---
|
||
|
||
# Aktuell: Performance/Mehrkern-Optimierung in Arbeit
|
||
|
||
Nutzer beauftragt Verbesserung der Last/CPU-Verteilung für spätere Produktion.
|
||
Alle vorherigen uncommitteten Arthoran/Worgen/PvP/LFG-Änderungen bewahren.
|
||
Branch feature/clientless-player-core geprüft. Keine Subagents erlaubt; kein Push.
|
||
Baseline vor Änderungen PID201380: Hauptthread95.1% eines logischen Kerns,
|
||
Mapworker9.9%,12logische CPUs. MapUpdate.Threads=1,Network.Threads=1.
|
||
CMake Debug mit -g OHNE -O; Produktionslast dadurch nicht direkt ableitbar.
|
||
perf und gdb attach durch OS-Rechte gesperrt, sudo -n ebenfalls nicht verfügbar.
|
||
Keine OS-Rechte geändert. Stattdessen gezielte Laufzeitmessung eingeführt.
|
||
|
||
ClientlessPlayerMgr.cpp Update misst Travel/Perception/Transport/Flight/Actions/
|
||
Controllers inklusive Online-Initialisierung, protokolliert CPC_PERF alle30s
|
||
mit Fensterdauer, Tickzahl, Botzahl und langsamstem Einzelcontroller.
|
||
Build /tmp/vcore-performance-instrument-build.log erfolgreich und installiert.
|
||
Alter Server201380 vollständig beendet. Aktueller Baseline-Start läuft unter
|
||
tmux vcore-worldserver, /tmp/vcore-perf-baseline-start1.log. Readiness/Port und
|
||
erste CPC_PERF-Fenster jetzt prüfen; noch keine Optimierung/Mehrkern-Config geändert.
|
||
Loader bleibt50/5/50/5;110 gespeicherte Bots. Frühere Gruppenfindung bis01:00,
|
||
Helfer war zuletzt nicht mehr aktiv; Vergleichslast sorgfältig dokumentieren.
|
||
|
||
Nächste Schritte: Messfenster auswerten, gezielt teuerste Arbeit verbessern,
|
||
sichere Mapworker-Konfiguration prüfen. Bot/Lua/Player-Manager nicht blind parallel
|
||
aufrufen! Welt-/Mapthread-Grenzen beibehalten. TravelGraph-Routing enthält sehr
|
||
teure zukünftige Punkt-zu-Punkt-MMAP-Brücken und ForwardEntry-Probes; Cache bisher
|
||
nur pro einzelner Suchanfrage (validBridgeLengths/rejectedBridges). Falls Messung
|
||
Actions bestätigt, positiver geometrischer Cache über Anfragen mit Graph-Reload-
|
||
Invalidierung/Instanzschlüssel sinnvoll; keine transienten negativen Ergebnisse
|
||
unbegrenzt speichern. Noch NICHT implementiert. Nach Änderungen sinnvoll testen,
|
||
bauen/installieren/neustarten und Last mit Botzahl/Fenster/Debug-Einschränkung
|
||
vergleichen. Keine ungemessenen Prozentverbesserungen behaupten.
|
||
|
||
---
|
||
|
||
# Aktuell: Korrektur auf nativen SucheNachGruppe-Kanal
|
||
|
||
Nutzer korrigiert: SucheNachGruppe ist eingebauter automatisch betretenener
|
||
Hauptstadtkanal; vorheriger /join-Hinweis und Ersatzkanal waren falsch.
|
||
Lokale deDE ChatChannels.dbc bestätigt ID26, NameSucheNachGruppe, Flags262201.
|
||
AdventureGroupMgr.Speak jetzt Lookup26 + native Zonenberechtigung und
|
||
GetJoinChannel(entry->ID,"",zone), tatsächlichen Beitritt vor Say überprüfen.
|
||
Kein benutzerdefinierter reservierter Kanal mehr. Bestehende Limits erhalten.
|
||
Aktive Testconfig Channel.RestrictedLfg von1 auf0 gesetzt und reload config
|
||
bereits ausgeführt; bisheriger NativeCode wies gruppierte normale Accounts
|
||
beim LFG-Beitritt ab (GM/RBAC-Ausnahmen beachten). Keine Änderung allgemeiner
|
||
Player-/Client-Joinlogik. Clientanzeige nach Stadtwechsel/Relog noch abnehmen.
|
||
Doku worgen-recruitment.md korrigiert, frühere Customkanal-Angaben historisch.
|
||
|
||
Neuer echter Speak-Adaptertest test_adventure_native_lfg.py besteht: ID26,
|
||
Zonenberechtigung, Joinbestätigung, Cooldown. test_adventure_groups.py ebenfalls
|
||
bestanden. Abschließender Build2 /tmp/vcore-native-lfg-build2.log erfolgreich und installiert.
|
||
Vorheriger Testworldserver197361 vollständig beendet. Neuer Server PID201380,
|
||
/tmp/vcore-native-lfg-start1.log; frische ready-Meldung in aktuellem Server.log,
|
||
Port8085 LISTEN, Prozess stabil bestätigt. Config RestrictedLfg=0 bestätigt.
|
||
Gruppenfindungs-Helfer mit vorhandener01:00 Deadline wieder gestartet, Log
|
||
/tmp/vcore-groupfinding-native-lfg.log; Arthoran26 bereits vorbereitet.
|
||
Clientanzeige/echter Nachrichtenempfang noch nicht visuell abgenommen. Kein
|
||
Commit/Push; alle vorigen Arthoran/Worgen/PvP-WIP erhalten. Branch geprüft.
|
||
|
||
---
|
||
|
||
# Aktuell: Worgen, aktive Gruppenfindung und PvP implementiert
|
||
|
||
Nutzer beauftragte Worgengestalten/Reittiere, Vorbereitungs-Mikroaktionen,
|
||
Kapital-Suchchat und aktive Spielereinladungen mit vorheriger Zielinfo sowie
|
||
permanentes freiwilliges PvP. Schiffspositionen ausdrücklich unverändert lassen.
|
||
Vorherige uncommittete Arthoran-Änderungen vollständig erhalten. Kein Commit/Push.
|
||
Branch feature/clientless-player-core, letzter Commit cac4142ec1.
|
||
Doku doc/clientless/worgen-recruitment.md.
|
||
|
||
ClientlessLuaEngine.UpdateWorldPresence pflegt native PvP-Wunsch-/Playerflags,
|
||
Worgen nach Intent/Kampf/Instanz und zufälliger ruhiger Ankunft, sichere verzögerte
|
||
Wechsel mit5s Retry, Zustand bei Logout gelöscht. PrepareGroundMount verwendet
|
||
native Wilde Hatz87840 bei Worgengestalt, Pferd2404/Zauber458 in Menschengestalt;
|
||
Dismount entfernt Aura. Neue generierte Worgenprofile Pferde statt Volkspferde;
|
||
alte leere Mount-Dictionaries bekommen funktionierenden Lauf-/Pferdefallback.
|
||
|
||
Gruppenfindung beendet nicht länger Mikroaktionen vorzeitig; zusätzliche SQL-
|
||
Migration2026_10_29_01_adventure_group_preparation.sql bereits in Test-WorldDB
|
||
angewendet (SQL-Pfad ignoriert, per git add -N -f zur Nachverfolgung aufgenommen).
|
||
Vorbereitung/Suchwege lokal mit18Y Pathbudget, auch innen. GroupMgr announciert
|
||
nächsten Intent + tatsächliches Ziel im vorhandenen sucheNachGruppe-Kanal,
|
||
max1 Nachricht/15s populationsweit und3..5min pro Werber. Spieler müssen Kanal
|
||
beitreten. Nahe passende Menschen werden mit vorherigem Whisper eingeladen;
|
||
10min Cooldown pro Mensch populationsweit. Native Gruppe/Einladung/Kapazität,
|
||
Fraktion/Sicht/AFK/Kampf/Reiseschutz und bisherige Spielerführung beibehalten.
|
||
|
||
Build4 /tmp/vcore-worgen-recruitment-build4.log erfolgreich, installiert;
|
||
Testserver nach vollständigem Stopp frisch gestartet. PID197361, tmux
|
||
vcore-worldserver, /tmp/vcore-worgen-recruitment-start1.log. Frische ready-Meldung,
|
||
Port8085 LISTEN und Prozess stabil bestätigt. Loader aktiv50/5/50/5;110 gespeicherte
|
||
Bots vorhanden, Online-Aufbau läuft. Native gespeicherte PvP-Wunschflags bei
|
||
Arthoran26/Aelion29/Zanzan30/Lenara31 jeweils1. Worgen31/38 Pferd458+ZweiGestalten68996
|
||
in Spellbook bestätigt; native Script-Zuordnung87840/68996 überprüft.
|
||
|
||
Regression /tmp/vcore-worgen-recruitment-tests.log:82/83 erfolgreich, einzig alter
|
||
intent_state-Adapter fehlte neuer Lua-Ankunftsaufruf. Adapter ergänzt, Einzeltest
|
||
anschließend bestanden. Neues world_presence und erweiterte groups/leisure Tests
|
||
anschließend bestanden, einschließlich begrenzter Innenraum-Suchwege, menschlicher
|
||
Einladung/Zieltext/Abklingzeit, Gestalt in Kampf/Mischinstanzen und Mount-Aura-Cleanup.
|
||
Keine visuelle Abnahme von Chat/Morph/Einladung behaupten; native Kanal-/Micro-
|
||
Logs waren in erster Ramp-up-Stichprobe noch nicht aufgetreten (Bots reisen).
|
||
|
||
Vorherige Gruppenfindungs-Deadline00:00 war abgelaufen. Für fortgesetzten Test nach
|
||
Neustart gemeinsame Deadline auf01:00 Europe/Berlin (1793232000) gesetzt. Helfer
|
||
/tmp/vcore-groupfinding-setup.py läuft weiter, Log /tmp/vcore-groupfinding-worgen.log,
|
||
Manifest /tmp/vcore-groupfinding-test.json. Neue online Bots automatisch vorbereiten,
|
||
bei110 online stoppt Helfer; DB-Transienten werden erneut versucht. Nicht parallel
|
||
starten! Früheres Manifest /tmp/vcore-groupfinding-test-first-block.json gesichert.
|
||
Native performative Instanzaufenthalte können sichere Übergabe noch verzögern.
|
||
Kein Push/Commit beauftragt. Gameplay-Tankverhalten/Schiffe bleiben gesondert offen.
|
||
|
||
---
|
||
|
||
# Aktuell: Arthoran in normale persistente Verwaltung übernommen
|
||
|
||
Auftrag: Arthoran normaler AdventureBot, Krieger60, Gruppenrolle Tank,
|
||
Tavernen/Geselligkeit stärker gewichten als Abenteuer, keinem Kampf ausweichen.
|
||
Branch feature/clientless-player-core; Ausgangscommit cac4142ec1. Bereits
|
||
vorhandene Änderung dieses Dokuments gehört zum Lasttest und wurde bewahrt.
|
||
|
||
arthoran.lua jetzt ProfileVersion2, Level60/Class1, SchutzSpec2/Tank, SoloArms0,
|
||
Tagesplan aktiv, Elwynn/Sturmwind Heimat, verstärkte Tavernen-/Sozialgewichte,
|
||
Aggression1/DangerTolerance1, behavior.allow_retreat=false. Neue optionale
|
||
AllowRetreat-Eigenschaft (Defaulttrue) beendet Flucht bei ausdrücklicher Ablehnung;
|
||
Gruppenflucht weiterhin aus. Normale CPC-Infrastruktur unverändert.
|
||
Generator Reconcile/ProtectedEquipment/PrepareCombat und Population.Online lassen
|
||
vollständige v2-Dateiprofile wie generierte Profile verwalten; Legacy-Profile
|
||
bleiben unverändert. Arthoran26 explizit in CharacterDB-Registry übernommen,
|
||
persistent/ready/warrior/seed26, eigener Lua-Profiltext ebenfalls gesichert.
|
||
Kein neuer Charakter, keine Level-/Klassenumwandlung. Backup des Zustands/Inventars
|
||
vorher /tmp/vcore-arthoran-before-adoption.tsv. 26 zählt zur Allianz-Persistentquote.
|
||
|
||
PvP-Frage geprüft: kein erzwungenes PvP in Adventure-Lifecycle; zuletzt0/96
|
||
Registry-Bots CHARACTER_FLAG_PVP_DESIRED gesetzt, ebenso Arthoran nicht. Native
|
||
Kampf-/Gebietsflagging bleibt. Globale PvP-Einstellung NICHT verändert.
|
||
|
||
Build /tmp/vcore-arthoran-managed-build.log erfolgreich und installiert. Betroffene
|
||
Tests combat_reactions (zusätzlich ausdrückliches Fluchtverbot), population
|
||
(zusätzlich benanntes v2-Profil vs Legacy/unvollständig), combat_preparation,
|
||
profile_selection, profession_profile erfolgreich. Bisheriger Server183811
|
||
vollständig beendet; Neustart /tmp/vcore-arthoran-managed-start1.log.
|
||
Startbereitschaft bestätigt (frische ready-Meldung, PID191926, Port8085 LISTEN).
|
||
Arthoran26 online/persistent/ready, Level60/Class1, SoloArms-Talentbaum746,
|
||
103 Zauber,14 gelernte Talentzauber, Zweihandwaffe31134. Tankrolle/SchutzSpec2
|
||
im Profil; tatsächlicher Gruppen-Tankwechsel noch nicht im Spiel abgenommen.
|
||
Erste Reconcile-Prüfung scheiterte am alten Mining-Lehrzauber ohne Fertigkeit.
|
||
26 nativ ausgeloggt, ausschließlich fehlende Skills186/164 mit375/375 im Offline-
|
||
Zustand ergänzt, nativ neu eingeloggt; danach Reconcile ohne neue Fehlermeldung.
|
||
Mining nativ auf450 erhöht, Blacksmith375; bestehende Nebenskills erhalten.
|
||
Gruppenfindung für26 erneut bis00:00 angefordert; sichere Übergabe aus Social
|
||
kann noch laufen. Kein Gameplay-Tanktest behaupten.
|
||
|
||
Gruppenfindungs-Setup hatte wegen temporärem DB-TLS-Reset angehalten. Native
|
||
DB-Query-Retry ergänzt, nach Neustart Manifest prepared zurückgesetzt und Setup
|
||
wieder gestartet: /tmp/vcore-groupfinding-resume.log; ursprüngliche Deadline
|
||
00:00 beibehalten. Laufenden Setup-Prozess nicht doppelt starten! Loader aktiv
|
||
50/5/50/5; keine anderen Nutzercharaktere übernommen. Kein Commit/Push beauftragt.
|
||
|
||
---
|
||
|
||
# Aktiver Test: Gruppenfindung für Lasttestpopulation
|
||
|
||
Nutzer fordert alle Bots zunächst in Gruppenfindung, danach Instanz/Raid;
|
||
keine C++-Änderung. Vorhandenes natives `clientless adventure prepare` verwendet,
|
||
keine Lua-/Profiländerung nötig. Aufruf pro online Bot: prepare <guid> <next>
|
||
<meeting> <seconds>. Allianz poi_guard_22 (Sturmwind), Horde poi_guard_179
|
||
(Orgrimmar), Level>=60 raid, darunter instance. Gemeinsame Deadline nächste
|
||
volle Stunde: 2026-10-29 00:00 Europe/Berlin (epoch1793228400), danach1h Folgeintent.
|
||
Bestehende Kampf-/Tod-/Reiseübergaben bleiben aktiv. Test überschreibt den
|
||
aktiven Ablauf (schedule=0), gespeicherte normale Tagespläne/Profilwerte bleiben
|
||
erhalten. Nach Test mit `clientless adventure schedule <guid> on` zurückstellen.
|
||
|
||
Setup /tmp/vcore-groupfinding-setup.py, Log /tmp/vcore-groupfinding-setup.log,
|
||
Manifest /tmp/vcore-groupfinding-test.json. Pollt neue online generierte Bots
|
||
alle10s bis mindestens110 online, höchstens30min bzw. vor Deadline. Nicht doppelt
|
||
starten oder Manifest überschreiben. Bisher80 native prepare-Erfolgsbestätigungen; Aelion29, Lenara31 und Karggan35
|
||
melden groupformation + next=raid. Zuletzt80 online (35/5/35/5),
|
||
Loader noch busy beim weiteren Erzeugen, kein Loaderfehler. Setup läuft weiter;
|
||
110er Abschluss noch nicht bestätigt. Finales Manifest/Bestätigungen prüfen. Kein Push/Commit beauftragt.
|
||
|
||
---
|
||
|
||
# Aktuell: Gemeinsame Gruppenreisen implementiert
|
||
|
||
Auftrag: Spieler- und Botgruppen mit sicheren Formationen, Reittieren, freiem
|
||
Flug, nativen Taxis/Portalen und aufgezeichneten Verkehrsmitteln reisen lassen.
|
||
Branch feature/clientless-player-core; Ausgangscommit a758239da9.
|
||
Dieser Stand wird auf ausdrücklichen Nutzerauftrag lokal committet; kein Push.
|
||
Doku: doc/clientless/group-travel.md.
|
||
|
||
AdventureGroupTravelMgr/Policy übernimmt lokale Gruppenverfolgung, sichere
|
||
Bodenpfade, stabile Formationsplätze, begrenzte Straßenabschnitte, Flugverfolgung
|
||
und Übergangsqueues. >500Yards startet getrennte 10-Minuten-Uhr; bekannte Reisen
|
||
und fortschreitendes Aufholen sind begrenzt geschützt. Reine Botgruppen behalten
|
||
ihre gemeinsamen Graph-/Flugrouten. Native Transportverluste führen zum erfassten
|
||
Einstieg zurück, zuerst per Pfad, bei Scheitern gezielt per Teleport. Keine
|
||
allgemeinen Teleports zum Anführer. Generic CPC verwendet optionale owner-Callbacks,
|
||
bleibt unabhängig von AdventureBots. DungeonBots unverändert.
|
||
|
||
Build6 erfolgreich: /tmp/vcore-group-travel-build6.log. Alle82 Tests erfolgreich:
|
||
/tmp/vcore-group-travel-tests2.log. Nach letzten Änderungen zusätzlich Gruppenreise,
|
||
Straßenfortsetzung und bewegter Flug erneut erfolgreich getestet. Installation
|
||
mit bestehender CMake-Konfiguration erfolgreich; vorheriger Server vollständig
|
||
beendet. Neuer Start läuft: /tmp/vcore-group-travel-start1.log, PID183811,
|
||
tmux vcore-worldserver. Startbereitschaft bestätigt: frische ready-Meldung, Prozess stabil, Port8085
|
||
LISTEN. Loader24 online,10/2/10/2, pending0, error leer.
|
||
Aktueller Lasttestauftrag: Loader aktiv mit50 persistent+5 temporär je Fraktion
|
||
(Soll110). Aktive worldserver.conf angepasst und reload config sowie
|
||
clientless population reload ausgeführt; Zielwerte50/5/50/5 bestätigt.
|
||
Population wird schrittweise aufgefüllt; frühere24er Angaben sind historisch.
|
||
|
||
Native Spielerreisen und visuelle Formation sind noch nicht im Spiel abgenommen.
|
||
Unbekannte/scriptgesteuerte Portale oder fehlende Serviceaufzeichnungen werden
|
||
nicht erraten; Bots warten bzw. suchen vorhandene Graphwege. Keine Behauptung,
|
||
dass Adaptertests Gameplay-Abnahme ersetzen. Kein Push.
|
||
|
||
---
|
||
|
||
# Aktuell: Klassen-/Rollen-Kampf und Spieler-Instanzmodus implementiert
|
||
|
||
Nutzer autorisierte die gemeinsam besprochene Umsetzung. Ausgangsstand sauber
|
||
bei d3273c677e auf feature/clientless-player-core. Dieser Implementierungsstand wird auf ausdrücklichen Nutzerauftrag lokal
|
||
committet; kein Push. Doku: doc/clientless/class-combat.md.
|
||
|
||
Neue AdventureRotationPolicy/TalentPolicy und AdventureEncounterMgr.28 feste
|
||
Cataclysm-PvE-Talentvorlagen (27 Spezialisierungen plus separates Bär/Katze) gegen
|
||
lokale4.3.4-DBC abgeglichen; alle Punktbudgets1..41 testbar. Solo-Spec im neuen
|
||
Lua-Profil, alte Profile deterministisch aus gespeichertem Seed. Alle Klassen
|
||
mit gemeinsamen Prioritäten und nativen Casts; native Ressourcen/Procs/Combo/
|
||
HolyPower, Cata-Spezialisierungen, Heiler/Tanks/Damage und DungeonBot-Unterstützung.
|
||
Gruppenwechsel schaltet Skillung/Ausrüstung sicher um, nie im Kampf/Flug/Fallen.
|
||
Alternativausrüstung geschützt/wiederverwendet. Level85 episch ilvl>=359,
|
||
Furor vor31 Talentpunkten Einhand; Frost-DK zwei Einhandwaffen/Unholy Presence.
|
||
Native Gifte/Schamanenimbues, Begleiter und Rollenunterstützung.
|
||
|
||
Spielergruppen erhalten echten Instanzmodus mit ausgesetzter Planausführung,
|
||
nativen Portalwegen, allgemeinem DynamicObject-Flächenausweichen und C++-Hooks
|
||
für spätere Instanz-/Boss-Skripte. Alte performative Visits werden ausdrücklich
|
||
beim echten Eintritt ohne künstlichen Ausgang/Verwundung beendet. Reine Botgruppen
|
||
bleiben performativ. Tote warten auf Wiederbelebung, nach Wipe Eingangsrückweg
|
||
mit Teleport bei fehlendem/gescheitertem Weg, malusfreie Wiederbelebung, Sammeln,
|
||
Rückkehr/Todespunkt bzw. lebenden Spieler priorisieren. Kick verlässt Instanz
|
||
sicher und nimmt Solo-Spec/Tagesplan wieder auf. Keine Boss-Skripte eingeführt.
|
||
|
||
Native Integration deckte CORE-Bug auf: Hunter Lock and Load56342 leert Effect2,
|
||
SpellValue berechnete trotzdem diesen parentlosen Default-Effekt. Scaling war
|
||
zudem uninitialisiert. Crash untergdb reproduziert; ROOTFIX jetzt SpellInfo.h
|
||
Scaling{} und Spell.cpp IsEffect-Gate. Regression test_empty_spell_effect.py.
|
||
Erste zwei Starts scheiterten daran, dritter korrigierter Start läuft stabil.
|
||
Alter vorheriger Server PID139425 zeigte außerdem vorhandenen Shutdown-Segfault.
|
||
|
||
80/80 automatisierte Tests erfolgreich: /tmp/vcore-role-tests-recovery.log.
|
||
Danach letzte gezielte Klassen-/Talent-/Ausrüstungs-/Empty-Effect-Tests erfolgreich.
|
||
Vollständiger1046-Schritt-Build /tmp/vcore-role-build-recovery.log und finaler
|
||
9-Schritt-Build /tmp/vcore-role-build-final-fixed.log erfolgreich, installiert
|
||
/tmp/vcore-role-install-fixed.log. Testserver LIVE PID167319, tmux
|
||
vcore-worldserver, Console /tmp/vcore-class-combat-20261028-start3.log.
|
||
Frisches ready, fortlaufender Prozess und Port8085 geprüft. Loader unverändert
|
||
AKTIV10 persistent+2 temporär je Fraktion, alle24 online/pending0/error leer.
|
||
NICHT auf historische deaktivierte Defaults zurücksetzen.
|
||
|
||
Native Hunter44 gab einmal initial unvollständige Talentvorbereitung aus,
|
||
automatisch korrigiert: gespeicherter Survival-Baum809/28 Punkte bei Level63
|
||
passt zur nativen DBC. Vorhandene Missing-map719 und Into-the-Wilderness84729
|
||
misc9-Warnungen bleiben, kein behobenes vollständiges Terrain/System versprechen.
|
||
Inventarhashes von menschlichem Allitester21 und Arthoran26 unverändert.
|
||
Belege: doc/clientless/checkpoints/2026-10-28-class-combat/.
|
||
|
||
Noch abnehmen: tatsächliche Tank-/Heiler-/DD-Kämpfe mit Spielern, DungeonBot-
|
||
Zusammenspiel und Wipe/Portalwege in der Spielwelt. Automatisierte Adaptertests
|
||
sind KEINE Ingame-Abnahme. Bossmechaniken jenseits generischer Bodenflächen
|
||
werden später pro Instanz ergänzt. Kein laufender Build.
|
||
|
||
Nächster besprochener, NOCH NICHT implementierter Schritt: gemeinsame Gruppenreise
|
||
für Spieler-/Botführer, getrennte Formationsplätze, sichere Boden-/Flugverfolgung,
|
||
Bodenreittiere/Taxi/Schiffe/Tiefenbahn/Portale. Im Stand kleine Formation, unterwegs
|
||
Kolonne, mehrreihig nur bei geprüftem Platz; Engstellen einreihig. Kein gültiger
|
||
Pfad -> stehenbleiben/wiederprüfen, keine Klippensprünge. >500Yards über10Minuten
|
||
führt unter bisherigen Austrittsschutzregeln zum Verlassen; bekannte Übergänge,
|
||
Nachreisen und Transport-Recovery pausieren den Abstandszähler. Nicht flugfähige
|
||
Bots folgen nur zu sicheren erreichbaren Bodenpunkten bei begrenzter Höhe.
|
||
Transportverlust -> letzter sicherer Einstiegsknoten, zuerst sicherer Weg, bei
|
||
Scheitern gezielter Rücksetzteleport, nächste Fahrt abwarten. Nutzer bat jetzt
|
||
zuerst um Commit der vorherigen Klassen-/Rollenänderungen.
|
||
|
||
---
|
||
|
||
# Aktuell: Loader auf Nutzerauftrag für24 Bots aktiviert
|
||
|
||
Nutzer hat ausdrücklich aktive Testpopulation festgelegt: Allianz10 persistent
|
||
+2 temporär, Horde10 persistent+2 temporär. In aktiver Testserverkonfiguration
|
||
server/debug/etc/worldserver.conf gesetzt, Loader.Enabled1. Native reload config
|
||
und clientless population reload ausgeführt, kein Neustart/Build nötig.
|
||
Abschließend nativ bestätigt: alle vier Pools online10/2/10/2, pending0,
|
||
manager24, busy0, error leer. PID139425 weiterhin aktiv, Port8085 lauscht.
|
||
16 fehlende persistente Bots wurden schrittweise erzeugt/angemeldet;
|
||
bestehende temporäre Bots zählen mit.25 fertige Registry-Bots, davon24 online,
|
||
ein weiterer Allianz-Temp offline. Levelbereich1..85, Rotation15%/Mindestalter24h
|
||
und restliche Einstellungen unverändert. Loader AKTIV LASSEN, NICHT auf die
|
||
in den historischen Checkpoints beschriebenen deaktivierten Defaults setzen.
|
||
Keine weiteren Codeänderungen/Commits/Pushes für diese Konfigurationsaufgabe.
|
||
|
||
---
|
||
|
||
# Aktuell: Profile, Tagesplaner, Botmanager und Loader abgeschlossen
|
||
|
||
Nutzer beauftragte Umsetzung nach bestätigter Planung. Branch
|
||
feature/clientless-player-core war sauber. Änderungen noch NICHT committet;
|
||
kein Push. Vollständige Doku: doc/clientless/population.md.
|
||
|
||
Neue AdventurePopulationMgr/Policy mit vier unabhängigen Sollzahlen:
|
||
Allianz/Horde jeweils persistent/temporär. Normale World-Updates statt
|
||
Startup-Warten; verzögerte einzelne Anmeldungen, asynchrone Snapshots,
|
||
SRP6-Accountanlage, generischer Factory-Preflight und atomischer Save ohne
|
||
Future-Warten im Loader. Native Vorbereitung bleibt World-Thread; vorhandene
|
||
native Login-/Profil-/Katalogpfade enthalten weiterhin synchrone Reads.
|
||
Zufällige temporäre Rotation vor Login, Mindestalter und Chance konfigurierbar;
|
||
pro Kandidat einmal pro Prozess geprüft, keine erzwungene Online-Abmeldung.
|
||
Erst Ersatz speichern, dann Journal, nativ alten Bot löschen, World-Plan
|
||
bereinigen, zuletzt Profil/Supply-/Instanzstate/Journal. Persistente und
|
||
verbundene Charaktere geschützt. Accounts nur explizit eigene normale Accounts.
|
||
|
||
Profile v2 in Character-DB, weiterhin Lua-Sandbox/generated:GUID, keine Dateien
|
||
im Sourceprofilbaum. Level1..85/DK>=55, Klasse/Spec/Rolle/Seed, Heimat+Hauptstadt,
|
||
levelgerechtes Lieblingsgebiet, Aggression/Heimatbindung plus bisherige
|
||
Persönlichkeit. Gewichtete native Bodenmount-Displays/Flugmount- und Petspells,
|
||
Anzahlen und Inventar-Whitelist. Erweiterte kulturelle Namensgrammatiken.
|
||
Rollen beeinflussen native Spezialisierung/Ausrüstung; Tank-/Heiler-Kampf-AI
|
||
und volle Klassenrotationen weiterhin spätere Arbeit. Alte Generatorprofile
|
||
wurden beim Laden erweitert, Identität/alte Persönlichkeit/Berufe erhalten.
|
||
Keine handgeschriebenen Profile geändert, keine temporären Overrides.
|
||
|
||
Planer speichert24 vollständige Stunden-Slots vor Ausführung in bestehender
|
||
World-Tabelle. Gleiche Folge-Intents/-Locations teilen komplette Blockfrist.
|
||
Veraltete/unvollständige Tage werden atomisch ersetzt, gleiche Tage geladen.
|
||
Bestehender TINYINT-hour-Lesefehler GetUInt32->GetUInt8 behoben.
|
||
Heimatbindung, Neugier und Ziel-/Gebietswiederholungen beeinflussen Gewichte,
|
||
Gebietsbänder aus neuem editierbarem Katalog; Profillevel maßgeblich.
|
||
Auch neutral markierte Orte in Gegnerhauptstädten sind nun ausgeschlossen.
|
||
Manager nur für generierte versionierte Profile: sichere Zustände, Level/XP,
|
||
Training/Talente/Riding/fehlende oder unpassende Ausrüstung korrigieren.
|
||
Geburt und Erhaltung nutzen dieselbe Armor-/Stat-/Spell-/Level-/Use-Prüfung.
|
||
Volle Rucksäcke nativ leeren, angelegte Ausrüstung unberührt, aktuelle
|
||
Vorratsstacks/Whitelist/Werkzeuge/Leine/Angel/Taschen geschützt.
|
||
|
||
WICHTIGER Integrationsfix: alter ClientlessInstanceVisitResume startete alle
|
||
Instanzbesucher synchron in OnStartup und umging die neuen Quoten. Jetzt nur
|
||
asynchrones verzögertes/gepacetes Wiederanmelden NICHT-generierter Besucher
|
||
in OnUpdate. Generator-eigene Instanzbesucher laufen ausschließlich über die
|
||
Quoten. Fehlende Generator-Tabelle lässt alte manuelle Wiederaufnahme bestehen.
|
||
Nativ bewiesen: bei finalem Start keine Clientless-Anmeldung trotz gespeicherter
|
||
Instanzvisite36, während Loader deaktiviert/alle Sollzahlen0 waren.
|
||
|
||
Migrationen world/characters2026_10_29_00 auf TEST-DB zweimal angewendet
|
||
(78 Gebiete). Beide SQL-Dateien wegen Ignore explizit vorgemerkt.
|
||
75/75 Tests im abschließenden Lauf erfolgreich; Debug-j10 gebaut/installiert.
|
||
Letzter Testserver PID139425: frische Ready nach11s, Prozess und Port8085
|
||
bestätigt. Native Tests: beide Fraktionen Level1 und85, vier getrennte Pools,
|
||
Stufe60-Schutzkrieger37 mit Tankprofil/Schutzbaum/Waffe+Schild; Level1->5
|
||
administrativ verändert und auf1 korrigiert, Planhash unverändert; alter
|
||
Testtag ersetzt; gleiche Pläne nach echtem Neustart bytegleich.
|
||
Rotation37->38: alter Nativechar/Profil/Plan/Supply-/Instanzstate weg,
|
||
Journal leer. Bestehende29..32 und retired27/28 erhalten. Native Inventarhashes
|
||
für menschlichen21 und Arthoran26 vor/nach identisch.
|
||
|
||
Eigene neue normale Accounts7 (Allianz) /8 (Horde). Neue persistente Testbots:
|
||
33 Tinkbin Gnom-Krieger1,34 Sylaria Blutelf-Schurkin1,
|
||
35 Karggan Zwergen-Priester85,36 Edwin Untoten-Krieger85;
|
||
38 Renaarna Worgen-Priesterin85 temporär. Diese fünf abschließend OFFLINE.
|
||
Testbot37 Elaisia wurde ausdrücklich für Rotation erzeugt und nativ gelöscht.
|
||
36 behält gespeicherte Instanz-Anreise; beim nächsten freigegebenen Login
|
||
normaler vorhandener Instanz-/Zeitbudget-Abgleich. Kein automatischer Start
|
||
unter deaktiviertem Loader. Arthoran26 bleibt OFFLINE/unverändert.
|
||
29 Aelion und31 Lenara wieder ONLINE in Goldhain, Intents gestoppt,
|
||
schedule0 und grouped0. Vor Login nativ offline GameTele435 positioniert,
|
||
nach Profilinitialisierung per Watcher gestoppt, keine Profiländerung dafür.
|
||
30 Zanzan nativ zu GameTele823 SenjinVillage/Durotar zurückgesetzt,32 Aldren
|
||
zu GameTele1040 TheDeadField/Silberwald nahe ursprünglichem NPC-Ziel;
|
||
beide online mit ursprünglichen Social-Zielen823/poi_npc_321922 angefordert.
|
||
Das waren administrative Test-Rückstellungen, kein Reisebeleg.
|
||
|
||
Aktive Testkonfiguration dauerhaft auf Defaults zurückgesetzt:
|
||
Loader.Enabled0, alle vier Sollzahlen0, Min1/Max85, Rotation15%, Mindestalter24h,
|
||
Intervall2000ms, Manager300s. Bereits manuell angemeldete vier Bots bleiben
|
||
online. Konfigurationsänderung: reload config, dann clientless population reload.
|
||
Diagnose population status/reload, generate profile GUID, adventure plan GUID.
|
||
Kein Commit/Push dieses neuen Arbeitsstands beauftragt.
|
||
|
||
Zwei während Tests gefundene native Abstürze behoben: LOGIN_INS_ACCOUNT braucht
|
||
CONNECTION_BOTH für asynchrones SRP6-Insert; Security-Abfrage nutzt tatsächliche
|
||
AccountID/SecurityLevel-Spalten. Item-Spell-Sentinel4294967295 erreichte
|
||
ApplyEquipCooldown-Assert; Generator schließt fehlende Spellmetadaten aus,
|
||
nativer Cooldown-Code prüft GetSpellInfo statt Assert. Factory-Shutdown gibt
|
||
wartende Offline-Players vor Map-Unload frei. Ein bekannter temporärer Auth-DB-
|
||
Ausfall10.0.0.1 wurde durch SIGTERM des Fehlstarts und zweiten Start überstanden;
|
||
keine Remote-Infrastrukturänderung. Aktuell Testserver bereit.
|
||
|
||
Restliche Abnahme: große1000er-Last, visuelle Reisen/Interaktionen und volle
|
||
Klassen-/Rollen-Kampflogik. Es wurden bestehende TravelGraph/MMAP-Fallbacks und
|
||
fehlende Map719-Terraindaten beobachtet; Navigationsüberarbeitung bleibt auf
|
||
Nutzerwunsch vertagt. Nicht als erfolgreich geprüfte Fernreise ausgeben.
|
||
Belege: checkpoints/2026-10-28-population/; Logs /tmp/vcore-population-*.log.
|
||
DB-Helfer /tmp/vcore-population-db.py (Credentials nur aus lokaler Konfiguration,
|
||
keine Secrets ausgeben). Originals- und Dayhash-Vergleiche in Checkpoint.
|
||
|
||
---
|
||
|
||
# Aktuell: Automatische Botgruppen, Raid und Gruppenbildung
|
||
|
||
Nutzer beauftragte Umsetzung der gemeinsam bestätigten Planung. Vollständige
|
||
Doku doc/clientless/bot-groups.md. Vorherige uncommittete PvP-/Fluchtarbeit
|
||
wird zusammen mit den Gruppenänderungen auf Nutzerauftrag lokal committet; kein Push. Neue AdventureGroupMgr/Policy,
|
||
native Einladungen und Erst-Einlader-Führung, lokale Gruppen und Kontakt in
|
||
Hauptstädten via sucheNachGruppe (Spielerchat wird nicht ausgewertet).
|
||
Vorbereitungsintent groupformation vergleicht NÄCHSTEN Intent, nie Ziele;
|
||
Sammelpunkt ist Gruppenbildungs-Location des Führers. Instanz5/Raid20 inklusive
|
||
Führer, andere Intents3/social10. Offene Einladungen werden mitgezählt.
|
||
Anführer bestimmt Intent/Ziel/Frist; eigene Tagespläne bleiben erhalten.
|
||
AFK während Bildung ausgesetzt, Übergang zu geplanter Aktivität kein Austritt.
|
||
Kein Warten auf Vollständigkeit/Anwesenheit. Rollen später. Botführer darf PvP
|
||
beginnen, Mitglieder assistieren; Gruppen fliehen weiterhin nie.
|
||
Spieler-Invite an gruppierten Bot erzeugt generische GUID-JoinRequest-Queue,
|
||
Botführer kann Gegeneinladung anbieten und übergibt nach Beitritt nativ Führung.
|
||
Native provisorische Gruppenführer ignorieren eigene Einladung (Regressiontest).
|
||
Raidbildung wählt native25-normal Schwierigkeit; Katalog verlangt>=20 Kapazität
|
||
mit nativem Downscaling für alte20/40-Raids; Zehner-only-Ziele ausgeschlossen.
|
||
Neue CPC route_source-Snapshots mit nativem catch-up, gemeinsame Flugsegmentspur,
|
||
native Gruppeninstanzen statt alter Solo-Sperre. Raid/Dungeon nach nativen Maps.
|
||
Migration world2026_10_28_01 zweimal auf Test-DB angewendet, bestehende Tage erhalten.
|
||
Zusätzlicher Diagnosebefehl adventure prepare <guid> <next> <capital-location> [s].
|
||
Alle66 Tests bestanden; abschließende Interaktions- und Plan-Regressionsfälle
|
||
zusätzlich erneut bestanden. Debug-j10 erfolgreich, abschließend installiert.
|
||
Aktueller Testserver122595 läuft; frische Ready-Meldung, Prozess und Port8085
|
||
bestätigt. Vier Testbots online, Arthoran26 weiterhin offline.
|
||
Nach Anmeldung bildete Lenara31 nativ Gruppe mit Aelion29 (Log Invite accepted1,
|
||
beide grouped1/leader31); nach Stop-Intentwechsel nativ wieder aufgelöst.
|
||
Dabei gefunden/behoben: Gruppentimer darf Behavior.Update bei Botgruppen nicht
|
||
auf1Hz mit falschem diff drosseln; Regressiontest sichert normale World-Ticks.
|
||
Stop-Wanted sperrt sofort weitere Rekrutierung/Annahme, ohne veralteten Intent.
|
||
Diagnose interaction <guid> leave: sicheres natives Verlassen/Testaufräumen.
|
||
Bots29/31 abschließend beide enabled0/grouped0 in Goldhain bestätigt und gespeichert;
|
||
vor Login nativ tele name435 zur sicheren Bereitstellung abseits Flugstart.
|
||
30/32 normale soziale Intents. Keine temporären Profiländerungen/Overrides.
|
||
Persönlicher Plan wird beim Austritt wiederhergestellt; übernommene Ziele ändern
|
||
nicht die persönliche Austrittssignatur (besonders manuelle Aufträge).
|
||
Belege: checkpoints/2026-10-28-bot-groups/, /tmp/vcore-groups-tests-final.log.
|
||
Kein vollständiger Live-Gruppenlauf oder Raid abgenommen.
|
||
|
||
---
|
||
|
||
# Aktuell: Solo-Fluchtlogik ergänzt
|
||
|
||
Nutzer hat Flucht vor deutlich stärkeren Gegnern und bei HP<20% beauftragt,
|
||
mit absoluter Ausnahme für Gruppenmitglieder. Implementierung CombatMgr/Policy:
|
||
+6 Level, gleich-/höherstufige Elite/Bosse, tatsächliche Angreifer; alle Arten.
|
||
Gruppenbeitritt bricht Flucht ab. Alle2s 24 MMAP-Fluchtpunkte, Abstand vergrößern,
|
||
weitere sichtbare Feinde meiden; kein Pfad => stationäre Nahkampfverteidigung.
|
||
Ende erst außerhalb nativem Kampf UND50Y Abstand zur letzten Bedrohung.
|
||
Bestehende Tränke, Intentfristen und Todesablauf erhalten. Details combat-reactions.md.
|
||
Vorherige uncommittete PvP-Änderungen erhalten. Alle63 Tests bestanden inkl.
|
||
erweiterter produktiver Flucht-Zustandsmaschine (/tmp/vcore-flee-tests.log).
|
||
Debug-j10 erfolgreich gebaut und installiert. Testserver105886 mit frischer
|
||
Ready-Meldung und Port8085 geprüft. Vier Testbots erneut angemeldet;29/31
|
||
nach Profilinitialisierung erneut gestoppt (früher Stop während Loading wird
|
||
vom Profilstart überschrieben). Aelion begann kurz nativen Flug Goldhain->SW;
|
||
danach nativer tele name435 nach Goldhain, ebenso Lenara. Beide Status
|
||
endgültig enabled0/stopped bestätigt, saveall. Aelion am nahen taxi_168,
|
||
Lenara am Goldshire-Telepunkt. Keine Live-Fluchtabnahme.
|
||
Kein Commit/Push.
|
||
|
||
---
|
||
|
||
# Aktuell: Offensive Fraktionsbegegnungen
|
||
|
||
Nutzer beauftragte PvP-Erstangriffe gegen gegnerische Bots/Spieler/NPCs:
|
||
50 Yards, maximal +/-5 Level inklusive, Persönlichkeit und Intent maßgeblich.
|
||
Umsetzung in AdventureCombatMgr/Policy; Details combat-reactions.md.
|
||
Alle30s Entscheidung mit adventurousness*danger_tolerance*Intentgewicht;
|
||
Gruppen keine autonomen Erstangriffe, Ruhe/Instanz/deaktiviert friedlich.
|
||
Native PvP/Phase/LOS/MMAP-Regeln, HP60/Mana30 und keine Elite/Boss-NPCs.
|
||
PvE-Zielwahl schließt Fraktions-NPCs aus (kein Umgehen der PvP-Regeln).
|
||
Selbstverteidigung unverändert; eigenständige Fluchtlogik bislang NICHT vorhanden.
|
||
Neuer Produktionstest test_adventure_pvp.py. Debug-j10 erfolgreich gebaut und
|
||
installiert; alle63 Tests bestanden (/tmp/vcore-pvp-tests.log). Testserver100594
|
||
mit frischer Ready-Meldung und Port8085 verifiziert. Bots29..32 nach sauberem
|
||
Logout/Neustart wieder online;29/31 autonome Intents wieder gestoppt,29 steht
|
||
nun am nahen taxi_582 in Goldhain (kurze initiale Reise vor Stop),31 am Node.
|
||
Arthoran26 bleibt offline. Live-PvP nicht ausgeführt/abgenommen.
|
||
|
||
Vorheriger begrenzter Goldhain-Test: Lenara Emote-Antwort und Einladung
|
||
abgelehnt, Aelion Einladung angenommen im Server.log belegt. Folgen nicht
|
||
anhand dieser Logs bestätigt. Aelion29/Lenara31 am goldshire_center, autonome
|
||
Intents für den Test gestoppt. Arthoran26 weiterhin offline. Horde30/32 anderswo.
|
||
Keine neuen Charaktere, Migrationen oder Profiländerungen für PvP erforderlich.
|
||
Kein Commit/Push beauftragt für diese Änderungen.
|
||
|
||
---
|
||
|
||
# Aktuell: Automatische AdventureBot-Erzeugung abgeschlossen
|
||
|
||
Stand28.10.2026 auf feature/clientless-player-core. Nutzer beauftragte einen
|
||
Generator für neue Bots mit RP-Namen/Profilen, passenden Fähigkeiten, Berufen
|
||
und Ausrüstung; Kennzeichnung für spätere temporäre Rotation. Nutzer hat den
|
||
lokalen Commit beauftragt; kein Push. SQL-Migration2026_10_28_00_adventure_generator.sql
|
||
wegen SQL-Ignore bereits gezielt vorgemerkt; Test-Charakter-DB zweimal angewendet.
|
||
|
||
ClientlessCharacterFactory ist generische native Infrastruktur ohne Adventure-
|
||
Abhängigkeit: Player::Create, validierte zufällige Optik, Geburt auf Zielstufe
|
||
via native Initialisierung statt GiveLevel-Belohnungen, Vorbereitungscallback,
|
||
gemeinsamer Save+Profil+Homebind+Ownership-Commit; Cache/Hook erst nach Erfolg.
|
||
Neue AdventureGeneratorMgr/Policy: zehn native legale Klassen-Archetypen,
|
||
zwölf Völker, kulturelle Namensgrammatiken, Herkunft/Beruf/Personalityprofile.
|
||
Profile liegen in Character-DB und werden als generated:<guid> im vorhandenen
|
||
Lua-Sandboxparser geladen. Handgeschriebene Namensprofile haben Vorrang und ihre
|
||
Namen werden bei Erzeugung reserviert. Keine Laufzeitdateien im Profilquellbaum.
|
||
|
||
Wichtige Live-Fixes: Berufs-Lernzauber mit Effekt44 wirken vor Welteintritt
|
||
nicht zuverlässig. Native SkillRaceClass/SkillTiers + Player::SetSkill bereiten
|
||
legale volle Ränge vor; Hilfsfunktion verweigert Online-Spieler. Online-
|
||
Selbstversorgung unverändert. Rollen-Ausrüstung prüft native Equipregeln,
|
||
Werte, temporäre/reputations-/gebietsgebundene Items, Mana-/Zauber-/physische
|
||
Effekte und keine doppelten ausgerüsteten Einträge. Ersetzte Items bleiben in
|
||
Taschen. Native Trainer::CanTeachSpell lediglich read-only öffentlich gemacht.
|
||
Arms nutzt vorhandenen Talentplan, andere Klassen gültigen Tier-Basisplan.
|
||
|
||
Befehle: clientless generate create <account> <count> [level faction archetype
|
||
persistent|temporary seed]; optionale fünf Parameter nur gemeinsam. Kurzform
|
||
level60, any/any, persistent. Count1..10, level10..85, DK>=55, Account normal
|
||
und ohne Netzwerksitzung, normale Realm-Charaktergrenze. Beispiel für Tests:
|
||
clientless generate create 6 1 60 alliance warrior temporary 42.
|
||
list/profile/login/logout/equip/retire <guid>. Erzeugung offline; login explizit.
|
||
equip nur eigener online/lebender/ruhiger Bot, native Checks, alte Items behalten.
|
||
retire nur eigener offline-temporärer Bot, markiert nur Metadaten, keine Löschung.
|
||
Automatische Rotation, Löschung, Accountanlage und Populationssteuerung später.
|
||
Vollständige Doku: doc/clientless/generator.md.
|
||
|
||
Debug-j10 erfolgreich installiert,62/62 Tests bestanden. Testserver88947 läuft,
|
||
frische Ready + Port8085 verifiziert. Vier neue Stufe60-Bots online und mit
|
||
individuellen DB-Profilen nach Neustart/Relog wieder geladen:
|
||
-29 Aelion, Nachtelf-Krieger, Teldrassil/poi_guard_111.
|
||
-30 Zanzan, Troll-Krieger, Durotar/poi_tele_823.
|
||
-31 Lenara, Worgen-Magierin, Elwynn/poi_npc_280710.
|
||
-32 Aldren, Untoter-Todesritter, Silberwald/poi_npc_321922.
|
||
Native Talentbäume746/746/851/400, Talentzeilen13/13/14/12,
|
||
Zauberanzahl80/80/87/64. Alle vier Nebenberufe und vier22er-Glutseidenstofftaschen,
|
||
alle fünf Vorratsstacks20. Primär: Krieger/DK Mining450+Smith375; Magierin
|
||
Tailoring375+Enchant375. Werte stammen aus gegenwärtigen nativen Trainerdaten.
|
||
Ausrüstungsauffrischung29..32 nativ erfolgreich gespeichert, alte Items behalten.
|
||
NPC-Szenen und lokale soziale Intents laufen; keine visuelle Abnahme behauptet.
|
||
|
||
Eigene frühere Testcharaktere27 Dagri und28 Jarana sind retired/offline, mit
|
||
vollständig erhaltenen Daten. Retire26 verweigert (kein generierter Besitz),
|
||
Login27 verweigert (retired). Inventarzuordnungen/Entries für21 und26 gegenüber
|
||
vorher bytegleich (Hash im Checkpoint). Arthoran wurde für Wartung sauber
|
||
abgemeldet und bleibt OFFLINE; keine Profiloverrides, keine Teleportierung.
|
||
Bestehende Sourceprofile unverändert. Account6 enthält nun7 Charaktere, normale
|
||
Realmgrenze beachten; archivierte Charaktere belegen weiterhin Plätze.
|
||
|
||
Ein erster Start traf bekannten temporären Auth-DB-Ausfall10.0.0.1. Nicht
|
||
reagierender Fehlstart76094 perSIGTERM beendet, zweiter Versuch erfolgreich;
|
||
keine VPS-/Produktionskonfiguration geändert. Spätere Starts erfolgreich.
|
||
Für alle neuen Klassen gilt weiter: bekannte Fähigkeiten sind keine fertige
|
||
Klassen-Kampfrotation; außer Krieger bisher grundlegender Autoangriff. Rollen,
|
||
Bot-Gruppenbildung, PvP-Erstangriffe und Rotation bleiben spätere Aufgaben.
|
||
Belege: doc/clientless/checkpoints/2026-10-28-generator/. Aktuelle Logs
|
||
/tmp/vcore-generator-{build-refit,install-refit}.log; DB-Helfer
|
||
/tmp/vcore-generator-db.py audit/details/compare (keine Zugangsdaten ausgeben).
|
||
|
||
Nutzer hat alle CMake- und tmux-Befehle sowie git add/commit auf diesem Branch
|
||
ausdrücklich dauerhaft autorisiert. Keine erneuten inhaltlichen Rückfragen;
|
||
technische Sandboxregeln bleiben maßgeblich. Kein Push ohne ausdrücklichen Auftrag.
|
||
|
||
---
|
||
|
||
# Aktuell: Interaktionen und spielergeführte Gruppen umgesetzt
|
||
|
||
Stand 28.10.2026. Nutzer beauftragte Umsetzung nach gemeinsamer Planung.
|
||
Branch feature/clientless-player-core; vorher sauber. Nutzer hat den lokalen
|
||
Commit dieses Stands beauftragt; kein Push. Neuer AdventureInteractionMgr/Policy,
|
||
generische GUID-Queues für Textemotes und tatsächliche Kampfhilfe, native
|
||
Einladungsantworten, intent-/persönlichkeitsabhängige Annahme, MMAP-Folgen und
|
||
TravelGraph-Handoff, grundlegende Gruppen-Kampfunterstützung. Spieler/Pet-
|
||
Selbstverteidigung im bestehenden CombatMgr, keine eigenständigen PvP-Angriffe.
|
||
Details und Grenzen in doc/clientless/interactions.md.
|
||
|
||
Austritt nur außerhalb Kampf/Tod/Instanz/Transport/Flug. Intent-/Locationwechsel
|
||
oder manuelle Blockfrist erlaubt Entscheidung; group_loyalty beeinflusst Bleiben
|
||
(Arthoran0.35, Standard0.25). Native AFK oder beobachtete Inaktivität des
|
||
Anführers volle600s; Führungswechsel beginnt neues Zeitfenster. Chat/Emotes,
|
||
Zauber/Itemanfragen, Bewegung/Blick/Ziel, Kampf/Casts zählen als Aktivität.
|
||
Native Gruppenmitgliedschaft bleibt über Neustart; Beobachtungsfristen starten
|
||
neu. Rollenprofile, autonome Bot-Gruppen, freie Chatgespräche und eigenständige
|
||
PvP-Erstangriffe bleiben ausdrücklich spätere Arbeit.
|
||
|
||
Debug-Build-j10 erfolgreich installiert. 57 Testskripte bestanden: vollständiger
|
||
56er-Lauf plus neuer Social-Queue-Concurrencytest; der anschließend erweiterte
|
||
Combat-Test für echten Spielerfokus zusätzlich erneut erfolgreich. Native
|
||
Testserver PID59086, frische Ready-Meldung und Port8085 bestätigt. Arthoran26
|
||
online, Persönlichkeit8Werte, neue Diagnose clientless interaction26 erfolgreich:
|
||
sociability0.65/loyalty0.35, keine Gruppe. Echte Kreaturen-Selbstverteidigung
|
||
nach Neustart weiterhin beobachtet, kein Beleg für Live-PvP/Gruppenannahme.
|
||
|
||
Arthorans unveränderte initiale Profilvorgabe startete bei Login die normale
|
||
Goldhain-Reise. clientless adventure stop26 wurde angefordert, letzte Diagnose
|
||
noch Switching/waiting for safe player/transport state. Keine Teleportierung,
|
||
kein temporärer Profiloverride; normale Herkunftsdateien bleiben erhalten.
|
||
Für Live-Abnahme Position und Reise zuerst erneut prüfen. Gruppeneinladungen
|
||
werden in Flug-/Transport-/Kampfzuständen bis zur sicheren Lage zurückgestellt.
|
||
|
||
Beim sauberen Shutdown der ALTEN, vor Installation laufenden Binärdatei trat
|
||
Object.h:448 GetMap ASSERTION FAILED m_currMap auf. AlterProzess49765 endete;
|
||
keine fremden Prozesse beendet. Das ist ein beobachteter Shutdownfehler des
|
||
Ausgangsstands, Ursache hier nicht untersucht/behoben. Neuer Start erfolgreich.
|
||
|
||
Offene Gameplay-Abnahmen: echte Spielereinladungen, zwei gleichzeitige Bots,
|
||
PvP/Pet-Verteidigung, native Gruppenportale/kartenübergreifendes Folgen,
|
||
zehn echte Minuten AFK. Klassenrotationen außer Krieger und Supportrollen
|
||
weiterhin begrenzt. Belege: checkpoints/2026-10-28-interactions/.
|
||
Logs /tmp/vcore-interactions-{build-final,install}.log und zugehörige Tests.
|
||
|
||
---
|
||
|
||
# Aktuell: Selbstversorgung und gemeinsame Nebenberufe abgeschlossen
|
||
|
||
Stand 27.10.2026. Branch feature/clientless-player-core, vorheriger Commit
|
||
c0c799c4b6. Nutzer hat den lokalen Commit der Selbstversorgung beauftragt; kein Push.
|
||
Debug-Build -j10 erfolgreich installiert, alle 55 Testskripte bestanden.
|
||
Testserver PID 49765 läuft; frisches Ready und Port 8085 bestätigt.
|
||
|
||
AdventureSupplyMgr/Policy versorgt AdventureBots zu Tagesbeginn und nach
|
||
Kampfende bis zu jeweils einem nativen Stack: Verbände, Heil-/Manatränke,
|
||
Essen und Trinken. Vier Glutseidenstofftaschen54443 mit je22 Plätzen ergänzen
|
||
Arthoran. Alte Gegenstände blieben erhalten, Geld weiterhin0.
|
||
Migration world10 und characters01 angewendet und trotz SQL-Ignore gezielt
|
||
vorgemerkt. Persistierter Tagesstempel verhindert Nachschub bei jedem Login.
|
||
|
||
Nutzerregeln umgesetzt: Selbstheilung beginnt erst bei mindestens10% fehlenden
|
||
HP. Außerhalb des Kampfes zuerst ein nutzbarer Verband; bei Sperre direkt Essen,
|
||
nach Verband Essen nur bei weiter mindestens10% Mangel. Mananutzer trinken bei
|
||
passendem Mangel. Im Kampf nur native Tränke. Echte Item-Anfragen, Verbrauch,
|
||
Abklingzeiten und Verbandssperre; keine direkte HP/Mana-Zuweisung außer dem
|
||
expliziten Diagnosebefehl testrecovery. Intents behalten ihre ursprüngliche Frist.
|
||
|
||
Auf ausdrücklichen Nutzerwunsch erhalten alle AdventureBots die stufengerecht
|
||
verfügbaren Nebenberufe Erste Hilfe, Kochen, Angeln und Archäologie, innerhalb
|
||
nativer Traineranforderungen und Fertigkeitsgrenzen. Keine Hauptberufe geändert.
|
||
Arthoran gespeichert: ErsteHilfe375/375, Kochen525/525, Angeln525/525,
|
||
Archäologie375/375. Er verwendet schwere Netherstoffverbände21991.
|
||
Native Trainer erlauben Kochen/Angeln525 bei diesem Charakter.
|
||
|
||
Notwendige native Fehlerkorrektur: Player::GetPureMaxSkillValue hatte eine
|
||
invertierte Prüfung und lieferte für gelernte Fertigkeiten null. Fehlendes !
|
||
korrigiert, eigener nativer Regressionstest vorhanden. Nebenberufsausbildung
|
||
berücksichtigt sowohl Skill-Effekt118 als auch den nativen Lerneffekt44.
|
||
|
||
Live bestätigt:
|
||
- Vier22er-Taschen und alle fünf Stacks20, vorhandene Item-GUIDs erhalten.
|
||
- Markierte8%-Testverletzung: kein Verbrauch.
|
||
- Markierte80%-Testverletzung: echter Verbandverbrauch, danach4961/5249HP;
|
||
weniger als10% fehlend, daher kein Essen.
|
||
- Erneute Testverletzung bei nativer Verbandssperre: echtes Essen, volleHP.
|
||
- Gleicher Tagesstempel beim erneuten Login: Verband19/Essen19 bleiben bestehen,
|
||
kein weiterer Tagesnachschub.
|
||
- Echter Bärenkampf gegen Spawn300425 mit markiertem anfänglichem30%-Defizit:
|
||
Heiltrank22829 im Kampf verbraucht. Danach exakt je ein Verband, Heiltrank
|
||
und Essen ergänzt; alle fünf Bestände20. GespeichertHP5249, Geld0.
|
||
- Manaspezifisches Verhalten produktiv mit Adaptern geprüft, nicht mit echtem
|
||
Manacharakter. Administrative Testpositionierung ist kein Fernreisebeleg.
|
||
|
||
Arthoran bleibt angemeldet in den Verwüsteten Landen am Bären-Testplatz,
|
||
reagiert auf Gegner und versorgt sich selbst. Normales Lua-Profil bytegleich
|
||
restauriert; kein temporärer Override. Dokumentation: doc/clientless/supplies.md.
|
||
Belege: doc/clientless/checkpoints/2026-10-27-supplies/.
|
||
Logs: /tmp/vcore-supplies-build-final.log und /tmp/vcore-supplies-tests-final.log.
|
||
DB-Helfer /tmp/vcore-instance-db.py supplies_audit. Diagnose:
|
||
clientless combat supplies26, testrecovery26<fehlende-Prozent1..80>.
|
||
Die bisherigen Server-/Branchregeln und vertagte Pfadfindungsarbeit gelten weiter.
|
||
|
||
|
||
---
|
||
|
||
# Aktuell: Training, echte Gegner und Todesverhalten abgeschlossen
|
||
|
||
Stand 27.10.2026. Auf feature/clientless-player-core bleiben alle bisherigen
|
||
Änderungen erhalten. Debug-Build mit -j10 erfolgreich installiert; alle 51
|
||
Testskripte bestanden. Testserver PID 45545 läuft mit frisch geprüftem Ready
|
||
und Port 8085. Nutzer hat den lokalen Commit aller Änderungen beauftragt; kein Push.
|
||
|
||
Neue AdventureCombatMgr und AdventureCombatPolicy überlagern den Adventure-
|
||
Controller während Kampf und Tod. Tatsächlich angewandter Kreaturenschaden
|
||
wird über eine threadsichere GUID-Queue geordnet an den Controller übergeben.
|
||
Der erste Angreifer bleibt Fokus; weitere folgen nach dessen Tod. Abenteuer
|
||
berücksichtigt Gegner am aktiven MMAP-Pfad, Kürschnerei nur Tiere bei bestehendem
|
||
Profilrecht. Arthoran bleibt Bergbau/Schmied. Konservative Erstangriffsfilter:
|
||
höchstens +2 Level, mindestens 60% HP und gegebenenfalls 30% Mana, keine Elites,
|
||
Weltbosse oder Gegnergruppen. Andere Intents jagen nicht.
|
||
|
||
Migration 09 ergänzt leisure_training für 60–180 Sekunden an echten erreichbaren
|
||
Puppen im lokalen 60-Yards-Umkreis. Bereits in Test-DB angewendet und trotz
|
||
SQL-Ignore gezielt vorgemerkt. Ursprüngliche Intentfristen bleiben erhalten.
|
||
Todesablauf: native Freigabe, gespeicherter Leichenzeitpunkt, MMAP-Punkte innerhalb
|
||
39 Yards und native Aufnahmefrist. Ohne passenden Pfad nach 300 Sekunden native
|
||
Friedhofsrückkehr und Wiederbelebung ohne Geistheiler-Mali.
|
||
|
||
Live erfolgreich geprüft:
|
||
- Trainingsszene: MMAP-Anreise, native Angriffe und reguläres Ende nach 60 Sekunden.
|
||
- Echter Bär, Entry 42336 / Spawn 300425, Stufe 58: besiegt, native Respawnzeile
|
||
bestätigt. Tatsächlicher Gegentreffer löste den Selbstverteidigungsfokus aus.
|
||
- Expliziter Testtod 1: Freigabe um 1793138872, kein akzeptierter Rückweg;
|
||
volle 300 Sekunden tatsächlich abgewartet. Friedhofswiederbelebung, anschließend
|
||
lebend gespeichert, keine Leiche oder Wiederbelebungskrankheit.
|
||
- Expliziter Testtod 2 nahe Friedhof: tatsächlicher MMAP-Geisterlauf von 37,40
|
||
Yards und native Leichenaufnahme. Danach HP 4340 gespeichert, keine Leiche
|
||
oder Aura 15007. Kein natürlicher Kampftod behauptet.
|
||
- Administrative Offline-Positionierung diente nur isolierten Tests; kein Beleg
|
||
für Fernanreise. Mehrfachangreifer und Neustart während Geisterlauf bislang
|
||
durch Produktionsadapter geprüft, nicht durch entsprechende Live-Abnahme.
|
||
|
||
Arthoran ist wieder angemeldet, ohne Fernauftrag am letzten Rücklaufpunkt:
|
||
Karte 0, (-12187.9, -2603.74, 1.5777), Verwüstete Lande. Er reagiert auf Angreifer.
|
||
Normales Lua-Profil bytegleich restauriert; kein temporärer Override vorhanden.
|
||
Befehle: clientless combat train <guid> [seconds], attack <guid> <spawn-id>,
|
||
testdeath <guid>, stop <guid>. Testdeath ist ein markierter nativer Diagnosetod
|
||
für einen verwalteten Bot ohne zusätzlichen Haltbarkeitsverlust.
|
||
|
||
Belege: doc/clientless/checkpoints/2026-10-27-combat/.
|
||
Logs: /tmp/vcore-reactive-combat-build-final.log und
|
||
/tmp/vcore-reactive-tests-final.log. DB-Helfer: /tmp/vcore-instance-db.py,
|
||
Modus combat_live_state. Vorherige Ausrüstung/Reparatur-WIP bleibt erhalten.
|
||
Pfadfindungsüberarbeitung bleibt vertagt. Weitere Klassenrotationen und konkrete
|
||
Spieler-/Bot-Interaktionsregeln sind noch auszuarbeiten.
|
||
|
||
|
||
---
|
||
|
||
# Wiederaufnahme: Kampfausstattung und Reparaturtest
|
||
|
||
Stand 27.10.2026: Branch feature/clientless-player-core, bestehende Änderungen
|
||
bewahren. Debug-Build erfolgreich, installiert; Testserver PID41714 frisch ready
|
||
und Port8085 bestätigt. 48 Testskripte bestanden. Kein Push oder neuer Commit.
|
||
|
||
Arthoran26 trägt neun native Kopien von Allitester21 (Zorn und Ashkandi),
|
||
26/26 native Waffen-Talentpunkte Baum746, stufengerechte Klassenfähigkeiten.
|
||
Originalquelle unverändert, alte Ausrüstung in Taschen. Begrenzte Trainingsübung
|
||
an echter Puppe314147 erfolgreich: native angenommene Fähigkeiten protokolliert.
|
||
Phase169 ist Standard; keine Phasenänderungen. Ursprüngliches Problem war LOS.
|
||
Volle autonome Kampf-/Todes-/Interaktionssteuerung bleibt zukünftige Umsetzung.
|
||
Malusfreie Friedhofswiederbelebung nach5min ohne Pfad ist verbindliche Vorgabe.
|
||
|
||
NEU: economy_repair, Migration08 bereits Test-DB angewendet. Liveprüfung läuft:
|
||
Arthoran ausgeloggt, nur seine neun Kopien auf halbe Haltbarkeit gesetzt,
|
||
Position administrativ an poi_tele_954 (Handelsdistrikt), wieder angemeldet.
|
||
Intent economy am Anker angekommen; Mikroaktion economy_repair gestartet,
|
||
echter Händler1287/GUID1879, native MMAP-Anreise. Abschluss bestätigt: ECONOMY_REPAIR_COMPLETE; nach saveall alle neun Kopien
|
||
wieder auf voller Haltbarkeit, Geld weiterhin0, Allitester unverändert.
|
||
Ausgangswerte /tmp/vcore-repair-before.tsv.
|
||
Normales Lua-Profil bytegleich restauriert, kein temporärer Override.
|
||
|
||
Werkzeuge /tmp/vcore-instance-db.py gear_verify (prüft auch Allitester-Hash),
|
||
repair_test_prepare NICHT WIEDERHOLEN. Konsole saveall nach Reparaturabschluss,
|
||
ECONOMY_REPAIR_COMPLETE in Server.log prüfen. Gegebenenfalls Szene beobachten.
|
||
Build-/Testlogs /tmp/vcore-combat-preparation-{build,tests-final}.log.
|
||
Migration08 wird von *.sql ignoriert, gezielt force-add für Erhalt erforderlich.
|
||
Reparaturprüfung abgeschlossen; Arthoran darf den Wirtschaftsintent weiter ausführen.
|
||
|
||
---
|
||
|
||
# Neuer Arbeitsbereich: Kampf, Reaktionen und Interaktionen
|
||
|
||
Alle sieben Grundintents sind abgeschlossen und die bisherigen Änderungen
|
||
lokal committet (e18a416bf4). Der Nutzer hat die visuelle Instanzabnahme erlassen.
|
||
Jetzt Kampf, reaktives Verhalten, Bot-Spieler und Bot-Bot gemeinsam ausarbeiten.
|
||
Neue Regeln/Vorprüfung in `combat-reactions.md` dauerhaft festgehalten.
|
||
|
||
Nutzer: Selbstverteidigung fokussiert erste tatsächlich schädigende Kreatur bis
|
||
zu deren Tod; weitere Treffer wechseln den Fokus nicht. Erstangriffe wählen
|
||
nächstgelegenes gültiges intentspezifisches Ziel: Abenteuer nahe Feindkreatur auf
|
||
aktuellem Weg; Beruf/Lederjagd nahes geeignetes Tier. Stärkecheck verhindert
|
||
leichtsinnige Angriffe auf deutlich stärkere Gegner. Exakte Grenzwerte noch offen.
|
||
Tod: Leichenrücklauf als Geist, native Wiederbelebungsreichweite; ohne Pfad nach
|
||
fünf Minuten Friedhofswiederbelebung. Native Handler/39-Yards-Radius vorhanden.
|
||
Timerherkunft und weitere Randfälle als Auslegung/Vorschlag markieren.
|
||
Arthoran bleibt mining/blacksmithing; keine stillschweigende skinning-Freigabe.
|
||
Sammeln weiterhin performativ, neu gewünschter Kampf real.
|
||
|
||
PlayerAI.cpp gründlich geprüft. Viel vorhandene Klassen-/Zauberlogik, aber
|
||
Charm-Steuerung muss entkoppelt werden. Technisch nicht ungenutzt: Unit::UpdateCharmAI
|
||
und mehrere Bossskripte verwenden sie. Unit::DealDamage liefert UnitAI-Callbacks
|
||
und UnitScript-OnDamage VOR endgültigem HP-Abzug: tatsächlichen Erstschaden
|
||
sauber bestätigen, keine Nullschaden-/Godmode-Fokussierung.
|
||
|
||
Noch keine Kampfimplementierung oder Livekampftests in dieser Vorprüfung.
|
||
Nur Dokumentation neu/uncommittet; keine weiteren Commits ohne konkreten Bedarf.
|
||
Details zu Flucht, Zielverlust, verbleibenden Angreifern, Erstangriffsschwellen
|
||
und konkreten Spieler-/Bot-Reaktionen noch nicht als Nutzerentscheidungen ausgeben.
|
||
|
||
---
|
||
|
||
# Aktuell: Instanzintent implementiert und technisch live geprüft
|
||
|
||
Stand 27.10.2026, letzter Testserverprozess PID **35865**, frisches Ready beim
|
||
letzten Restart und Port 8085 geprüft. Nutzer beauftragte Umsetzung einschließlich
|
||
zufälliger Verletzung (0–50 Prozent Max-HP) nach Rückkehr. Umsetzung fertig,
|
||
Der Nutzer hat ausdrücklich auf eine weitere visuelle Abnahme verzichtet.
|
||
Alle vorhandenen Änderungen sollen gemeinsam lokal committet werden; kein Push.
|
||
Details: `instance-intent.md`.
|
||
|
||
Implementierung:
|
||
- Intent `instance`, eigener Tagesplanwert (Default .5), feste Phasen statt
|
||
zufälliger Innenraum-Mikroaktionen. Anreise verbraucht Blockzeit; zehn Sekunden
|
||
Vorbereitung; tatsächlicher nativer Eintritt; Warten direkt dahinter; Rückkehr
|
||
zu Blockende minus fünf Minuten; Nachruhe bis zum ursprünglichen Blockende.
|
||
- Neue native Außenwelt-Aliase `instance_visit_at_<Trigger-ID>` und editierbare
|
||
Ein-/Ausgangszuordnung. 108 Eingänge in Test-DB, insgesamt 2.973 Locations /
|
||
3.966 Worldpoints. Innenräume bleiben reine native Karten/Graphknoten.
|
||
- Charakterpersistenz enthält Phase, Trigger, Instanz-ID, absolute Frist,
|
||
einmal gezogenen Verletzungswert und injury_applied. Gemeinsame Transaktion
|
||
mit Player::SaveToDB über ASYNC-Worker, bestätigter Commit vor Fortschritt.
|
||
- Optionales WorldScript in viano_bot_commands.cpp meldet nur gespeicherte
|
||
Besucher beim Serverstart automatisch mit dem Adventure-Controller an.
|
||
Wiederaufnahme hat Vorrang vor normalem Lua-Initialintent.
|
||
- Getrennten Hinterausgang aus nativen Daten bevorzugen, expliziter Override
|
||
möglich. Verborgene Dungeon-Durchquerung wird innen bis zum echten Ausgang
|
||
abstrahiert, danach nativer Trigger. Fehlender Ausgang: Eingang. Keine Kämpfe,
|
||
Beute/Inventar-/Geldänderung, keine DungeonBot-Abhängigkeit.
|
||
|
||
Geprüft:
|
||
- Debug-Build -j10, installiert, **44 Testskripte im vollständigen abschließenden
|
||
Lauf bestanden** (/tmp/vcore-instance-tests-final.log).
|
||
- Beide additiven Migrationen angewendet. Tabellen-Collation unicode_ci passt
|
||
zum bestehenden Schema; Dateien wegen *.sql-Ignore gezielt mit git add -f
|
||
vorgemerkt, alle übrigen Änderungen uncommittet. Kein Push.
|
||
- Verlies-Eingang 101, Ausgang 503, Karte34/Instanz-ID1 tatsächlich betreten.
|
||
Echter Serverneustart während Phase3: automatischer Login, gleiche Instanz-ID1,
|
||
ursprüngliche absolute Frist beibehalten. Normales Lua-Profil war restauriert.
|
||
- Für schnelle Rückkehrprüfung wurde ausschließlich nach sauberem Serverstopp
|
||
die Test-Besuchsfrist verkürzt. Original in
|
||
/tmp/vcore-instance-live-original-deadline.tsv. Keine normale Codefrist geändert.
|
||
- Native Rückkehr nach Karte0 (-8766.11,845.499,87.9952), zunächst zweimal echte
|
||
0%-Würfe, nächster regulärer kurzer Testblock 17%: **2165/2609 HP**.
|
||
Charakter-DB bestätigte Phase5, loss_percent17, injury_applied1 und HP2165.
|
||
- Erneuter Logout/Login während Phase5: gleiche Frist, injuryApplied1, kein
|
||
Neuwurf/keine zweite Verletzung. Aktuell Nachruhe vor dem Verlies bis
|
||
Deadline1793128202; anschließend endet der manuelle Testauftrag. Zustand bei
|
||
Wiederaufnahme neu prüfen; keinen weiteren Test automatisch starten.
|
||
- Normales Profil in Quelle UND Installation bytegleich normal (SHA256
|
||
26b11c3108e6ecc5dbc59d1852b4103ca4e818148603a34c02a470c969dc659b).
|
||
Kein temporärer Lua-Override. Nach saveall Geld-/Inventar-SHA256 unverändert
|
||
8d40931782d05219466ba9fd077ce7acd3e02bd53eb63f6e96115042c620d26a.
|
||
|
||
Wichtig: Fernanreise NICHT live erfolgreich verifiziert. Vorhandene Graph-
|
||
Recovery-Schleifen führten erst nach Goldhain, dann durch Sturmwind. Nutzer hat
|
||
Pfadfindung/Hinderniserkennung ausdrücklich auf später verschoben. Daher wurde
|
||
für den isolierten Instanztest nur der ausgeloggte Testbot administrativ an den
|
||
realen Außeneingang gestellt; anschließender lokaler MMAP-Anschluss und Eintritt
|
||
waren regulär. Kein Instanzteleport als erfolgreicher Eintritt ausgegeben.
|
||
Todesminen-Hinterausgang und zwei unabhängig gleichzeitig betretene Kopien nur
|
||
produktive Adaptertests/Quellprüfung, noch kein entsprechender Livevergleich.
|
||
|
||
Erster Liveversuch fand meinen falschen SYNCH-Transaktionsweg; Debugserver
|
||
beendete sich vor der Anreise. Fehler korrigiert auf AsyncCommitTransaction mit
|
||
Commitresultat. Nachfolgende native Saves/Neustarts erfolgreich, Fehlerlog
|
||
/tmp/vcore-instance-first-live-DBErrors.log erhalten. Nicht als aktuelles Problem
|
||
missverstehen. Aktuell keine neuen Instanz-SQL-/Startfehler beobachtet.
|
||
|
||
Alle Schlaf-WIP-Änderungen von vorher erhalten. Bett-/Hinderniserkennung bleibt
|
||
auf Nutzerwunsch zurückgestellt. Nur feature/clientless-player-core verwenden.
|
||
|
||
---
|
||
|
||
# Aktueller Auftrag: Instanzbesuche – Nutzervorgaben konkretisiert
|
||
|
||
Wirtschaftstest vom Nutzer als ausreichend beendet; nächster Intent sind
|
||
Instanzbesuche. Details verbindlich in `instance-intent.md` festgehalten.
|
||
Rest des gewählten Location-Zeitblocks, letzte fünf Minuten Nachruhe draußen.
|
||
Beispiel 60 Minuten: 40 Anreise, 15 innen, 5 Nachruhe. Tatsächlicher Eintritt,
|
||
Warten direkt hinter dem Eingang in nativer eigener Instanzkopie, keine
|
||
Dungeon-Durchquerung/Kampf. Neustart: am Eingang innen wieder einloggen,
|
||
ursprüngliche absolute Frist weiterverwenden. Rückkehr eigener Ausgang,
|
||
sonst Eingang. Instanzinnenräume NICHT zu normalen Locations machen.
|
||
|
||
World-DB geprüft: areatrigger_teleport enthält 78 Deadmines Entrance Target,
|
||
119 Exit Front Target, 121 Rear Exit Target. Alle sechs source/target-Knoten
|
||
in vcore_clientless_travel_node vorhanden, Kommentare nur Triggernummern.
|
||
Semantik aus nativen Namen und DBC-Quell-/DB-Zielkarten ableiten.
|
||
|
||
Noch keine Implementierung/Instanzbetretung in dieser Vorprüfung. Core-Befund:
|
||
Online startet heute flüchtigen Behavior-Record/Profil neu; dauerhafte
|
||
Besuchsphase/Frist und Wiederaufnahme müssen ergänzt werden. Native Instanz-ID,
|
||
Solobindung und Instanzspeicherung für Restart berücksichtigen und testen.
|
||
Eigener Ausgang hinten erfordert Rückkehrbehandlung ohne Dungeon-Durchquerung.
|
||
Randfall Ankunft mit weniger als fünf Minuten: noch keine ausdrückliche
|
||
Nutzerentscheidung, sinnvolle Ableitung ist Eintritt auslassen/Nachruhe.
|
||
|
||
Keine Code-/DB-/Serveränderung bei dieser Vorprüfung. Vorheriger Wirtschaftsintent
|
||
kann auf dem Testserver weiterhin laufen; vor Implementierung Zustand prüfen.
|
||
Schlaf-/Hindernisthemen bleiben ausdrücklich vertagt. Vorhandenes WIP bewahren.
|
||
|
||
---
|
||
|
||
# Aktueller Nutzerauftrag: freier Wirtschaftsintent im Handelsdistrikt
|
||
|
||
Bett-/Geometriesuche ausdrücklich vom Nutzer zurückgestellt. Ebenso spätere
|
||
Überarbeitung der Pfadfindung/Hinderniserkennung (beobachtetes Durchlaufen von
|
||
Zäunen und Erhöhungen). Diese offenen Themen sollen die weitere Entwicklung
|
||
NICHT blockieren; jetzt daran nicht weiterarbeiten.
|
||
|
||
Arthoran GUID 26 hat auf Nutzerwunsch den autonomen Auftrag:
|
||
`clientless adventure intent 26 economy poi_tele_954 3600`.
|
||
`poi_tele_954` ist der vorhandene allgemeine Sturmwind-Anker im Handelsdistrikt
|
||
(-8833.07,622.778,93.9317), Kategorie landmark; keine Händler-/Bank-/AH-Rollensperre
|
||
wie bei den spezialisierten Testankern. Kein gezielter Mikroaktionszwang.
|
||
INTENT_ARRIVED economy und selbst gewählter Start `economy_vendor_visit`
|
||
gegen echten Händler Entry 277, GUID Low 1325, sind bestätigt. Szene läuft.
|
||
Kein erneuter Build/Restart oder Lua-Profilwechsel für diesen Auftrag.
|
||
|
||
Vorher `saveall`; Geld-/Inventar-SHA256 weiterhin
|
||
8d40931782d05219466ba9fd077ce7acd3e02bd53eb63f6e96115042c620d26a.
|
||
Wirtschaften bleibt rein performativ: keine echten Transaktionen.
|
||
Nutzer beobachtet nun die freie Ausführung im Spiel; keine neue visuelle
|
||
Abnahme behaupten. Schlafboden am ersten Anker war vom Nutzer bestätigt.
|
||
|
||
Alle vorherigen WIP-Änderungen erhalten, Branch feature/clientless-player-core,
|
||
kein Push. Normales Lua-Profil weiterhin unverändert. Schlaf-Testanker und
|
||
bisheriger Ausbau bleiben erhalten, siehe historische Notizen unten.
|
||
|
||
---
|
||
|
||
# Neuer Liveauftrag: Suche bei Allitesters Position
|
||
|
||
Nach dem Flächenausbau wollte der Nutzer eine erneute Suche nahe den beiden
|
||
Betten an seiner aktuellen Position. `saveall`, danach Allitester GUID 21:
|
||
Map 0, (-8877.360, 673.489, 104.950), O=0.649831. Separater aktiver manueller
|
||
Suchanker `gilded_rose_sleep_room_test` in Test-DB angelegt, Kategorie rest_sleep,
|
||
Metadata von Sturmwind; bestehende Punkte nicht verschoben.
|
||
|
||
Neustart war nötig: adventure reload erneuert NICHT den Reisepunkt-Cache,
|
||
weshalb der erste Anreiseversuch den neuen Punkt nicht fand und zurückfiel.
|
||
Server jetzt PID 32004, frisches Ready nach elf Sekunden, Port 8085 geprüft.
|
||
Einmaliges Loginprofil rest/room_test danach bytegleich restauriert, installierte
|
||
Profilkopie ebenfalls normal. Arthoran erreichte den neuen Anker regulär.
|
||
|
||
Erneute Suche dort: beds=0 raised=0 floor=46 (erster Lauf floor=34).
|
||
REST_CONFIRMED am Anker (-8877.360,673.489,104.950), O=.650, zuletzt 143 Sekunden.
|
||
Die sichtbaren Betten werden also weiterhin NICHT als Bett/erhöhte Fläche erkannt;
|
||
Ursache der konkreten geometrischen Ablehnung ist NICHT gemessen. Nicht behaupten,
|
||
dass nur der bisher zu kleine Radius schuld war.
|
||
|
||
Die gewichtete Auswahl wählte zwischenzeitlich wieder den alten Schlafanker.
|
||
Für den gezielten Versuch wurde NUR `gilded_rose_sleep_upstairs` kurz enabled=0
|
||
gesetzt, Katalog geladen, micro rest_sleep ausgeführt, dann enabled=1 restauriert
|
||
und Katalog erneut geladen. Kein Punkt blieb vorübergehend deaktiviert.
|
||
DB-Helfer /tmp/vcore-sleep-room-test.py, Positionssnapshot daneben als JSON.
|
||
Nutzer hat neuen Bodenplatz am alten Anker sichtbar bestätigt; Bettdarstellung
|
||
und tatsächliche Bettnutzung weiterhin offen. Kein neuer Code/Build in diesem
|
||
Folgeversuch. Vor weiterer Arbeit laufende Szene/Position neu prüfen.
|
||
|
||
---
|
||
|
||
# Aktuell: Schlafplatzsuche am 27.10.2026
|
||
|
||
Dieser Abschnitt hat Vorrang vor den historischen Checkpoints unten.
|
||
Der Nutzer nahm den Schlaftest wieder auf, sah Arthoran mitten im oberen Stuhl
|
||
und beauftragte eine Flächensuche: Betten/geeignete erhöhte Flächen bevorzugen,
|
||
sonst freier Gasthausboden, auch für Gasthäuser ohne Betten.
|
||
|
||
Implementiert, gebaut (`-j10`), installiert und live getestet, noch uncommittet:
|
||
`AdventureRestSpace.h`, Schlafadapter in `AdventureBehaviorMgr.cpp`, gespeichertes
|
||
Szenenziel in `.h`; zwei neue Regressionen und erweiterter Ruhetest. Insgesamt
|
||
39 Testskripte erfolgreich (38er-Lauf plus neuer nativer Adaptertest; danach
|
||
betroffene erweiterte Tests erneut erfolgreich). Details: `rest-intent.md`.
|
||
|
||
Schlafanker sind jetzt Suchbereiche, keine ungeprüften Liegepunkte. Native
|
||
Bettobjekte vor erhöhten Flächen mit abrupten Seitenkanten vor freiem Boden.
|
||
Geometrie ist keine sichere Bettsemantik; passende Tische können ähnlich sein.
|
||
Modellabhängige Liegefläche, Höhen-/Kollisionsraster, native Stuhlsperre,
|
||
Spieler/Kreaturenbelegung, Innenraum und Stockwerksgrenze. Tatsächlicher
|
||
MMAP-Endpunkt muss passen, kein Teleport/Klettern auf unerreichbare Möbel.
|
||
Erneute Prüfung vor Hinlegen und alle zwei Sekunden. Keine neue SQL-Migration.
|
||
|
||
Live: Prozess 31446, frisches Ready nach elf Sekunden, Port 8085 bestätigt.
|
||
Arthoran GUID 26 im Ruheauftrag `gilded_rose_sleep_upstairs`. Die neue Suche
|
||
fand `beds=0 raised=0 floor=18`; er ging 4,03 Yards zu
|
||
(-8868.534, 682.800, 104.949), Ausrichtung 3,740, Endpunktfehler null.
|
||
`REST_CONFIRMED` für 243 Sekunden. Die sichtbare Abnahme des neuen Bodenplatzes
|
||
ist offen, ebenso ein positiver Live-Betttest; Fixturetests decken Betten ab.
|
||
Normales Lua-Profil in Quelle UND Installation bytegleich wiederhergestellt,
|
||
mining/blacksmithing unverändert. Kein temporäres Override, kein Push.
|
||
|
||
Die zuvor bereits vorhandene Änderung an `rest-intent.md` zur ersten
|
||
Schlafvorführung wurde erhalten und ergänzt. Branch ausschließlich
|
||
`feature/clientless-player-core`. Build/Install/Testlogs: `/tmp/vcore-sleep-*.log`.
|
||
Prozess-/Szenenzustand beim Fortsetzen neu prüfen. Nicht automatisch den
|
||
abgeschlossenen Berufs-Ausbau oder die vertagte Instanzarbeit beginnen.
|
||
|
||
---
|
||
|
||
# Fortsetzung am 27.10.2026 – aktueller Stand hat Vorrang
|
||
|
||
Der unten erhaltene Sitzungswechsel-Checkpoint ist historisch. Der Berufs-Ausbau
|
||
ist jetzt vollständig gebaut (`-j10`), auf dem Testserver installiert und die
|
||
Migration `_05` ist auf der Test-World-DB angewendet. **37 Testskripte bestanden**.
|
||
Keine Änderungen wurden gepusht. Branch bleibt `feature/clientless-player-core`.
|
||
|
||
Seit dem Checkpoint behoben:
|
||
- Berufsarbeit an GOs nähert sich nach Verdrängung erneut, bevor weitere Gesten laufen.
|
||
- Native unsichtbare Arbeitsplatzmarker verwenden VMAP-Sichtprüfung zur Arbeitsfläche
|
||
(mindestens 1,5 Yards über dem Marker); Bodenmarker im Amboss blockierten zuvor die Szene.
|
||
- Location-Abfrage liest numerische native Spalten ohne COALESCE-Widening. Debug verlor
|
||
zuvor `is_area`/`faction`; Elwynn wird live jetzt korrekt als `area=1` geladen.
|
||
|
||
Zusätzliche Tests: echter Lua-5.4-Professionsparser mit Arthoran/generic und ungültigen
|
||
Profilen; native Lock-/Station-/Kadaver-/Trainerklassifikation; Szene erst nach Ankunft,
|
||
Profilentzug, Wiederannäherung; SQL-Fixtures mit erhaltenen Gewichten/Freigaben;
|
||
erreichbare Gebietsknoten; progressive Suche und Uferbedingungen; echte Debug-Fieldgetter
|
||
und VMAP-Sichtlinienadapter. Siehe `tests/clientless/test_adventure_profession_*.py`,
|
||
`test_adventure_area_node.py` und erweiterte bestehende Harnesses.
|
||
|
||
Live bestätigt:
|
||
- Frische Ready-Meldung, laufender Prozess und Port 8085 nach Installation.
|
||
- Arthoran lädt zwei Hauptberufe; Profil ist bytegleich wiederhergestellt:
|
||
`social` / `goldshire_tavern`, mining + blacksmithing. Kein temporäres Profil liegenlassen.
|
||
- Reguläre Anreise zu `poi_guard_541` über Graph, Taxi und Bodenwege.
|
||
- `smithing_show` wählt echtes Anvil-GO **201415**, Low **556**; Work-Emote **233**;
|
||
`PROFESSION_WORK_COMPLETE` und `PROFESSION_VISIT_COMPLETE` nach Abschluss.
|
||
- `profession_herbalism` live als nicht verfügbar zurückgewiesen. Die isolierte
|
||
Profilprüfung auch bei vorhandener Pflanze ist durch den produktiven Zieltest belegt.
|
||
- Nach `saveall` unveränderte Geld-/Inventar-Prüfsumme:
|
||
`8d40931782d05219466ba9fd077ce7acd3e02bd53eb63f6e96115042c620d26a`.
|
||
- Elwynn-Auftrag `profession poi_tele_338` lädt `area=1`, startet `travel_to_node`,
|
||
erreicht mit bestehendem Free-flight-Fallback den Gebietsknoten und meldet `INTENT_ARRIVED`.
|
||
Lokale `profession_search` absolvierte danach alle sechs progressiven MMAP-Wegpunkte
|
||
(ca. 104 Yards, `LEISURE_COMPLETE`, legs=6).
|
||
- Letzter geprüfter Testserverprozess: PID 28577, frische Ready-Meldung und Port 8085.
|
||
Beim Wiederaufnehmen immer den tatsächlichen Zustand neu prüfen.
|
||
|
||
Offener Befund: Der erste Intentwechsel während aktiver Goldshire-Anreise geriet in
|
||
Graph-Handover-/Recovery-Schleifen zum nächstgelegenen `portal_at_109_target`.
|
||
Für die gezielten Tests wurde deshalb nur beim Login die Startvorgabe temporär
|
||
geändert und danach bytegleich restauriert. Dieses Travel-Handover ist NICHT als
|
||
behoben zu betrachten. Navigationslog enthält die Vorgänge ab 17:43.
|
||
|
||
Dokumentation: [profession-intent.md](profession-intent.md). Visuelle Abnahme bleibt
|
||
beim Nutzer; Freizeit-Ausritt/Rundflug und Schlafdarstellung bleiben zurückgestellt.
|
||
Alle ursprünglichen Regeln und fachlichen Festlegungen unten gelten weiterhin.
|
||
|
||
---
|
||
|
||
# Gesicherter Arbeitsstand – hier fortsetzen
|
||
|
||
Stand: 27.10.2026. Der Nutzer hat die Implementierung ausdrücklich für einen
|
||
Codex-Sitzungswechsel unterbrechen lassen. Diese Notiz ist die maßgebliche
|
||
Übergabe. Nicht bei null beginnen und keine vorhandenen Änderungen verwerfen.
|
||
|
||
## Sofort beim Wiederaufnehmen
|
||
|
||
1. `AGENTS.md` und diese Datei lesen; Branch und Working Tree prüfen.
|
||
2. Ausschließlich `feature/clientless-player-core`, niemals `master`, kein Push.
|
||
3. Der unten beschriebene Berufs-Ausbau ist **unfertig und NICHT installiert**.
|
||
4. Der laufende Build wurde zur Sicherung geordnet mit SIGINT unterbrochen.
|
||
Vor erneutem Bauen trotzdem nach verbleibendem CMake/Ninja-Prozess sehen.
|
||
Keine zwei Builds gleichzeitig. Immer **`-j10`**, niemals `-j4`.
|
||
5. Neueste Compiler-/Teststände prüfen und die untenstehenden offenen Arbeiten
|
||
fortsetzen. Kein Installieren eines nur teilweise gebauten Standes.
|
||
|
||
## Aktueller Auftrag und verbindliche Nutzerentscheidungen
|
||
|
||
Wir arbeiten am Intent **Beruf (`profession`)**, nach Geselligkeit, Ruhe,
|
||
Freizeit, Wirtschaften und dem Abenteuer-Erkundungsausbau. Danach folgen
|
||
Instanzbesuche. Kampf kommt GANZ AM ENDE, gemeinsam mit reaktiver Selbstwehr
|
||
(z. B. bei Angriff während einer Reise).
|
||
|
||
- Alle Berufsaktionen bleiben **dauerhaft rein performativ**. Es wird NICHT
|
||
tatsächlich abgebaut, gesammelt, gekürschnert, produziert, gefangen oder
|
||
geheilt. Keine Beute, Quellenerschöpfung, Inventar-/Materialänderung,
|
||
Fertigkeitserhöhung oder tatsächliches Erlernen. Nicht „zunächst“ schreiben.
|
||
- Hauptberufe dürfen NUR ausgeführt werden, wenn sie im Lua-Charakterprofil
|
||
ausdrücklich eingetragen sind. Nebenberufe brauchen diese Freigabe nicht;
|
||
Vorlieben werden später weiter über gewichteten Zufall ausgestaltet.
|
||
- Der Nutzer hat die Rückfrage ausdrücklich beantwortet: **Arthoran hat
|
||
Bergbau und Schmiedekunst**. In seinem Profil stehen deshalb dauerhaft
|
||
`professions = { primary = { "mining", "blacksmithing" } }`.
|
||
KEIN Kräutersammeln bei ihm erlauben, auch nicht vor vorhandenen Pflanzen.
|
||
Das generische Profil enthält eine leere Hauptberufsliste.
|
||
- Ort und Gebiet sind gleichberechtigte Ziele. Ein Bot soll z. B. das Gebiet
|
||
Elwynn anreisen und dort lokal selbst nach passenden Ressourcen suchen.
|
||
- **Hierarchie:** Tagesplan wählt Intent, dann passender importierter Ort,
|
||
dann lokal mögliche Mikroaktion. Der Ortsbestand darf die Intentauswahl
|
||
nicht vetoieren. Die Location-/Intent-Katalogzuordnung legt die Eignung fest.
|
||
- Eine für `profession` geeignete Location (auch ein ganzes Gebiet) schaltet
|
||
NICHT alle Berufsaktionen frei. Schmieden braucht einen echten nahen Amboss,
|
||
Schmelzen eine Esse, Kräutersammeln eine tatsächliche Pflanze UND Profilrecht.
|
||
- Gebietsanreise ist bereits vorhanden: `AdventureBehaviorMgr::AreaNode`
|
||
sucht einen ERREICHBAREN Graphknoten im Zielgebiet, `Begin` reist über
|
||
`travel_to_node`; die Ankunft wird gegen das Gebiet geprüft.
|
||
- Abenteuer soll regulär draußen in passenden Weltgebieten stattfinden.
|
||
Sturmwind ist nur Testgebiet; keine zusätzlichen Stadt-Sonderregeln bauen,
|
||
sondern passende gespeicherte Locations/Intent-Gewichte verwenden.
|
||
- Ausritte, Freizeit-Rundflüge und Schlafdarstellung sind auf Nutzerwunsch
|
||
weiterhin für spätere visuelle Tests zurückgestellt. Jetzt nicht testen.
|
||
|
||
## Umgebung und Betriebszustand beim Sichern
|
||
|
||
- Source: `/home/wow_admin/wow_cata_server/source/TrinityCore`.
|
||
- Build: `/home/wow_admin/wow_cata_server/build/debug`, Ninja, Debug.
|
||
- Install: `/home/wow_admin/wow_cata_server/server/debug`.
|
||
- Testserver: tmux `vcore-worldserver`, cwd `server/debug/bin`, `./worldserver`.
|
||
- Vor dem Sichern lief **PID 19058**, letzter installierter Abenteuer-Ausbau.
|
||
Diesen nicht blind wiederverwenden: Prozesszustand beim Fortsetzen prüfen.
|
||
- Arthoran: Charakter GUID **26**, Account 6, aktuell Abenteuer am importierten
|
||
Sturmwind-Ort `poi_tele_954`. Allitester GUID 21 kann als Zuschauer online sein.
|
||
- Der BERUFS-Ausbau wurde noch nicht installiert; SQL-Migration `_05` wurde
|
||
noch NICHT eingespielt. Der laufende Server ist daher der vorherige Stand.
|
||
- Arthorans normale Startvorgabe im gespeicherten Lua-Profil ist wieder
|
||
`social` / `goldshire_tavern`. Es gibt aktuell KEIN temporäres Login-Profil.
|
||
- Der letzte Build wurde mit j10 unterbrochen, bei 749/751 Schritten (libgame.a gelinkt; letzte Linkschritte noch offen). Die nächste
|
||
inkrementelle Ausführung kann normal weiterbauen; Objektdateien erhalten.
|
||
- Erster Build hatte nur den Fehler `Creature::GetDeathState` statt
|
||
`getDeathState`. Das wurde bereits korrigiert. Der daraufhin neu gestartete
|
||
Build hatte bis zur Unterbrechung keine weiteren gemeldeten Compilerfehler.
|
||
- CMake wurde mit den bestehenden Einstellungen neu ausgeführt, um die neue
|
||
`AdventureProfessionTargets.cpp` einzusammeln (CollectSourceFiles ohne
|
||
CONFIGURE_DEPENDS). Das löste einen größeren Build aus. Nicht grundlos
|
||
erneut konfigurieren, nur mit j10 weiterbauen.
|
||
|
||
## Bereits geschriebene, noch unfertige Berufs-Implementierung
|
||
|
||
### Profil und Regeln
|
||
|
||
- `AdventureProfessionPolicy.h`: reine Regeln/Task-Spezifikationen, elf
|
||
Hauptberufe, kanonische englische Bezeichner, Nebenberufe ohne Primärfreigabe.
|
||
Hauptberufsrecht stammt aus dem Profil, NICHT aus `Player::HasSkill`.
|
||
- `ClientlessAdventureProfile::PrimaryProfessions` und Lua-Parser für
|
||
`professions.primary` als Array. Unbekannte Namen warnen und gewähren nichts.
|
||
- `arthoran.lua`: mining + blacksmithing. `generic.lua`: leeres Array.
|
||
- `Trainer.h`: nur neuer generischer, read-only Zugriff `GetSpells() const`.
|
||
Kein Lernen/Trainer-Handler wird aufgerufen.
|
||
|
||
### Echte Ressourcen und Arbeitsplätze
|
||
|
||
- Neu: `AdventureProfessionTargets.{h,cpp}`.
|
||
- Erz/Pflanzen: echte aktive CHΕST-GOs, native Lock-/Skill-Anforderungen aus
|
||
`sLockStore` / `SkillByLockType`, nicht bloß Namen oder Locationkategorie.
|
||
Nur sichtbare, phasenrichtige, bereite und erreichbare Ziele.
|
||
- Kürschnerei: vorhandener toter BEAST-Kadaver im Zustand CORPSE mit nativem
|
||
SKINNABLE-Flag. Kein Erzeugen/Töten eines Tiers. Kampf/Jagd später.
|
||
- Arbeitsplätze: neuer editierbarer Katalog `vcore_adventure_workstation`
|
||
mit GO-Templateentry, semantischer Rolle und enabled. Keine Bot-/Ort-ID-Liste.
|
||
Native Fokuskennungen geprüft: 1 Amboss, 3 Esse, 4 Kochfeuer, 663 Alchemielabor,
|
||
1589 Lexikon. 623/543 sind besondere Amboss-/Essenfokusse.
|
||
- Native unsichtbare SPELL_FOCUS-Marker repräsentieren reale Kartenarbeitsplätze
|
||
und dürfen dafür genutzt werden. Keine Aktivierung/Objektbenutzung.
|
||
- Rollen ohne reale erkennbare Arbeitsplätze bleiben nicht verfügbar; keine
|
||
beliebige Werkstatt-Location als Amboss behandeln.
|
||
- Trainer: native Tradeskill-Trainer, deren native Spell-/SkillLine-Daten zu
|
||
einem erlaubten Haupt- oder einem Nebenberuf passen. Reines Gespräch.
|
||
|
||
### Szenen und bestehende Legacy-Aktionen
|
||
|
||
- Wiederverwendete `AdventureSocialActions` mit `Cue::Work`, professionellen
|
||
Zielprüfungen, nativen Emote-Zuständen, Abschlussbetrachtung und kurzem
|
||
Wegtreten. Keine Harvest-/Craft-/Loot-/Teach-/Heal-Aufrufe.
|
||
- Profil und Ziel werden auch während der Szene erneut geprüft.
|
||
- Alte `mining_show` / `smithing_show` (Kind `work`, Requirement ore/forge)
|
||
werden in `ResolvedAction` auf dieselben neuen gesperrten Szenen umgelegt.
|
||
Es darf KEIN Legacy-Bypass der Profil- oder Arbeitsplatzprüfung verbleiben.
|
||
- Nach vollständiger Sammeldarstellung wird `work:<GUID>` in der bestehenden
|
||
Zielhistorie gespeichert. Kürzlich bearbeitete Ressourcen werden gemieden,
|
||
damit die unverändert stehen bleibende Quelle nicht endlos wiederholt wird.
|
||
Nur Erzbetrachtung (`ore_inspect`) setzt diese Bearbeitungssperre nicht.
|
||
|
||
### Gebietssuche / gemeinsame Erkundungssteuerung
|
||
|
||
- Neue Suche `profession_search`, Requirement `work_search`, Kind `outing`.
|
||
- Wiederverwendete MMAP-Routensteuerung: progressive Hinwege, an erreichten
|
||
Kontrollpunkten erneut mögliche Berufsarbeit prüfen und Suche dann beenden.
|
||
- Bei Gebietsaufträgen wird der lokale Anker nach bestätigtem Suchfortschritt
|
||
verschoben. Weiteres Durchsuchen bleibt über jeden MMAP-Punkt im Zielgebiet.
|
||
- Gebiets-Abenteuerwege sind jetzt ebenfalls progressiv; normale Freizeitwege
|
||
bleiben bestätigte Hin-/Rückwege. Keine Stadt-Sonderregel.
|
||
- Zusätzliche native Uferprüfung für performatives Berufsangeln im Gebiet,
|
||
ohne zwingenden speziellen Fishing-Location-Key. Ausgerüstete Angel bleibt
|
||
nötig. Kein wirklicher Angelzauber/Fang. Noch nicht live getestet.
|
||
|
||
### Neue Migration
|
||
|
||
`sql/custom/world/2026_10_27_05_adventure_profession.sql` (noch NICHT angewendet):
|
||
Arbeitsplatzrollen, neue Arbeits-/Such-/Nebenberufs-/Gesprächsaktionen,
|
||
Berufsgewichtung für Gebiet/Wildnis/Siedlung, neue Texte. Native Fokusdaten
|
||
haben Vorrang; Namen ergänzen nur erkennbare geeignete Props. Geänderte
|
||
Gewichte/disabled-Rollen sollen bei Wiederholung erhalten bleiben.
|
||
|
||
## Offene Arbeiten – konkret hier weiter
|
||
|
||
1. Aktuellen C++-Diff kritisch prüfen; dies ist ein WIP, keine fertige Abnahme.
|
||
Insbesondere Berufsszenen, Legacy-Auflösung, progressive Ankeraktualisierung,
|
||
Ressourcen-Wiederholungsdämpfung und Uferprüfung gegen Nutzerregeln prüfen.
|
||
2. `cmake --build /home/wow_admin/wow_cata_server/build/debug -j10` fortsetzen.
|
||
Vorher prüfen, dass kein alter Build mehr läuft. Weitere Fehler beheben.
|
||
3. Vollständige Tests erneut laufen lassen. Vor dem Berufs-Ausbau waren
|
||
**32 Tests grün**. Seitdem gab es 7 Mock-/Harness-Anpassungsfehler, deren
|
||
Fixes bereits TEILWEISE geschrieben sind. Alte Fehlerdateien sind historisch!
|
||
- Economy/Exploration/Social-fire: neues Policy-Include und Profilfelder,
|
||
Targets-Stub für zusätzlich mitkompilierte Zweige.
|
||
- Social: Map-/Position-/Origin-Stubs und native Work-Emotes ergänzt;
|
||
zuletzt nach INVALID_HEIGHT-Fix wieder grün.
|
||
- Exploration und Leisure: nach Anpassungen zuletzt wieder grün.
|
||
- Intent-state: neue Scene-Felder Progressive/Route/Step ergänzt;
|
||
letzter Fehler fehlende Player::GetExactDist(Position const&). Der
|
||
Überladungs-Fix ist bereits geschrieben, aber noch nicht erneut geprüft.
|
||
- Rest-fire: PrimaryProfessions in Mock-Profil/-Kontext ergänzt;
|
||
aktuellen Zustand durch erneuten Lauf prüfen.
|
||
4. Neue aussagekräftige Berufs-Tests fehlen noch! Geplant:
|
||
- tatsächlichen neuen Lua-Parser mit realem Lua 5.4 ausführen, inklusive
|
||
Arthoran mining/blacksmithing, leeres/ungültiges Profil sperrt Hauptberufe;
|
||
- Mining+Smithing darf vorhandene Kräuter NICHT bearbeiten, umgekehrt darf
|
||
Herbalism+Alchemy keine Erz-/Schmiedearbeit; sekundäre Aktionen ohne Liste;
|
||
- produktive native Zielklassifikation: Lock-Skills statt Namen, Amboss
|
||
versus Esse versus bloße Workshop-/Gebietszuordnung, falsche Phase,
|
||
despawnte/gelootete Quelle, Kadaverprüfung und passende Trainer;
|
||
- native Arbeitsgeste erst NACH tatsächlicher Ankunft, Profilentzug während
|
||
laufender Szene, keine Objektbenutzung/Casts/Inventaränderung, Abschluss;
|
||
- Migration auf Schemafixtures ausführen, Idempotenz und bearbeitete
|
||
Gewichte/Arbeitsplatzfreigaben erhalten;
|
||
- Gebiets-Anreise über erreichbaren Graphnode und lokale progressive Suche
|
||
innerhalb des Gebiets, Stopp bei gefundenem zulässigem Arbeitsplatz.
|
||
5. Erst dann neue Migration auf TEST-DB anwenden. Noch kein profession_apply-
|
||
Modus im gesicherten DB-Helfer! Ergänzen oder engen eigenen Helfer schreiben.
|
||
6. Erfolgreichen Build nach sauberem Serverstopp installieren, neu starten und
|
||
frische Ready-Meldung + Prozess + Port 8085 prüfen. AGENTS-Recovery beachten.
|
||
7. Live prüfen: tatsächlicher Amboss in Sturmwind (z. B. importierter
|
||
`poi_guard_541`, Schmiedebereich), dann Gebietsziel `poi_tele_338` = Elwynn,
|
||
Gebiet 12, echtes travel_to_node und lokale Ressourcen-/Arbeitsplatzsuche.
|
||
Kräuter muss Arthoran verweigern. Inventar/Geld und Ressourcen unverändert
|
||
nachweisen. Keine gefälschten Ressourcen, Spawns oder Teleports.
|
||
8. Berufs-Dokumentation schreiben, Katalog-/Standdokumente aktualisieren und
|
||
offen gebliebene Live-/visuelle Prüfungen ehrlich benennen.
|
||
|
||
## Wichtige vorherige Ergebnisse – nicht neu implementieren
|
||
|
||
- Reisegraph: optionale virtuelle Exits regelmäßig (6 s) während Weiterbewegung
|
||
prüfen, kein Abbruch nach fünf Versuchen, Kante nicht mitten darin umkehren.
|
||
Free-flight-Fallback getrennt von künstlichen Normalreise-Auswahlregeln.
|
||
- Ruhe/Feuer: gemeinsames natives Kochfeuer 818, neue Feuer nie in Gebäuden/
|
||
Städten. Schlafdarstellung weiterhin vertagt.
|
||
- Freizeit: Katze (Spell 10673, Creature 7385), Leine (Item 37460, Spell 48722),
|
||
echte native Begleiter-/Itemverwendung. Kanal beim Gehen erhalten. Owned-only
|
||
Cleanup, keine Veränderung fremder Begleiter. Nutzer hat sichtbare Katze,
|
||
Leine, zusammenhängende Routen und flüssige Bewegung ausdrücklich abgenommen.
|
||
- Native Follow-Fix: aktive Player-Splinegeschwindigkeit statt Run-Flag wählen;
|
||
SetWalk setzt die Gait-Auswahl, nicht MOVEMENTFLAG_WALKING. Das beseitigte
|
||
die ständigen Zwei-Meter-Pausen. Nicht wieder entfernen.
|
||
- Native Spline-Kurzsegment-Fix: 0,11 Yards Mindestabstand beim Splitten.
|
||
- Wirtschaften rein performativ; Händler/Bank/AH und Vergleich mit zwei GUIDs
|
||
technisch live geprüft, Geld/Inventar danach bytegleich.
|
||
- Importfehler behoben: SMALLINT maps über GetUInt16 statt GetUInt32, das in
|
||
Debug Null ergab. Gezielte, idempotente `clientless adventure repairimport`
|
||
reparierte 2.159 unveränderte abgeleitete Orte, ergänzte 217. Jetzt **2.864**
|
||
aktive semantische Locations / 3.857 Worldpoints. 16 manuelle Orte unverändert.
|
||
Vier Horde-Hauptstädte korrekt auf Karte/Fraktion zugeordnet. Nicht die
|
||
originalen world-DB-Quellen ändern. Snapshots liegen bei dieser Übergabe.
|
||
- Location-Zuordnung: kein versteckter Wirtschaften-Fallback mehr im Code;
|
||
`_04` materialisiert ausdrückliche Kategorie-/Intent-Gewichte, inklusive
|
||
begrenzter Freizeitgewichtung für Tavernen. Tagesplan-Intent unabhängig davon.
|
||
- Abenteuer `_04`: native Objektuntersuchung ohne Use, Scout/Equipment,
|
||
zusammenhängende Bodenwege. Zehn neue Aktionen, 32 Tests bestanden, technisch
|
||
live in Sturmwind: Pestle's Apothecary 197117, Weller's Arsenal 197121,
|
||
80-Yards-Erkundungsweg mit zehn bestätigten Hin-/Rückwegpunkten. Visuelle
|
||
Abnahme und gefährliche offene Welt weiterhin separat.
|
||
|
||
## Werkzeuge, Logs und reproduzierbarer Betrieb
|
||
|
||
Dauerhafte Kopien für diese Übergabe:
|
||
`doc/clientless/checkpoints/2026-10-27-profession/`.
|
||
Darin Build-/Configurelogs, historische fehlgeschlagene Testausgaben,
|
||
Ortskatalog-Snapshots und die bisherigen schmalen DB-Helfer. Diese Helfer lesen
|
||
Verbindungsdaten aus der lokalen Testserverkonfiguration; keine Passwörter
|
||
im Chat/Logs ausgeben. Sie enthalten keine fest codierten Zugangsdaten.
|
||
Die Helfer bei Bedarf wieder nach `/tmp` kopieren; Pfade gelten für diesen Host.
|
||
|
||
Wichtige Live-Logs (normal und ohne vorsorgliche Elevation lesen):
|
||
`/home/wow_admin/wow_cata_server/server/debug/bin/Server.log`,
|
||
`adventurebot-navigation.log`, `DBErrors.log`. Server.log wird beim Start neu
|
||
begonnen, Navigations-/DBErrorslogs können ältere Fehler enthalten. Bekannte
|
||
alte Script-/Spell-Warnungen nicht mit neuem Startup-Versagen verwechseln.
|
||
|
||
Buildbefehle: `cmake --build .../build/debug -j10`, bestehende Installation
|
||
mit `cmake --install .../build/debug`. Tool-Sandbox für Build/Install/tmux/DB
|
||
beachten, aber normale Logs nicht vorsorglich eskalieren. Keine laufende
|
||
Executable überschreiben. Kein Push.
|
||
|
||
Für gezielte Tests nach Restart wurde bisher nur beim Login die Startvorgabe
|
||
in arthoran.lua temporär geändert, vorher byteweise gesichert, nach
|
||
`[AdventureBot][Profile] loaded guid=26` exakt zurückgesetzt. Die jetzt dauerhaft
|
||
vereinbarten Hauptberufe dabei unbedingt erhalten. Keine temporären Profile
|
||
liegenlassen. Alternativ normalen Login abwarten und per Console Intent setzen;
|
||
auf unerwünschte automatische Goldshire-Anreise achten.
|
||
|
||
Console-Beispiele ohne führenden Punkt:
|
||
`clientless login 26`, `clientless adventure status 26`,
|
||
`clientless adventure intent 26 profession poi_guard_541 3600`,
|
||
`clientless adventure intent 26 profession poi_tele_338 3600`,
|
||
`clientless adventure micro 26 <action_key>`, `saveall`.
|
||
|
||
Der Nutzer möchte vor allem konkrete, überprüfte Ergebnisse und wenig
|
||
Bestätigungsfragen. Die Hauptberufs-Rückfrage ist bereits BEANTWORTET; nicht
|
||
noch einmal stellen. Testservermanagement und lokale Commits sind autorisiert.
|