Adamfostas Posted September 5, 2006 Share Posted September 5, 2006 Umm, I think you're misunderstanding what a 'seed' is. It takes the place of 'rnd' in your code, providing that number for each drop. That's why I said 'string of numbers'. I reiterate: computers are not random. "Join me next week on 'Let's Make No Freaking Sense', when I shall be waxing an owl." - Green Wing Barrows Drops: 1x Verac's Flail, 2x Karil's Crossbow, 1x Torag's Hammers, 1x Karil's Leatherskirt, 1x Karil's Coif Link to comment Share on other sites More sharing options...
DarkDude Posted September 5, 2006 Share Posted September 5, 2006 Umm, I think you're misunderstanding what a 'seed' is. It takes the place of 'rnd' in your code, providing that number for each drop. That's why I said 'string of numbers'. I reiterate: computers are not random. Oh, so when you log on you get assigned say: 37, 57, 36, 32, 14, 48, 49 etc.? Then these are used where the rnd# was in my code? The way you explained it and with the example you gave it sounded like you meant it figures EVERYTHING out as soon as you log on. That wouldn't work if it was true anyway, due to the way the dropping works (As jagex have said there are two wheels) and with Ring of Wealth and what-not it would be a completely unefficent way to do it. How is the game meant to know what monster you're going to fight when you log on? To store that ammount of numbers when you log on would take up A LOT of space (Having to save what? 50k+ numbers for 100k people, that's A LOT) And yes, Computers may not be random, but it's possible to have "Random number simulators" where it IS basicly random. Link to comment Share on other sites More sharing options...
Adamfostas Posted September 5, 2006 Share Posted September 5, 2006 That wouldn't work if it was true anyway, due to the way the dropping works (As jagex have said there are two wheels) and with Ring of Wealth and what-not it would be a completely unefficent way to do it. How is the game meant to know what monster you're going to fight when you log on? To store that ammount of numbers when you log on would take up A LOT of space (Having to save what? 50k+ numbers for 100k people, that's A LOT) Clearly I haven't explained myself very well. The drop 'seed' is applied to ANY combat, regardless of the monster involved. That's why I said it takes the place of 'rnd#' in your code, which I believe does not require that the game know what monster you're going to fight when you log on. However, I've done a little research since my first post, and it appears that part of my supposition was inaccurate. The 'seed' does not have to be a string of 50k numbers - it is merely a short string from which lots of numbers can be generated. You can read more about random numbers in Java here: http://www.cs.geneseo.edu/~baldwin/reference/random.html. Since the original poster reproduced the same drop results we can surmise that the 'seed' is not generated from the server time but is rather a unique value. This is because it is highly unlikely that he managed to kill the cyclops within a millisecond of his original killing time. This is interesting, because - depending on how the seed is generated - it may be worthwhile switching worlds if you're not getting good drops on one. However, if instead of being generated on login it is generated on the creation of your character, you will have 'unlucky' characters and 'lucky' ones. Hmm. Think I'll message Jagex to find out the truth... "Join me next week on 'Let's Make No Freaking Sense', when I shall be waxing an owl." - Green Wing Barrows Drops: 1x Verac's Flail, 2x Karil's Crossbow, 1x Torag's Hammers, 1x Karil's Leatherskirt, 1x Karil's Coif Link to comment Share on other sites More sharing options...
Doomster Posted September 5, 2006 Share Posted September 5, 2006 The key is not "calculating everything at logon", but the use of a random number seed that is initialized using a parameter which remains the same. Normally, since the random number function of most computers generates a chaotic sequence (but nevertheless, a SEQUENCE which would be repeatable), a programmer would initialize it from a value which is unpredictable at the time of measurement, such as time, cpu tick count, number of bytes passed through a certain function. PS. One of the crackpot super file compression methods often proposed, is that with enough calculation, any file could be created using an appropriate "random" function and seed. Link to comment Share on other sites More sharing options...
Adamfostas Posted September 5, 2006 Share Posted September 5, 2006 Excellent, someone who sounds like they know what they're talking about. Doomster, given the information above about the consistency of drops, what are your best guesses for the parameter? Edit: Now, that compression method would be impressive. How far has anyone got to achieving it? "Join me next week on 'Let's Make No Freaking Sense', when I shall be waxing an owl." - Green Wing Barrows Drops: 1x Verac's Flail, 2x Karil's Crossbow, 1x Torag's Hammers, 1x Karil's Leatherskirt, 1x Karil's Coif Link to comment Share on other sites More sharing options...
ecopetition Posted September 5, 2006 Share Posted September 5, 2006 But to do that it would have to generate ALL the drops you'd get for ALL the monsters in the game, and would take far too long. The drops ARE determined when you kill the monsters... The code is PROBABLY something like this. x = number of people that attacked THAT npc, so it checks all the players to see who did most damage then makes them player(n) if monster.dead = true then player(x).damagecheck = player(n) player(n).slayercheck player(n).questmonstercheck player(n).ringcheck if player(n).slayercheck = true and x <2 then player(n).addslayerxp(monster.hp) elseif player(n).slayercheck = true and x >1 then player(n).addslayerxp(monster.hp/2) endif s = rnd# if monster.drop(s) >=0 and <= 0.01 then player(n).itemadd(Coins (320)) elseif... etc... elseIf monster.drop(s) >0.9 then r = rnd# if player(n).ringcheck = true then r = r + 0.1 end if if monster.raredrop(r) >=0 and <=0.01 then monster.itemdrop(uncut emerald) elseif etc... monster.normdrop [bones etc.] if player(n).questmonstercheck = true then monster.itemdrop(questitem) endif x 10000000000 That's what HAS to be calculated every time an NPC gets killed, of course that's really badly coded but you get the point, there'd also be the drop tables and item dbs somewhere for the game to look at, instead of the drops being coded in the code. Ok, for a start - runescape runs on JAVA, not FLASH. Your script is in flash, and not even accurate. It's unlikely on this. I'd say they are automatically generated by the server, probably a MySQL database. When I got a halfkey from banshees, my next 20 or so drops were either nothing or uncut gems. Although there may be something to do with the code, there is also coincidence? Seminiferous Tubule. Link to comment Share on other sites More sharing options...
mini193 Posted September 5, 2006 Share Posted September 5, 2006 so thats why i cant get a bronze defender after 6k tokens... and I thought I was unlucky.. i thought I was unlucky, never had a drag drop, only a rune scimmy from fire giants and rune arrows. But I did get adyd defender in under 2k tokens. my friend made me take a break from rune defender ebcause thats all I was doing... Doing a little bit of everything Link to comment Share on other sites More sharing options...
DarkDude Posted September 5, 2006 Share Posted September 5, 2006 Actualy, it was really psuedo code, semi based on vb.net, it wasn't meant to be accurate. Runescape is programmed using runescript, so it'd be different and no one knows what runescript looks like. A drop is generated each time you kill a monster, it's not generated when you log on, whenever you equip a new item, whenever you do an emote or whenever you do a handstand while drinking a glass of boiling water or whatever else people have said. The drops are INDEPENDANT, what you got last drop does NOT effect what you get next drop. There are too many factors that determine what the drop is that they can not be generated at any other time other than that of when the monster is killed... Link to comment Share on other sites More sharing options...
Matok Posted September 5, 2006 Share Posted September 5, 2006 A drop is generated each time you kill a monster, it's not generated when you log on, whenever you equip a new item, whenever you do an emote or whenever you do a handstand while drinking a glass of boiling water or whatever else people have said. The drops are INDEPENDANT, what you got last drop does NOT effect what you get next drop. There are too many factors that determine what the drop is that they can not be generated at any other time other than that of when the monster is killed... Exactly , other factors like the player/session id are also part of the equation. So even if you and other player kill the same type of monster in the very same moment you'll get different drops Link to comment Share on other sites More sharing options...
Adamfostas Posted September 5, 2006 Share Posted September 5, 2006 Runescape is programmed using runescript, so it'd be different and no one knows what runescript looks like. A drop is generated each time you kill a monster, it's not generated when you log on, whenever you equip a new item, whenever you do an emote or whenever you do a handstand while drinking a glass of boiling water or whatever else people have said. The drops are INDEPENDANT, what you got last drop does NOT effect what you get next drop. There are too many factors that determine what the drop is that they can not be generated at any other time other than that of when the monster is killed... Runescript is the language Jagex use to add content to the game. However, it is programmed in Java. What you say is like saying HTML is the language Firefox is programmed in. As to the rest of your post, I think you're getting confused as to what we're claiming. Certainly, a random number is generated every time you kill a monster, and that number - along with all the other factors - determines the drop. However, that number is generated from the seed. Read the content of the link I gave above. What makes the original post in this thread interesting is that it implies the seed is not dependant on time, but rather remains constant, thus producing the same results in the same circumstances. A random number was generated every time the poster killed a cyclops - but those numbers were the same as the previous numbers before the rollback, and thus must have been generated from the same seed. "Join me next week on 'Let's Make No Freaking Sense', when I shall be waxing an owl." - Green Wing Barrows Drops: 1x Verac's Flail, 2x Karil's Crossbow, 1x Torag's Hammers, 1x Karil's Leatherskirt, 1x Karil's Coif Link to comment Share on other sites More sharing options...
chenw Posted September 5, 2006 Share Posted September 5, 2006 Well maybe the monster drops are predesigned... like when you attack a monster it automatically goes through like a dice and then comes out with something... Anyway lol i beat the odds of a guth spear 1\480 in only 200 runs so i guess jagex likes me :3> 7 in 1200 runs :D 6,924th to 30 hunting, 13,394th to 30 summoning, 52,993rd to 30 DivinationKiln Record (Post-EoC): W 25 - L 0, 14 Uncut Onyx, 8 Jad hits received (Best record: Two in the same kiln)Obby set renewed post update #2: 0QBD drops: 21 crossbow parts, 3 Visages, 1 Kites, 2 KitsMax Port Score [2205] Achieved: 27th April 2013 (World 2nd) Farmyard Rampage ranking: 12th, 50,000 Kills. Dragon Pickaxe Drops: 1 (Times after I first entered Battlefield: 2h) Link to comment Share on other sites More sharing options...
DarkDude Posted September 5, 2006 Share Posted September 5, 2006 I meant to say coded in runescript not programmed... A string of x numbers, the each time a monster is killed a number is randomly picked from the list of x numbers? It just doesn't seem logical to use that, would make things far too predictable and the lists would have to be really big which just seems pointless :/ also it would mean Ring of wealth did nothing. Link to comment Share on other sites More sharing options...
ronnyuk Posted September 5, 2006 Share Posted September 5, 2006 This topic has made my brain hurt :( Quit Runescape 10 jan 2007 - Playing again 2012 Link to comment Share on other sites More sharing options...
blacknite310 Posted September 5, 2006 Share Posted September 5, 2006 That would be prettyawesome ima, if it is all predetermined, then maybe that's why I've yet to get a d drop after 2 years of playing. :( Link to comment Share on other sites More sharing options...
FuBai Posted September 5, 2006 Share Posted September 5, 2006 happens to be a coincidence(sp)...their is no way jagex would pre-determine all your drops from every monster...i dunno if you could code it. It would be easier than having thousands of random luck generators on each kill - it could just do it all when you start a new account, and log it into your personal information. But I think perhaps the more likley thing is that when you get a roll back, they try to ensure the same events happened as before. Link to comment Share on other sites More sharing options...
Adamfostas Posted September 5, 2006 Share Posted September 5, 2006 A string of x numbers, the each time a monster is killed a number is randomly picked from the list of x numbers? It just doesn't seem logical to use that, would make things far too predictable and the lists would have to be really big which just seems pointless :/ also it would mean Ring of wealth did nothing. The lists do not have to be big at all. I would imagine that each time a drop is required, the seed in use is used to generate a random number sequence, and the number at the next position in that sequence is given. All Runescape has to remember is the seed and the position in the sequence it's at. While this means drops would be predictable, in order to predict what you were going to get you'd need to know the same things that Runescape knows, i.e. the seed and the position in the sequence. Since they're part of the engine, you won't know that. It's important to bear in mind that when a number is generated (I'm assuming it's between 0 and 1, using something analogous to the 'nextDouble' message given on the site I mention above), that number will be the subject of a calculation to determine the drop. It'll be like the steps you mention above: first the number will be assessed against the drop profile of the monster killed (i.e. if the number is 0.41, and in the drop profile of the monster anything below 0.5 gives coins, coins will be dropped), and then if it's a rare drop there'll be a second calculation using a second number generated from the seed (it could also be the case that rare calculations have a different seed toordinary drops). Thus, the Ring of Wealth does work - I imagine it changes the drop profile of a monster from, say, rares being dropped if the number is 0.95 or above, to rares being dropped if the number is 0.94 or above. A small difference, but an important one. "Join me next week on 'Let's Make No Freaking Sense', when I shall be waxing an owl." - Green Wing Barrows Drops: 1x Verac's Flail, 2x Karil's Crossbow, 1x Torag's Hammers, 1x Karil's Leatherskirt, 1x Karil's Coif Link to comment Share on other sites More sharing options...
Locke_Superbus Posted September 5, 2006 Share Posted September 5, 2006 i reckon the drops are bound to the monster group on each server. each 'group' of the same type of monster in an area has a set cycle of drops, so when the server rolls back your getting the same sequence of drops in that cycle, which are obviously the same items Link to comment Share on other sites More sharing options...
DarkDude Posted September 5, 2006 Share Posted September 5, 2006 Would have to be one hundred atleast I'd think, seeing as the number of different drops the monsters can have. Now that you've explained it better, it does seem feasable (sp.) Just misunderstood what you meant earlier. I still believe a normal random number is generated, and there isn't a list like you say, but there could be just don't see any reason to have it. Link to comment Share on other sites More sharing options...
Adamfostas Posted September 5, 2006 Share Posted September 5, 2006 My main point is that there is no other way of doing it other than a list. As the page I referenced earlier says: Algorithmic random number generators are not truly random, they are really algorithms that generate a fixed but random-looking sequence of numbers. Computers aren't random, so in cases where the appearances of randomness are required, they have to use something analoguous to this process. In fact, most electronic devices are similar - the only ones capable of producing true randomness have to be specifically built for the purpose, such as ERNIE, which is used to draw Premium Bond numbers. By the way, the probabilities can be between 0 and 1 quite easily, as decimal places can stretch off to infinity. "Join me next week on 'Let's Make No Freaking Sense', when I shall be waxing an owl." - Green Wing Barrows Drops: 1x Verac's Flail, 2x Karil's Crossbow, 1x Torag's Hammers, 1x Karil's Leatherskirt, 1x Karil's Coif Link to comment Share on other sites More sharing options...
DarkDude Posted September 5, 2006 Share Posted September 5, 2006 If you look at the "code" I wrote I used the values between 0-1. As someone already said in this topic, you can use values which are located somewhere. For example, your x,y co-ords in the game, ammount of time logged on, experience in a certain skill, current time and many other numbers. These could applied to formula to get the "random" number and it doesn't require a list so you were wrong in saying that the list is the only way to get "random" numbers. Anyway, can't be bothered to arugue any more. There's a few methods they could use to get it, but unless Jagex tell us then we will never know. Link to comment Share on other sites More sharing options...
DeadPolkaDots1 Posted September 5, 2006 Share Posted September 5, 2006 Interesting ........ Well guess have sums up my horrible luck with drops. :D Quit RS to play real games. :P Bye TIF, miss you. Link to comment Share on other sites More sharing options...
Made0f12une Posted September 5, 2006 Share Posted September 5, 2006 I personally dont believe in this, but I do believe in give a little, take a little. Whenever I Abbysal RC, I get pked right after I sell the runes. My friend yesturday some decent item off barrow. She didnt get any today. Ranged Crave PS Those are all profitable and losing some profit, hence my point lose a little, gain a little. What goes around comes around. Trust me I know, I've had it happen a time or two Technically, you could code it, but it would be a major pain, and I don't think Jagex would go through the trouble unless they had something to gain :| You could code it, and it really wouldnt be that hard. A friend of mine teeters with java all day long, he's made some pretty crazy apps with such simplistic code Well maybe the monster drops are predesigned... like when you attack a monster it automatically goes through like a dice and then comes out with something... Anyway lol i beat the odds of a guth spear 1\480 in only 200 runs so i guess jagex likes me :3> That wouldnt work, it would be the same as being at random He had the same drops in same order. If that dice idea was true then it was clearly odd that out of ALL the differnt drops, it landed on teh same drops he recieved before. Now the 77 att isnt anything special. YOu just got the same xp you had before so of COURSE it's going to land on the same cyclops at the same time you receieved it before ^^ClicK^^"I backed my car into a cop car the other dayWell he just drove off sometimes life's ok...Alright already we'll all float onAlright don't worry we'll all float on" - Isaac BrockDays Hunting:4 - Kingly Imps Caught:2Money Earned: 4.5-5m Link to comment Share on other sites More sharing options...
Adamfostas Posted September 5, 2006 Share Posted September 5, 2006 If you look at the "code" I wrote I used the values between 0-1. Yes, but then you wrote: Would have to be one hundred atleast I'd think, seeing as the number of different drops the monsters can have. Hence my correction. As someone already said in this topic, you can use values which are located somewhere. For example, your x,y co-ords in the game, ammount of time logged on, experience in a certain skill, current time and many other numbers. These could applied to formula to get the "random" number and it doesn't require a list so you were wrong in saying that the list is the only way to get "random" numbers. I'm uncertain why you're so dead against a Java command. All the things you mention decrease the 'randomness' of any calculation: there would be certain lucky squares to stand in, certain lucky times to log on, lucky skill levels and so on - all of which have not been discovered in the game, despite extensive testing (see the official forums for the logs of some very bored people). The only thing that would produce the appearance of 'proper' randomness is a fairly standard piece of Java. I have no idea why you wish to postulate all these other convoluted methods. I've messaged Jagex asking them what parameter produces the seed. If they give an answer (which they probably won't, as it would reveal part of the inner workings of the game) I'll post it here. "Join me next week on 'Let's Make No Freaking Sense', when I shall be waxing an owl." - Green Wing Barrows Drops: 1x Verac's Flail, 2x Karil's Crossbow, 1x Torag's Hammers, 1x Karil's Leatherskirt, 1x Karil's Coif Link to comment Share on other sites More sharing options...
chris28 Posted September 5, 2006 Share Posted September 5, 2006 Odd. I've experienced a roll back like this before, around the time Wanted! came out. I thought it was just an odd coincidence, but after reading this I realize ... there is something out there! :shock: We need to have like a Runescape X Files or summat. I'll go get a red wig and start dressing in drag. so thats why i cant get a bronze defender after 6k tokens... Kewl. I thought I was the only one. ^.^ You were probably wearing a ring of wealth when killing the cyclops, this means your very unlikely to get a defender. I wasted 500 tokens because i wore a wealth then my friend said not to wear it. Link to comment Share on other sites More sharing options...
trunksrs Posted September 5, 2006 Share Posted September 5, 2006 Maybe the have it coded like that to be nice. Imagine you were out fighting dusties, and got a chain. Then you goet hit by a rollback and loose it. If they have it coded so that you get the same drops, it should be easy to get back. I know there are some people out there, that if the would loose a d chain because of a rollback, would just go nuts. I'm sure the last thing Jagex wants is a headline saying "Young teen guns down four because of Java based online game" (maybe a bit or an exaduration) because of something like this, maybe this is just a precaution so players don't snap. Look, if your mom still drops you off at school, you ain't gangsta, pull up your damn pants!3 down, 7 to go Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now