Looking for ideas with Cheat Engine to alter Abe Store / Tomato Store / Harbor Lounge raffle outcome

Joined
Dec 29, 2018
Chris_Chocobo on the Cheat Engine forums apparently found a way to isolate the various raffle prize values in the PC re-release of Shenmue (http://fearlessrevolution.com/viewtopic.php?f=4&t=7851&p=73387#p73387), but unfortunately his Cheat Engine table links have gone dead. I tried reaching out on the forums but it's not clear if he's really active over there or not.

I've tried playing around with this myself and I am not having much luck finding these particular values. Assuming this still works like the Dreamcast version / what Radar found in this thread (https://www.shenmuedojo.com/forum/index.php?threads/raffle-draw-stories.191/#post-3775), the prize assignment value is written when the raffle animation sequence begins. What's not clear to me is whether or not this value stays in this memory field until the next drawing event.

Assuming it does, in theory you could isolate this by doing memory scans after each draw and using a value of 0 - 5, 0 being a loss (presumably), and 1-5 correlating with the various prize levels.

The sad thing is that figuring this out will probably take me less damn time than winning the Goldan Dural again. I did it in the original and I'm not sure that's something I want to go through again. The OCD side of me isn't letting me complete the game without a complete collection though.

Maybe it would be easier to try to figure out how to alter the inventory.
 
What's not clear to me is whether or not this value stays in this memory field until the next drawing event.

Assuming it does, in theory you could isolate this by doing memory scans after each draw and using a value of 0 - 5, 0 being a loss (presumably), and 1-5 correlating with the various prize levels.
Yes, 0 - special prize,(Abe store exclusive) 1-5 are prizes from 1 to 5, 6 - no prize.
Addresses are
Abe store: Shenmue.exe+6500DAC
Dobuita tomato: Shenmue.exe+64FEC6C
Harbor tomato: Shenmue.exe+651D718
 
More interested if you could use this to get a more concrete value on what the odds are, and whether they change on "lucky days".
 
Yes, 0 - special prize,(Abe store exclusive) 1-5 are prizes from 1 to 5, 6 - no prize.
Addresses are
Abe store: Shenmue.exe+6500DAC
Dobuita tomato: Shenmue.exe+64FEC6C
Harbor tomato: Shenmue.exe+651D718

Did you find these under the latest patch? I just seem to have junk data under these values in my game (assuming these are just single byte values). That said, interesting... I figured 0 was the losing value when doing my searches. This helps. Were these values persistent for you after a reload? Wondering if this is randomized each time the game loads.

You're only cheating yourself, and deep down, your OCD knows this... ☯️

It's that or you're basically guaranteed to not get it. Maybe if you save scum and constantly reload on a lucky day you'll possibly get it, but I don't really find doing the raffle potentially thousands of times to be a good use of my free time.

More interested if you could use this to get a more concrete value on what the odds are, and whether they change on "lucky days".

If the fields can be concretely defined then you should be able to identify what accesses those memory regions and possibly find something from there... that said, without access to the actual source code I think it would be a bit of a challenge.
 
Did you find these under the latest patch?
yes, latest patch, they are persistent if I use format ".exe+address" like I posted. Anyway, knowing that 6 means no prize, I think you should be able to figure out what addresses are.
 
yes, latest patch, they are persistent if I use format ".exe+address" like I posted. Anyway, knowing that 6 means no prize, I think you can figure out what addresses are.

Okay, so I did some testing with the Tomato store on my game, and at least right now it seems like my address is at Shenmue.exe+64FEBCC. First off, thanks because just knowing that 6 is a loss makes it very easy, I was going about it all wrong assuming 0 was a loss so I could never isolate this. What's interesting is that the value stays in place after your drawing up until the point that you choose to buy an item in the store... the field value is then set to 255. As soon as the drawing animation occurs a value of 1-6 is assigned [edit] and as you noted in your original post, this value has absolutely nothing to do with when you press A to draw a ticket, thus disproving almost 20 years of myth that you have to pull a ticket at a certain "whoosh."

Edit:

Alright, some futher testing shows that my Abe Store field is actually Shenmue.exe+6500DAC. For some reason when I initially had this loaded it had a value of like 180 or something but now it seems to behave as expected. Weird.

As an interesting side note, you can still change the value of this field, and your prize, even after Ryo picks a ticket, as long as it's during the part of the sequence where he reads the outcome of the ticket. If you change the value before the camera switches to the store employee, the game will act as though whatever value is in the field is what you drew. Not all that useful I guess.
 
Last edited:
it seems like my address is at Shenmue.exe+64FEBCC.
I think i found out why addresses are different, I used save at 12/12/1986 20:56 at what would be Disc 3 on dreamcast and address was Shenmue.exe+64FEC6C for Dobuita tomato.. BUT! If i load save from 03/12/1986 14:51(Disc 1 on Dreamcast) then address changes to Shenmue.exe+64FEBCC, so there must be some condition to it, may be Disc number? or date/time?
 
It's that or you're basically guaranteed to not get it. Maybe if you save scum and constantly reload on a lucky day you'll possibly get it, but I don't really find doing the raffle potentially thousands of times to be a good use of my free time.

Who'd be crazy enough to do that?
 
I think i found out why addresses are different, I used save at 12/12/1986 20:56 at what would be Disc 3 on dreamcast and address was Shenmue.exe+64FEC6C for Dobuita tomato.. BUT! If i load save from 03/12/1986 14:51(Disc 1 on Dreamcast) then address changes to Shenmue.exe+64FEBCC, so there must be some condition to it, may be Disc number? or date/time?

Ahh, that's interesting. Must be one of them. My tests were all during what would have been disk 1 / early December in game.

Who'd be crazy enough to do that?

Ohhh... someone.

Those are some great finds, Radar! Good to have hard proof that it is in fact true that it doesn't matter at all how many swishes you wait.

If you want a raffle story...
I really wanted to win the Dural Gold for a video and so I went to the vending machine next to Abe's store and bought cola until I had 10 winning cans. Then I proceded to cash them in for a go at the raffle over and over again. The setup may take some time but it is faster to dump these on the counter than buying snacks eventually. Well definately when you have the beta and can save directly at the store, keep this as a tip for I&II.

And oooh how much time this method must've saved overall. I had to draw 2392 times until I finally won that damn thing. And I did this around Christmas where the chances of winning are doubled!

https://www.shenmuedojo.com/forum/index.php?threads/raffle-draw-stories.191/#post-3792
 
Hi guys. I'm kind noob with these kind of things, so you please can tell me how do i change those adress? I try hex edit the shenmue.exe but i did not find those adress for abe store.
 
Back
Top