Forums WoW Modding Support Archives WoWModding Support Archives [DiscordArchive] Yeah, that's part of CMapBaseObj.

[DiscordArchive] Yeah, that's part of CMapBaseObj.

[DiscordArchive] Yeah, that's part of CMapBaseObj.

rektbyfaith
Administrator
0
09-09-2025, 10:16 PM
#1
Archived author: Saty • Posted: 2025-09-09T22:16:00.301000+00:00
Original source

Yeah, that's part of CMapBaseObj.
What exactly do you need to know about it?
Just how it works in general?
rektbyfaith
09-09-2025, 10:16 PM #1

Archived author: Saty • Posted: 2025-09-09T22:16:00.301000+00:00
Original source

Yeah, that's part of CMapBaseObj.
What exactly do you need to know about it?
Just how it works in general?

rektbyfaith
Administrator
0
09-09-2025, 10:16 PM
#2
Archived author: Saty • Posted: 2025-09-09T22:16:28.209000+00:00
Original source

If you have any offset in mind you are particulary interested in, can try to explain it
rektbyfaith
09-09-2025, 10:16 PM #2

Archived author: Saty • Posted: 2025-09-09T22:16:28.209000+00:00
Original source

If you have any offset in mind you are particulary interested in, can try to explain it

rektbyfaith
Administrator
0
09-09-2025, 10:30 PM
#3
Archived author: gromchek • Posted: 2025-09-09T22:30:41.133000+00:00
Original source

In general, I want to know everything. About all structures in the game. Now I work on classes and functions related to the map.
Check binana repo on github
rektbyfaith
09-09-2025, 10:30 PM #3

Archived author: gromchek • Posted: 2025-09-09T22:30:41.133000+00:00
Original source

In general, I want to know everything. About all structures in the game. Now I work on classes and functions related to the map.
Check binana repo on github

rektbyfaith
Administrator
0
09-09-2025, 10:35 PM
#4
Archived author: Saty • Posted: 2025-09-09T22:35:51.620000+00:00
Original source

Well, TSLists in general are quite easy.
You got your link:
```C
struct TSLink
{
TSLink *m_prevlink;
void *m_next;
};
```
And your List itself:
```C
struct TSList
{
ptrdiff_t m_linkoffset;
TSLink m_terminator;
};
```

You can get the first item by doing `<TSList>.m_terminator.m_next` and the last one by doing `<TSList>.m_terminator.m_prevlink.m_prevlink.m_next` (If I remember correctly)
You get the next item by doing `((TSLink)(&current + m_linkoffset)).m_next`

The TSLink m_next you can change to whatever the item should be. It's basically a T object.
rektbyfaith
09-09-2025, 10:35 PM #4

Archived author: Saty • Posted: 2025-09-09T22:35:51.620000+00:00
Original source

Well, TSLists in general are quite easy.
You got your link:
```C
struct TSLink
{
TSLink *m_prevlink;
void *m_next;
};
```
And your List itself:
```C
struct TSList
{
ptrdiff_t m_linkoffset;
TSLink m_terminator;
};
```

You can get the first item by doing `<TSList>.m_terminator.m_next` and the last one by doing `<TSList>.m_terminator.m_prevlink.m_prevlink.m_next` (If I remember correctly)
You get the next item by doing `((TSLink)(&current + m_linkoffset)).m_next`

The TSLink m_next you can change to whatever the item should be. It's basically a T object.

rektbyfaith
Administrator
0
09-09-2025, 10:44 PM
#5
Archived author: gromchek • Posted: 2025-09-09T22:44:17+00:00
Original source

Yes, I understand it, now it remains to understand structure of T obj.
More precisely, this is CMapBaseObjLink (28 byte size) - 4 bytes for index and 24 bytes for 6 pointers.
But maybe in some cases it's a different structure
rektbyfaith
09-09-2025, 10:44 PM #5

Archived author: gromchek • Posted: 2025-09-09T22:44:17+00:00
Original source

Yes, I understand it, now it remains to understand structure of T obj.
More precisely, this is CMapBaseObjLink (28 byte size) - 4 bytes for index and 24 bytes for 6 pointers.
But maybe in some cases it's a different structure

Recently Browsing
 1 Guest(s)
Recently Browsing
 1 Guest(s)