Jump to content
New account registrations are disabed. This website is now an archive. Read more here.

Zeriab

Member
  • Content Count

    188
  • Joined

  • Last visited

  • Days Won

    5

Zeriab last won the day on December 28 2010

Zeriab had the most liked content!

5 Followers

About Zeriab

  • Rank
    Loyal Member

Contact Methods

  • Website URL
    http://sites.google.com/site/zeriabsjunk

Profile Information

  • Interests
    Programming

Engines

  • Prefered Engine
    RPG Maker XP
  • Engine Level
    N/A
  • Class Title
    Programmer / Scripter
  • Other Skills
    Eventing
  1. Technically it's possible if you can get your games on something like OnLive. It is a game streaming service, where you send input to them and they stream the game back. It just requires their client. I do believe they have made one for Android. I remember playing the demo of a RPG Maker XP game there some time ago. (Can't find anymore though)
  2. Oh so wrong you got time to hang out on RPGMakerWeb forums...but not here...

    1. Broken Messiah

      Broken Messiah

      For me, I usually just forget forums I joined and such

    2. Zeriab

      Zeriab

      Thanks to your comment I found this place again

      I somehow missed the name change :>

    3. Noob Saibot

      Noob Saibot

      Perhaps time to bookmark new address :)

  3. Zeriab

    Change Map IDs

    You can rename them manually, but you would then have the problem of updating all references to the map. This includes the mapInfos.rxdata which the editor and some custom scripts uses.
  4. I have a bunch of unfinished stuff: http://sites.google.com/site/zeriabsjunk/home/unfinishedstuff *hugs*
  5. I think there is a script called Squad movement or something like that by Near fantastica which may do you want you want
  6. While I did use .inject which can be a bit hard to understand the much more important part is the way I used an uniform distribution function to implement a biased distribution. This is not specific to Ruby or RGSS. First let me go through the problems with your current approach: def logs_type_random while @logs_type == 0 if rand(100) == 0 # 1 in 100 chance @logs_type = 10 else if rand(50) == 0 # 1 in 50 chance @logs_type = 5 else if rand(40) == 0 # 1 in 40 chance @logs_type = 4 else if rand(30) == 0 # 1 in 30 chance @logs_type = 3 else if rand(20) == 0 # 1 in 20 chance @logs_type = 2 else if rand(5) == 0 @logs_type = 1.5 end end # end of while end # end of method logs_type Let me start with some syntactic sugar advice to prevent the syntax errors you would otherwise get. Use elsif instead of else if as you would otherwise have to put all the extra ends you are currently missing which is pretty tedious. Doing that the code will look like this: def logs_type_random while @logs_type == 0 if rand(100) == 0 # 1 in 100 chance @logs_type = 10 elsif rand(50) == 0 # 1 in 50 chance @logs_type = 5 elsif rand(40) == 0 # 1 in 40 chance @logs_type = 4 elsif rand(30) == 0 # 1 in 30 chance @logs_type = 3 elsif rand(20) == 0 # 1 in 20 chance @logs_type = 2 elsif rand(5) == 0 @logs_type = 1.5 end end # end of while end # end of method logs_type You have noticed that there are issues with the way you choose the @logs_type because of the loop. It is not a nice way do to it. There is a big chance that no log type is chosen in the if branch, in fact it's 69.5% with 3 significant digits. Sure, after 15 iterations there is less than 0.5% of no log type has been chosen, but there is always a chance of it taken a long time. There might also be issues with the pseudo-random number generator which increases the chance of many iterations and there may also be cycles where it never completes.not In practice though speed is probably not a problem. That the actual percentage is different from what you think is. I did some millions of calls to the method and with two significant digits here were the chance of each log type being chosen: 10 => 3.3 % 5 => 6.5 % 4 => 8.0 % 3 => 10 % 2 => 15 % 1.5 => 57 % It may of course differ now and then, but the law of big numbers means that it will very unlikely be a big difference. You can use my weighted_random method which ensures only one rand() call is needed. Here's an example where I have: 1 in 100 chance of getting 10 1 in 50 chance of getting 5 1 in 40 chance of getting 4 1 in 30 chance of getting 3 1 in 20 chance of getting 2 517 in 600 chance of getting 1.5 (approximately 86%) The reason for 517 is simple because that was the remainder. (I return the number rather than assigning it to a specific variable) def logs_type_random i = weighted_random([6, 12, 15, 20, 30, 517]) case i when 0 return 10 when 1 return 5 when 2 return 4 when 3 return 3 when 4 return 2 when 5 return 1.5 end end I hope it helps you understand this random thing better ^_^ *hugs*
  7. For the biased distribution I suggest doing something like this: def weighted_random(array) sum = array.inject {|sum, n| sum + n} n = rand(sum) array.each_with_index do |i, index| return index if n < i n -= i end end # Retrieve the index with 1/100 chance of 0 being picked (1+50+30+10+5+4 = 100), 50/100 chance of 1 being picked, ... index = weighted_random([1, 50, 30, 10, 5, 4]) # If we want the first index to start at 1 instead of 0 #index += 1 *hugs*
  8. The problem with saying (software) piracy == stealing is that stealing sorta implies the removal of stolen goods. Whether it should be illegal or not, should 'officially' be illegal but officials turning a blind eye except for big fish or whatever I am not really sure. It just should not be as bad as physically stealing something. As for the other kind of piracy, yes, that is definitely wrong. No they don't. VHS's deteriorate over time. As a pure analog media the deterioration has a direct impact unlike digital media which are way more resistant to deviations.
  9. after def fullscreen() try putting return and see what happens
  10. The question of who has which engine is interesting. While there is work one can do without having the engine if twice as many people have access to one engine over the other it should be considered when choosing the engine to use. Another thing to consider is which style you prefer. I am not talking about how it is to develop in one engine over the other, but rather the style of the game as perceived by the player. RMXP games and RMVX games have a different feel about them. Of course you can change it completely, but not staying with the style of the resources provided will take way more time and energy than following it. *hugs*
  11. But then you can just have multiple arrays. You also don't have to keep it all in memory. You can use the large yet slow harddrive if you want. Anyway, the max map size Dubealex found is not correct as there doesn't seem to be a specific limit to the number of event commands you can have. Having an event with 10k event commands may not cause lag.
  12. Did you know that you can know falsehoods?
  13. I think you can solve the problem by swapping the common event call and self-switch command. That said parallel processes stop once you transfer to a new map. I am not sure exactly when it will stop processing since the transfer is occuring in the common event. I recommend using Autorun as Trigger since that captures player control while the intend of a parallel process is something which can run 'parallel' to whatever you are doing. (Time systems, burn on specific terrain tag, etc.) Since the self-switch command relies on the current map you may still have to change it before you transfer to a new map. It is worth noting that the page does not change immediately when you change the self-switch, it changes the page as a part of a map-update cycle. You can have fun determining during which commands the page can change because it's not all ^_^ (There is a little safety feature which makes it more tedious to figure out) P.s. If you use the Erase event command you'll have the event appearing again should you ever revisit the map. *hugs*
×
×
  • Create New...