Jump to content

redbags

  • Posts

    79
  • Joined

  • Last visited

Everything posted by redbags

  1. hey mate. It did die a little bit (xmas + kids) but just fired up the laptop to switch my brain back into mode. I wonder how much I've forgotten. Let's see.
  2. So I ran into difficulties getting to the same number as you for the four of a kind tens. But. As I started typing out the message the light came on and I got it sorted. Exactly the same as my previous post. I think I'm going to do the calcs in code vs excel as the formulas are getting a bit messy. Let's see how I get on.
  3. @stevedude2 I'm getting very close to your numbers but I'm missing something. See below: - 5OAK ME YOU DIFF TEN 718800 718536 264 JACK 395952 395760 192 QUEEN 248784 248544 240 KING 103632 103392 240 ACE 53313 53097 216 JP 80142 80142 0 WILD 48 48 0 If we use the 5OAK TENs as an example I am doing the following: - =(tencountreel1+wildcountreel1)*(tencountreel2+wildcountreel2)*(tencountreel3+wildcountreel3)*(tencountreel4+wildcountreel4)*(tencountreel5+wildcountreel5)-wild5oakhitstotal so...... =(15+3)*(14+2)*(14+2)*(10+2)*(11+2)-48 = 718800 I've tried a few different theories to try and get to your number but they are not working. Are you able to spot anything obvious? Cheers. Update - Oh I see it now. The difference is the same as your previous post. The W,W,W,W,T is not a winning line as the W,W,W,W pays more than W,W,W,W,T so is the winning line.
  4. Could I possibly look at your formula for 4OAK wilds? I'm on cell 2 and failing already haha
  5. Cheers mate. I'm getting very similar numbers to yours but I'm slightly off. I'm going to start at 5oak wilds and work back. I might shout if I can't crack it. Hands full at moment so hoping to take a good look later on this evening. Will also answer other questions as best I can.
  6. I was in the process of going to ask you another question but if you want to take a stab at it then I for one would be very interested and will park it for now. I've zipped up a bunch of files which might be of interest. Let me know if you need anything further. data.zip
  7. @stevedude2cheers buddy. I used wilds and only three reels to try and simplify the sums for that specific example and because I have all of the three of a kind wins dumped out to a csv so had something to cross reference against. Armed with your knowledge above I will take do the calcs for all sets tomorrow.
  8. Perhaps you could sanity check something for me - been staring at the computer for too long. Looking at v1 of the reels and focusing on just wilds and three of a kind. Three reels at 60 possibilities each = 60*60*60 = 216000. I then use the following formula = (3/60)*(2/60)*(2/60) to get the odds of getting a wild which gives 0.00005555555.... I then multiple the total number of possibilities (216000) by the odds (0.0000555555) which gives me 11.99999999.....round it up for 12. Comparing that against my calculated set of records - I have 12 instances of wild, wild, wild per win line giving 120 in total. Finally dividing 216000 / 120 gives 0.000556. Meaning odds of hitting three wilds in a row on any reel is 1 in 1800. Does that sound right?
  9. For now I'm dropping the lines when the pots appear on a win line so maybe this explains the discrepancy. I'm also only processing array items 0 through to 57 on a 60 element (arrays start at 0 so 59 is the last element) and not wrapping the reels so this might also be an oversight. I'll take a stab at doing the calcs later with excel. I'm sure I hit issues with neverending numbers when I tried this previously so felt like it wasn't sure precise.
  10. At the moment I'm just generating all of the winlines and will go back and do value calculation later. And yes the figure 156005 was incorrect - it's lower now as I had a bit of fuzzy logic in there to account for the wilds which wasn't correct. I've also taken a slightly different approach and got the job down to > 1min to run. For the line calculation I have a question. On this particular game you cannot pick the lines. Looking at line 1 3OAK results there are 9541 permutations excluding pots. But looking another set of results for say winline 7 - there are 9520 permutations. If I follow your logic - should each line produce the same amount of permutations which might suggest I have issues with my code? Additionally - looking at the symbol distribution per symbol - should I be able to calculate the permutations in advance of actually running through them all to verify? Sorry for all the questions. Appreciate your input.
  11. Thanks @stevedude2. I've had to park the pots calcs for now whilst I focus on the symbol calcs so your post will come in handy when I get to it. I've currently been dragged into writing hundreds of lines of code and it's all getting a bit messy. I've just finished calculating all of the three of a kind wins across all 10 win lines (except for pots) and I'm getting 156005 results and it's taking 22 mins to complete which is too long. I can live with it but also know I can be doing something better here. Re: the weights - I don't see anything obvious to indicate weights but it could be an oversight on my part. So my thought process is calculate the rtp for each set of reels and use that figure out the weight or at least narrow it down. Here is a pivot of the reel data. If you want to cast your eye over it perhaps there is some insight you can share. Be curious to see if it's simple enough based on the below to calculate odds of three pots for example.
  12. No it's present for all symbol types.....by X I meant not_symbolking for example. I don't really know why you would define something like that expect for possible performance reasons. I haven't actually done the calculations for scatters yet. Will do that this evening hopefully.
  13. OK answering my own question here but sharing to give anyone interested some insight. I only needed to do the comparison between array1 and array2 and find the matches. This whittled the result set down to a much more manageable 4788 combinations which needed to be processed further to find three of a kind, and then four of a kind etc. Sometimes it helps to type out loud when you're focusing on a challenge
  14. One thing I do notice is that the winlines are defined in the game as between 0 - 14 so appear to be referencing the overall set of reels as a single array. Example: - 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 I also notice they define NOT_symbolX which isn't obvious why. I wonder if there is perhaps some performance trick here where you convert it into binary and a comparison that way or such like.
  15. I'm approaching it from the point of view that I have the reel sets and want to use it to calculate rtp of each set. The game in question is using multiple reel sets and my hunch is multiple rtps are achieved by using an unknown weights across the different sets. If I can figure out the rtp of each set I should be able to figure out the weight. I suspect there is a much faster method than the one I outlined in my original post. But if worse comes to worse I'll just brute it out. But if anyone has any ideas then please share. Also 10k for a slot program is out of my hobby league. This is just an interest vs doing anything commercial. Cheers
  16. The game is a 5 reel x 3 line video slot. I have some reel strips. Each strip (array) has 60 elements. There are a total of 9 possible symbols - one of which is a wild and one of which is a pot. Three pots or more anywhere on screen give the pot bonus, four gives super pot bonus and five gives jackpot. The game has 10 win lines. My approach for finding all of the possible wins and thus calculating the RTP would be something like looping through reel 1 array, nested loop through reel 2, nested loop through reel 3, nested loop through reel 4, nested loop through reel 5, check the values for each win line against each symbol set and so forth. This will literally be billions of calculations. (I forgot to mention there are 16 reel sets in total.) Question I have is can anyone think of a faster way of doing this? I will code around certain rules to avoid over calculating. Example - stop processing when no three symbols match on a winline. I'm also looking at other rules such as when symbol K is on reel 1, position 2 and also present on reel 2 then I know the other symbols on reel1 can never line up for a win. But even that is starting to make the code overly complicated. If anyone has any ideas on how they would approach it I would love to hear. Cheers
  17. Which model are you using? Your previous post got me interested and DitherDeleter Smooth on openmodeldb looked interesting.
  18. Having C or C++ skills will always be valuable to the community. In the excellent thread mort shared theres stuff waiting to be tackled if you're interested. Alternatively, if you wanted to turn your hand to looking at something a bit more modern I would be happy to give some suggestions *cough* brain dump on you
  19. I've been using ChatGPT to explain lifted dissembly code snippets to me and it's incredible. I also use it to port code from one language to another and, again, it's crazy good. Maybe in 5 yrs time it'll be good enough to take all the dissembly as a single payload. We can hope. Great work on the project btw and I find the updates very interesting. The end product will be something quite amazing.
  20. Yep that's the idea. The tricky part is relaying the video. Lots of tools out there but its fiddly. And I challenge you to find an executable with more parameters than ffmpeg I did spend about 4 hrs yesterday mucking about with the video relay but didn't crack it. I'll take another look when I get some time.
  21. The approach I would take (and I might do a POC) is actually streaming the video of a running instance of MFME and combining the video stream with user controls implemented in a browser window with the actions relayed to the running instance to control. Suspect lag might be a bit rubbish so forget anything skill related. But actual MFME or anything running MFME is never directly exposed to a user. It's also something very different to what you are building with oasis and no real comparison. I can think of a few things which might be interesting from a playing point of view. Either just letting a machine run and people come along and play or things like giving someone £50 of credit to get a high score from a specific RAM save etc. I did actually start looking at the video streaming part earlier today but ffmpeg and the myriad options is a bit of a learning curve. Wanted to see if I can avoid something like obs as I believe it's a bit of a resource hog.
  22. Apologies if I'm going off topic here but my understanding is that MFME is closed source or rather nobody has the source code - is that correct? Meaning knocking up something like Amber did (not sure what you're referring to specifically but I get the gist) means using some sort of wrapper to manipulate MFME? re: your idea. It's obviously the best possible experience possible. I do, however (as a general principle) like thinking about browser based tools as it makes things a bit more accessible. I'm also curious about how I would approach something like that from a development POV.
  23. The multiplayer idea is outrageously good and something I would love to see. I wondered if in lieu of something like arcade simulator/oasis it might be possible to build out something augmented and played via a browser. Think evolution live games controlling an instance of MFME. The challenge with this approach is that it's likely to be expensive from a compute point of view due to the resource requirements of MFME but over time that will mellow out. I also wonder about the lag/sync issues as fruits require a reasonable amount of user interaction. Hmmm.
  24. I suspect there are past and present members of this community with the skills to do this. Sadly, I don't include myself in that.
  25. I'm reasonably certain there is no hardware lock-in enforced at the operating system / hardware level. I'm also reasonably sure there is no hardware lock-in enforced at the barboot phase. The reason I say this is because I have it up and running in a Hyper-V virtualised environment. It's possible the exec does some additional checks but I never got that far, or rather, the exec crashes with a graphics error after it's initiated by barboot. Now....I have an idea on what might cause this but I'm not sure how easy it will be to workaround in a pure virtualised environment. It might need something like vmware to setup a raw device map through to an actual GPU. What I can say is that it's very time consuming work especially when tinkering around in XP embedded. The bare bones nature of the OS and it's age make it difficult to get a good working environment. Not insurmountable but definitely a ball ache. I'll do a proper write up once I get the time.
×
×
  • Create New...