View Single Post
  #10  
Old 02-19-2004, 04:46 PM
Madacc Madacc is offline
 
Join Date: Jul 2002
Location: Kansas City, MO
Posts: 35
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Sylvus
So if someone wanted to roll an 18, they could simply do a

/roll 18 18

and always get the number they wanted. Or if you required them to roll a six-sided dice, the highest roll wins, anyone could do

/roll 6 6

This is not great for any RPG board.

The proper way to do this is to hard code each roll based on the combination of dice provided for RPG games.

1d4
1d6
1d8
1d10
1d12
1d20
1d100

This stops anyone from generating a high number based on the selection of <low number> <high number> and always getting the result they want.

Example #1:

Player using <low number> <high number>

"Please roll a d20, you require an 18, 19 or 20 to make the jump across the river!"

/roll 18 20

Rolls a 19!

WOW! He made it!

Example #2 (hard coded 1d#):

"Please roll a d20, you require an 18, 19 or 20 to make the jump across the river!"

/roll d20

Rolls a 4.

See my point?

I'd like your permission to modify the code you've provided and make it a real dice roller based on the d4, d6, d8, d10, d12, d20, d100 dice given in true RPG games, not a <low number> <high number> system that can easilly be exploited.

Syl...
But you see, if the rules stated to roll a d20, and they typed /roll 18 20 the message would state:

-------------------------------------------------------------
** A Magic Die is rolled by Person
** It could have been any number from 18 to 20 and it turned up a 18
-------------------------------------------------------------

And as you can see, he didn't roll correctly. Everyone can see that he rolled 18-20 which is not correct. So, if you state the ground rules, d20 = /roll 1 20 then you can easily catch bad rolls.
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01056 seconds
  • Memory Usage 1,766KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete