To freeze a value there are two ways.
1 like cheat engine does keep setting it to the same thing every 1 or 100 or 10 milliseconds.
2 find everything that writes to the value code wise NOP it so it does nothing and does not change the value then change the value to whatever you want. The 2nd way being more efficient in most cases as it does not require a while loop going to infinity or a thread/timer combination.
As for structures in Twelve Sky 2 they might look like this in code. *C++* and this is off the top of my head so not exact as I don't have the game open atm.
struct Monster{
unsigned int ID; // Or could be DWORD they are the same thing.
char Name[14]; // the 14 part is length of name again its guessed atm lol.
DWORD maxHealth;
DWORD sizeofMonster;
DWORD range;
..... other stuff
};
Of course we do not have the luxury the developers do, we can not see the code. We get to see hex in memory view.
For example it might look like this *if you search for Kobold as text and scroll up slightly&
ID NAME "Kobold" MaxHealth (100)
01 00 00 00 4B 6F 62 6F 6C 64 00 00 00 00 00 00 00 00 00 64 00 00 00 00 00 00 00... ETC
in the game engine it can group together these structures into an Array of structures or a vector of structures. for monsters, item data, player data etc it is most likely an Array with a fixed limit. Given that you cant have say *pulled out of nowhere number* 1000 players on the whole game you might have an array of Player structs with room for 1000 players.
Your player is the first one in the struct in this game btw

.
So you can think of the structs like this
MonsterMonsterMonsterMonster all the way to whatever limit.
PlayerPlayerPlayer all the way to whatever limit...
So after you find the structure and Identify the first data type and where it is *mark this as 0 if you are referencing the structure* you have to find the size of the structure. You can do this by scrolling down to find the next *repetition* of an element in the structure you know. Eg name, you might scroll down and see Draconic Cultist you know that that address for the text -4 *for the size of an unsigned int/dword for the ID* is the start of the next structure in your array. You can then work out the difference between the start address of kobold's one and the start address of draconic's one to find the size of the structure *from memory ages ago it was 256bytes*
Structures are important because they organize data. In object orientated programming *OOP* programmers use structures to hold their data for objects that have similar or the same traits.
in asm a structure is accessed by a pointer to its location. This can be caculated like so
StartOfStructureArrayAddress + (IndexofStructureYouWant * SizeOfStruct)
So index 0 is the first one you would get the StartOfStructureArrayAddress for 1 you would then get the next address which in this case would take you to Draconic Cultist.
Note what I have explained is just an example for the Monster Data not the actual monsters in the world on the map.
The monsters in the map and items even npc work like this.
IDofmonster UniqueID/InstanceID LOCATION LOCATION LOCATION OTHERDATA
so
01 00 00 00 InstanceID location etc.
Would be a kobold
i could have multiple entrys of those at different or the same spot.
The following would be two kobolds.
01 00 00 00 01 00 00 00 location location etc.
01 00 00 00 02 00 00 00 location location etc.
When you attack one it send the unique id to the server as well as type of attack and positions of your self and the monster?
The server can work with that information to process the attack and work out an outcome. You can exploit this functionality on players and attack them even when your on the other side of the map btw I won't say how to do this as its annoying... but I had it in my old C# Map Fun for a while for private usage it worked well. I could AOE the ones in town whilst i was like 1000m in air. The server has a check for monsters to prevent VAC tho so similar thing wont work.
Anyway Im running out of things I could type atm If you want me to teach you some stuff in the holidays then contact me on MSN or Skype etc.
Perhaps we can work together on something.
I will most likely make a decent tutorial on structure's later for my game hacking series