Jump to content
  • Advertisement

Avalander

Member
  • Content Count

    175
  • Joined

  • Last visited

Community Reputation

2418 Excellent

1 Follower

About Avalander

  • Rank
    Member

Personal Information

  • Role
    Programmer
  • Interests
    Art
    Design
    DevOps
    Programming

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Avalander

    Perceiving is believing - part 2

    That was an interesting reading, thanks for sharing!
  2. Play it! | View on GitHub Now that I am slightly recovered after the Week of Awesome, I want to share my thoughts about what went well and what I have learned after this experience. A quite important part of my project was to experiment with functional reactive programming in games, and I promised to share some reflections about it afterwards. I'm going to talk about that in the second part of the post-mortem, which I expect to publish early next week. What was great Community support and feedback The absolutely best thing about participating in this contest was all the encouragement and feedback I got from the community. Big thanks to everybody who took the time to play my game, read my blog entries, post feedback and encouraging comments, and even find and report bugs! My game would have been a lot worse without that feedback. Many people suggested features I hadn't thought of or I had dismissed earlier because I didn't think they were that important. The ability to move to the left and better control of the landing position when jumping are clear examples of this. It was also really motivating to see every day people playing the game and posting new feedback. Browser game I think that going down the browser route was a good idea after all. The cool thing about the browser is that everybody has one. Distributing your game is so easy: no installation or configuration required, and everybody can play it regardless of operative system or installed runtimes. I could upload the game to my VPS since day one, update it often, and have people trying it out, which was great and I think that it made a difference in the amount of feedback I received. What I would do differently Have a level editor The game I delivered is inexcusably short. Once I had the basic mechanics going, it would have been really easy to add more and longer levels. The only reason holding me back was that I didn't have any visual tool to create and edit them. I created the only level in the game by manually editing a JSON file. As you can imagine, that was a tedious job and I decided to invest the little time I had in solving other stuff. Not having a level editor also prevented me from iterating the level and making sure it was fun and challenging enough. Next time, I will make sure to have a visual tool to create levels and maps at hand before the contest starts. Test the delivery format early When I set off to make a browser game, I set up a local development web server to serve the file and recompile and reload the changes quickly. I knew that I would end up delivering an index.html file with a .js bundle and that the judges would load that file from the file system instead of a web server. That should make no difference, right? Wrong! Turns out that Chrome, among other browsers, doesn't allow AJAX requests when loading a file directly from the file system. And guess how the rendering library I used loads spritesheets? Exactly: AJAX calls. I should have tested running the game from the file system since day one. Instead, I only tried it when I was about to upload the final submission. If I had known about the AJAX issue earlier, I could have written my own resource loader, or bundled the game with electron. Instead, by the time I noticed the issue, I didn't have the time nor the energy to do something about it. Even though the game can still be run locally with Firefox, I provided a python script to run it on a local web server, and some judges didn't mind playing it on my VPS, my developer soul still hurts because I wasn't able to deliver software that runs with a single click. Conclusion This community is awesome. I got far more interest and feedback than I expected. I liked the experience of making a browser game, even though at the end it wasn't as smooth as I thought, and I definitely need to get a level/map editor next time. If you are interested in reading my musings about using functional reactive style in games, stay tuned for the second part of the post-mortem.
  3. Avalander

    ProjectCastle How I got so many physics. Files for free.

    Now I could finally play it! It looks cool, I really like what you've done with the buildings falling apart. It's a pity that you couldn't add the aliens, it would have been such a great game! Unfortunately, I can't provide feedback on the code, I don't have much experience with Unity nor C#.
  4. Avalander

    ProjectCastle LastDay.

    Are you sure you uploaded the right file? When I unzip it, I still get a .exe and the folder structure doesn't look like when I build a Unity game for OS X.
  5. Avalander

    ProjectCastle LastDay.

    @Scouting Ninja Please, do! I'm running OSX.
  6. Avalander

    ProjectCastle LastDay.

    It looks fun, I like the idea of destroying buildings! It's a pity I can't try it because I'm not running Windows
  7. Avalander

    Strawberry Alert: Day 7

    Play it! | View on GitHub Strawberry Alert is good enough to go. I didn't have time to fix everything I mentioned in my last post, but I could add the following: Support WASD to move. With arrow down (or S) the character crouches, making it easier to avoid enemy fire. The game state is not updated anymore after the level lost dialog appears. There was a bug that the aliens could fire after dying. This is no more. Another bug reduced the player's hit points when a bullet collided from behind (like when an alien fires and the player is slightly past it, the bullet appears with the tail colliding with the player). This isn't happening any longer. Overall, I'm quite satisfied with the end result. The only thing that I really wish I had time to do is improve the collisions that are still a bit wibbly-wobbly. Also, I realised today that the rendering library I use loads the spritesheets via AJAX and, guess what? Some browsers (hello Chrome ¬.¬) don't allow AJAX calls when executing an html file directly from the file system. I'm sure there is a way to fix this, but I don't want to spend the few hours of Sunday left digging into it. The game works fine when running it from the file system with Firefox, at least, and I provide a python script to run a simple web server otherwise. strawberry.zip
  8. Avalander

    Strawberry Alert: Day 6

    Yeah, that should be pretty straightforward to implement! We lefties should support each other
  9. Avalander

    Strawberry Alert: Day 6

    Play it! | View on GitHub One more day to go. I think that the game is in a pretty good shape already. There are a couple of issues that should be fixed, and I can add more features, but I think it's close to something deliverable. Today I've acted on the feedback I received in my previous entries (big thanks to @slicer4ever, @Thaumaturge and @Scouting Ninja!): I fixed a bug that allowed the player to double-jump while in the air, which, mixed with the wibbly-wobbly collisions, could make it fall through the platform. No more double-jumping. I implemented a proper camera. Before everything was just rendered relative to the player position. Now there's a camera object that moves forward when the player gets to a certain distance from it. Currently, that distance is quite short (100px), I'm considering making it bigger, maybe up to 1/3 of the screen. Thanks to the feature above, now the player can also move to the left. The camera doesn't move back because then it would be too easy to chase aliens that escaped the player. Now it is possible to move a bit the player while in the air, hopefully making it easier to control the landing position. Aliens now shoot. The player loses a life if a bullet hits her, and the level if she loses all her lives. Tomorrow is the last day. I'll be happy if I can add half of the features below: Stop updating the game when the level is finished or lost. Currently, the player can keep moving and fighting even when the level lost dialog shows up. Add a crouching action when the down arrow is pressed, to make it easier to dodge alien fire. Balance the difficulty. I've been able to finish the level with the current settings, but I haven't really tested how hard it is. I want to try out different combinations of alien shooting speed and hit points. Add some sort of feedback when the player is hurt. Maybe a short animation or similar. Make the collisions less buggy. Currently, the sprites sometimes end up on the middle of the platforms instead of the top. Fix walking animation. This one is going to be hard. By the end of the level, the walking animation usually looks slightly off. I'm probably doing something wrong with the rendering library, but I have no idea what it is.
  10. Avalander

    Strawberry Alert: Day 5

    Thanks guys! I'll take your input into account today when I start working on it
  11. Avalander

    Strawberry Alert: Day 4

    Thanks Yeah, allowing to move to the left is next on my list of features. I've been putting it off, but I agree that the game needs it. And thanks for the bug report! I could reproduce it, I hope to be able to fix it tomorrow.
  12. Avalander

    Strawberry Alert: Day 5

    Play it! | View on GitHub End of day five. The current state almost resembles an actual game. I added some platforms so that the player can jump around and a flag at the end of the level. Next things on my list to implement: Move backwards. Scoring. Hit points and alien attacks. I will be happy if I manage to finish these three things by the end of Sunday.
  13. Avalander

    Strawberry Alert: Day 4

    Thanks for the suggestion I think you're right, I should implement moving backwards. I was just being lazy.
  14. Avalander

    Strawberry Alert: Day 4

    Play it! | View on GitHub Today I finally added aliens to the game! There is no level design or hit point system whatsoever. There are four aliens walking to the left. If the player attacks them, they die, otherwise they keep moving until they are out of sight. It is some progress, at least. I couldn't do much more because I spent most of the time chasing a silly bug. I created a template for the aliens with, among other properties, the speed. And since all aliens were created from that template, when I modified the speed in one alien, it changed of course the speed for all aliens, because it was a shared reference. The cause wasn't obvious to me at the beginning because what the bug caused was that the second alien, fell through the ground. The issue was that after the collision check for the first alien, I correct the position and then I set the vertical speed to 0. To correct the position I simply subtract the current vertical speed from the vertical position. So the second alien had the speed already set to 0 when correcting the position, therefore the position didn't get corrected. It's been a while since I felt this stupid. My plans for the future are: Create a bit of a map, with platforms and aliens coming from different places. Add a hit-points system. The hero would have 4 hit points and lose one each time she collides with an alien. If she reaches 0 hit points, the game is over. The player will only be able to move forward. Once he gets to the end of the level, the game is over and the final score depends on how many aliens were slain.
  15. I really like the animations, and the look and feel in general, keep up the good work!
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!