Voetbalspel - Wedstrijd-systeem
Pagina: « vorige 1 2 3 volgende »
Maar, nou ben ik nog steeds niks wijzer over hoe ik dat ongeveer zou kunnen doen.. xD
Zal ik het even maken?
Als je wilt..
Kom op..
Ik wil het wel zelf doen, maar ik weet niet precies hoe, kan iemand me even een schopje in de goeie richting geven?(A)
Asjeblieft :)
Maar nu ff serieus, kan iemand me even zeggen hoe ik het ongeveer kan doen?
Gewijzigd op 01/01/1970 01:00:00 door Jacco Engel
Dat bedoel ik niet, ik bedoel hoe je die spelers kunt vergelijken..
Als je nou eens helemaal uitschrijft hoe en wat er moet gebeuren, kun je dit heel simpel omzetten in PHP code. Echt serieus, uitschrijven van wat je wilt helpt altijd!
Score hangt af van:
- aanval in tegenstelling tot verdediging ander team
- goedheid spelers
- aantal spelers op veld
Kaarten hangt af van:
- speelstijl (rustig/normaal/hard/aggressief)
Schrijf het scenario van een wedstrijd eens uit, puntsgewijs werkt het gemakkelijkst.
Edit:
Onderstaande code kan je bijvoorbeeld gebruiken om een opstelling te maken, je moet daarvoor wel de mootools.js file downloaden en bij dit script in de map zetten. (use google)
Script met dank aan Jan Koehoorn, zelf aangepast dat je een opstelling kan kiezen.
Onderstaande code kan je bijvoorbeeld gebruiken om een opstelling te maken, je moet daarvoor wel de mootools.js file downloaden en bij dit script in de map zetten. (use google)
Script met dank aan Jan Koehoorn, zelf aangepast dat je een opstelling kan kiezen.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?php
ini_set ('display_errors', 1);
error_reporting (E_ALL);
//require 'stats.php';
$title = 'Robert Deiman | Voetbalmanager';
$form_action = $_SERVER['REQUEST_URI'];
// maak 4-3-3 of 5-2-3. Wil ik in volgende variant niet laten uitmaken hoeveel streepjes (-) er staan.
$sOpstelling = '4-4-2';
$aOpstelling = explode('-',$sOpstelling);
$aSpelers = array(1 => 'Deiman, Robert', 'Achternaam, Voornaam', 'Achternaam2, Voornaam2');
asort($aSpelers);
function set_selectbox ($id, $options) {
echo PHP_EOL . '<select id="' . $id . '" name="' . $id . '">';
echo PHP_EOL . '<option value="0"> - leeg - </option>';
foreach ($options as $key => $value) {
echo PHP_EOL . '<option value="' . $key . '">' . $value . '</option>';
}
echo PHP_EOL . '</select>';
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo $title; ?></title>
<style type="text/css">
p{
text-align:center;
}
</style>
<script type="text/javascript" src="mootools.js"></script>
<script type="text/javascript">
window.addEvent ('domready', function () {
$$('form#opstelling select').each (function (item) {
item.addEvent ('change', function () {
check_other_players (this);
});
});
});
function check_other_players (select_to_check) {
$$('form#opstelling select').each (function (item) {
if (item.id != select_to_check.id && item.value == select_to_check.value) {
item.value = 0;
}
});
}
</script>
</head>
<body>
<div id="container">
<h1><?php echo $title; ?></h1>
<h2>In een voetbalopstelling zorgen dat 1 speler niet op 2 plaatsen kan staan</h2>
<form id="opstelling" method="post" action="#">
<?php
echo '<p>';
set_selectbox('keeper', $aSpelers);
echo '</p>';
echo '<p>';
for($i = 1; $i <= $aOpstelling[0]; $i++){
set_selectbox('verdediger'.$i,$aSpelers);
}
echo '</p>';
echo '<p>';
for($i = 1; $i <= $aOpstelling[1]; $i++){
set_selectbox('middenvelder'.$i,$aSpelers);
}
echo '</p>';
echo '<p>';
for($i = 1; $i <= $aOpstelling[2]; $i++){
set_selectbox('aanvaller'.$i,$aSpelers);
}
echo '</p>';
?>
</form>
<?php //require 'show_source.php'; ?>
</div>
</body>
</html>
ini_set ('display_errors', 1);
error_reporting (E_ALL);
//require 'stats.php';
$title = 'Robert Deiman | Voetbalmanager';
$form_action = $_SERVER['REQUEST_URI'];
// maak 4-3-3 of 5-2-3. Wil ik in volgende variant niet laten uitmaken hoeveel streepjes (-) er staan.
$sOpstelling = '4-4-2';
$aOpstelling = explode('-',$sOpstelling);
$aSpelers = array(1 => 'Deiman, Robert', 'Achternaam, Voornaam', 'Achternaam2, Voornaam2');
asort($aSpelers);
function set_selectbox ($id, $options) {
echo PHP_EOL . '<select id="' . $id . '" name="' . $id . '">';
echo PHP_EOL . '<option value="0"> - leeg - </option>';
foreach ($options as $key => $value) {
echo PHP_EOL . '<option value="' . $key . '">' . $value . '</option>';
}
echo PHP_EOL . '</select>';
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo $title; ?></title>
<style type="text/css">
p{
text-align:center;
}
</style>
<script type="text/javascript" src="mootools.js"></script>
<script type="text/javascript">
window.addEvent ('domready', function () {
$$('form#opstelling select').each (function (item) {
item.addEvent ('change', function () {
check_other_players (this);
});
});
});
function check_other_players (select_to_check) {
$$('form#opstelling select').each (function (item) {
if (item.id != select_to_check.id && item.value == select_to_check.value) {
item.value = 0;
}
});
}
</script>
</head>
<body>
<div id="container">
<h1><?php echo $title; ?></h1>
<h2>In een voetbalopstelling zorgen dat 1 speler niet op 2 plaatsen kan staan</h2>
<form id="opstelling" method="post" action="#">
<?php
echo '<p>';
set_selectbox('keeper', $aSpelers);
echo '</p>';
echo '<p>';
for($i = 1; $i <= $aOpstelling[0]; $i++){
set_selectbox('verdediger'.$i,$aSpelers);
}
echo '</p>';
echo '<p>';
for($i = 1; $i <= $aOpstelling[1]; $i++){
set_selectbox('middenvelder'.$i,$aSpelers);
}
echo '</p>';
echo '<p>';
for($i = 1; $i <= $aOpstelling[2]; $i++){
set_selectbox('aanvaller'.$i,$aSpelers);
}
echo '</p>';
?>
</form>
<?php //require 'show_source.php'; ?>
</div>
</body>
</html>
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
Uiteindelijk zul je met een bepaalde formule moeten komen die geloofwaardige scores genereert. Heb zelf geen ervaring met dit soort scripts, dus aan mij heb je eigenlijk niks.
Met uitschrijven wat je nu precies wilt, dus hoe je die formule gaat maken, helpt zeker. Je kunt misschien ook je wiskunde docent om hulp vragen ;-).
EDIT:
Laat maar, tis al gelukt. ;)
EDIT2:
Robert, wat bedoel je met punt-gewijs uitschrijven?
Gewijzigd op 01/01/1970 01:00:00 door jorian
Maar nu nog iets, hoe zou ik bepalen wie een kaart krijgt, wie scoord, wie geblesseerd raakt etc.?
$actie = rand(1,100);
$speler = rand(1,11);
if($actie == 2)
{
$speler += "rode kaart" ;
}
Maar bijvoorbeeld doelpunten, ik denk dat aanvallers meer scoren dan verdedigers.. :P
- Schrijf onder elkaar alle dingen op die van invloed zijn op de score.
- Schrijf bij elk ding dat van invloed is op op welke manier dat van invloed is
- Schrijf bij elk ding op in hoeverre (percentage) dat van invloed is op de score
Als je dat soort dingen voor jezelf eerst bedenkt, kan je dan de functie wel uitwerken die de uiteindelijke score bepaald. Score kan bijvoorbeeld ook afhankelijk zijn van het aantal doelpunten dat al gemaakt is.
Edit:
Onderstaande is een klein voorbeeld
Doelpunten hangen onder andere af van:
De scorende kwaliteiten van de spitsen
De verdedigende kwaliteiten van de verdedigers (en ook deels middenvelders)
De klasse van de keeper
Conditie van spelers, het meest fitte team heeft naarmate de wedstrijd vordert meer kans op een doelpunt
De klasse van de vleugelspelers/ middenvelders, zonder goede aanvoer ook minder doelpunten
Het aantal kansen is afhankelijk van de aanvoer, en de hoeveelheid balbezit
Balbezit is voor een groot deel afhankelijk van de kwaliteit van de middenvelders (hoe goed hou je de bal in bezit, en hoe snel verover je hem weer)
Het aantal kansen is ook afhankelijk van de verdedigers en middenvelders (hoe goed zijn hun passes
Onderstaande is een klein voorbeeld
Doelpunten hangen onder andere af van:
De scorende kwaliteiten van de spitsen
De verdedigende kwaliteiten van de verdedigers (en ook deels middenvelders)
De klasse van de keeper
Conditie van spelers, het meest fitte team heeft naarmate de wedstrijd vordert meer kans op een doelpunt
De klasse van de vleugelspelers/ middenvelders, zonder goede aanvoer ook minder doelpunten
Het aantal kansen is afhankelijk van de aanvoer, en de hoeveelheid balbezit
Balbezit is voor een groot deel afhankelijk van de kwaliteit van de middenvelders (hoe goed hou je de bal in bezit, en hoe snel verover je hem weer)
Het aantal kansen is ook afhankelijk van de verdedigers en middenvelders (hoe goed zijn hun passes
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
Ik moet nu alleen nog de mensen die de doelpunten maken, kaarten krijgen en geblesseerd raken, iemand een ideetje?
De lichamelijke gesteldheid van spelers is daar een grote factor in. (qua blessures) Een speler met een slechte conditie, heeft meer kans op een blessure, omdat de coördinatie vaak wat minder wordt.
Daarnaast heeft een sterke speler (fysiek sterk) ook minder kans op blessures. Op technische spelers wordt vaker een overtreding gemaakt, waardoor die weer meer kans hebben op blessures. Op verdedigers wordt minder vaak een overtreding gemaakt dan op middenvelders. Ook dat is iets wat je mee moet nemen in die functie.
Voor wat kaarten betreft, agressieve spelers krijgen uiteraard sneller een kaart (of fysieke spelers) en ook verdedigers eerder dan middenvelders, en middenvelders weer eerder dan spitsen.
Wederom een kwestie van de boel op een rijtje zetten, en dan uitwerken in PHP.