Back to legacygamers.net
WARPGATE

Pathfinding

A* pathfinder, CSkillTree (Dijkstra), CSkillEdge/Gate, CNavigation, bresenham

Functions 176Code 45 KBAddresses 0x00574C00 to 0x00DA4D60
176 functions
AddressSizeNameDescription
0x00574C00453bresenham_circle_plot_8pointsAppends 8 octant-symmetric circle points (x±a±b, y±b±a) to vector, used by Bresenham circle rasterization.
0x00574DD0445generate_circle_cellsGenerates circle cells via Bresenham algorithm, sorts coordinates, deduplicates, returns deduplicated cell array for AoE/pathfinding.
0x006311B0203CNavigationMgr__ConstructorInitializes CNavigationMgr with vtable, creates two rb-tree sentinel nodes for navigation data structures.
0x006A65D069CSkillTreeNode__SetSlotDataStores skill tree node slot data (skill ID, level, flags) with bounds checking for up to 5 slots.
0x0073480074CSkillTreeNode__DestructorDestructor for CSkillTreeNode class that deallocates internal STL vector buffer and cleans up resources.
0x007348F096CSkillTreeNode__ScalarDeletingDestructorScalar deleting destructor for CSkillTreeNode; frees internal vector buffer and conditionally deallocates object memory.
0x0073646033CSkillTreeMgr__ScalarDeletingDestructorScalar deleting destructor for CSkillTreeMgr; sets vftable, optionally deletes object if flag set.
0x00736490162CSkillTreeMgr__CreateInstanceSingleton initialization for CSkillTreeMgr; allocates and constructs instance if not already created, returns success status.
0x00736760390CSkillTreeMgr__ConstructorInitializes CSkillTreeMgr with vtable, allocates 5 linked lists (0x4c/0x1c/0x20/0x18 bytes) and vectors for skill tree group management.
0x007368F0362CSkillTreeEntry__CopyConstructorCopy constructor for CSkillTreeEntry that deep-copies skill data (0x34 bytes) and vector of requirement pairs (8-byte elements).
0x00736A6064CSkillTreeMgr__delete_member_0x20Deletes a dynamically allocated member (0x4c bytes) from CSkillTreeMgr at offset +4 with stack canary protection
0x00736AB064CSkillTreeMgr__DeleteMember0x20Destructor that safely deletes a dynamically allocated member (28 bytes) at offset 0x20 in CSkillTreeMgr with XOR-based stack canary protection
0x00736B0064CSkillTreeMgr__delete_member_0x20_cDeletes a 0x20-byte allocated member from CSkillTreeMgr object at offset +4 with stack canary protection.
0x00736B5064CSkillTreeMgr__delete_member_0x20_dDestructor that deallocates a 0x18-byte heap object stored at offset +0x4 in CSkillTreeMgr with XOR stack canary protection.
0x00736BA0103CSkillTreeMgr__destroy_callback_and_delete_0x4cDestroys skill tree manager callback by invoking virtual destructor and deallocating 0x4c bytes with SEH guard.
0x00736D50108CSkillTreeMgr__reset_vtable_and_delete_0x20Destructor for CSkillTreeMgr that resets vtable and deallocates 0x20 bytes from heap with stack canary protection.
0x00736DC075CSkillTreeMgr__delete_member_0x28Deletes a 0x18-byte member object at offset +0x4 in CSkillTreeMgr instance with SEH protection.
0x00736E1075CSkillTreeMgr__delete_member_0x28_bDestructs a member at offset 0x28 in CSkillTreeMgr, deallocating 0x1c bytes if pointer is non-null
0x00736E6075CSkillTreeMgr__DeleteMember0x28Destructor that deallocates a 0x20-byte member structure at offset +0x4 in CSkillTreeMgr object with stack canary validation.
0x00736EB075CSkillTreeMgr__delete_member_0x28_dDeletes a 0x18-byte allocated member at offset 0x28 in CSkillTreeMgr instance with stack canary protection.
0x0073704065CSkillTreeGroup__DestroyTreeDestroys and deallocates a skill tree structure, clearing all nodes and freeing associated memory.
0x0073709068CSkillTreeGroup__DestroyListDestroys and deallocates all nodes in a CSkillTreeGroup list container, with stack canary protection.
0x007370E067CSkillTreeListItem__SetVtablePtrSets vtable pointer for CSkillTreeListItem object to scalar deleting destructor with 0xc size offset.
0x00737130144CSkillTreeGroup__DestructorDestructor for CSkillTreeGroup class that deallocates skill tree nodes, lists, vectors, and maps in proper cleanup sequence.
0x00737540144CSkillTreeGroup__Destructor_2Destructor for CSkillTreeGroup that deallocates internal STL containers (list, vectors, tree/map) and skill tree nodes recursively.
0x0073765032CSkillTreeEntry__ScalarDeletingDestructorScalar deleting destructor for CSkillTreeEntry; calls destructor and conditionally frees 0x44-byte object if flag set.
0x007376B087CSkillTreeMgr__UpdateOrAddEntryUpdates existing skill tree entry by skill ID or adds new entry; returns 0 if updated, 1 if added.
0x00737710166CSkillTreeMgr__OnSkillLevelUpUpdates skill group effect map when skill level increases, inserting new effect entry if level progressed.
0x007377C0118CSkillTreeMgr__ClearAllEntriesClears skill tree manager state by destroying map and tree node structures at offsets +0x28/+0x30, resetting linked list sentinels and counters.
0x0073795077CSkillTreeList__RemoveNodeByIDRemoves a skill tree node by ID from a doubly-linked list, calls destructor, and frees memory.
0x00737B3097CSkillTreeMgr__AddSkillAndNotifyUIAdds skill ID to skill tree vector, notifies UI window (type 0x25) to refresh, and pushes skill group data.
0x00737BA070CSkillTreeMgr__DestroyMapNodeDestroys a skill tree map node by unlinking it from a doubly-linked list and freeing its allocated memory.
0x00737BF075CSkillTreeMgr__RemoveSkillNodeByIDRemoves a skill node from the skill tree manager's linked list by ID and deallocates its memory.
0x00737CB043CSkillTreeMgr__FindEntryByIDSearches a doubly-linked list in CSkillTreeMgr for an entry matching the given ID, returns pointer to entry data or NULL.
0x00737CE028CSkillTreeMgr__AssignIndicesAssigns sequential indices to nodes in a linked list structure, storing index at offset 0x2C in each node.
0x00737D0043CSkillTreeMgr__FindEntryByID_altSearches a doubly-linked list for a skill tree entry by ID, returns pointer to entry or NULL if not found.
0x00737D3048CSkillTreeMgr__FindEntryByID_safeSearches skill tree entries by ID within a linked list; returns pointer to entry data or null if not found.
0x00737D60150CSkillTreeMgr__GetEntryByIndexRetrieves skill tree entry at specified index from linked list, copying to output buffer or initializing default if not found.
0x00737E00150CSkillTreeMgr__GetEntryBySkillIDSearches skill tree linked list for entry matching skill ID, copies to output or initializes default if not found.
0x00737EA0150CSkillTreeMgr__GetEntryBySkillID_MainSearches skill tree main list for entry matching skill ID, returns copy via CopyConstructor or default if not found.
0x00737F4044CSkillTreeMgr__MarkAllEntriesUpdatedIterates through skill tree entries and marks each with flag 0x14=1 to denote they've been updated
0x00737F7036CSkillTreeMgr__HasEntryByIDSearches a doubly-linked list for a skill tree entry matching the given ID; returns true if found.
0x00737FA039CSkillTreeMgr__IsGroupLevelBelowMaxChecks if a skill tree group's current level is below its maximum level cap by comparing short and int values at fixed offsets.
0x00737FD0127CSkillTreeMgr__CollectMatchingSkillIDsCollects skill IDs matching a search criterion into a vector, comparing skill values against a target threshold.
0x00738050150CSkillTreeMgr__UpdateEffectMapEntryUpdates skill tree effect map entry by inserting or retrieving effect data based on skill ID parameters.
0x007380F017CSkillTreeMgr__ClearFirstNodeField6Clears field 6 of the first node in CSkillTreeMgr's node list if list is non-empty
0x00738110188CSkillTreeMgr__ForEachSkillWithCallbackIterates skill tree groups and entries, invoking a callback function on each skill entry node.
0x007382F037CSkillTreeMgr__ClearAllNodesClears all skill tree nodes by recursively deleting map contents and reinitializing the STL map structure and node count.
0x0073832079CSkillTreeMgr__FindGroupByIDSearches skill tree groups by ID, iterating through a tree container and nested lists to find matching group identifier.
0x00738370242CSkillTreeMgr__FindSkillEntryLooks up skill entry by ID in skill tree map, returns entry data or global empty entry if not found.
0x00738470130CSkillTreeMgr__FindGroupByIdTraverses skill tree group hierarchy to find and return group data matching the given group ID parameter.
0x0073850072CSkillTreeMgr__FindSkillGroupByJobIDFinds skill group entry by job ID using STL map lower_bound, returns group data pointer or null if not found.
0x0073855028CSkillTreeMgr__GetGroupMaxLevelRetrieves the maximum level for a skill tree group by looking up the group ID and returning the max level value at offset 0x10.
0x0073857029CSkillTreeMgr__SetSkillUseLevelSets skill use level at index param_2 in skill tree manager's level array, with bounds check (0x1f3e entries).
0x00738590287CSkillTreeMgr__UpdateSkillRangeUpdates skill tree node level ranges by adding pending skills to removal queue and deleting nodes marked for removal.
0x00739430170CSkillTreeGroup__PushBackAppends a new CSkillTreeEntry to a doubly-linked list, incrementing count; throws if list exceeds 0x35e50d7 entries.
0x007394E012CSkillTreeGroup__PushBack_thunkThunk wrapper that delegates to CSkillTreeGroup::PushBack() to add an element to skill tree group container
0x00739700123CSkillTreeEntry__InitDefault_UnknownInitializes a CSkillTreeEntry object with default values and "Unknown-Skill" placeholder name.
0x00739780121CSkillTreeEntry__InitDefaultC++ constructor initializing CSkillTreeEntry with default values: vptr, validity flag, and zeroed fields.
0x0073981033CSkillTreeEntry__ReleaseTextureRefReleases texture reference by calling virtual destructor on member at offset 0x24, nullifying the pointer afterward.
0x0073984033CSkillTreeEntry__ReleaseTextureRef_bReleases texture reference by calling virtual destructor/release method on object stored at offset +36 bytes in CSkillTreeEntry.
0x0073987033CSkillTreeEntry__ReleaseTextureRef_cReleases texture reference by calling virtual destructor on object at offset 0x24, then nullifies the pointer.
0x007399C092CSkillTreeMgr__ReleaseSkillTreeNodeReleases a skill tree node by calling its virtual destructor; clears member at offset 0x24 (likely node pointer).
0x00739A2092CSkillTreeMgr__release_member_9Releases/deletes object at offset 0x24 (member at index 9), calls virtual destructor if non-null
0x00739A8092CSkillTreeMgr__release_vtable_member_0x24_cReleases a skill tree node object at offset 0x24 by calling its destructor via virtual method at vtable+0x10
0x00739CD074CSkillTreeEntry__DestructorDestructor for CSkillTreeEntry that sets vtable pointer and deallocates internal vector storage at offset +8.
0x00739D4089CSkillTreeMgr__DestroyAtShutdownDestructor for CSkillTreeMgr that recursively destroys skill tree data structures and deallocates memory at shutdown.
0x00739E20194CSkillTreeEntry__GetLevelUseApAmountLuaAllocates buffer, copies skill AP cost data structure, invokes Lua script function callback for level-based AP consumption.
0x00739EF0194CSkillTreeEntry__GetLevelUseApAmountAllocates and populates a 20-byte structure from s_GetLevelUseSpAmount data, then invokes Lua script callback.
0x00739FC0196CSkillTreeEntry__GetSkillNameRetrieves skill name via Lua, remaps skill IDs 0x13b2→0x13a4 and 0x13b3→0x13ac, returns "Unknown-Skill" on failure
0x0073A090169CSkillTreeEntry__GetSkillIdNameCalls Lua GetSkillIdName function to retrieve skill name by ID; returns "Zero Skill" on failure.
0x0073A140167CSkillTreeEntry__GetSkillIdName_ByIDCalls Lua script function GetSkillIdName to retrieve skill name by ID, returns "Zero Skill" on failure
0x0073A1F0194CSkillTreeEntry__GetSkillName_ByIDCalls Lua GetSkillName function to retrieve skill name string by skill ID, with hardcoded ID mapping for two special cases.
0x0073A2D0159CSkillTreeEntry__CheckTargetTypeChecks if a skill ID requires ground/AoE targeting; returns 1 for ground-target skills, 0 otherwise.
0x0073A580705CSkillTreeMgr__IsSpecialSkillClassifies skill IDs as special skills via massive switch statement; returns 1 for special skills, delegates others to FUN_00742600
0x0073ADB0164CSkillTreeEntry__IsLevelUseSkillCalls Lua IsLevelUseSkill function to determine if a skill uses level-based consumption mechanics for UI/hotkey systems.
0x0073AE6092CSkillTreeEntry__GetEffectFlagDetermines if a skill should display visual effects in the skill tree UI; returns 0 for no-effect skills, 1 otherwise.
0x0073AF10164CSkillTreeEntry__IsSkillUsesApCalls Lua function to check if a skill consumes AP instead of SP, returns boolean result from Lua.
0x0073E54089CSkillTreeWnd__RemoveAllEffects1004Removes all instances of effect ID 0x3ec from a 3D actor by repeatedly calling a removal callback until none remain.
0x0073EFF0143CSkillTreeMgr__FormatToStringVariantFormats a skill tree value to string variant using printf-style formatting with stack-based buffer management.
0x00744DC070CSkillTreeWnd__RandWrapperStubException handler stub that calls rand(); appears to be SEH wrapper or initialization code with no return path.
0x00A77460305Pathfinder__DestructorDestructor for Pathfinder class; deallocates RB-tree nodes, sprite/effect objects, and associated vectors used for pathfinding.
0x00A77660333Pathfinder__BuildPathResultConstructs final path waypoints from A* linked list, calculates movement timestamps based on speed and diagonal penalties.
0x00A777B01066Pathfinder__FindPathA* pathfinding algorithm that finds shortest path between coordinates using Manhattan heuristic, 8-directional movement with diagonal cost 14 and cardinal cost 10.
0x00A77C90321Pathfinder__AllocateNodeAllocates a pathfinding node from pool (static 0x95-node array or dynamic vector), returns pointer to next free 0x1C-byte node structure.
0x00A77DE0257PathResult__GetDirectionAtTimeRetrieves direction and float coordinates at specified time along a path segment; returns segment index or -1 if out of bounds.
0x00A77EF0646Pathfinder__GetOrCreateNodeAllocates or retrieves A* pathfinding node from pool/vector, maintaining red-black tree index by map cell coordinates for fast lookup.
0x00A78180467PathResult__GetPositionAtTimeInterpolates position and direction along a path at a given timestamp, returning the segment index containing that time.
0x00A78410158Pathfinder__IsCellWalkableValidates if a target cell is walkable for pathfinding, checking bounds, GAT type, and diagonal cell adjacency.
0x00A784D0322Pathfinder__EvaluateNeighborA* pathfinding: evaluates neighbor node, computes g_cost and f_cost with Manhattan heuristic, updates open/closed lists.
0x00A7862087Pathfinder__PushOpenListInserts node into pathfinding open list min-heap, growing vector if needed and maintaining f_cost ordering via heap sift-up.
0x00A78700162Pathfinder__ResetClears pathfinder's closed set (RB-tree) and open list vector, syncing internal state counters for A* search reset.
0x00A78840504Pathfinder__GetOrLoadMapCellRetrieves or allocates a CMapCell from RB-tree cache; loads map data via CRmaFile if new entry.
0x00B2057026CSkillTreeNode__InitTripleInitializes a CSkillTreeNode with three consecutive undefined4 values (likely node ID, parent ID, and skill ID).
0x00B205B0231CSkillTree__ctorInitializes CSkillTree instance with 19 empty vector fields and sets initial pathfinding cost to 50000.
0x00B20A10320CSkillTree__dtorDestructor that clears skill nodes, resets cost to 50000, and releases all internal vectors (paths, children, dependencies).
0x00B20D20108CSkillTree__FindEdgeByIdFinds a skill edge node by ID with optional linear search, or retrieves edge by index if param_3 is false.
0x00B20E10202CSkillTree__ClearClears all skill tree nodes, resets path cost to 50000, and destroys allocated skill node objects via destructor.
0x00B20F901480CSkillTree__ParseCommandParses space-delimited skill tree command strings, tokenizes input, dispatches by command type (2=skill, 3=numeric, 4=string), builds token vector.
0x00B215C0214CSkillTree__CollectNodesByTypeCollects skill tree nodes matching a specified type into output vector, iterating dual node collections and filtering by type ID.
0x00B216A0403CSkillTree__ClassifyLineTypeClassifies skill tree config lines by prefix (0x912-0x915 msg strings); returns type and strips prefix from input string.
0x00B21BC0580CSkillTree__FindNodeByNameSearches CSkillTree node vector by name string, returns index of matching node or 0 if not found.
0x00B21E701621CSkillTree__FindPathBFS pathfinding in skill tree with gate condition evaluation (class/flag checks); returns path as vector of node pointers.
0x00B224E01477CSkillTree__FindOptimalPathFinds optimal skill tree learning path by iterating skill nodes, validating job prerequisites (Novice/1st/2nd/Trans), computing minimum cost via iterative deepening up to 100 iterations, returning ordered skill IDs.
0x00B22B20162CSkillTree__DestroyNodeElementIterates through skill tree node array, zeroing fields and destructing std::string members for each element.
0x00B22C00100CSkillTree__ResetAllNodeCostsIterates through skill tree nodes and resets their cost field (0x88) to -1 for each node in container
0x00B22C70123CSkillTree__CheckGateConditionValidates skill tree gate conditions (class type, boolean flags) returning 0 if gate passes, 1 if blocked.
0x00B22CF0114CSkillTree__EvaluateNodeCostEvaluates skill tree node cost; returns minimum cost and node index, optionally filtering by character class/requirements.
0x00B22D70203CSkillTree__BuildChildListBuilds a child skill list by iterating through skill data and populating a vector with skill IDs and flags.
0x00B24790275CSkillGate__ctorConstructs a CSkillGate object by initializing parent CSkillEdge, setting condition parameters, and assigning display text strings.
0x00B248B0322CSkillGate__ctor_from_edgeConstructs CSkillGate from CSkillEdge, initializing gate properties including skill ID, name, description, and position data.
0x00B24A00182CSkillEdge__CopyConstructorInitializes CSkillEdge object with vTable pointer and zeroed member fields; sets default skill level to 200.
0x00B24AC0225CSkillTree__ParseNodeEntryBInitializes a skill tree node entry structure with default values and assigns a string parameter to an internal std::string member.
0x00B24BF0342CSkillTree__ParseNodeEntryInitializes a CSkillTree node structure with skill IDs, parent node ID, and string data from Lua parsing.
0x00B24D50273CSkillEdge__ctorInitializes CSkillEdge object with vtable, zeroes skill connection fields (from/to IDs, cost=101), and allocates two std::strings.
0x00B250F0336CSkillNode__dtorDestructs CSkillNode by clearing skill ID, cost, name strings, and prerequisite/child skill node vectors with proper cleanup.
0x00B25240205CSkillEdge__dtorDestructor for CSkillEdge that clears node IDs, cost, strings, and child vector; resets skill graph edge data structure.
0x00B25320180CSkillGate__CopyFromCopies skill gate data including strings and vector collections from source to destination object.
0x00B253E099CSkillEdge__CopyFieldsCopies skill edge data fields from source to destination object, including strings and vector data with proper memory management.
0x00B255B0122CSkillEdge__SetNameFromStringAssigns a C++ string from a null-terminated C string parameter, with stack canary security checks.
0x00B2571052CSkillEdge__CompareStringCompares two std::string objects by extracting their data pointers and lengths, handling both small-string and heap-allocated cases.
0x00B257F0113CSkillEdge__AssignFieldsCompares two string fields in CSkillEdge objects; returns 1 if equal, else comparison result (-1/0/1).
0x00B25870122CSkillEdge__SetNameFromCStringAssigns a C-string to a CSkillEdge object's name field using std::string range assignment after length validation.
0x00B2599044CSkillEdge__ContainsStringChecks if a CSkillEdge object's internal string contains the substring from another string parameter.
0x00B25AB081CSkillEdge__CompareString_aCompares two std::string objects by character, returning -1/0/1 for less/equal/greater, processing 2 bytes per iteration.
0x00B25E5032CSkillEdge__scalar_dtorScalar destructor for CSkillEdge that conditionally deallocates the object if deletion flag is set.
0x00B25EC058CSkillTree__AddNodePtrAdds a skill node pointer to CSkillTree's dynamic array, growing capacity if needed.
0x00B25F0058CSkillTree__AddNodeElementAdds a skill tree node element to a vector container, growing capacity if needed via STL vector insertion.
0x00B25F4062CSkillTree__AddEdgePairAdds an edge pair to a skill tree's vector, growing capacity if necessary via STL vector insertion.
0x00B25FC053CSkillTree__AddEdgePair_BAdds an edge pair to CSkillTree's vector, growing capacity if needed; copies 8-byte pair data.
0x00B2C080563CNavigation__ParsePathTargetParses a navigation path target from packet data, resolving entity/node references and initializing target structure fields.
0x00B2C2C0888CNavigation__ParseSkillGatePacketParses a skill gate packet, extracts gate name and node names, validates packet structure, and constructs a CSkillGate object.
0x00B2C650710CNavigation__FindTargetEntityFinds and returns a target entity node in the skill edge navigation system by coordinates and name lookup.
0x00B2CD70578CNavigation__BuildPathDataConstructs path navigation data by processing input parameters and managing vector/string memory with security cookie validation.
0x00B2D3E0422CNavigation__IsNearTargetChecks if player is near navigation target by comparing current position against target coordinates or UI waypoint.
0x00B2D590412CNavigation__ResetStateResets CNavigation pathfinding state by clearing waypoints, flags, and field data structures to initial values.
0x00B2D7601822CNavigation__ProcessMovementProcesses navigation movement by resolving target entity, validating cross-map pathfinding via CSkillTree__FindPath, returning status codes for routing.
0x00B2E2A0495CNavigation__FindMatchingPathNodeSearches navigation path nodes for a matching destination by comparing node properties and string identifiers.
0x00B2E700273CSkillEdge__CopyStringToFieldCopies skill edge data from array at index param_3 to param_2 struct, or initializes with defaults if index invalid.
0x00B2E820480CNavigation__GetPathNodeInfoRetrieves path node information from navigation system, validating node index and extracting node type/cost data.
0x00B2F080853CNavigation__ResetAllResets navigation state including node elements, pathfinding vectors, and search parameters with optional deep cleanup based on param_2 flag.
0x00B2F400341CNavigation__ClearSecondaryTargetClears secondary target by resetting target IDs to -1 and clearing associated resource data structures.
0x00B2F6E0503CNavigation__TryDirectPathAttempts direct pathfinding between two coordinates; validates navigation nodes and returns status codes for path validity.
0x00B2F9B0626CNavigation__LoadPathNodeListLoads and deserializes a list of path navigation nodes from a buffer, copying them into the navigation system's node storage with memory management.
0x00B2FC30557CNavigation__FindPathAndRecordWaypointsFinds pathfinding route and converts cell coordinates to screen coordinates for waypoint rendering on minimap/UI
0x00B30070575CNavigation__ProcessClickTargetValidates click-to-move target on same map, compares map names, checks proximity, returns status for UI feedback.
0x00B304A0367CSkillEdge__FormatNavigateStringFormats navigation string from skill edge data (position/field info) for UINavigateWnd display using sprintf.
0x00B30680235CSkillEdge__FormatNavigateStringDFormats a navigation string for skill edge with position coordinates, using JSON-based string allocation and formatting.
0x00B307B0391CNavigation__GetTargetDebugStringFormats debug string for navigation target containing position/coordinates and skill effect data when applicable.
0x00B309A0338CSkillEdge__FormatNavigationStringFormats a navigation string for skill edge by retrieving position and field data, then assigning to UI navigation window display.
0x00B30B10273CSkillEdge__FormatNavigateStringCFormats navigation UI string for skill edge display, showing skill name and position coordinates in message box.
0x00B31300492CSkillEdge__FormatPositionStringFormats a CSkillEdge position as a string (name + X Y coordinates) with truncation fallback for buffer overflow.
0x00B35C10750CSkillEdge__SetupPathfindingInitializes pathfinding for skill edge: loads 3D attributes, validates walkability, constructs node names via stringstream, invokes pathfinder.
0x00B369202349CSkillTree__LoadFromLuaLoads skill tree data from Lua script files into the CSkillTree data structure, parsing configuration and initializing skill definitions.
0x00D7E1C0375CSkillTreeMgr__UpdateOrInsertSkillUpdates or inserts skill tree entry from packet data; copies skill attributes and converts timestamp to date fields.
0x00D7E49087CSkillTreeMgr__UpdateOrInsertHomunSkillUpdates existing homunculus skill in tree or inserts new one; searches by skill ID, updates level/SP/range/flags or appends.
0x00D7E4F0123CSkillTreeMgr__UpdateOrInsertSkill_WithRefreshUpdates existing skill in tree or inserts new one; refreshes UI if param_3 is true.
0x00D7E570123CSkillTreeMgr__UpdateOrInsertSkill_WithRefresh2Updates existing skill in tree or inserts new one, then refreshes equipment UI windows if requested.
0x00D7E8F0380CSkillTreeMgr__SetSkillInfoPopulates skill tree entry/group with parameters (level, cost, requirements) and updates UI if needed.
0x00D7F3D0118CSkillTreeMgr__IsAutocastSkillIdChecks if a skill ID is eligible for autocast based on job class (param_2: 0=First class, 1=Second class)
0x00D7F720108CSkillTreeMgr__UpdateSkillLevelUpdates skill level in tree by finding skill group, retrieving level from map, storing it, and refreshing equipment UI.
0x00D7F83070CSkillTreeMgr__IsMatchingSkillEntryValidates if a skill entry matches specified job ID, skill level requirements, and level use skill conditions.
0x00D7F88084CSkillTreeMgr__FindSkillInMapSearches skill tree map for a skill matching skill ID and level criteria, returns iterator or invalid if not found.
0x00D7F9D0185CSkillTreeMgr__LoadJobSkillResourceLoads job skill tree resource by resolving job name, retrieving resource manager instance, and loading resource without locking.
0x00D7FA90254CSkillTreeMgr__GetSkillInfoRetrieves skill info by ID, dispatches to homunculus/mercenary/player/generic handlers, copies result to UI skill list.
0x00D80190161CSkillTreeMgr__CountSpecialSkillsInRangeCounts special skills (IDs: 0x1e, 0x21, 0x22, 0x24, 0x35, 0x3a, 0x3e, 0x40, 0x41, 0x42, 0x2b, 0x2d) within a given range
0x00D8024095CSkillTreeMgr__TimestampToDateConverts Unix timestamp to calendar date (year, month, day) using localtime32; clamps negative timestamps to zero.
0x00D8063061CSkillTreeMgr__GetSkillLevelTierMaps skill point values to tier levels (1-4) based on thresholds: ≤10→tier1, 11-20→tier2, 21-40→tier3, >40→tier4
0x00D806D0150CSkillTreeMgr__GetSkillEntryByIndex_GuildRetrieves guild skill entry by index from linked list, returns copy or default-initialized entry.
0x00D80770150CSkillTreeMgr__GetSkillEntryByIndex_PlayerRetrieves a skill tree entry by index from a linked list; returns default entry if not found or list is empty.
0x00D80810150CSkillTreeMgr__GetSkillEntryByIndex_PlayerAltRetrieves a skill tree entry by index from the alternate player's skill list, copying or initializing default on miss.
0x00D808B0150CSkillTreeMgr__GetSkillEntryByIndex_HomunculusRetrieves a homunculus skill entry from a linked list by skill ID; returns default if not found.
0x00D80B30150CSkillTreeMgr__GetSkillEntryByIndex_PlayerAlt2Retrieves a skill tree entry by index from a linked list; returns default entry if index invalid or list empty.
0x00D80BD0150CSkillTreeMgr__GetSkillEntryByIndex_MercenaryRetrieves a mercenary skill entry from a linked list by skill ID, returns copy or default if not found.
0x00D871B012CSkillTreeMgr__FindGroupByID_wrapperWrapper that delegates to CSkillTreeMgr::FindGroupByID() for skill tree group lookup by identifier.
0x00DA4D60933CSkillTree__UpdateDisplayParses skill tree packet (0x196f) data and updates UI display for skill tree nodes based on packet contents