Hacking VitaCheat/FinalCheat Database

iv2b

Well-Known Member
Newcomer
Joined
Jan 17, 2016
Messages
68
Trophies
0
Age
32
XP
160
Country
Italy
I've dabbled in trying to make codes for Dragon's Crown US, the game is pretty insane and way above my level so I wasn't able to produce anything. Not being able to pause the game with vitacheats on was one of the biggest issue when trying to find codes, not sure if this was fixed in version z6 of vitacheats as I've only used version z5 on 6.60FW. It might be a lot easier now since we have a much much better way of finding pointers but even then, Dragon's Crown has some kind of anti cheat detection in place and really messes up your stuff if try to change certain things and since the game auto saves you'll have to make a separate save file for testing. I can post some of my findings and notes about the game for someone else to look through incase they want to try their hand at making codes and I don't get to it.

As for your black screen problem, I think I had the same problem once. If you're on a lower FW then 6.65(I think) then you'll either need to download the comparability pack for Dragon's Crown from NPS_Browser along with the latest version of repatch or just use reF00D. I think reF00D eliminates the need for comparability packs on lower FW's, I can't remember.

I currently do have FW 6.65, not sure why the black screen shows up, i just ended up removing it.

By the way now my EU game version (which i purchased) goes back to themain menu after selecting any option (like start game, options, etc), rip i guess? Is there a way to recover the save files?
I think i may try giving the game a try via rcps3, maybe i can get something going with cheat engine.

I just really want to try the endgame builds without grinding for hundreds of hours. <.<
I did get an xp cheat to work via trial and error, but i miss all the items.

**edit**

Actually after connecting to the internet i got the (EU) game to work yet again...weird.
If you happen to know whether i can export it and if it's compatible with the ps3 version do let me know, that'd be quite neat. I know the game lets you upload/download saves between ps3/psvita, maybe there's a way to manually do that.
 
Last edited by iv2b,

NeoGranzon

シュウ 「グラビトロンカノン 発射!」
Member
Joined
Aug 4, 2019
Messages
2,957
Trophies
1
XP
7,885
Country
Italy
It's alright. I can see there's a language barrier. I understand that all too well, friend.

Have you made a code at all yet? If you have not, you don't need TempAR yet. The first video that I sent you showed you how to make a code in VitaCheat. Watch that first video to find out how to do that.

If you make a code with VitaCheat and it stops working after a while, you need TempAR. It will create a "Pointer" code to help keep the code working.

Memory dumps are for using in TempAR. You'll want to make sure that the code you've created is inside the memory dump.

Thank you,i see the videos and i learned how create the codes with Vitacheat.
My problem is another,pratically i want create codes for all characters example:HP EN etc...
 

Yohoki

Well-Known Member
Member
Joined
Dec 4, 2018
Messages
824
Trophies
0
Age
34
XP
1,213
Country
United States
Thank you,i see the videos and i learned how create the codes with Vitacheat.
My problem is another,pratically i want create codes for all characters example:HP EN etc...
That's a little more difficult. You have to be able to read the code a little bit. But you can make some guesses. Can you find HP for 2 characters? You'll need to do some math with a calculator (the one built into windows works great for hex numbers.)

find 2 characters and grab the codes for their health. I don't have your game so I'll just make up numbers as example.
Char1 inf HP: $0200 81002560 0000FFFF
Char2 Inf HP: $0200 81002660 0000FFFF
Char3 Inf HP: $0200 81002760 0000FFFF
Char4 Inf HP: $0200 81002860 0000FFFF

In these codes, the HP is at addresses 81002560, 81002660, 81002760 and 81002860. If we use a "Compression" code, we can do all four characters with 1 code. You can see that the addresses are all similar and follow a pattern. Each one in this example is only 0x100 away from the last one. So we can make a compression code like this:
Inf Hp [All Chars]:
$4200 81002560 0000FFFF
$0004 00000100 00000000
Hopefully the colors make it easy to understand where everything goes and what each part does. :D
 
Last edited by Yohoki,

iv2b

Well-Known Member
Newcomer
Joined
Jan 17, 2016
Messages
68
Trophies
0
Age
32
XP
160
Country
Italy
I've been finding some dragon's crown codes, the issue is that the addresses change every time.
I see that existing codes (like these) tend to start from the same address, then add an offset and lastly set the value.
For example all the skill codes start with:
$3002 87E97B00 00000916
then they use an offset, for example like this:
$3000 00000000 00002ECC
and lastly set the value:
$3300 00000000 00000005

I'm wondering how i could proceed to make my codes work even after i close the game.

Thus far i managed to get gold, score (for instant levelling, up to a cap based on difficulty), skill points (which works, but they reset after closing the game) and individual skills (but i need to repeat the cheat every time, so i need a way to make it work).

Stuff i'd like to make work would be unlocking talismans, which paired with a score cheat lets me quickly put a character into the highest difficulty, and some way to add S-tier drops at the end of the mission (allowing me to roll for good equipment), but those 2 would be quite troublesome to make use of without the codes working in between sessions.


A few questions:
1. aren't the addresses 0x100 away rather than 0x200? --2560, --2660, --2760, --2860.
2. why $4200 rather than $0200 in the final code?
3. can the 00000000 be used for something else or is it just something that tags along?

*edit*

I've been looking at the docs, turns out that the 4 in $4200 is the "compression data segment", good to know.
the 00 in $4200 are actually the "related lines", i guess that's how many lines below that one will be relative to it?
So for example 00 and 01 would be the same, but 02 means that the third line would also specify an amount, address offset and value offset.
Speaking of offsets, the 00000000 is the value offset, so that's one less mystery as well.

There are a 2 part video series showing how to use tempAR, which i think is what i need to let the codes work across game sessionss, but the second video went down, oof.

*edit*

Learned to use tempAR, turns out the score is always stored in: [85A04010, 85A04014, 85C0A268, 85C0A2A8] OR [85B04010, 85B04014, 85D0A268, 85D0A2A8]
TempAR couldn't find an address+offset even after 5 dumps, setting them all to a desired value can make the game crash.
Thus far i've been using 2 cheats, the first one doesn't always work but doesn't seem to crash the game, the latter is used if the former does not work.
I think i can fix that by checking if all 4 addresses have the same value, but i wonder if there's a better solution.

*edit*

Doesn't look like vitacheat allows me to compare the values of 2 addresses, so i think i'll need to use 2 separate codes for score.
 
Last edited by iv2b,

Dumbleron

Active Member
Newcomer
Joined
Jul 22, 2018
Messages
29
Trophies
0
XP
608
Country
Czech Republic
I can't seem to get my codes to break... they just still work. Try this list, straight from my vita. It's using normal codes instead of b200 codes.
Code:
# PCSE00373

_V0 10k Rub Points
$0200 83AE6788 0000270F

_V0 1M Money
$0200 83AE6784 000F423F

_V0 99 All Cards
$4201 83ACC970 01630163
$2712 00000004 00000000

_V0 99 All Seal Stones
$4201 83AE678C 00000063
$0005 00000004 00000000

_V0 Have All Master Rings
$0200 83AE67A0 FFFFFFFF

_V0 All Consumables
$4001 83AE5FB9 00000063
$0068 00000002 00000000

_V0 All Card Packs
$4001 83AE57E8 00000001
$003A 00000002 00000000
$4001 83AE57E9 00000063
$003A 00000002 00000000

_V0 Max Mana
$5000 8163FC74 8163FC75

_V0 99 HP
$0000 8163FC77 00000063

_V0 Enemy 0 Mana
$0000 81640920 00000000

_V0 Enemy 0 HP
$0000 81640923 00000001
B200 codes may not really be necessary for this game anyway, because the codes look the same on all versions. EU(NND), USA(NND) and USA(Vitamin) all share the same codes and my USA(Vitamin) version with modified Eboot even had the same codes.

Hey I tried it on new gameplay but it enemy HP or Mana only works in first few battles, after that their HP get reduced randomly to 1-2 from originally 3.
 

iv2b

Well-Known Member
Newcomer
Joined
Jan 17, 2016
Messages
68
Trophies
0
Age
32
XP
160
Country
Italy
I'm making some progress, however there are a few things that still aren't clear to me, would be glad if anyone could help me out.

A technical doubt i'm having is understanding the point of using pointer writes: the base address is always the same, why would adding the some offset to a different pointer let you find the wanted address in cases where it's allocated dynamically?

For example:
Code:
$0200 85C01000 00000001
compared to:
Code:
$3202 85000000 00C00000
$3200 00000000 00001000
$3300 00000000 00000005

As far as i can tell, the two should be identical, however the second approach can be used when the address changes every time i launch the game, why?

That aside, i've been working on dragon's crown 1.09 (EU) codes, i have made 'max score' and 'all common skills unlocked'.
It looks like the addresses are static this time around, however they sometimes have a 0x00100000 offset.

For example:

_V0 SCORE1
$4200 85A04010 05F5E0FF
$0002 00000004 00000000
$4200 85C0A268 05F5E0FF
$0002 00000040 00000000

Will work sometimes, while other times this will work instead:

_V0 SCORE2
$4200 85B04010 05F5E0FF
$0002 00000004 00000000
$4200 85D0A268 05F5E0FF
$0002 00000040 00000000

Trying to use tempAR turned out to be futile, even after 6 dumps i only see green addresses and there are thousands, i tried the first dozen and gave up.
Is there some way to avoid using 2 codes and thus potentially changing dozens of wrong addresses?

*edit*

What i did thus far has been picking a completely arbitrary address that has a fixed value in all dumps of one type.
Address 0x85811F00 always has value 0xCCCCCCCC if the score has a 0x00100000 offset.

This is the resulting code:
Code:
_V0 Conditional Score
$D205 85811F00 CCCCCCCC #if
$4200 85B04010 05F5E0FF
$0002 00000004 00000000
$4200 85D0A268 05F5E0FF
$0002 00000040 00000000
$D504 85811F00 CCCCCCCC #endif
$4200 85A04010 05F5E0FF
$0002 00000004 00000000
$4200 85C0A268 05F5E0FF
$0002 00000040 00000000

I don't like picking a completely arbitrary address, it could very well be reserved for something else thus breaking the code later on, but i haven't seen any better solution.

Side note, i initially tried with 0x8100E100 as my address but that would cause the psvita to freeze, despite the address being in the search/dump range...uh?!
 
Last edited by iv2b,

Smoker1

Well-Known Member
Member
Joined
Feb 17, 2015
Messages
5,035
Trophies
1
Location
California
XP
6,028
Country
United States
Is anybody working on pinball arcade vita cheats for rest of tables

# PCSE00065 Pinball Arcade Ver125-134

_V0 999,999 Points-SomeNotShow 125
$0200 82A66C40 000F423F

_V0 Ball 1-Addams-Creat-JD-T2 125
$0000 8289D7E0 00000001

_V0 Ball 1-Addams-Creat-JD-T2 134
$0000 82B3B688 00000001

_V0 Bonus 50x-Creature 134
$0000 82B3BC2D 00000032

_V0 Ball 1-MM-TAN-TZ-MB-NF 125
$0000 8289D783 00000001

_V0 Ball 1-MM-TAN-TZ-MB-NF 134
$0000 82B3B62B 00000001

_V0 Bonus 100x-MedMadness 134
$0000 82B3BBC8 00000063

_V0 Always Ball 1-Stiff-Magic 125
$0000 8289D780 00000001

_V0 AlwaysBall 1-Stiff-Magic 134
$0000 82B3B628 00000001

_V0 Always Ball 1-Mars-CV 125
$0000 8289D786 00000001

_V0 AlwaysBall 1-Mars-CV 134
$0000 82B3B62E 00000001

_V0 Always Ball 1-Teed-CBW 125
$0000 8291D754 00000001

_V0 AlwaysBall 1-Teed-CBW 134
$0000 82BBB429 00000001

_V0 Always Ball 1-STTNG 125
$0000 8289D7E3 00000001

_V0 Ball 1 - STTNG 134
$0000 82B3B68B 00000001

_V0 Always Ball 1-FunHouse 125
$0000 8289D7DF 00000001

_V0 Ball 1 - FunHouse 134
$0000 82B3B687 00000001

_V0 Always Ball 1-BridePB 125
$0000 8289D7D9 00000001

_V0 Ball 1 - BridePB 134
$0000 82B3B681 00000001

_V0 Always Ball 2-RipBIoN 125
$0000 8173D553 00000001

_V0 Always Ball 1-Teed-NGG 125
$0000 8289D789 00000001

_V0 Ball 1 - Teed-NGG 134
$0000 82B3B631 00000001

_V0 Ball 1-BgSt-Genie-ED-FB 125
$0000 82A66C50 00000005

_V0 Ball 1-BgSt-Genie-ED-FB 134
$0000 82D253D8 00000005

_V0 TiltGoAway-BgSt-Genie-ED-FB 134
$0000 82D1CBD8 00000000

_V0 Always Ball 1-BlkHle-Gor-GN 125
$0000 82A66C50 00000003

_V0 Ball 1 - BlkHle-Gor-GN 134
$0000 82D253D8 00000003

_V0 Inf Time for Points-Goin Nuts 134
$0000 82D24E88 0000003C

_V0 Code to Avoid 125
$0000 82E69530 00000000

_V0 Code to Avoid 134
$0000 830E8EB0 00000000

NOTE - Some Tables like Victory are hard to nail down. Can not seem to figure it out.
 

Yohoki

Well-Known Member
Member
Joined
Dec 4, 2018
Messages
824
Trophies
0
Age
34
XP
1,213
Country
United States
I've been finding some dragon's crown codes, the issue is that the addresses change every time.
I see that existing codes (like these) tend to start from the same address, then add an offset and lastly set the value.
For example all the skill codes start with:
$3002 87E97B00 00000916
then they use an offset, for example like this:
$3000 00000000 00002ECC
and lastly set the value:
$3300 00000000 00000005

I'm wondering how i could proceed to make my codes work even after i close the game.
These are "Pointer" Type codes. They work by following an address stored at the first location. You'll want to use a tool such as TempAR to create these.

A few questions:
1. aren't the addresses 0x100 away rather than 0x200? --2560, --2660, --2760, --2860.
2. why $4200 rather than $0200 in the final code?
3. can the 00000000 be used for something else or is it just something that tags along?
1. - Yes. I originally had only 2 examples but decided right before posting to make it clearer with more addresses. Fixed. Thanks.
2. The 4 means Compression type code. The 2 means it's 32-bit. The 00 isn't important in this code type, as far as I know.
3. Yes. It's used to increase (or decrease) the value every step.

Learned to use tempAR, turns out the score is always stored in: [85A04010, 85A04014, 85C0A268, 85C0A2A8] OR [85B04010, 85B04014, 85D0A268, 85D0A2A8]
TempAR couldn't find an address+offset even after 5 dumps, setting them all to a desired value can make the game crash.
Thus far i've been using 2 cheats, the first one doesn't always work but doesn't seem to crash the game, the latter is used if the former does not work.
I think i can fix that by checking if all 4 addresses have the same value, but i wonder if there's a better solution.

*edit*

Doesn't look like vitacheat allows me to compare the values of 2 addresses, so i think i'll need to use 2 separate codes for score.
https://github.com/r0ah/vitacheat/wiki/Condition
You can indeed check the value of 2 addresses, and even do some logic. My "Plants vs Zombies" code for Swapping plants mid-game makes heavy use of Conditionals to detect button presses and combos, lock the code in certain loops and check which set of plants is loaded and should be loaded next. Here it is with notes included.
Code:
_V0 --Square plus DPad Swaps Plants
### Initialize
#Check if 81888000 is blank
$D201 81888000 00000000
#Write normal data to 81888000 (05000100)
$0200 81888000 00010005
##End
#
### Controller Combo
#Check LockBit is 0
$D003 81888003 00000000
#Check Controller for R+Sq
$C202 00000001 00008020
#Mov single bit left
$5000 81888001 81888002
#Set LockBit to 1
$0000 81888003 00000001
##End
#
### Controller Combo
#Check LockBit is 0
$D003 81888003 00000000
#Check Controller for L+Sq
$C202 00000001 00008080
#Mov single bit right
$5000 81888001 81888000
#Set LockBit to 1
$0000 81888003 00000001
##End
#
#
### Apply Selection
#Check LockBit is 1
$D007 81888003 00000001
#Check Set is 0x00
$D006 81888001 00000000
#Apply Set 0 to P.Compression
$7002 815FC1F0 00000E9C
$7200 00000000 00000090
$7702 00000000 00000000
$0008 00000074 00000001
#Set Normal Data to Set 0
$0000 81888000 00000005
$0000 81888002 00000001
##End
### Apply Selection
#Check LockBit is 1
$D007 81888003 00000001
#Check Set is 0x01
$D006 81888001 00000001
#Apply Set 1 to P.Compression
$7002 815FC1F0 00000E9C
$7200 00000000 00000090
$7702 00000000 00000008
$0008 00000074 00000001
#Set Normal Data to Set 1
$0000 81888000 00000000
$0000 81888002 00000002
##End
### Apply Selection
#Check LockBit is 1
$D007 81888003 00000001
#Check Set is 0x02
$D006 81888001 00000002
#Apply Set 2 to P.Compression
$7002 815FC1F0 00000E9C
$7200 00000000 00000090
$7702 00000000 00000010
$0008 00000074 00000001
#Set Normal Data to Set 2
$0000 81888000 00000001
$0000 81888002 00000003
##End
### Apply Selection
#Check LockBit is 1
$D007 81888003 00000001
#Check Set is 0x03
$D006 81888001 00000003
#Apply Set 3 to P.Compression
$7002 815FC1F0 00000E9C
$7200 00000000 00000090
$7702 00000000 00000018
$0008 00000074 00000001
#Set Normal Data to Set 3
$0000 81888000 00000002
$0000 81888002 00000004
##End
### Apply Selection
#Check LockBit is 1
$D007 81888003 00000001
#Check Set is 0x04
$D006 81888001 00000004
#Apply Set 4 to P.Compression
$7002 815FC1F0 00000E9C
$7200 00000000 00000090
$7702 00000000 00000020
$0008 00000074 00000001
#Set Normal Data to Set 4
$0000 81888000 00000003
$0000 81888002 00000005
##End
### Apply Selection
#Check LockBit is 1
$D007 81888003 00000001
#Check Set is 0x05
$D006 81888001 00000005
#Apply Set 5 to P.Compression
$7002 815FC1F0 00000E9C
$7200 00000000 00000090
$7702 00000000 00000028
$0008 00000074 00000001
#Set Normal Data to Set 5
$0000 81888000 00000004
$0000 81888002 00000000
##End
#
#
### Reset to normal State
#Check LockBit is 1
$D002 81888003 00000001
#Check Controller for Sq alone
$C201 00000001 00008000
#Set LB to 0
$0000 81888003 00000000
##End
### Reset to normal State
#Check LB is 1
$D002 81888003 00000001
#Check Controller for L alone
$C201 00000001 00000080
#Set LB to 0
$0000 81888003 00000000
##End
### Reset to normal State
#Check LB is 1
$D002 81888003 00000001
#Check Controller for R alone
$C201 00000001 00000020
#Set LB to 0
$0000 81888003 00000000
##End
 

Yohoki

Well-Known Member
Member
Joined
Dec 4, 2018
Messages
824
Trophies
0
Age
34
XP
1,213
Country
United States
I'm making some progress, however there are a few things that still aren't clear to me, would be glad if anyone could help me out.

A technical doubt i'm having is understanding the point of using pointer writes: the base address is always the same, why would adding the some offset to a different pointer let you find the wanted address in cases where it's allocated dynamically?

For example:
Code:
$0200 85C01000 00000001
compared to:
Code:
$3202 85000000 00C00000
$3200 00000000 00001000
$3300 00000000 00000005

As far as i can tell, the two should be identical, however the second approach can be used when the address changes every time i launch the game, why?
This isn't quite right. You're thinking that the $3 codes are adding to the address. They are not. What's happening is that the code is looking at the address (85C01000 in your example) and reading what's there as a NEW address and going there, THEN moving 0xC00000 and writing a value. (In your example, it's actually following another address again and then moving another 0x1000 before writing a 5 at the final stop.)

There is a way to do what you're expecting though. The $B200 codes start at 81000000 (not usually, but example for now). The code tells the vitacheat to start the next codes at EBoot location and add the address field as an offset. So These 2 codes are the same:
Code:
$0200 85C01000 00000001

$B200 00000000 00000000
$0200 04C01000 00000001
That aside, i've been working on dragon's crown 1.09 (EU) codes, i have made 'max score' and 'all common skills unlocked'.
It looks like the addresses are static this time around, however they sometimes have a 0x00100000 offset.

For example:

_V0 SCORE1
$4200 85A04010 05F5E0FF
$0002 00000004 00000000
$4200 85C0A268 05F5E0FF
$0002 00000040 00000000

Will work sometimes, while other times this will work instead:

_V0 SCORE2
$4200 85B04010 05F5E0FF
$0002 00000004 00000000
$4200 85D0A268 05F5E0FF
$0002 00000040 00000000

Trying to use tempAR turned out to be futile, even after 6 dumps i only see green addresses and there are thousands, i tried the first dozen and gave up.
Is there some way to avoid using 2 codes and thus potentially changing dozens of wrong addresses?

*edit*

What i did thus far has been picking a completely arbitrary address that has a fixed value in all dumps of one type.
Address 0x85811F00 always has value 0xCCCCCCCC if the score has a 0x00100000 offset.

This is the resulting code:
Code:
_V0 Conditional Score
$D205 85811F00 CCCCCCCC #if
$4200 85B04010 05F5E0FF
$0002 00000004 00000000
$4200 85D0A268 05F5E0FF
$0002 00000040 00000000
$D504 85811F00 CCCCCCCC #endif
$4200 85A04010 05F5E0FF
$0002 00000004 00000000
$4200 85C0A268 05F5E0FF
$0002 00000040 00000000

I don't like picking a completely arbitrary address, it could very well be reserved for something else thus breaking the code later on, but i haven't seen any better solution.

Side note, i initially tried with 0x8100E100 as my address but that would cause the psvita to freeze, despite the address being in the search/dump range...uh?!
Ya, that's pretty normal, I'm finding. There weren't a lot of games that had codes like this, but now that I've updated TempAR, I'm seeing this kind of pattern in almost EVERY game I look at. I usually look for a spot in the code that has a value of 0xFFFFFFFF, but that will probably work the same. It's always just a random value somewhere nearby that is a good indicator of what pointer is being used.

Slight problem with your code, though. The second set isn't being used.
Code:
_V0 Conditional Score
$D205 85811F00 CCCCCCCC #Only does the next 5 lines of code if 85811F00 is CCCC..
$4200 85B04010 05F5E0FF #1
$0002 00000004 00000000 #2
$4200 85D0A268 05F5E0FF #3
$0002 00000040 00000000 #4
$D504 85811F00 CCCCCCCC #5 Only does next 4 lines of code if 85811F00 is CCCC... and Not CCCC... at the same time.
**snip**
Can't really do If/ElseIf statements in Vitacheat. At least, not this way.... Check my PvZ code I linked earlier.
Should be:
Code:
_V0 Conditional Score
$D204 85811F00 CCCCCCCC #if
$4200 85B04010 05F5E0FF
$0002 00000004 00000000
$4200 85D0A268 05F5E0FF
$0002 00000040 00000000
$D504 85811F00 CCCCCCCC #if
$4200 85A04010 05F5E0FF
$0002 00000004 00000000
$4200 85C0A268 05F5E0FF
$0002 00000040 00000000

--------------------- MERGED ---------------------------

Hey I tried it on new gameplay but it enemy HP or Mana only works in first few battles, after that their HP get reduced randomly to 1-2 from originally 3.
Hmm. Ok. I'll have to take a look at it. It's some of my earlier codes before TempAR got beefed up, so I'll check them out soon(tm).
 

iv2b

Well-Known Member
Newcomer
Joined
Jan 17, 2016
Messages
68
Trophies
0
Age
32
XP
160
Country
Italy
Thus far i got all skills done and score, i'm trying to add talismans and some way to get loot quickly, i may look into ways to unlock floors in LoC/ToM too.
I'm looking at the existing 1.06 US codes as a guide: https://github.com/r0ah/vitacheat/blob/master/db/PCSE00019.psv

I see for example that to unlock all talismans they set 11 addresses (the number of talismans) to a value of 1, using 1 byte addresses.
I thus tried to look for the first talisman: i have a few characters, some have it unlocked, some don't.
So what i'm doing is switching between them and looking for 1 or 0 over and over, however i always end up with 0 addresses.
I once got a few addresses, they initially didn't work but actually had effect once i re-launched the game (and thus lost them, rip), yet i can't find them anymore.

For equipment i'm trying to look for the number of S-rated drops i find while playing (i suspect the items are generated at the end as they match the player's level at the end of the run), but i've been unable to find any address thus far, ouch.

*edit*
Turns out talismans are difficulty-specific, some characters were still at normal difficulty, while the others were at infernal.
Still no luck with that, rip.


Regarding the $3 codes, that makes more sense, thank you for explaining.

The second if statement is used to skip the last 4 rows, i tried it 10 times in a row and it worked every time, selecting the correct addresses.

Code:
_V0 Conditional Score
1- $D205 85811F00 CCCCCCCC #if the address has a specific value, execute the next 5 lines
2- $4200 85B04010 05F5E0FF #1
3- $0002 00000004 00000000 #2
4- $4200 85D0A268 05F5E0FF #3
5- $0002 00000040 00000000 #4
6- $D504 85811F00 CCCCCCCC #5, this if statement is always false, it's only used to skip the next 4 lines
7- $4200 85A04010 05F5E0FF #1
8- $0002 00000004 00000000 #2
9- $4200 85C0A268 05F5E0FF #3
10-$0002 00000040 00000000 #4

If the address 85811F00 has value CCCCCCCC then i execute lines 2-4, with line 5 skipping the rest of the codes
Thus executing lines 1,2,3,4,5,6.
If the address has a different value, then i skip the following 5 lines, resulting in lines 7,8,9,10 being executed instead.

Also i only see the option to compare an address and a value.
I can thus for example check if address 85000000 has a value of 00000001
but i can't check if address 85000000 has the same value of address 85000001
since the code uses addresses B1-B8 for the first address and C1-C8 are used for a value, with no operator to compare two addresses or two values with each other.
 
Last edited by iv2b,

iv2b

Well-Known Member
Newcomer
Joined
Jan 17, 2016
Messages
68
Trophies
0
Age
32
XP
160
Country
Italy
I finally found a code that works for the talismans.


What i did was dumping the memory of 2 characters, one has talisman 1,4 and 5, while the other has talisman 1 and 5.
I then looked 01 00 00 01 01 00 00 00 00, noted down all addresses where the second dump lists 01 00 00 00 01 00 00 00 00 instead (4th talisman missing), made them all into codes and tried each one.

What i don't understand is why it didn't work when i looked for the codes via vitacheat.
They clearly should've showed up as otherwise i would've been unable to find the addresses by looking at the memory dumps...

This is what i've got thus far:
Code:
# PCSB00408
# Dragon's Crown 1.09 EU

_V0 All Talismans (infernal)
$D203 85811F00 CCCCCCCC
$4001 85D01135 00000001
$0009 00000001 00000000
$D502 85811F00 CCCCCCCC
$4001 85C01135 00000001
$0009 00000001 00000000

_V0 Max Score
$D205 85811F00 CCCCCCCC
$4200 85B04010 05F5E0FF
$0002 00000004 00000000
$4200 85D0A268 05F5E0FF
$0002 00000040 00000000
$D504 85811F00 CCCCCCCC
$4200 85A04010 05F5E0FF
$0002 00000004 00000000
$4200 85C0A268 05F5E0FF
$0002 00000040 00000000

_V0 All Common Skills
$D20A 85811F00 CCCCCCCC
$0000 85D031FC 00000005 # SLIDE ATTACK
$0000 85D031FD 00000005 # WEALTH TO HEALTH
$0000 85D031FE 00000005 # MONEY IS POWER
$0000 85D031FF 0000000A # VITALITY BOOST
$0000 85D03200 00000005 # NUTRITIONIST
$0000 85D03201 00000005 # MAINTENANCE
$0000 85D03202 00000007 # ADROIT HANDS
$0000 85D03203 00000003 # EVASION
$0000 85D03204 00000003 # DEEP POCKETS
$D209 85811F00 CCCCCCCC
$0000 85C031FC 00000005 # SLIDE ATTACK
$0000 85C031FD 00000005 # WEALTH TO HEALTH
$0000 85C031FE 00000005 # MONEY IS POWER
$0000 85C031FF 0000000A # VITALITY BOOST
$0000 85C03200 00000005 # NUTRITIONIST
$0000 85C03201 00000005 # MAINTENANCE
$0000 85C03202 00000007 # ADROIT HANDS
$0000 85C03203 00000003 # EVASION
$0000 85C03204 00000003 # DEEP POCKETS

I'll now work on unlocking talismans in all difficulties.
 

Yohoki

Well-Known Member
Member
Joined
Dec 4, 2018
Messages
824
Trophies
0
Age
34
XP
1,213
Country
United States
The second if statement is used to skip the last 4 rows, i tried it 10 times in a row and it worked every time, selecting the correct addresses.

Code:
_V0 Conditional Score
1- $D205 85811F00 CCCCCCCC #if the address has a specific value, execute the next 5 lines
2- $4200 85B04010 05F5E0FF #1
3- $0002 00000004 00000000 #2
4- $4200 85D0A268 05F5E0FF #3
5- $0002 00000040 00000000 #4
6- $D504 85811F00 CCCCCCCC #5, this if statement is always false, it's only used to skip the next 4 lines
7- $4200 85A04010 05F5E0FF #1
8- $0002 00000004 00000000 #2
9- $4200 85C0A268 05F5E0FF #3
10-$0002 00000040 00000000 #4

If the address 85811F00 has value CCCCCCCC then i execute lines 2-4, with line 5 skipping the rest of the codes
Thus executing lines 1,2,3,4,5,6.
If the address has a different value, then i skip the following 5 lines, resulting in lines 7,8,9,10 being executed instead.
Ah. Makes sense. I guess that would work for a 2 part code like this. I approve! XD

Also i only see the option to compare an address and a value.
I can thus for example check if address 85000000 has a value of 00000001
but i can't check if address 85000000 has the same value of address 85000001
since the code uses addresses B1-B8 for the first address and C1-C8 are used for a value, with no operator to compare two addresses or two values with each other.
I haven't tried it yet... but VitaCheat's memory is stored in RAM too.... you could 'Technically', write a code that writes the value of an address into the code..... It's something I've thought about a bit but haven't yet tested to see how useful it is. Something like (excuse the fake addresses):
Code:
$5200 VCheatC1 85811F00
$D201 VCheatC1 00000000
etc etc

--------------------- MERGED ---------------------------

I finally found a code that works for the talismans.


What i did was dumping the memory of 2 characters, one has talisman 1,4 and 5, while the other has talisman 1 and 5.
I then looked 01 00 00 01 01 00 00 00 00, noted down all addresses where the second dump lists 01 00 00 00 01 00 00 00 00 instead (4th talisman missing), made them all into codes and tried each one.

What i don't understand is why it didn't work when i looked for the codes via vitacheat.
They clearly should've showed up as otherwise i would've been unable to find the addresses by looking at the memory dumps...

This is what i've got thus far:
Code:
snip

I'll now work on unlocking talismans in all difficulties.

Great work! Looks awesome! I was not looking forward to making these codes because I dunno how to place a cart back in now that I have Sd2Vita. XD

The talismans looks pretty easy to miss. I missed a similar thing in DBZ a while back. The screen is just so tiny and doesn't display a nice long list to easily compare things. XD
 
  • Like
Reactions: CrossOut

iv2b

Well-Known Member
Newcomer
Joined
Jan 17, 2016
Messages
68
Trophies
0
Age
32
XP
160
Country
Italy

Who said i'm using a cartridge myself? :P
The wierd thing is that i had 4 characters, 2 with the first talisman locked and 2 with the first talisman unlocked, then i just kept switching back and forth between them and looking for either 0 or 1, yet i'd always find garbage or no results at all (looking for 1 byte values), i tried no less than a dozen times too. ò.ò

If you know which addresses i could use to store values that'd be actually a really nifty tool as then i could check whether all 4 addresses have the same value rather than checking for an arbitrary unrelated address.

The normal and hard difficulty talismans were right next to the hard mode ones, but i will need to look for the ultimate difficulty ones.

Honestly i don't think i'll be able to find some way to add loot to my characters: what i've been trying to do is looking for the current number of S-rank drops i receive during a run, but i couldn't find the address, always got 0 matches. I suspect loot is generated when returning to town as it matches your character at the end of the run (for example i levelled from 15 to 35 in a single mission and i got level 35 rewards), which would imply the game just stores how many chests i opened of each type.

To find that address using a hex editor (i've been using HexEdit thus far) i'd have to dump after each chest and find an address that matches, however HexEdit doesn't seem to provide that functionality.
For example i can't find the address that has value of 1 in the first file, 3 in the second file and 4 in the third file, which is what i'd need to do.
Do you know a way to do such a thing?

If that doesn't work i'm not sure what would, i don't think i'm able to edit equipment through vitacheat or to create a save editor.

P.s.
I just realized you're the person behind TempAR vita edition, good stuff!

*edit*
My equipment clearly not good enough to clear ultimate difficulty floors, so i guess the ultimate difficulty talismans will have to wait as i can't find the address otherwise. x)
 
Last edited by iv2b,

Yohoki

Well-Known Member
Member
Joined
Dec 4, 2018
Messages
824
Trophies
0
Age
34
XP
1,213
Country
United States
Who said i'm using a cartridge myself? :P
You may not be, but it's one of the few carts I forgot to dump before switching to SD2Vita. It had fallen out of my cart case and was hidden under a jewel case in my drawer. XD

The wierd thing is that i had 4 characters, 2 with the first talisman locked and 2 with the first talisman unlocked, then i just kept switching back and forth between them and looking for either 0 or 1, yet i'd always find garbage or no results at all (looking for 1 byte values), i tried no less than a dozen times too. ò.ò

If you know which addresses i could use to store values that'd be actually a really nifty tool as then i could check whether all 4 addresses have the same value rather than checking for an arbitrary unrelated address.

The normal and hard difficulty talismans were right next to the hard mode ones, but i will need to look for the ultimate difficulty ones.

Honestly i don't think i'll be able to find some way to add loot to my characters: what i've been trying to do is looking for the current number of S-rank drops i receive during a run, but i couldn't find the address, always got 0 matches. I suspect loot is generated when returning to town as it matches your character at the end of the run (for example i levelled from 15 to 35 in a single mission and i got level 35 rewards), which would imply the game just stores how many chests i opened of each type.

To find that address using a hex editor (i've been using HexEdit thus far) i'd have to dump after each chest and find an address that matches, however HexEdit doesn't seem to provide that functionality.
For example i can't find the address that has value of 1 in the first file, 3 in the second file and 4 in the third file, which is what i'd need to do.
Do you know a way to do such a thing?

If that doesn't work i'm not sure what would, i don't think i'm able to edit equipment through vitacheat or to create a save editor.
I'd have to play around with vitacheat and see where the addresses usually are. I imagine it would be super easy with Vitacheat z06, because I could use a $b200 code to select Vitacheat's location and just use an offset from there. I'll give it a try sometime and see how well it works. Not sure it's even possible, but in theory it should work.

P.s.
I just realized you're the person behind TempAR vita edition, good stuff!
Thanks bro. It wasn't easy as I've very little programming EXP... mainly HTML from 15+ years ago when I was in school. XD
 

iv2b

Well-Known Member
Newcomer
Joined
Jan 17, 2016
Messages
68
Trophies
0
Age
32
XP
160
Country
Italy
Looks like i've been using z05 this whole time, i'll look into z06. :P

If you happen to find yourself fiddling with the game (specifically version 1.09 EU) do look whether you happen to find ways to get equipment faster or to edit equipment, had zero luck thus far.

Tomorrow/tuesday i'll make skill codes for each character and try to look into infinite hp/mana for player1 as that's something i can actually tackle. :)
 

monodevil

Well-Known Member
Member
Joined
Apr 2, 2013
Messages
288
Trophies
1
XP
1,050
Country
United States
Actually after connecting to the internet i got the (EU) game to work yet again...weird.
If you happen to know whether i can export it and if it's compatible with the ps3 version do let me know, that'd be quite neat. I know the game lets you upload/download saves between ps3/psvita, maybe there's a way to manually do that.
That does sound interesting but that's a bit beyond my knowledge as I never owned a PS3 to know how it works or even if its possible.

Looks like i've been using z05 this whole time, i'll look into z06. :P

If you happen to find yourself fiddling with the game (specifically version 1.09 EU) do look whether you happen to find ways to get equipment faster or to edit equipment, had zero luck thus far.

Tomorrow/tuesday i'll make skill codes for each character and try to look into infinite hp/mana for player1 as that's something i can actually tackle. :)
Also nice work on getting codes to work for DC, might test them myself and see if they also work for the US version later on.

As for HP, I remember working on some in the past and managed to get 1 working for the Wizard. It worked for a bit but once I added party members, the code seemed to have changed places then eventually stop working and crashed. This was before TempAR was updated, so I'm not sure if this would be of any help. When I made the code it was done with party members turned off and playing with only 1 character. I also tried to make a HP code with party members and was noticing that party member address would swap giving other party members Infinite HP instead of my character.

I think its the more party members you add the more the address changes around basically.
 
Last edited by monodevil,

iv2b

Well-Known Member
Newcomer
Joined
Jan 17, 2016
Messages
68
Trophies
0
Age
32
XP
160
Country
Italy

I doubt they'll work on the US version too, but hey you never know! :P

Codes sometimes have a 0x00100000 offset, maybe adding players fiddles with that, i'll find out in the coming days (although i play solo anyway).
If you happen to have characters that are geared for ultimate difficulty then consider getting some talismans in normal/hard/infernal and ultimate and sharing a memory dump from x81000000 to x89000000.
The US version will most likely have different offsets, but that may be useful to find out the addresses in the EU version as well.

I really want to find some way to get quick loot, one way would be generating a ton of drops at the end of every run, while the only other approach i can think of would involve manually unlocking floors in LoC/ToM + invincibility and ideally some way to increase damage output, thus melting everything in really high level areas and getting loot that way.

So if you find clues as to how i could add drops at the end of a run (ex: 99x S rank), unlock LoC/ToM floors or increase damage output that'd be a huge help.
 

Yohoki

Well-Known Member
Member
Joined
Dec 4, 2018
Messages
824
Trophies
0
Age
34
XP
1,213
Country
United States
I doubt they'll work on the US version too, but hey you never know! :P

Codes sometimes have a 0x00100000 offset, maybe adding players fiddles with that, i'll find out in the coming days (although i play solo anyway).
If you happen to have characters that are geared for ultimate difficulty then consider getting some talismans in normal/hard/infernal and ultimate and sharing a memory dump from x81000000 to x89000000.
The US version will most likely have different offsets, but that may be useful to find out the addresses in the EU version as well.

I really want to find some way to get quick loot, one way would be generating a ton of drops at the end of every run, while the only other approach i can think of would involve manually unlocking floors in LoC/ToM + invincibility and ideally some way to increase damage output, thus melting everything in really high level areas and getting loot that way.

So if you find clues as to how i could add drops at the end of a run (ex: 99x S rank), unlock LoC/ToM floors or increase damage output that'd be a huge help.
Have you tried finding the location of consumables? That's how I found Equipment in Sword Art. I found the Consumable potions and gems and Equipment/Armor was stored just a few pages away.

Edit:
Also, are you guaranteed a set number of drops at the end of a run? Maybe that number needs to be subtracted out or added to the number you're searching for.
 
Last edited by Yohoki,

monodevil

Well-Known Member
Member
Joined
Apr 2, 2013
Messages
288
Trophies
1
XP
1,050
Country
United States
I doubt they'll work on the US version too, but hey you never know! :P

Codes sometimes have a 0x00100000 offset, maybe adding players fiddles with that, i'll find out in the coming days (although i play solo anyway).
If you happen to have characters that are geared for ultimate difficulty then consider getting some talismans in normal/hard/infernal and ultimate and sharing a memory dump from x81000000 to x89000000.
The US version will most likely have different offsets, but that may be useful to find out the addresses in the EU version as well.

I really want to find some way to get quick loot, one way would be generating a ton of drops at the end of every run, while the only other approach i can think of would involve manually unlocking floors in LoC/ToM + invincibility and ideally some way to increase damage output, thus melting everything in really high level areas and getting loot that way.

So if you find clues as to how i could add drops at the end of a run (ex: 99x S rank), unlock LoC/ToM floors or increase damage output that'd be a huge help.

Just tested your Dragon's Crown code for the US version of Dragon's Crown(PCSE00019) and they work flawlessly so I guess I can still help with anything if you need. I only tested the Max score and the All Common Skills so far. I can't for the life of me remember what Talismans are or were used for so I couldn't really test those, its been awhile since I last played DC. The max score code got me from level 1 to lvl 35 in 1 run although, this game still gives me that Skill Point problem of resetting your skill points when gaining too many. Out of 35 levels, the game only gave me 2 Skill Points when I got back to town so some kind of anti cheat measure must be in place even when gaining too many levels.

-Edit
After some more further testing, it looks like the Common Skills codes isn't permanent and needs to be either reapplied after a dungeon run or left on. I think it was like this for the old DC codes wasn't it?
 
Last edited by monodevil,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: https://www.youtube.com/watch?v=pnRVIC7kS4s