[.net] [MDX] Please provide feedback on little game demo

Started by
9 comments, last by UnshavenBastard 18 years, 2 months ago
**UPDATE** Capped the Frame-Rate at 60 FPS (Configurable if you know where to look ;) Added a Zip archive as well http://196.34.38.100/code/AreaST.zip Hope this sorts out most of the speed problems You can press F2 while the main game is playing to display debugging information including the current FPS Thanks for all the feedback ! Hi a Small demo 2D space shooter using C# and .NET Framework 2.0 and Managed DirectX (MDX 1.1 version should suffice) http://196.34.38.100/code/AreaST.rar 550KB Extract to a folder e.g c:\areast This is a temp site - might be down in a few days ... run areast.exe see readme.txt for info This needs a boss or something , any feedback would be appreciated. Thanks [Edited by - mdxcoder on January 23, 2006 3:33:59 AM]
Advertisement
Hey, I would, but why do you use rar? I bet if I asked round my friends or IT teachers they would definately know what zip is but I wouldn't expect them to have ever heard of rar.

Nice to see more games coded in managed :)
The first think you should do is implementing time based movement. The game played way too fast for me to be able to give you any further feedback [smile].

The music was catchy though.
[s]--------------------------------------------------------[/s]chromecode.com - software with source code
Quote:Original post by Enselic
The first think you should do is implementing time based movement. The game played way too fast for me to be able to give you any further feedback [smile].

The music was catchy though.


Agreed

Touching left or right made me jump the whole screen width in said direction so I was unable to play it [smile]

Regards,
ViLiO
Richard 'ViLiO' Thomasv.net | Twitter | YouTube

Tried to get to the application but the site was down.
Mykre - BlogVirtual Realm :- XNA News and Resources from Down Under** For those Interested in an Australian XNA User Group Contact me though my site.
Although it worked, I was experiencing the opposite effect of those posted above. It ran absolutely fine with five enemies on screen. But when I came to the next wave with about 25 enemies, the game REALLY slowed down. Implementing time-based movement or a framerate manager would solve your problems.
Rob Loach [Website] [Projects] [Contact]
Hi

I've updated the original post

In short :

1. Capped at 60 FPS
2. Added Zip Archive

Thanks for all the feedback thusfar.

Cool :)

The download doesn't seem to be starting though, I found MegaUpload.com yesterday though - that seems very good and keeps files up until 30 days after last use. That's a month!
Now it worked. Here's a list of what I think could be improved.

  • Increase the gamearea/enemy size ratio. I experience the gamearea a bit tight, there's no room for delicate maneuvering.

  • Imlement a more general bullet mechanism. Instead of having a single object that represents a bullet from the player ship, and a single bullet from each alien, write a class that handles all bullets in the game. The bullet structure would be something like
    class Bullet{    private Owner owner;    private Vector2 pos;    private Vector2 vel;}

    The bullet handler would be something like
    class BulletUpdater{    public void UpdateBullets(float deltaTime)    {        foreach (Bullet b in bulletList) {            b.Pos += Vel * dt;    }    public void AddBullet(Bullet b)    {        bulletList.Add(b);    }    private List<Bullet> bulletList = new List<Bullet>();}

    This allows you to have a 'rate of fire' for the player ship and the aliens. I suspect you now have something like:
    class Alien{    private Bullet bullet;    public void Update()    {        if (bullet.OutsideGameArea()) {            bullet.Pos = alienPos;        }    }}

    With the bullet updater you would go
    // Within your game loopforeach (Alien alien in aliensInGameList) {    if (alien.CanShoot()) {        bulletUpdater.AddBullet(new Bullet(alien.Pos, ...));    }}

    As it is now, the player will shoot faster the closer to the enemies he is (if the bullet hits the enemies).

  • Implement a more controllable handling of the ship. I had it hard to really control the ship, it moved very slowly sometimes in some directions, and sometimes not all all in others. A simple way of implementing ship movement is the folling: You have a pos, vel and acc attribute of your Player class and uses something like the foolowing code:
    class Player{    private Vector2 pos = StartPos;    private Vector2 vel = new Vector2(0.0f, 0.0f);    private Vector2 acc = new Vector2(0.0f, 0.0f);    public void Update(float deltaTime)    {        if (KeyboardInput.KeyDown(Key.Up)) {            acc.Y -= ShipAcc * deltaTime;        } // and all the other cases            vel += acc * deltaTime;        pos += vel * deltaTime;    }    private float ShipAcc = 100.0f;}
    The movement code can be made more sophisticated, but this works quite well as a 'first' solution.

  • Let the user bypass the intro. The third and later time you run, it is quite boring to watch the intro again. This brings me to...

  • A menu system.Well, these are boring to make, and for an experimental game it is not necessary, but even for testing one shouldn't have to restart the game each round.


That's about it. Here is also a list of bugs:

  • I suddenly just die, no visible stuff hitting me, I just die.


Well that was it, but is was quite irritating :/

And also, I see you have lots of .dlls with your game. I strongly sugest you smack all those .dlls into one single engine.dll. Looks a more proffesional IMHO.

Anyway, you already have a playable game! Congrats!

Btw, this must the the longest post I evar made, but on the other hand I am working on a similar game in MDX/C# as you are, so I felt I had some feedback to give [wink].
[s]--------------------------------------------------------[/s]chromecode.com - software with source code
Hi

Thanks for the feedback

1. If the enemy ufo's reach the bottom of the screen , they explode and you
lose life - could explain you dying all of a sudden.

2. I'll work on the controls , all though I thought they worked fine
if you 'tap' the keys , and keep them in motion , thus left-right-left-
right ;) *hehe* - i'll check them out - thanks for the feedback on the
acceleration.

3. Intro and Menu FeedBack noted ! thanks

4. Dll's noted , I'll maybe make them modules and then with the final build
make them one Assembly

5. Rate of fire - noted ! thanks

6. Bullet Manager - noted ! thanks

Thanks

This topic is closed to new replies.

Advertisement