Post by cantrem on Feb 19, 2015 6:03:27 GMT
Hi guys! Got Besiege a couple of days ago from Steam. Big mistake. Now I'm wasting my nights building death machines. I love the idea and the implementation: the game blocks, the enemies, the terrain style, heck, even the main menu is wonderfully put together.
As for the control scheme, I have to agree with chowder and komix (multiple controls for a block is a must), maybe even go a little further:
It would be great to also bind the block changeable parameters to the control mapping. Let's take the tank example again: there are two lines of wheels (say 8 on each) on the sides of the vehicle. Up arrow moves all the wheels forwards, down arrow moves all the wheels backwards, all of them with the same speed. What would be great is to also bind each of the wheels in a fashion that turns the tank left and right. For this, you'd bind the right arrow to make the wheels on the right to move backwards AND the wheels on the left to move forwards. The reverse for the left arrow. The only problem is that each of the wheels should now have a different speed (when turning, each of the wheel has to travel in a circle, but the last wheels in the front and back of the vehicle have to travel on a wider circle than those in the middle, so they should have a greater speed).
As a programmer I can tell you that this is a very simple task to do, especially in unity. Heck, I'd do it for free!
As for the multiplayer talks: the problem with unity is the problem with C#: non-deterministic floating point operations. That makes sync-ing stuff across multiple machines a very annoying job. That, combined with the fact that each part should be synced individually and that the default unity network components are not exactly the most optimized ones (at least in pre-unity 5), would make it rather impossible to have anything more than maybe 2-3 players on the same map. And even this would take a huge amount of work.
As for the control scheme, I have to agree with chowder and komix (multiple controls for a block is a must), maybe even go a little further:
It would be great to also bind the block changeable parameters to the control mapping. Let's take the tank example again: there are two lines of wheels (say 8 on each) on the sides of the vehicle. Up arrow moves all the wheels forwards, down arrow moves all the wheels backwards, all of them with the same speed. What would be great is to also bind each of the wheels in a fashion that turns the tank left and right. For this, you'd bind the right arrow to make the wheels on the right to move backwards AND the wheels on the left to move forwards. The reverse for the left arrow. The only problem is that each of the wheels should now have a different speed (when turning, each of the wheel has to travel in a circle, but the last wheels in the front and back of the vehicle have to travel on a wider circle than those in the middle, so they should have a greater speed).
As a programmer I can tell you that this is a very simple task to do, especially in unity. Heck, I'd do it for free!
As for the multiplayer talks: the problem with unity is the problem with C#: non-deterministic floating point operations. That makes sync-ing stuff across multiple machines a very annoying job. That, combined with the fact that each part should be synced individually and that the default unity network components are not exactly the most optimized ones (at least in pre-unity 5), would make it rather impossible to have anything more than maybe 2-3 players on the same map. And even this would take a huge amount of work.