This is very useful, thanks a lot, and do you know how can I edit the number of spell slots?Vandermeer wrote: ↑Thu Oct 29, 2020 4:03 pmGood news everyone. I managed to edit a savegame to enable all kinds of shenanigans and wanted to report my findings. This includes not only modding of the attributes and hp, but apparently there is even support from the game mechanics to do stuff like increasing base armor class, initiative, number of attacks, critical chance, your proficiency bonus, nbr. of divinity channels per rest, healing pool size for paladins, etcetc. . I haven't experimented with spell slot capacity yet, but it should be possible too, and I encourage you to figure more things out.
Instructions
First of all, you are going to need a hex editor. If you use notepad++, go to plugins>plugins admin and scoll down to install the hex-editor. Then find your savefile (mine was in "[user]\AppData\LocalLow\Tactical Adventures\Solasta\Save Files", but if you haven't cut it off from Steam, it will have it somewhere under steamapps). If you have your file, you can turn "view in hex" on under plugins>hex-editor.
Attributes
To find the relevant stat block, you now have to search your character's name one time in upwards direction. This is important, because there are a myriad of mentions in downward direction due to all logged dialogue referencing you. Another identical stat block is also at the beginning that probably just represents your first level raw character, so changes here wouldn't reflect ingame. Once you have found your first character name mention at the bottom of the save, you can scroll downwards to begin your mischief:
This character of mine is meant to be an elven vampire inspired from a famous rpg-maker game, meaning his phsical stats need that extra punch.
To modify an attribute, you will have to look when it sections begins with some "strength.value" string for example for strength. Here, at (1) in the picture, you have to edit both "BaseValue" and "CurrentValue" to what you want. Notice that 24 in hex is 18, because 1x16 + 8x1 = 24.
Important: BaseValue and CurrentValue will be different if you receive for example some racial modifier. You have to set Base to what it is before the race is considered, and Current to the real value you actually want. (e.g. my dexterity is actually 16 in Base, and 18 in Current, because a Sylvan Elf will receive +2 Dex)
If you plan to have a character that can go beyond a natural stat of 20, like in the picture, you will also have to change the "MaxEditableValue", as seen in (2). In DnD 5e, you can generally go 4 attribute points beyond the racial limit using artifacts, so I set it to 28 with "1c".
If you have done all this right, your to-Hit score, damage and skill checks will now automatically be readjusted. However, your HP and initiative wont, because the game doesn't update those outside of real ingame attribute mods. So if you mod Dexterity or Constitution, you will have to do this by hand.
Initiative
Further down in the same section you will (amongst many others) find Initiative as a special attribute. The thing here is that, compared to the attribute modding, just changing the CurrentValue is not enough. (Base is 0 btw.) You will also have to make an edit further down, because the real value is checked by the value of the modifier. Note that it should be 7 from this character's dexterity score, but I gave him 2 extra for being all vampire and darque.
Hitpoints
Now this took some time to figure out. By now you should know how to do the basic attribute change, so editing something like "AbilityScore.HitPoints" should be easy, but it is not enough. Despite being too lazy to update it with your rising CON score, the game cross checks the value with two other sections and resets it if they don't add up.
- The first edit is this HitPoints score I mentioned. You do Base- and CurrentValue (not shown in screenshot)
- The second edit is at the very beginning of the save file. Search your name one time down, and you will see HitPoints and MaxHitpoints. This can probably be skipped, but I didn't test it without, so to be sure, adjust them to the new value as well.
- The third one is the calculation "HitPointBonusPerLevel" as shown in the screenshot. This should assume your constitution bonus, so +6 in my example. Again you have to edit CurrentValue and the Modifier reference below both.
So this is all I wanted to document. I also did the paladin healing pool and lowered the character's critical threshold to 19. You can probably see how this system can do some powerful stuff above, because you could actually define a min-value for stats, so they couldn't be debuffed for example. (Hitpoints is just the maximum though, so you cant be invincible)
Maybe someone can also figure out how to add proficiency in saves, or I might do that later. I want to play now though, and just thought I'd have to document this first, since I couldn't find anyone doing this online when I searched for trainers and editing.
Solasta: Crown of The Magister
-
- Novice Cheater
- Posts: 15
- Joined: Wed Apr 24, 2019 3:15 am
- Reputation: 5
Re: Solasta: Crown of The Magister
-
- Novice Cheater
- Posts: 15
- Joined: Wed Apr 24, 2019 3:15 am
- Reputation: 5
Re: Solasta: Crown of The Magister
This is very useful, thanks a lot. But I cannot use this method to edit the number of spell slots, after the rest spell slots will be reset.Vandermeer wrote: ↑Thu Oct 29, 2020 4:03 pmGood news everyone. I managed to edit a savegame to enable all kinds of shenanigans and wanted to report my findings. This includes not only modding of the attributes and hp, but apparently there is even support from the game mechanics to do stuff like increasing base armor class, initiative, number of attacks, critical chance, your proficiency bonus, nbr. of divinity channels per rest, healing pool size for paladins, etcetc. . I haven't experimented with spell slot capacity yet, but it should be possible too, and I encourage you to figure more things out.
Instructions
First of all, you are going to need a hex editor. If you use notepad++, go to plugins>plugins admin and scoll down to install the hex-editor. Then find your savefile (mine was in "[user]\AppData\LocalLow\Tactical Adventures\Solasta\Save Files", but if you haven't cut it off from Steam, it will have it somewhere under steamapps). If you have your file, you can turn "view in hex" on under plugins>hex-editor.
Attributes
To find the relevant stat block, you now have to search your character's name one time in upwards direction. This is important, because there are a myriad of mentions in downward direction due to all logged dialogue referencing you. Another identical stat block is also at the beginning that probably just represents your first level raw character, so changes here wouldn't reflect ingame. Once you have found your first character name mention at the bottom of the save, you can scroll downwards to begin your mischief:
This character of mine is meant to be an elven vampire inspired from a famous rpg-maker game, meaning his phsical stats need that extra punch.
To modify an attribute, you will have to look when it sections begins with some "strength.value" string for example for strength. Here, at (1) in the picture, you have to edit both "BaseValue" and "CurrentValue" to what you want. Notice that 24 in hex is 18, because 1x16 + 8x1 = 24.
Important: BaseValue and CurrentValue will be different if you receive for example some racial modifier. You have to set Base to what it is before the race is considered, and Current to the real value you actually want. (e.g. my dexterity is actually 16 in Base, and 18 in Current, because a Sylvan Elf will receive +2 Dex)
If you plan to have a character that can go beyond a natural stat of 20, like in the picture, you will also have to change the "MaxEditableValue", as seen in (2). In DnD 5e, you can generally go 4 attribute points beyond the racial limit using artifacts, so I set it to 28 with "1c".
If you have done all this right, your to-Hit score, damage and skill checks will now automatically be readjusted. However, your HP and initiative wont, because the game doesn't update those outside of real ingame attribute mods. So if you mod Dexterity or Constitution, you will have to do this by hand.
Initiative
Further down in the same section you will (amongst many others) find Initiative as a special attribute. The thing here is that, compared to the attribute modding, just changing the CurrentValue is not enough. (Base is 0 btw.) You will also have to make an edit further down, because the real value is checked by the value of the modifier. Note that it should be 7 from this character's dexterity score, but I gave him 2 extra for being all vampire and darque.
Hitpoints
Now this took some time to figure out. By now you should know how to do the basic attribute change, so editing something like "AbilityScore.HitPoints" should be easy, but it is not enough. Despite being too lazy to update it with your rising CON score, the game cross checks the value with two other sections and resets it if they don't add up.
- The first edit is this HitPoints score I mentioned. You do Base- and CurrentValue (not shown in screenshot)
- The second edit is at the very beginning of the save file. Search your name one time down, and you will see HitPoints and MaxHitpoints. This can probably be skipped, but I didn't test it without, so to be sure, adjust them to the new value as well.
- The third one is the calculation "HitPointBonusPerLevel" as shown in the screenshot. This should assume your constitution bonus, so +6 in my example. Again you have to edit CurrentValue and the Modifier reference below both.
So this is all I wanted to document. I also did the paladin healing pool and lowered the character's critical threshold to 19. You can probably see how this system can do some powerful stuff above, because you could actually define a min-value for stats, so they couldn't be debuffed for example. (Hitpoints is just the maximum though, so you cant be invincible)
Maybe someone can also figure out how to add proficiency in saves, or I might do that later. I want to play now though, and just thought I'd have to document this first, since I couldn't find anyone doing this online when I searched for trainers and editing.
- Vandermeer
- Noobzor
- Posts: 14
- Joined: Thu Oct 29, 2020 2:47 pm
- Reputation: 6
Re: Solasta: Crown of The Magister
Sorry I am so very late. I dropped this game when I noticed how incredibly unfinished it was. (This holy sword enchantment skill not working At All was what finally broke it for me) I will return to this once they have made some progress, otherwise it would just spoil the story experience.jiahao.luo14 wrote: ↑Sun Nov 08, 2020 5:48 pmThis is very useful, thanks a lot. But I cannot use this method to edit the number of spell slots, after the rest spell slots will be reset.
This also means that I cannot screenshot the detailed place for the edit this time, however I can report positively that the amount of spell slots can be edited, as I did so myself. There is some section in each character's stat block that you should be able to find by searching for "slot" I think. There you should find a line of numbers that grow larger depending on the spell levels available to you. Again, can't show the concrete example anymore, but they would be sorted after their level as something like this:
"01 00 00 00 04 02 00 00 00 02 03 00 00 00 01"
This would indicate 4 level 1 spells, 2 level 2 spells and 1 level 3 spell. There is always one leading marker like "02" to indicate the spell level, followed by 4(?) numbers that specify the amount.
Once you edit this to something high, it will show up in the game and also regenerate on rest. I myself gave my mage and paladin 9 level 1 spells for example.
On another note my paladin received like 30 charges of his special abilities, so he can use them whenever, and also a healing pool of 20 per level. It can all be done by tweaking around a bit.
Re: Solasta: Crown of The Magister
As far as I know, there is something hardcoded that won't allow you to raise main attributes above 30 (even as cap) without the game behaving funnily.
Re: Solasta: Crown of The Magister
any chance at an update? doesn't work for latest steam anymore.
Convert to Hex also no longer works for me, 32- Bit or with HxD.
Just scibbles line after max character hp.
Doing hp is annoying everytime.
I did however figure out how to quickly do infinite spell slots. requires 3 spell slots min though.
EDIT- Whelp i give up on hex editing, looks so different then the posted version above for me. Oh well
Convert to Hex also no longer works for me, 32- Bit or with HxD.
Just scibbles line after max character hp.
Doing hp is annoying everytime.
I did however figure out how to quickly do infinite spell slots. requires 3 spell slots min though.
EDIT- Whelp i give up on hex editing, looks so different then the posted version above for me. Oh well
Last edited by shuiko on Thu Dec 31, 2020 1:54 am, edited 1 time in total.
Re: Solasta: Crown of The Magister
Whelp ugh spells slots keep getting reset on rest, so I'm not sure anymore lol.
Re: Solasta: Crown of The Magister
I still can't make unlimited spells on my end <shurg> literally have to reset everytime after anytime of rest.Marc wrote: ↑Tue Nov 03, 2020 4:52 pmUnlimited Weight: added.
about the unlimited Spells... well.
The according .net code should be (I believe)which turns in the disassembler toCode: Select all
Public Sub ModifyPoolPoints(pointsPoolType As HeroDefinitions.PointsPoolType, tag As String, delta As Integer) Implements ICharacterBuildingService.ModifyPoolPoints Me.pointPoolStacks(pointsPoolType).ActivePools(tag).RemainingPoints += delta Me.HeroCharacter.UpdateAbilityScoreModifiers() Me.HeroCharacter.RefreshAttributes() Me.NotifyChange() End Sub
If I ever get the right idea WHAT to change in this mess, I suppose we would get what we wantCode: Select all
CharacterBuildingManager:ModifyPoolPoints - 55 - push rbp CharacterBuildingManager:ModifyPoolPoints+1- 48 8B EC - mov rbp,rsp CharacterBuildingManager:ModifyPoolPoints+4- 48 83 EC 40 - sub rsp,40 { 64 } CharacterBuildingManager:ModifyPoolPoints+8- 4C 89 75 F8 - mov [rbp-08],r14 CharacterBuildingManager:ModifyPoolPoints+c- 4C 8B F1 - mov r14,rcx CharacterBuildingManager:ModifyPoolPoints+f- 48 89 55 F0 - mov [rbp-10],rdx CharacterBuildingManager:ModifyPoolPoints+13- 4C 89 45 E8 - mov [rbp-18],r8 CharacterBuildingManager:ModifyPoolPoints+17- 4C 89 4D E0 - mov [rbp-20],r9 CharacterBuildingManager:ModifyPoolPoints+1b- 49 8B 46 70 - mov rax,[r14+70] CharacterBuildingManager:ModifyPoolPoints+1f- 48 8B C8 - mov rcx,rax CharacterBuildingManager:ModifyPoolPoints+22- 48 63 55 F0 - movsxd rdx,dword ptr [rbp-10] CharacterBuildingManager:ModifyPoolPoints+26- 83 38 00 - cmp dword ptr [rax],00 { 0 } CharacterBuildingManager:ModifyPoolPoints+29- 48 8D 64 24 00 - lea rsp,[rsp+00] CharacterBuildingManager:ModifyPoolPoints+2e- 49 BB 45C6C8153F020000 - mov r11,0000023F15C8C645 { (232) } CharacterBuildingManager:ModifyPoolPoints+38- 41 FF D3 - call r11 CharacterBuildingManager:ModifyPoolPoints+3b- 48 8B C8 - mov rcx,rax CharacterBuildingManager:ModifyPoolPoints+3e- 83 39 00 - cmp dword ptr [rcx],00 { 0 } CharacterBuildingManager:ModifyPoolPoints+41- 48 8B 40 10 - mov rax,[rax+10] CharacterBuildingManager:ModifyPoolPoints+45- 48 8B C8 - mov rcx,rax CharacterBuildingManager:ModifyPoolPoints+48- 48 8B 55 E8 - mov rdx,[rbp-18] CharacterBuildingManager:ModifyPoolPoints+4c- 83 38 00 - cmp dword ptr [rax],00 { 0 } CharacterBuildingManager:ModifyPoolPoints+4f- 48 8D AD 00000000 - lea rbp,[rbp+00000000] CharacterBuildingManager:ModifyPoolPoints+56- 49 BB 03DDC8153F020000 - mov r11,0000023F15C8DD03 { (232) } CharacterBuildingManager:ModifyPoolPoints+60- 41 FF D3 - call r11 CharacterBuildingManager:ModifyPoolPoints+63- 48 8B C8 - mov rcx,rax CharacterBuildingManager:ModifyPoolPoints+66- 83 39 00 - cmp dword ptr [rcx],00 { 0 } CharacterBuildingManager:ModifyPoolPoints+69- 48 63 49 20 - movsxd rcx,dword ptr [rcx+20] CharacterBuildingManager:ModifyPoolPoints+6d- 03 4D E0 - add ecx,[rbp-20] CharacterBuildingManager:ModifyPoolPoints+70- 83 38 00 - cmp dword ptr [rax],00 { 0 } CharacterBuildingManager:ModifyPoolPoints+73- 89 48 20 - mov [rax+20],ecx CharacterBuildingManager:ModifyPoolPoints+76- 49 8B 46 60 - mov rax,[r14+60] CharacterBuildingManager:ModifyPoolPoints+7a- 48 8B C8 - mov rcx,rax CharacterBuildingManager:ModifyPoolPoints+7d- 83 38 00 - cmp dword ptr [rax],00 { 0 } CharacterBuildingManager:ModifyPoolPoints+80- 48 8D 64 24 00 - lea rsp,[rsp+00] CharacterBuildingManager:ModifyPoolPoints+85- 90 - nop
Re: Solasta: Crown of The Magister
I tried to use this metod but my notepad show weird stuff under Dump section.Vandermeer wrote: ↑Thu Oct 29, 2020 4:03 pmGood news everyone. I managed to edit a savegame to enable all kinds of shenanigans and wanted to report my findings. This includes not only modding of the attributes and hp, but apparently there is even support from the game mechanics to do stuff like increasing base armor class, initiative, number of attacks, critical chance, your proficiency bonus, nbr. of divinity channels per rest, healing pool size for paladins, etcetc. . I haven't experimented with spell slot capacity yet, but it should be possible too, and I encourage you to figure more things out.
Instructions
First of all, you are going to need a hex editor. If you use notepad++, go to plugins>plugins admin and scoll down to install the hex-editor. Then find your savefile (mine was in "[user]\AppData\LocalLow\Tactical Adventures\Solasta\Save Files", but if you haven't cut it off from Steam, it will have it somewhere under steamapps). If you have your file, you can turn "view in hex" on under plugins>hex-editor.
Attributes
To find the relevant stat block, you now have to search your character's name one time in upwards direction. This is important, because there are a myriad of mentions in downward direction due to all logged dialogue referencing you. Another identical stat block is also at the beginning that probably just represents your first level raw character, so changes here wouldn't reflect ingame. Once you have found your first character name mention at the bottom of the save, you can scroll downwards to begin your mischief:
This character of mine is meant to be an elven vampire inspired from a famous rpg-maker game, meaning his phsical stats need that extra punch.
To modify an attribute, you will have to look when it sections begins with some "strength.value" string for example for strength. Here, at (1) in the picture, you have to edit both "BaseValue" and "CurrentValue" to what you want. Notice that 24 in hex is 18, because 1x16 + 8x1 = 24.
Important: BaseValue and CurrentValue will be different if you receive for example some racial modifier. You have to set Base to what it is before the race is considered, and Current to the real value you actually want. (e.g. my dexterity is actually 16 in Base, and 18 in Current, because a Sylvan Elf will receive +2 Dex)
If you plan to have a character that can go beyond a natural stat of 20, like in the picture, you will also have to change the "MaxEditableValue", as seen in (2). In DnD 5e, you can generally go 4 attribute points beyond the racial limit using artifacts, so I set it to 28 with "1c".
If you have done all this right, your to-Hit score, damage and skill checks will now automatically be readjusted. However, your HP and initiative wont, because the game doesn't update those outside of real ingame attribute mods. So if you mod Dexterity or Constitution, you will have to do this by hand.
Initiative
Further down in the same section you will (amongst many others) find Initiative as a special attribute. The thing here is that, compared to the attribute modding, just changing the CurrentValue is not enough. (Base is 0 btw.) You will also have to make an edit further down, because the real value is checked by the value of the modifier. Note that it should be 7 from this character's dexterity score, but I gave him 2 extra for being all vampire and darque.
Hitpoints
Now this took some time to figure out. By now you should know how to do the basic attribute change, so editing something like "AbilityScore.HitPoints" should be easy, but it is not enough. Despite being too lazy to update it with your rising CON score, the game cross checks the value with two other sections and resets it if they don't add up.
- The first edit is this HitPoints score I mentioned. You do Base- and CurrentValue (not shown in screenshot)
- The second edit is at the very beginning of the save file. Search your name one time down, and you will see HitPoints and MaxHitpoints. This can probably be skipped, but I didn't test it without, so to be sure, adjust them to the new value as well.
- The third one is the calculation "HitPointBonusPerLevel" as shown in the screenshot. This should assume your constitution bonus, so +6 in my example. Again you have to edit CurrentValue and the Modifier reference below both.
So this is all I wanted to document. I also did the paladin healing pool and lowered the character's critical threshold to 19. You can probably see how this system can do some powerful stuff above, because you could actually define a min-value for stats, so they couldn't be debuffed for example. (Hitpoints is just the maximum though, so you cant be invincible)
Maybe someone can also figure out how to add proficiency in saves, or I might do that later. I want to play now though, and just thought I'd have to document this first, since I couldn't find anyone doing this online when I searched for trainers and editing.
What should I do to fix it?
Re: Solasta: Crown of The Magister
the saves are now zipped . you need to unzip the file before hex editing it . and need to re-add it to zip for the game to load it
Re: Solasta: Crown of The Magister
Would love an update!
Ty
Ty
Re: Solasta: Crown of The Magister
The full release came out today, and I just want to ping this subject before someone makes a new request as a whole subject.
-
- What is cheating?
- Posts: 4
- Joined: Fri May 28, 2021 5:49 pm
- Reputation: 0
Re: Solasta: Crown of The Magister
What's the easiest way to add money? It was mentioned earlier in the thread that was easy but I haven't been able to figure it out myself.
The three different values for currency keep throwing me
The three different values for currency keep throwing me
- gunbalde60
- Expert Cheater
- Posts: 393
- Joined: Tue Jan 09, 2018 3:53 am
- Reputation: 32
Re: Solasta: Crown of The Magister
Any chance to update this to the fully released version?Marc wrote: ↑Thu Oct 22, 2020 7:50 amJust began with the game, but at least finding the code which decreases the available points at char creation is a trivial task.
Works fine if you only increase the amounts as far as the game naturally allows (so if it stops at 16 STR then let it stay there)
For anyone interested, here's a table which allows you to spent more attribe points at char creation. Hotkey is F1.
Update1: added a script to get 9999 Platin, Gold, Silver, Copper after buying something.
Some random notes about cheating this game, could be useful...
Even when the game is updated and the code changes, the Names of the functions will stay. So after activating mono, one can jump to the right code location and see what has changed.
This code writes back the experience after getting some of it:
RulesetCharacterHero:GrantExperience+42 - 89 51 20 - mov [rcx+20],edx
In memory there are two 4-byte-integers for each character respresenting XP. Both are 10 bytes apart and the first one seems to overwrite the latter one.
At RulesetTreasury:SpendAmounts+fa the money is set after buying something.
Seems to read/change life:
RulesetCharacterHero:RefreshAll+1db - 89 86 10010000 - mov [rsi+00000110],eax
Getting Damage in Fight:
RulesetCharacter:SustainDamage+3f3 - 41 89 86 10010000 - mov [r14+00000110],eax
Change of Reputation with a faction:
GameFactionManager:ModifyRelation
GameLoreManager sounds interesting.
CharacterStageSpellSelectionPanel is most likely for learning spells. Don't get it...
Who is online
Users browsing this forum: No registered users