just bought a copy (20% off in Winter Sale, hehe) of the early-access-version of "Dungeon Kingdom: Sign of the Moon" on Steam.
Take a closer look here:
What's this game about?
This best description of this game, in my opinion, is "Dungeon Master with good graphics". So you do not choose a specific class for your characters. Instead, when casting a cleric spell, the character gets cleric-experience and will eventually level up. So it's the excellent "you are what you do" character development I really love. The game offers lots of secrets, many puzzles and of course fights.
Since it is early-access, the game is not yet finished but looks really promising and I have already had lots of fun with it. According to the devs, they will release the last chapters in winter and then polish the game... (Edit 2019-03-20: in winter, yes. but which year?)
- a script to constantly fill up health, endurance, food, water. Actually the script patches the modifier-code in the game which simply affects everything which can be modified including health regeneration, mana regeneration, food consumption, water consumption, damage etc. Since a float of 1000 is added, we get a nice damage output.
- after selecting a character, we get the addresses of hitpoints and experience of all 4 classes of the selected character, so we can easily get the addresses and edit the values for all 4 chars by simply selecting one char after another.
- game is using mono, so don't miss using the mono dissector
- using the mono dissector, 12531e60:dkCharacter sounds interesting
- the code increasing MageXP is at dkCharacter:AddXpMagic+62: D9 58 48 - fstp dword ptr [eax+48]
- the code increasing PriestXP is at dkCharacter:AddXpPriest+62 - D9 58 4C - fstp dword ptr [eax+4C]
- If you look at the character stats in the game, you'll see the current levels of Fighter, Ninja, Priest and Mage, followed by an experience counter. This experience counter is simply the summed up representation of the experience of all 4 classes. The XP-values for the classes itself are hidden.
- so you can write down the amount of experience, cast a spell and calculate the difference to see how much the amount of experience in mage/priest has increased (makes searching a lot easier).For example a fireball adds exactly 18 Points to it, so use "increased by 18.0000" to narrow down your results
- every value in this game is stored as float. Use "Rounded (default)" for searching.
- The level ups are at 200,400,800,1600,3200... Experience in their corresponding classes. For fast leveling up, set the experience to 199,399,799 etc and make one appropriate action to level up
- at experience 200,800,3200... (also known as "every second level up") you can spend one point to the characters attributes
- the value which represents how fed the characters are is a float, too. Seems to be as percent, because 100 = full fed.
- when playing this game, always give your characters at least 10 Points of Intelligence, so they can at least cast something to get caster levels. Push all characters to level 3 in all possible classes, because a) this gives you constitution ab) you can distribute some attributes and c) until level 3 it is sufficient to hit the air to get warrior and ninja levels.
- when searching the coordinates the following may be useful: 0 is in the bottom right corner of the map. Meaning: y increases when going north, x increases when going east. And each step increased the according value by 3. Stepping out of the inn at the town leaves you at x=339, y=45. The Master value is most likely the 3rd hit in your list of found addresses, and when the party stands still, the value has no fractional part. All 3 coords (xyz) are after each other.
- when trying to find the items in inventory, search for 4-Byte-Values. An empty Slot has the value 0, use it to narrow down your results.
- freezing an item slot and then move away the item ingame makes a copy of that very item
- to find the data-block with character values more easily, take a look at the characters levels. For example, if Ninja Level is 3 and Priest Level is 6, we look up the byte-representation of the float-numbers 3 (00 00 40 40) and 6 (00 00 c0 40). There is a gap of 16 Bytes between the Priest- and Ninja-Levels and each value is there twice so we can make a scan for 00 00 40 40 00 00 40 40 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? 00 00 c0 40 00 00 c0 40 which should give us only one result.
- please don't ask why the character-XPs are not in the same area than the character stats, I don't know it
- when doing a Pointer Search, a depth of 10 and maximum Offset of 500 is sufficient
Code: Select all
Priest: ============================= Body = heal group Body + Invert = Shield for Group Stars+Body+Time = Footprints Mage: ============================= Stars = Create Light Air+Atom = Lightning Bolt Air+Fire = Fireball Air+Control = Activation Air+Nature+Invert = Poison Cloud
- adjusted for the yet undocumented update from 2019-03
- offers full stats for all four characters.
- added pointer to the character's block so we can use the dissect data tool better
- table now displays the characters names for easier distinction which character is beeing edited
- re-added gold-amount (does not survive saving and loading, but works at the inn. Could not test it at a shop due to 'there is no shop yet')
- re-added coordinates
- improved the dissect data-lists
- re-adjusted the full table for the 0.9.953 update.
- started to hate the developers
- checked that table works with the 0.9.955 update, too