The brief is to create a Virtual Tombola that randomly draws tickets :
An application created in something like :
any database driven application
Input Player names : associate them with a key in the database
e.g. Rico_roughneck : database key 1
Input ticket figures : a number
Associate the inputed ticket numbers to Player key :
e.g Rico_roughneck has 2000 tickets
Database player key 1 has 2000 tickets
Heres the tricky part :
Rico_roughneck = Database key 1 and has 2000 tickets
Midget_Marine = Database key 2 and has 4065 tickets
Ivox69 = Database key 3 and has 3896 tickets
Total players = 3
Total database key= 3
Total tickets = 2000 + 4065 + 3896 = 9961
We generate a random number between 1 and 9961 (total number of tickets)
We have all ticket numbers associated from 1 - 9961
all tickets between 1 and 2000 are associated to Rico_roughneck database key 1 with 2000 tickets
all tickets between 2001 and 6065 associated to Midget_Marine database key 2 with 4065 tickets
all tickets between 6066 and 9961 are associated to Ivox69 database key 3 with 3896
If the number generated is between :
If the number generated is between : 1 and 2000 database key 1,(e.g ticket 1000) look up database key associated with that number group eg. database key 1 and ticket 1000 and put a mark next to associated player name also make this number randomly generated a censored number if the number is generated again = it loops back to number generation and a NEW number is generated.
If the number generated is between : 2001 and 6065 database key 2, (e.g ticket 4000) look up database key associated with that number group eg. database key 2 and ticket 4000 and put a mark next to associated player name also make this number randomly generated a censored number if the number is generated again = it loops back to number generation and a NEW number is generated.
If the number generated is between : 6066 and 9961 database key 3, (e.g ticket 7000) look up database key associated with that number group eg. database key 3 and ticket 7000 and put a mark next to associated player name also make this number randomly generated a censored number if the number is generated again = it loops back to number generation and a NEW number is generated.
The random number is generated every time a function button is pressed within the application and a random number is generated (but subject to censored number rules which are created as each ticket number is drawn this is because that ticket has now been drawn and cannot be drawn again for that player "like a real tombola")
The application should display in a column :
All player names and the total tickets they have inputed for them also showing 7 icons next to each name
(as each player name has a ticket drawn one of the seven icons should change to a different icon)
If possible on each random number generation it would be great if the column displaying player names was sorted by descending ticket numbers drawn :
Ivox69 = and has 6 tickets drawn
Rico_roughneck = and has 5 tickets drawn
Midget_Marine = and has 3 tickets drawn
Once the application draws 7 tickets for a specific player name eg.
Midget_Marine = and has 7 tickets drawn
Then the display should dissapear and we should flash on screen that a winner has been drawn !
At the click of a subseqent button the name of the winner should be displayed on screen
The maximum number of players who maybe inputed will be 64
max number of tickets per player should be 9999
It would also be nice to increase or decrease the icon number from 1 - 30 (I explained it as 7 earlier and is the number of tickets required to be drawn to win)
It is my intention to do a LIVE draw for an ingame competition using this application. I intend to turn a webcamera and point it at the monitor displaying this application and also give an audio commentary using teamspeak on what is being drawn and displayed over the webcamera.
However if you can think of a better way of streaming the live data being generated to a client application (over the internet) that viewers can download and install so much the better
Im guessing this application will slow down as more and more censored number rules are generated and applied each time so it would be a good idea to display some kind of "processing page" stating that a ticket number is being generated. This would also enhance the tension of the draw as people watch to see what was generated !
That is the brief its open to anyone who wants to take it on !