Here are results of week of learning:
Screenshots:
Download:
More 

Files was too large to upload into UnrealSoftware, so I uploaded it into megaupload
Download game (version 0.2.1)
Avaible languages:
MegaUpload
MediaFire
Download sources (version 0.2.1)
Avaible languages of sources:

MegaUpload
MediaFire


Files was too large to upload into UnrealSoftware, so I uploaded it into megaupload
Download game (version 0.2.1)
Avaible languages:

Download sources (version 0.2.1)
Avaible languages of sources:


Copyrights:
More 

Game images by Qrchack
Title screen music from main menu in freeware game Rox by Safrosoft.
In-game music: DJ Remo - Ta Ta Ta (Club Mix)
Title screen music from main menu in freeware game Rox by Safrosoft.
In-game music: DJ Remo - Ta Ta Ta (Club Mix)
Changelog:
More 

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
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
Official KONG Changelog by Qrchack --------------------------------------------------------- Current version: Beta 0.2.1 (29.12.2010) What I want to add/change in future: - Joystick support - More cool sounds - Menu - Score limit (changing in menu - limit 5/10/15/20/25/30/unlimited) - Website - More modding potential ### Beta 0.2.1 - 30.12.2010 [INFO] Default keysettings has been changed! Read included help file first! [INFO] Known bug: when score is extremally high game crashes ("Memory acces violation") [INFO] English translated source code included [FIXED] "Memory acces violation" error fixed [ADDED] Title screen & ingame sound [ADDED] Game field [ADDED] Used fonts included [CHANGED] Title screen is now much more cool! ### Beta 0.2.0 - 29.12.2010 [INFO] Now game requires "Alien Encounters" font! Please copy it into C:\Windows\Fonts, otherwise game may not work correctly! (font is included in /font folder) [ADDED] Simple title screen [ADDED] Score counting [CHANGED] Files are now in /data folder [CHANGED] Graphic is now "hidden" (extensions g00,g01,g02,g03,g04, g05 - there are BMP files) ### Alpha 0.1.6 - 28.12.2010 [INFO] It is alpha version. It has known bugs and may damage your computer! Use as your own risk! [ADDED] Playing field added (field.bmp) ### Alpha 0.1.4 - 27.12.2010 Initial release.
Source code (translated from Polish version)
More 

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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
;=================================== ;============= KONG ================ ;============ v.0.2.1 ============== ;=================================== ; a simple variation on Pong ;=================================== AppTitle = "KONG 0.2.1" .keys ; controls Const A_KEY = 30 Const Z_KEY = 44 Const UP_KEY = 200 Const DOWN_KEY = 208 Const ESC_KEY = 27 .variables ; coordinates of paddles Player_x = 20 Player_y = 240 Opp_x = 600 Opp_y = 240 ; coordinates of ball Ball_x = 5 Ball_y = 5 ; ball speed SpeedX = 6 SpeedY = 6 .initiation_sound ; Load title screen sound Menu = LoadSound("data\music\Menu.wav") .initiation_graphic ; Load graphic and start in 640x480 Graphics 640, 480, 16 ; set graphic mode SetBuffer BackBuffer() ; drawing in back buffer .load_graphic Title = LoadImage("data\graphics\title.g00") ; title screen Boisko = LoadImage("data\graphics\field.g01") ; playing field Ball = LoadImage("data\graphics\ball.g02") ; ball Player = LoadImage("data\graphics\bat.g03") ; player 1 paddle Opp = LoadImage("data\graphics\bat.g04") ; player 2 paddle .initiation_points ; Set points of both players to 1 Player_score=0 Opp_score=0 .title_screen ; Loop title screen sound... LoopSound Menu ; and play it MenuSound = PlaySound(Menu) ; Draw title screen and wait for any key While Not value 	value=GetKey() ; dopoki nie nacisnieto zadnego klawisza 	DrawImage Title,0,0 ; rysujemy ekran tytulowy 	Flip ; przekrecamy bufory Wend ; when player press any key stop title screen music StopChannel MenuSound ; and delete variable FreeSound Menu ; now get into loop .while_loop ; load music tatata=PlayMusic("data\music\tatata.mp3") ; loop until key esc pressed While Not KeyHit(1) ; 1 - kod ESC .ball_postion Ball_x = Ball_x + SpeedX Ball_y = Ball_y + SpeedY ; points counting If Ball_x<1 Then Opp_score = Opp_score + 1 If Ball_x>600 Then Player_score = Player_score + 1 ; ball bouncing If Ball_y<1 Or Ball_y>440 Then 	SpeedY = -SpeedY EndIf ; restart when ball is outside screen If Ball_x<1 Or Ball_x>600 Then 	Ball_x=5 	Ball_y=5 	SpeedX=6 	SpeedY=6 EndIf .collision_checking If ImagesCollide(Player,Player_x,Player_y,0,Ball,Ball_x,Ball_y,0) Then 	SpeedX= -SpeedX EndIf If ImagesCollide(Ball,Ball_x,Ball_y,0,Opp,Opp_x,Opp_y,0) Then 	SpeedX= -SpeedX EndIf .keys_1 	; Checking keys of player 1 	 	If KeyDown (A_KEY) ; if A key pressed 	 		Player_y=Player_y-8 ; move paddle 8px up 		If Player_y<0 Then Player_y=0 ; when paddle is on the corner stop moving 	 	EndIf 	 	If KeyDown (Z_KEY) ; if Z key pressed 	 		Player_y=Player_y+8 ; move paddle 8px down 		If Player_y>400 Then Player_y=400 ; when paddle is on the corner stop moving 	 	EndIf 	 	 .keys_2 	; Cheking keys of player 2 	 	If KeyDown (UP_KEY) ; if UP arrow pressed 		 		Opp_y=Opp_y-8 ; move paddle 8px up 		If Opp_y<0 Then Opp_y=0 ; when paddle is on the corner stop moving 		 	EndIf 	 	If KeyDown (DOWN_KEY) ; if DOWN arrow pressed 	 		Opp_y=Opp_y+8 ; move paddle 8px down 		If Opp_y>400 Then Opp_y=400 ; when paddle is on the corner stop moving 	 	EndIf 	 .esc_checking 	; Is ESC key pressed? 	 	If KeyDown (ESC_KEY) ; if pressed 		Goto quit ; go to end 	EndIf 	 ; Game drawing .frame_draw 		Cls ; clear screen 		 .load_fonts 		; load fonts into variable 		fntArial=LoadFont("Arial",14,False,False,False) ; Arial 14pt 		fntScore=LoadFont("Alien Encounters",36,False,False,False) ; Alien Encounters 36pt (included into download) 		 		; draw playing field 		DrawImage Boisko, 0, 0 		 		; set font to Arial and write 		SetFont fntArial 		Text 540,0,"Press ESCAPE to exit",True,False 		 		 		; set font to Alien Encounters... 		 		SetFont fntScore 		 		; and write score 		Text 280,0,Player_score,1 		Text 360,0,Opp_score,1 		 		; go next 		DrawImage Ball, Ball_x,Ball_y ; draw ball 		DrawImage Player, Player_x, Player_y ; player 1 paddle 		DrawImage Opp, Opp_x, Opp_y ; player 2 paddle 		Flip ; flip buffers 	 	 Wend ; end of loop .quit ; delete variable of font FreeFont fntArial ; and end End ; end of program ;===================================
Polish source code:
More 

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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
;================================== ;============= KONG =============== ;============ v.0.2.1 ============= ;================================== ; czyli wariacja na temat Ponga ;================================== AppTitle = "KONG 0.2.1" .klawisze ; sterowanie Const A_KEY = 30 Const Z_KEY = 44 Const UP_KEY = 200 Const DOWN_KEY = 208 Const ESC_KEY = 27 .zmienne ; zmienne - wspolrzedne paletek Player_x = 20 Player_y = 240 Opp_x = 600 Opp_y = 240 ; zmienna - polozenie pilki Ball_x = 5 Ball_y = 5 ; zmienna - predkosc pilki SpeedX = 6 SpeedY = 6 .inicjacja_dzwieku ; Wczytujemy muzyke i dzwieki Menu = LoadSound("data\music\Menu.wav") .inicjacja_grafiki ; Wczytujemy grafike i ladujemy w 640x480 Graphics 640, 480, 16 ; ustawiamy tryb graficzny SetBuffer BackBuffer() ; ustawiamy rysowanie w tylnym buforze .wczytujemy_grafike Title = LoadImage("data\graphics\title.g00") ; wczytujemy ekran startowy... Boisko = LoadImage("data\graphics\field.g01") ; boisko... Ball = LoadImage("data\graphics\ball.g02") ; pilke... Player = LoadImage("data\graphics\bat.g03") ; paletke gracza... Opp = LoadImage("data\graphics\bat.g04") ; i przeciwnika .inicjacja_punkty ; Ustawiamy punkty obydwu graczy na 0 Player_score=0 Opp_score=0 .ekran_tytulowy ; Ekran tytulowy LoopSound Menu MenuSound = PlaySound(Menu) While Not value 	value=GetKey() ; dopoki nie nacisnieto zadnego klawisza 	DrawImage Title,0,0 ; rysujemy ekran tytulowy 	Flip ; przekrecamy bufory Wend StopChannel MenuSound FreeSound Menu .petla_while ; Petla while tatata=PlayMusic("data\music\tatata.mp3") While Not KeyHit(1) ; 1 - kod ESC .polozenie_pilki ; polozenie pilki Ball_x = Ball_x + SpeedX Ball_y = Ball_y + SpeedY ; zliczanie punktow If Ball_x<1 Then Opp_score = Opp_score + 1 If Ball_x>600 Then Player_score = Player_score + 1 ;odbijanie pilki If Ball_y<1 Or Ball_y>440 Then 	SpeedY = -SpeedY EndIf If Ball_x<1 Or Ball_x>600 Then 	Ball_x=5 	Ball_y=5 	SpeedX=6 	SpeedY=6 EndIf .wykrywanie_kolizji ; wykrywanie kolizji If ImagesCollide(Player,Player_x,Player_y,0,Ball,Ball_x,Ball_y,0) Then 	SpeedX= -SpeedX EndIf If ImagesCollide(Ball,Ball_x,Ball_y,0,Opp,Opp_x,Opp_y,0) Then 	SpeedX= -SpeedX EndIf .klawisze_1 	; Sprawdzamy klawisze gracza 1	 	 	If KeyDown (A_KEY) ; jesli nacisniety klawisz A 	 		Player_y=Player_y-8 		If Player_y<0 Then Player_y=0 	 	EndIf 	 	If KeyDown (Z_KEY) ; jesli nacisniety klawisz Z 	 		Player_y=Player_y+8 		If Player_y>400 Then Player_y=400 	 	EndIf 	 	 .klawisze_2	 	; Sprawdzamy klawisze gracza 2 	 	If KeyDown (UP_KEY) ; jesli nacisniety klawisz do gory 		 		Opp_y=Opp_y-8 		If Opp_y<0 Then Opp_y=0 		 	EndIf 	 	If KeyDown (DOWN_KEY) ; jesli nacisniety klawisz w dol 	 		Opp_y=Opp_y+8 		If Opp_y>400 Then Opp_y=400 	 	EndIf 	 .wyjscie 	; Sprawdzamy esc 	 	If KeyDown (ESC_KEY) ; jesli nacisnieto esc 		Goto koniec 	EndIf 	 ; Rysujemy gre .rysowanie_klatki 		Cls ; czyscimy ekran 		 .czcionki 		; ladujemy czcionki do globalnych 		fntArial=LoadFont("Arial",14,False,False,False) 		fntScore=LoadFont("Alien Encounters",36,False,False,False) 		 		; rysujemy boisko 		DrawImage Boisko, 0, 0 		 		; czcionka Arial i piszemy 		SetFont fntArial 		Text 540,0,"Press ESCAPE to exit",True,False 		 		 		; przestawiamy na Alien Encounters 		 		SetFont fntScore 		 		; i wypisujemy wynik 		Text 280,0,Player_score,1 		Text 360,0,Opp_score,1 		 		; jedziemy dalej 		DrawImage Ball, Ball_x,Ball_y ; rysujemy pilke 		DrawImage Player, Player_x, Player_y ; rysujemy paletki gracza 		DrawImage Opp, Opp_x, Opp_y ; i przeciwnika 		Flip ; wyswietlamy tylny bufor 	 	 Wend ; koniec petli while .koniec ; usuwamy globala FreeFont fntArial ; i konczymy End ; koniec programu
edited 15×, last 18.12.11 10:29:28 pm