myDonuts
-
Posts
11 -
Joined
-
Last visited
Posts posted by myDonuts
-
-
Hi,
After following this tutorial and being successful to hack Ammo. I wanted to hack the gold like the tutorial suggest but after long time of trial and error I still cannot get it t work.
So I found the memory address of the coins and find the address when I spent some and the register.
Offset = 0x10098b948
Coins Register = x20All the register
SpoilerGeneral Purpose Registers: x0 = 0x0000000000000004 x1 = 0x0000000000008cd8 x2 = 0x0000000109407b58 x3 = 0x000000000000850e x4 = 0x0000000103898510 x5 = 0x0000000000000000 x6 = 0x0000000000000032 x7 = 0x0000000000000002 x8 = 0x000000016fb8c738 x9 = 0x0000000000000000 x10 = 0x0000000000000006 x11 = 0x0000000103cd008a x12 = 0x000000000000000e x13 = 0x000000000000003a x14 = 0x0000000000000009 x15 = 0x0000000103dc7460 x16 = 0x0000000000000000 x17 = 0x0000000045000000 x18 = 0x0000000000000000 x19 = 0x00000001038b9000 x20 = 0x00000000000010a1 x21 = 0x0000000108bfaca0 x22 = 0x0000000108c058a8 x23 = 0x000000000000850e x24 = 0x0000000000008cde x25 = 0x000000010899b290 x26 = 0x0000000103d71970 x27 = 0x0000000108c7af12 x28 = 0x0000000109198901 fp = 0x000000016fb8c790 lr = 0x0000000100bfb944 Bloody Harry`___lldb_unnamed_function49893$$Bloody Harry + 388 sp = 0x000000016fb8c730 pc = 0x0000000100bfb948 Bloody Harry`___lldb_unnamed_function49893$$Bloody Harry + 392 cpsr = 0x40000000
And the ARM disasembly
Spoiler,=< 0x10098b900 980300b4 cbz x24, 0x10098b970 | 0x10098b904 080b40f9 ldr x8, [x24, 0x10] ; [0x10:4]=-1 ; 16 | 0x10098b908 e00318aa mov x0, x24 | 0x10098b90c e10319aa mov x1, x25 | 0x10098b910 e2031aaa mov x2, x26 | 0x10098b914 048540f9 ldr x4, [x8, sym.entry17989] ; [0x108:4]=-1 | 0x10098b918 880840f9 ldr x8, [x4, 0x10] ; [0x10:4]=-1 ; 16 | 0x10098b91c 082940f9 ldr x8, [x8, 0x50] ; [0x50:4]=-1 ; 80 | 0x10098b920 00013fd6 blr x8 | 0x10098b924 a01640f9 ldr x0, [x21, 0x28] ; [0x28:4]=-1 ; 40 ,==< 0x10098b928 400200b4 cbz x0, 0x10098b970 || 0x10098b92c 080840f9 ldr x8, [x0, 0x10] ; [0x10:4]=-1 ; 16 || 0x10098b930 e10317aa mov x1, x23 || 0x10098b934 025140f9 ldr x2, [x8, 0xa0] ; sym.entry16703 || ; [0xa0:4]=-1 || 0x10098b938 480840f9 ldr x8, [x2, 0x10] ; [0x10:4]=-1 ; 16 || 0x10098b93c 082940f9 ldr x8, [x8, 0x50] ; [0x50:4]=-1 ; 80 || 0x10098b940 00013fd6 blr x8 || 0x10098b944 b42200b9 str w20, [x21, 0x20] || 0x10098b948 e80740f9 ldr x8, [sp, 8] ; [0x8:4]=-1 ; 8 || 0x10098b94c e0031e32 orr w0, wzr, 4 || 0x10098b950 683200f9 str x8, [x19, 0x60] || 0x10098b954 bf0301d1 sub sp, x29, 0x40 || 0x10098b958 fd7b44a9 ldp x29, x30, [sp, 0x40] || 0x10098b95c f44f43a9 ldp x20, x19, [sp, 0x30] || 0x10098b960 f65742a9 ldp x22, x21, [sp, 0x20] || 0x10098b964 f85f41a9 ldp x24, x23, [sp, 0x10] || 0x10098b968 fa67c5a8 ldp x26, x25, [sp], 0x50 || 0x10098b96c c0035fd6 ret ``-> 0x10098b970 e00316aa mov x0, x22 0x10098b974 b034f097 bl sym.func.100598c34 ;-- func.10098b978: 0x10098b978 f657bda9 stp x22, x21, [sp, -0x30]! 0x10098b97c f44f01a9 stp x20, x19, [sp, 0x10] 0x10098b980 fd7b02a9 stp x29, x30, [sp, 0x20] 0x10098b984 fd830091 add x29, sp, 0x20 0x10098b988 ff8300d1 sub sp, sp, 0x20 0x10098b98c f30301aa mov x19, x1 0x10098b990 680a40f9 ldr x8, [x19, 0x10] ; [0x10:4]=-1 ; 16 0x10098b994 e9230091 add x9, sp, 8 0x10098b998 081940f9 ldr x8, [x8, 0x30] ; [0x30:4]=-1 ; 48
I think that the close that I got from it to work was by modifying the ARM at the address 0x10098B988 to MOV x20, #0 RET wich put infinite amount of gold and crown but crash every time I buy something. I would really enjoy explanation of why it put huge amount in crown and gold because it don't make sense in my head?
Huge thanks for the help in advance.
- 1
-
HI,
On the Patcher nothing change still not able to make my tweak work.
On the Ted2 Menu I was able to make it work by making a new project and use switches that @dj_TK send me. Huge thanks to him it really helped me out. He tell me that on the menu the patch need to 8 byte instead of 4 byte. But after some other testing when I compile the project on the first it seem like the Tweak.xm is saved in .theos to reduce time on other compilation. So I tried it with 4 byte and it still work.
Spoiler[switches addOffsetSwitch:@"Infinite Ammo" description:@"Get Infinite Ammo" offsets:{0x10092DEE8} bytes:{0x1F2003D521C140F9}];
On the last one after verifying file place it was all good. But after searching, in the file $THEOS/lib/libsubstrate.tbd i added _MSHookMemory in the symbols list. And it now working fine.
Spoiler--- archs: [ armv7, armv7s, arm64, i386, x86_64 ] platform: ios install-name: /Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate current-version: 0.0.0 compatibility-version: 0.0.0 exports: - archs: [ armv7, armv7s, arm64, i386, x86_64 ] symbols: [ _MSDebug, _MSFindSymbol, _MSGetImageByName, _MSHookFunction, _MSHookMessageEx, _MSHookMemory ] ...
Anyway huge thanks for the people that helped me out.
-
Hi,
Thanks for the help.
On the Patcher I checked the key they are they same. I have just modify the example in the Tweak.xm but here the line that I modified anyway.
Spoilerif(GetPrefBool(@"key1")) { vm_writeData(0x10092DEE8, 0x1F2003D5); // }
On your amazing menu I was able to compile it but every time I try too shoot the game crash. I double check the address and they are good since I tested them with the Live Patcher.
Spoiler[switches addOffsetSwitch:@"Infinite Ammo" description:@"Get Infinite Ammo" offsets:{0x10092DEE8} bytes:{0x1F2003D5}];
And the last I verified the file that I had moved they are all in the good place but still not working same error.
Huge thanks for the help.
-
Hi,
I have been trying to make my own hack with this well made guide. Huge thanks to the author it extremely helpful.
But on the final step of making the package I am still unable to make a tweak. I have been able to make it work with the Custom Live Offset Patcher. I am using theos SDK 10.3 on iPad Air 2. I have tried multiple nic template from you the awesome community.
The first I tried, I have followed all instruction it able to compile and install but the game is not hacked my ammo are still limited verified everything and I turned on the hack in settings.
Spoilerld: warning: text-based stub file /var/theos/lib/libsubstrate.tbd and library file /var/theos/lib/libsubstrate.dylib are out of sync. Falling back to library file for linking. Undefined symbols for architecture arm64: "__Unwind_Resume", referenced from: patchOffset(unsigned long long, unsigned long long) in Tweak.xm.46c8fa26.o setupMenu() in Tweak.xm.46c8fa26.o ____ZL18didFinishLaunchingP22__CFNotificationCenterPvPK10__CFStringPKvPK14__CFDictionary_block_invoke in Tweak.xm.46c8fa26.o ____ZL18didFinishLaunchingP22__CFNotificationCenterPvPK10__CFStringPKvPK14__CFDictionary_block_invoke_2 in Tweak.xm.46c8fa26.o -[Menu initWithTitle:titleColor:titleFont:credits:headerColor:switchOffColor:switchOnColor:switchTitleFont:switchTitleColor:infoButtonColor:maxVisibleSwitches:menuWidth:] in Menu.mm.46c8fa26.o -[Menu touchesBegan:withEvent:] in Menu.mm.46c8fa26.o -[Menu menuDragged:] in Menu.mm.46c8fa26.o ... "std::terminate()", referenced from: ___clang_call_terminate in Menu.mm.46c8fa26.o ___clang_call_terminate in SwitchesTemplate.mm.46c8fa26.o "operator delete(void*)", referenced from: __gnu_cxx::new_allocator<unsigned long long>::deallocate(unsigned long long*, unsigned long) in Menu.mm.46c8fa26.o __gnu_cxx::new_allocator<MemoryPatch>::deallocate(MemoryPatch*, unsigned long) in Menu.mm.46c8fa26.o __gnu_cxx::new_allocator<unsigned char>::deallocate(unsigned char*, unsigned long) in Menu.mm.46c8fa26.o __gnu_cxx::new_allocator<unsigned long long>::deallocate(unsigned long long*, unsigned long) in SwitchesTemplate.mm.46c8fa26.o __gnu_cxx::new_allocator<unsigned char>::deallocate(unsigned char*, unsigned long) in MemoryPatch.cpp.46c8fa26.o "operator new(unsigned long)", referenced from: __gnu_cxx::new_allocator<unsigned long long>::allocate(unsigned long, void const*) in Menu.mm.46c8fa26.o __gnu_cxx::new_allocator<MemoryPatch>::allocate(unsigned long, void const*) in Menu.mm.46c8fa26.o __gnu_cxx::new_allocator<unsigned char>::allocate(unsigned long, void const*) in Menu.mm.46c8fa26.o __gnu_cxx::new_allocator<unsigned long long>::allocate(unsigned long, void const*) in SwitchesTemplate.mm.46c8fa26.o __gnu_cxx::new_allocator<unsigned char>::allocate(unsigned long, void const*) in MemoryPatch.cpp.46c8fa26.o "___cxa_begin_catch", referenced from: MemoryPatch* std::__uninitialized_copy_aux<__gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch*>(__gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, __gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch*, std::__false_type) in Menu.mm.46c8fa26.o ___clang_call_terminate in Menu.mm.46c8fa26.o unsigned long long* std::vector<unsigned long long, std::allocator<unsigned long long> >::_M_allocate_and_copy<__gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > > >(unsigned long, __gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > >, __gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > >) in Menu.mm.46c8fa26.o std::vector<MemoryPatch, std::allocator<MemoryPatch> >::_M_insert_aux(__gnu_cxx::__normal_iterator<MemoryPatch*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch const&) in Menu.mm.46c8fa26.o unsigned char* std::vector<unsigned char, std::allocator<unsigned char> >::_M_allocate_and_copy<__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > > >(unsigned long, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >) in Menu.mm.46c8fa26.o MemoryPatch* std::__uninitialized_copy_aux<MemoryPatch*, MemoryPatch*>(MemoryPatch*, MemoryPatch*, MemoryPatch*, std::__false_type) in Menu.mm.46c8fa26.o void std::vector<unsigned long long, std::allocator<unsigned long long> >::_M_range_insert<unsigned long long const*>(__gnu_cxx::__normal_iterator<unsigned long long*, std::vector<unsigned long long, std::allocator<unsigned long long> > >, unsigned long long const*, unsigned long long const*, std::forward_iterator_tag) in SwitchesTemplate.mm.46c8fa26.o ... "___cxa_end_catch", referenced from: MemoryPatch* std::__uninitialized_copy_aux<__gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch*>(__gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, __gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch*, std::__false_type) in Menu.mm.46c8fa26.o unsigned long long* std::vector<unsigned long long, std::allocator<unsigned long long> >::_M_allocate_and_copy<__gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > > >(unsigned long, __gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > >, __gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > >) in Menu.mm.46c8fa26.o std::vector<MemoryPatch, std::allocator<MemoryPatch> >::_M_insert_aux(__gnu_cxx::__normal_iterator<MemoryPatch*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch const&) in Menu.mm.46c8fa26.o unsigned char* std::vector<unsigned char, std::allocator<unsigned char> >::_M_allocate_and_copy<__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > > >(unsigned long, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >) in Menu.mm.46c8fa26.o MemoryPatch* std::__uninitialized_copy_aux<MemoryPatch*, MemoryPatch*>(MemoryPatch*, MemoryPatch*, MemoryPatch*, std::__false_type) in Menu.mm.46c8fa26.o void std::vector<unsigned long long, std::allocator<unsigned long long> >::_M_range_insert<unsigned long long const*>(__gnu_cxx::__normal_iterator<unsigned long long*, std::vector<unsigned long long, std::allocator<unsigned long long> > >, unsigned long long const*, unsigned long long const*, std::forward_iterator_tag) in SwitchesTemplate.mm.46c8fa26.o "___cxa_guard_acquire", referenced from: findMSHookMemory(void*, void const*, unsigned long) in KittyMemory.cpp.46c8fa26.o "___cxa_guard_release", referenced from: findMSHookMemory(void*, void const*, unsigned long) in KittyMemory.cpp.46c8fa26.o "___cxa_rethrow", referenced from: MemoryPatch* std::__uninitialized_copy_aux<__gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch*>(__gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, __gnu_cxx::__normal_iterator<MemoryPatch const*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch*, std::__false_type) in Menu.mm.46c8fa26.o unsigned long long* std::vector<unsigned long long, std::allocator<unsigned long long> >::_M_allocate_and_copy<__gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > > >(unsigned long, __gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > >, __gnu_cxx::__normal_iterator<unsigned long long const*, std::vector<unsigned long long, std::allocator<unsigned long long> > >) in Menu.mm.46c8fa26.o std::vector<MemoryPatch, std::allocator<MemoryPatch> >::_M_insert_aux(__gnu_cxx::__normal_iterator<MemoryPatch*, std::vector<MemoryPatch, std::allocator<MemoryPatch> > >, MemoryPatch const&) in Menu.mm.46c8fa26.o unsigned char* std::vector<unsigned char, std::allocator<unsigned char> >::_M_allocate_and_copy<__gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > > >(unsigned long, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >, __gnu_cxx::__normal_iterator<unsigned char const*, std::vector<unsigned char, std::allocator<unsigned char> > >) in Menu.mm.46c8fa26.o MemoryPatch* std::__uninitialized_copy_aux<MemoryPatch*, MemoryPatch*>(MemoryPatch*, MemoryPatch*, MemoryPatch*, std::__false_type) in Menu.mm.46c8fa26.o void std::vector<unsigned long long, std::allocator<unsigned long long> >::_M_range_insert<unsigned long long const*>(__gnu_cxx::__normal_iterator<unsigned long long*, std::vector<unsigned long long, std::allocator<unsigned long long> > >, unsigned long long const*, unsigned long long const*, std::forward_iterator_tag) in SwitchesTemplate.mm.46c8fa26.o "___gxx_personality_v0", referenced from: patchOffset(unsigned long long, unsigned long long) in Tweak.xm.46c8fa26.o setupMenu() in Tweak.xm.46c8fa26.o ____ZL18didFinishLaunchingP22__CFNotificationCenterPvPK10__CFStringPKvPK14__CFDictionary_block_invoke in Tweak.xm.46c8fa26.o ____ZL18didFinishLaunchingP22__CFNotificationCenterPvPK10__CFStringPKvPK14__CFDictionary_block_invoke_2 in Tweak.xm.46c8fa26.o -[Menu initWithTitle:titleColor:titleFont:credits:headerColor:switchOffColor:switchOnColor:switchTitleFont:switchTitleColor:infoButtonColor:maxVisibleSwitches:menuWidth:] in Menu.mm.46c8fa26.o -[Menu touchesBegan:withEvent:] in Menu.mm.46c8fa26.o -[Menu menuDragged:] in Menu.mm.46c8fa26.o ... "_bzero", referenced from: KittyMemory::read2HexStr(void const*, unsigned long) in KittyMemory.cpp.46c8fa26.o "_memcpy", referenced from: KittyMemory::memWrite(void*, void const*, unsigned long) in KittyMemory.cpp.46c8fa26.o KittyMemory::memRead(void*, void const*, unsigned long) in KittyMemory.cpp.46c8fa26.o ___32-[SCLAlertView slideOutToCenter]_block_invoke in SCLAlertView.m.46c8fa26.o ___34-[SCLAlertView slideOutFromCenter]_block_invoke in SCLAlertView.m.46c8fa26.o -[SCLAlertView slideInFromCenter] in SCLAlertView.m.46c8fa26.o ___33-[SCLAlertView slideInFromCenter]_block_invoke in SCLAlertView.m.46c8fa26.o -[SCLAlertView slideInToCenter] in SCLAlertView.m.46c8fa26.o ... "_memmove", referenced from: unsigned long long* std::__copy<true, std::random_access_iterator_tag>::copy<unsigned long long>(unsigned long long const*, unsigned long long const*, unsigned long long*) in Menu.mm.46c8fa26.o unsigned char* std::__copy<true, std::random_access_iterator_tag>::copy<unsigned char>(unsigned char const*, unsigned char const*, unsigned char*) in Menu.mm.46c8fa26.o unsigned long long* std::__copy<true, std::random_access_iterator_tag>::copy<unsigned long long>(unsigned long long const*, unsigned long long const*, unsigned long long*) in SwitchesTemplate.mm.46c8fa26.o unsigned long long* std::__copy_backward<true, std::random_access_iterator_tag>::__copy_b<unsigned long long>(unsigned long long const*, unsigned long long const*, unsigned long long*) in SwitchesTemplate.mm.46c8fa26.o unsigned char* std::__copy<true, std::random_access_iterator_tag>::copy<unsigned char>(unsigned char const*, unsigned char const*, unsigned char*) in MemoryPatch.cpp.46c8fa26.o unsigned char* std::__copy_backward<true, std::random_access_iterator_tag>::__copy_b<unsigned char>(unsigned char const*, unsigned char const*, unsigned char*) in MemoryPatch.cpp.46c8fa26.o "_memset", referenced from: restoreLastSession() in Menu.mm.46c8fa26.o -[Menu hackClicked:] in Menu.mm.46c8fa26.o std::fill(unsigned char*, unsigned char*, unsigned char const&) in MemoryPatch.cpp.46c8fa26.o KittyMemory::read2HexStr(void const*, unsigned long) in KittyMemory.cpp.46c8fa26.o -[SCLAlertView viewWillLayoutSubviews] in SCLAlertView.m.46c8fa26.o -[SCLAlertView handleTap:] in SCLAlertView.m.46c8fa26.o -[SCLAlertView addButton:] in SCLAlertView.m.46c8fa26.o ... ld: symbol(s) not found for architecture arm64 clang-5.0: error: linker command failed with exit code 1 (use -v to see invocation) make[3]: *** [/var/theos/makefiles/instance/library.mk:33: /var/root/bloodyharry_ted2/.theos/obj/debug/arm64/bloodyharry_ted2.dylib] Error 1 make[2]: *** [/var/theos/makefiles/instance/library.mk:33: /var/root/bloodyharry_ted2/.theos/obj/debug/arm64/bloodyharry_ted2.dylib] Error 2 make[1]: *** [/var/theos/makefiles/instance/library.mk:24: internal-library-all_] Error 2 make: *** [/var/theos/makefiles/master/rules.mk:111: bloodyharry_ted2.all.tweak.variables] Error 2
Never able to fix the linking error
Spoiler==> Linking tweak bloodyharry (arm64)… Undefined symbols for architecture arm64: "_MSHookMemory", referenced from: __logosLocalCtor_a4702759 in Tweak.x.61a8032e.o ld: symbol(s) not found for architecture arm64 clang-5.0: error: linker command failed with exit code 1 (use -v to see invocation) make[3]: *** [/var/theos/makefiles/instance/library.mk:33: /var/root/bloodyharry/.theos/obj/debug/arm64/bloodyharry.dylib] Error 1 make[2]: *** [/var/theos/makefiles/instance/library.mk:33: /var/root/bloodyharry/.theos/obj/debug/arm64/bloodyharry.dylib] Error 2 make[1]: *** [/var/theos/makefiles/instance/library.mk:24: internal-library-all_] Error 2 make: *** [/var/theos/makefiles/master/rules.mk:111: bloodyharry.all.tweak.variables] Error 2
Finally I tried without nic template but still got an error in the linking.
Huge thanks for any help as I already you are an amazing community.
-
Seem like a good tutorial
-
Thanks, I always wanted to learn.
-
-
Happy to see awesome cheat.
-
Always impress with the awesome cheat you make.
-
Thanks. Such interesting how a game can be cheated this level.
Bloody Harry Coins hack
in Help & Support
Posted
Hi,
I have tried what you suggested me but the gold isn't freeze. I tough that a STR would put the value in x20 into [x21, 0x20] why would it change something in coins ? I followed your tips and explore the function around and I found a MOV x20, x0 at 0x10098b9d0 modifying it to anything else freeze the gold and crown to 0 even if I move any other register.
So I have look for when I spent coins I try changing everywhere SUB but only one affect gold but make the game crash when I spent some. I looked around the function and found a MOV on the gold register but can only get the gold to 0. What should I do next now.
Huge thanks for all of the tips and the help. There no problem for the late reply.