Galaxy Support in CG next thing you want to see (July)

All discussion about the Commander Genius project (a Keen interpreter + more).

What code should go NEXT into CG?

Poll ended at Wed Jul 21, 2010 15:59

Leave the level viewer as it is, but make the music of Keen 4 play for now
1
5%
Concentrate more on the gameplay. I can live without music
12
60%
I really don't care about Galaxy. Work more on the Vorticon engine.
2
10%
Paddle Wars! is a must. Implement that one first
3
15%
I already want to see Keen 5 and 6 support for the level viewer. Support those first...
2
10%
 
Total votes: 20

gerstrong
Vorticon Elite
Posts: 1246
Joined: Wed Dec 31, 2008 14:44
Location: Frankfurt - Germany
Contact:

Galaxy Support in CG next thing you want to see (July)

Post by gerstrong »

Hello guys,

I was looking at the code and thinking a lot about in what to do next.

Now I'm going to leave that decision to you now. :-)

So here are my options I can implement now. Vote for one, and the most voted will be the feature I am going to implement next. And don't worry, the other features will also come. It's only a matter of priorities.

Btw. Animates Tiles already work in the level-viewer, so no need for voting that.

Also for those who don't know what's going on, check out this video:

http://www.youtube.com/watch?v=xf7MQJOuA28
Having fun developing stuff...
pizza2004
Vortininja
Posts: 266
Joined: Wed Jul 08, 2009 1:22

Post by pizza2004 »

I'm the only one who voted for music!

Also, speaking of Paddle War, has anyone reverse engineered that part of the code or do I need to find a pong example online to work backwards from?
gerstrong
Vorticon Elite
Posts: 1246
Joined: Wed Dec 31, 2008 14:44
Location: Frankfurt - Germany
Contact:

Post by gerstrong »

Well, I cannot implement everything at same time, but everybody who wants, can help me in the development. Nevertheless it's opensource... ;-)
Having fun developing stuff...
User avatar
Roobar
Vorticon Elite
Posts: 3278
Joined: Tue Jan 08, 2008 16:12
Contact:

Post by Roobar »

Though decision. As there isn't galaxy gameplay at all, I guess it will be good to implement paddle wars, so we can play something while waiting for the other things to come ;).
User avatar
Commander Spleen
Lord of the Foobs
Posts: 2384
Joined: Wed Oct 31, 2007 22:54
Location: Border Village
Contact:

Post by Commander Spleen »

I was tempted to vote for further Vorticons development, but it's actually very playable now. So my vote goes to working on Galaxy for a while.
User avatar
Nospike
Keen Minecrafter
Posts: 1402
Joined: Tue Mar 30, 2010 13:56
Location: Czech Republic

Post by Nospike »

wiivn wrote:Though decision. As there isn't galaxy gameplay at all, I guess it will be good to implement paddle wars, so we can play something while waiting for the other things to come ;).
This. Paddle Wars IS a must! :p
gerstrong
Vorticon Elite
Posts: 1246
Joined: Wed Dec 31, 2008 14:44
Location: Frankfurt - Germany
Contact:

Post by gerstrong »

Thanks for your feedback! That really helps improving CG in what most matters.
Having fun developing stuff...
User avatar
K1n9_Duk3
Vorticon Elite
Posts: 785
Joined: Mon Aug 25, 2008 9:30
Location: Germany
Contact:

Post by K1n9_Duk3 »

pizza2004 wrote:Also, speaking of Paddle War, has anyone reverse engineered that part of the code or do I need to find a pong example online to work backwards from?
Dunno if it helps since it is written in BlitzMax and not in C, but here's my code for PaddleWar that's used in KEENGINE:

Code: Select all

	Method MenuLoop()
		Const BallSpeed#=1.0
		Local BallVX#=BallSpeed, BallVY#=BallSpeed
		Local BallXF#=(FieldW-BallWidth)/2.0, BallYF#=(FieldH-BallWidth)/2.0
		KeenX = (FieldW-PaddleWidth)/2
		CompX = KeenX
		KeenScore=0
		CompScore=0
		WaitTime=60
		Repeat
			BallX = BallXF
			BallY = BallYF
			Draw()
			If Cheat
				'Draw Ball's Path:
				Local BX# = BallXF, BY# = BallYF, VX#=BallVX, VY#=BallVY
				Local X:Int=BX
				Repeat
					X=BX
					BX :+ VX
					BY :+ VY
					'Bounce off walls:
					If X < 0
						BX = 0
						VX = -VX
					ElseIf X > FieldW-BallWidth
						BX = FieldW-BallWidth
						VX = -VX
					EndIf
					Rend.DrawImg(Ball, FieldX+BX, FieldY+BY)
				Until BY <= 7 Or BY >= FieldH-12 Or WaitTime <> 0
			EndIf
			Rend.Refresh()
			If KeyHit(KEY_ESCAPE)
				Exit
			ElseIf KeyHit(KEY_F1)
				Parent.HelpMenu.MenuLoop()
				Draw()
			EndIf
			If KeyDown(KEY_LEFT) Then KeenX :- 2
			If KeyDown(KEY_RIGHT) Then KeenX :+ 2
			If KeyHit(KEY_C) And Consts.MINICHEATS Then Cheat = Not Cheat
			If WaitTime = 0
				If BallY <= 0 Or BallY >= FieldH-BallWidth
					WaitTime = 60
					If BallY < FieldH/2
						KeenScore :+ 1
						Parent.Snd.PlaySnd(ScoreKeenSnd)
					Else
						Parent.Snd.PlaySnd(ScoreCompSnd)
						CompScore :+ 1
					EndIf
					If KeenScore = 21 Or CompScore = 21
						ShowEnd(KeenScore-CompScore)
						Exit
					EndIf
				Else
				
				EndIf
				BallXF :+ BallVX
				BallYF :+ BallVY
				'Bounce off walls:
				If BallX < 0
					BallXF = 0
					BallVX = -BallVX
					Parent.Snd.PlaySnd(WallSnd)
				ElseIf BallX > FieldW-BallWidth
					BallXF = FieldW-BallWidth
					BallVX = -BallVX
					Parent.Snd.PlaySnd(WallSnd)
				EndIf
				'Bounce off Paddles:
				If BallY < 8 And BallY > 6
					If CompX-BallX > -PaddleWidth And CompX-BallX < BallWidth
						BallVX = ((CompX-BallX)+BallWidth)/-5.0
						BallVY = BallSpeed
					EndIf
				ElseIf BallY+BallWidth >= FieldH-8 And BallY+BallWidth <= FieldH-6
					If KeenX-BallX > -PaddleWidth And KeenX-BallX < BallWidth
						BallVX = ((KeenX-BallX)+BallWidth)/-5.0
						BallVY = -BallSpeed
						Parent.Snd.PlaySnd(PaddleSnd)
					EndIf
				EndIf
			Else
				WaitTime :- 1
				If WaitTime = 0
					BallXF = Rand(40, FieldW-40)
					BallYF = FieldH/2
					BallVX = Rand(-10, 10)/8.0
				EndIf
			EndIf
			'"KI"-Spielzug:
			If CompX-BallX <= -(PaddleWidth-2) And WaitTime = 0 Then CompX :+ 1
			If CompX-BallX >= (BallWidth-2) And WaitTime = 0 Then CompX :- 1 
			'Paddles im Feld halten:
			If KeenX < 0 Then KeenX = 0
			If KeenX > FieldW-PaddleWidth Then KeenX = FieldW-PaddleWidth
			If CompX < 0 Then CompX = 0
			If CompX > FieldW-PaddleWidth Then CompX = FieldW-PaddleWidth
		Forever
		FlushKeys()
	EndMethod
However, this might still need some tweaking as the ball sometimes seems to be flying through the paddle when the ball hits the edge of the paddle.
Hail to the K1n9, baby!
http://k1n9duk3.shikadi.net
User avatar
DHeadshot
Vorticon Elite
Posts: 1874
Joined: Fri Aug 14, 2009 10:21
Location: UK
Contact:

Post by DHeadshot »

Paddlewars in Keen is very different from ther Pong variations, if you look in detail at the ball behaviour. Please make the CG Paddlewars identical to the original, rather than just a generic Pong game. Paddlewars has always been my favourite variotion of Pong because of the way it responds and the general feel of the game. I don't want that to be lost in the changeover.
Cereal Board!
Deltamatic wrote:Prepositions are things I end sentences with.
(Cereal wiki has sadly died)
pizza2004
Vortininja
Posts: 266
Joined: Wed Jul 08, 2009 1:22

Post by pizza2004 »

DHeadshot wrote:Paddlewars in Keen is very different from ther Pong variations, if you look in detail at the ball behaviour. Please make the CG Paddlewars identical to the original, rather than just a generic Pong game. Paddlewars has always been my favourite variotion of Pong because of the way it responds and the general feel of the game. I don't want that to be lost in the changeover.
We will of course do our best to make it as close to the original as possible. However, we don't have the source code for the original, so making it identical would be difficult.

I just need a base code to work from, I don't plan on making this generic.
User avatar
Roobar
Vorticon Elite
Posts: 3278
Joined: Tue Jan 08, 2008 16:12
Contact:

Post by Roobar »

If you don't have the source code, then why were you (or getstrong) saying that with it, it will be much harder, pointless or it won't make difference?
User avatar
DaVince
lazy/busy Keener
Posts: 1476
Joined: Thu Nov 01, 2007 15:34
Location: Amsterdam, Netherlands
Contact:

Post by DaVince »

How about using that HTML5 version of PaddleWars? That should be a good start.

Anyway, I myself would really like to see you get the Galaxy engine going. :)
Wow look at me I'm lurking
pizza2004
Vortininja
Posts: 266
Joined: Wed Jul 08, 2009 1:22

Post by pizza2004 »

wiivn wrote:If you don't have the source code, then why were you (or getstrong) saying that with it, it will be much harder, pointless or it won't make difference?
It is hard to say for certain, but I personally think that having the source code would make our job a lot easier, and the physics more accurate. However, I don't believe Gerhard agrees with me.

Paddle Wars is a different story however, as it would be a completely separate piece of code, and would only need to be initialized to work, so having the original source code for Paddle Wars would make things much easier.
Genius314
Vorticon Elite
Posts: 843
Joined: Thu Nov 01, 2007 0:13

Post by Genius314 »

Is it possible to have paddle war use the same low framerate that the original games did? It'd help make it look more convincing, and plus it'd make sense, being on Keen's wrist-computer and all.
pizza2004
Vortininja
Posts: 266
Joined: Wed Jul 08, 2009 1:22

Post by pizza2004 »

Genius314 wrote:Is it possible to have paddle war use the same low framerate that the original games did? It'd help make it look more convincing, and plus it'd make sense, being on Keen's wrist-computer and all.
Tough question, but I would assume it is possible, we would just have to make it look intentionally choppy right?
Post Reply