One of our goals for version 0.4.0 of co.llide was to provide a small but fairly balanced set of building blocks, called modules, for all players to use in constructing ships. However, variety is the spice of life, and we plan to eventually release a large number of unlockable modules for players to add to their personal collections. In this post, I’ll be discussing some ideas for these future modules. I’ll also be talking about a potential problem that we face as designers, and one particular source of inspiration that we believe offers the solution.
This past Saturday, we were given the incredible opportunity to showcase co.llide at the Boston Festival of Indie Games. The turn out was great, and we had a remarkable time!
First and foremost, we would like to thank the entirety of the BostonFIG team for putting together such a fantastic event! It’s thanks to their efforts, and those of the hosts, MIT, that we, and our fellow indie developers, could put on such an excellent show. But the biggest thanks of all, goes to the attendees. Thank you so much for stopping by our booth, giving us feedback, and telling your friends about us! It’s your interest and enthusiasm that drives us to create the best games we can for you to enjoy.
From all of us at Gradient Studios:
Today we say goodbye to Eric Li, who has been with Gradient for the past three years.
Eric’s abilities as a software engineer have made him a key member of the Gradient team. Using his expertise in graphics programming, Eric single-handedly built (and rebuilt) our graphics pipeline to meet the ever-changing needs of our projects. In experimenting with the look and feel of co.llide, we wanted to incorporate dynamic lighting effects. Eric took on the challenge of implementing these effects in Canvas2D, and found a way to make them work without sacrificing performance. He has also been involved in many other aspects of development, including networking, physics, and gameplay.
The team is grateful for Eric’s hard work and contributions. Though he will be sorely missed, we wish him luck, and share in the excitement at his future endeavors.
Last week, we released version 0.3.0 of co.llide, unveiling the ship editor! Whereas in previous versions you could only play with a set of default designs, now you can build your own ships from an array of modules. Sharing your designs works exactly like sharing an arena. Copy the URL of your design and share it with your friends, who can then test, modify, save, and even use it in battle.
Give it a try here: http://co.llide.com/editor
The core concept behind co.llide is for players to be able to build and then pilot their own customized, physically simulated spaceships. This means that when a player stitches together a bunch of pieces into a ship, the game needs to figure out how that ship should move depending on player input. Ours is certainly not the first game to ever address this problem, but we thought an explanation of our specific solution would make an interesting post. But why just tell when I can show?
There appears to be a lot of people that have trouble with Git, even going so far as to say that Git sucks. It may well be that only Linus is smart enough to use Git. Though I will not say that Git’s interface is by any means inviting for a new user, I fear that it suffers from the Paradox of the Active User (Carroll and Rossen, 1987).
Shadows are a great way to relay information in a 3D rendering. They can help demonstrate distances between two objects such as a bouncing ball and the ground. They also relay further information to the structure of an object as they give a second silhouette from the perspective of the light casting the shadow. In this article, I will demonstrate a very small but important improvement for THREEjs’s shadow rendering, a one line change to the shader code.
Our Demolition Derby game is modular. Each module is a low polygon mesh, and a player assembles these modules to create a wheel-based vehicle. These vehicles are then used to combat other players’ vehicles in a simulated physics environment. Victory is determined by breaking apart the modules of the opponent’s vehicle before they yours.
Douglas Crockford wrote RFC 4627, describing the specifications for JSON, a “text format for serialization of structured data.” As a language-agnostic, human-readable open format that has native support for encoding/decoding in browsers, JSON has become the de facto standard for data serialization on the web. There are drawbacks to using JSON, which became evident when we started to write a networked game using WebSockets. (Check out our pre-alpha teaser if you didn’t get a chance to see us at PAX!)