none
Another Tankanator? RRS feed

  • Question

  • Hey guys, I was looking through the challenges posted by litdev, and I saw a picture of the game I made a while back. Its always slightly annoyed me at how slow the game was, (this is because the team challenge stated that I had to use no extensions) and I was wondering what you all thought about me remaking it with an extension (this would make it run alot faster). Would this be a good thing? or would it defeat the purpose of having a game in native SB.

    Thanks!!


    It is written: "'As surely as I live,' says the Lord, 'every knee will bow before me; every tongue will acknowledge God.'" Romans 14:11

    Wednesday, August 12, 2015 4:35 AM
    Answerer

Answers

All replies

  • For me I'd always look for what the community think is the best approach to doing a solution in that language is.

    For SB gaming I'd would use the concepts of game looping discussed in litdevs article. I think you know this stuff Zock but i'll share my thoughts anyway.

    Use simple callbacks (keyDown = "True") to tell the main loop that an event happened then process it in the main loop. And be sure to remove unused Sprites and delete/clean up arrays that gather data. TextWindow.WriteLine(Array.GetItemCount(enemy[1]["X"])). Test each part separately for performance issues. One file tests the tank another file test the enemies.

    If my game was doing intensely rich screen redraws all the time I'd also test the performance of the UpdateFrame() part of a basic game structure.

    If you intend to post it as a Monthly Challenge solution then I think an important part of the challenges is the ability to share code. If a solution uses an extension that is unsupported then I probably wont bother installing the extension. Also newcomers to SB benefit from a smaller set of Objects. If you put in a Zip I'd run it to see what your game was like as compared to one I might do.

    I have an issue with validating remote acquisition of Sound assets versus using the File object where I have to ask users to uncomment loc. For the challenges if I wish to validate (we all should validate) I really need use the File object or LDFile.MusicPlayTime().

    @ litdev: I wish you put that method in LDSound, lol. Is that a possibility?

    Personally Zock, for the purpose of knowing the SB language I'd like to know as precisely as I could where SB native can't perform AND where an extension performs better or more concisely.

    As for team rules I think they should be flexible. For the Monthly Challenges I think they should be fairly rigid and encouraged. I also think the Monthly Challenge rules/guidelines should be occasionally challenged to help the ecosystem evolve.

    If litdev put MusicPlayTime in his Sound object I would definitely use it in the challenges stating my reasons and for the purpose of indie gaming I'd probably use it anyway. If I need to upload data I have to use an extension.

    If your game has slow performance due to optimisation issues that are not SB natives fault then personally I'd like to know what they are then if better use the extension.

    Thursday, August 13, 2015 12:10 AM
    Moderator
  • @ Jibba Jabba - I have moved MusicPlayTime to LDSound - it will still work in LDFile, but does not show in intellisense.
    Thursday, August 13, 2015 6:07 PM
    Moderator
  • So what do you all think. Should I make another Tankinator with an extension or should I not bother.

    It is written: "'As surely as I live,' says the Lord, 'every knee will bow before me; every tongue will acknowledge God.'" Romans 14:11

    Tuesday, August 18, 2015 11:28 PM
    Answerer
  • No worries litdev.
    Wednesday, August 19, 2015 8:42 PM
    Moderator
  • So what do you all think. Should I make another Tankinator with an extension or should I not bother.

    Absolutely, all examples of good games can be helpful to SB coders and fun to play. 

    We try to keep the challenges extension free since they are really about getting some basic skills, but it is also helpful for people to see how do more complex stuff with extensions to overcome some performance or other limitations in native SB.

    Wednesday, August 19, 2015 9:13 PM
    Moderator