NosTale offers a minimap that is relatively small in size. I’ve been exploring the game’s binaries in Cheat Engine, with the aim of resizing the NosTale Minimap.
So far I’ve managed to locate addresses related to the position, minimap rendering borders, and the collapse and position reset booleans. These booleans allow the minimap to be collapsed or moved to the top-right corner (original position) of the screen. More importantly, I’ve found several addresses linked to the actual size of the NosTale Minimap.
NOTE: The address' types of the following values are 2 Bytes. The size values represent the window containing the minimap image.
Uncollapsed Minimap:
Height = 185
Width = 163
Collapsed Minimap:
Height = 25
Width = 163
Despite these promising discoveries, my attempts to enlarge NosTale’s minimap by modifying these addresses have not been successful.
Based on my observations, it seems that when you collapse the minimap in NosTale, it doesn’t just shrink - it gets removed entirely. This led me to believe that the in-game size of the minimap’s image is the same as the size of the .png file. However, the window that houses the image might still be resizable, which might be crucial in enlarging the minimap's image as well.
I’m reaching out to those with more experience in reverse engineering: Have you tried to enlarge the NosTale Minimap? Do you think it’s possible? Any tips or feedback would be appreciated.
NosTale offers a minimap that is relatively small in size. I’ve been exploring the game’s binaries in Cheat Engine, with the aim of resizing the NosTale Minimap.
So far I’ve managed to locate addresses related to the position, minimap rendering borders, and the collapse and position reset booleans. These booleans allow the minimap to be collapsed or moved to the top-right corner (original position) of the screen. More importantly, I’ve found several addresses linked to the actual size of the NosTale Minimap.
NOTE: The address' types of the following values are 2 Bytes. The size values represent the window containing the minimap image.
Uncollapsed Minimap:
Height = 185
Width = 163
Collapsed Minimap:
Height = 25
Width = 163
Despite these promising discoveries, my attempts to enlarge NosTale’s minimap by modifying these addresses have not been successful.
Based on my observations, it seems that when you collapse the minimap in NosTale, it doesn’t just shrink - it gets removed entirely. This led me to believe that the in-game size of the minimap’s image is the same as the size of the .png file. However, the window that houses the image might still be resizable, which might be crucial in enlarging minimap's image as well.
I’m reaching out to those with more experience in reverse engineering: Have you tried to enlarge the NosTale Minimap? Do you think it’s possible? Any tips or feedback would be appreciated.
Surely it's possible, I saw it in a video of Maza (the guy who spams his "creations")
Yes you can definitely resize it.
You have to find the base TNTMiniMapWidget of the whole minimap widget, which will have a pointer to another TNTMiniMapWidget at 0xC0.
You will have to resize both of them (because the second one is a child of the first one), and then also in the second widget change X and Y scale for objects on the minimap - these are values at 0x78 and 0x7C, both floats (I think their default values were 0.8937500119 and 0.7944444418 respectively).
Keep in mind that resizing the first widget will not change the background size, as its a rectangle texture directly placed on the widget. You would also have to change the texture data which can be accessed by a pointer at 0x59.
But I'm too lazy to explain that part too.
In my example picture i changed the sizes a bit randomly so it got placed on top of the caption bar, but you can of course calculate them properly and place them better.
One important notice - after you minimalize the minimap with the button, the base widget will change its size to the original one. It's probably hardcoded somewhere in a function, so if you can find it it should be trivial to just change the integers in memory to your custom ones.
EDIT:
Keep in mind NosTale widgets use left, top, right and bottom coordinates instead of x, y, width, height. The values you wrote in your post are, from what I roughly checked, parts of texture data of the base widget background, but I might be wrong.
Probably worth mentioning that you can also allow the user to resize it (with the cursor like on item's sheet) by playing with 0xAC and 0xAD from TEWCustomFormWidget and its children.
0xAD is a bitflag defined as:
I've found the right pointer to the Widgets. Thanks for the tips.
An advice I recently stumbled upon was to find an instruction pattern which accesses a static address that holds a pointer to a data structure.
I followed the advice and identified A1 DC BE 72 00 => mov eax,[NostaleClientX.exe+0032BEDC] as an instruction pattern accessing the static address that holds the pointer to the TNTMiniMapBaseWidget.
If I understood the advice correctly, does this mean that in case NosTale receives a game update that cause a shift of pointer locations, I still can find the TNTMiniMapWidget's pointer just by scanning for this instruction pattern?
That's it
If you are using NostaleWidget (), you can also just do a
Code:
TGameRootWidget* grw = TLBSWidgetHandler::getNtInstance()->getGameRootWidget();
auto widgets = grw->findClassesWithExpectedSize("TNTMiniMapWidget", 1);
TNTMiniMapWidget* minimap = reinterpret_cast<TNTMiniMapWidget*>(widgets[0]);
// Then you can play with this TNTMiniMapWidget as you wish
silkroad task gets bigger and bigger 12/19/2010 - Silkroad Online - 4 Replies Hey all,
silkroad starts stutterung after half an hour everytime I start the game.
I took a look at the taskmanager and saw, that the task sro_client starts at around 450.000k RAM usage. This value gets bigger and bigger by the time. The game starts to stutter at around 680.000k and i'm getting disconnected at 900kk-1000kk RAM usage.
Has anyone an idea what i could do to solve the problem?
Restarting sucks because the servers are full at the moment.
Greetings,
stober
//
Packet decoding 08/15/2009 - Silkroad Online - 5 Replies Hi ! Today I just wrote a simple proxy in autoit for ksro, to sniff the packets , but yeah I knew it is encrypted.
This is an example first packet 0x2500005000000EF7360258FEDD153B370000009B000000A6 FF776C62225323D37E6C13555A852137DC3612
Where clearscrean told me 25 00 is the lenght 00 50 is opcode 00 00 is magic bytes and the 0EF7360258FEDD153B370000009B000000A6FF776C62225323 D37E6C13555A852137DC3612 is the handshake.
So my question now how to decode the next packets by knowing the...
Decoding log files? 04/02/2007 - Conquer Online 2 - 2 Replies In the CO2.0 folder, there's a folder called 'log', which contains information about the accounts you have used to log into on the specified server. However, when you open the .txt file to the corresponding character number, it's just a lot of random characters. Can anyone tell me what language these characters are in, and/or how to decode them? Thanks!