Alternative minecraft

Started by
105 comments, last by bvanevery 9 years, 11 months ago
So what language/platform do you suggest?
I'd be nice if game could be run on Windows, Mac, Linux and Android. Possibly iOS or PS.
I thought WebGL would be the best, becouse html5 and javascript will have a great future and in one or two years they may be very powerful.
But now I have no idea. HELP!
Advertisement
As i know, there's none language that runs "as is" in all those platforms. if you are trying to maintain the same code base across the many platforms as possible, Java is a choice, but it may be slow unless you know how to optimize it...

Mono has the TAO framework (http://www.mono-project.com/Tao) that i just come across, may be useful, as Mono runs on MAC, Linux, Windows, iOS and Android, not sure about Windows Phone thought... Theoretically, the same code base compiles on the Mono compiler and in the .Net compiler with some restrictions, so you can create your game in Mono for all platforms, but in windows you can compile it using the C# compiler (csc.exe) so your windows players don't need to download Mono and receive benefit from the JIT optimization.
I'm still rather interested in WebGL. I don't think it's very slow (faster than Java smile.png ). It rather depends on user graphics hardware (WebGL is hardware accelerated). I know that writing a big game in JavaScript is not a good idea, but I have some support, wchich helps me keep my code clean.

Implementation dependent? Not really. The only condition is to write solid underlaying code, wchich will be supported by most browsers and perform such basic tasks like initialising WebGL,Shader communication, etc. I will test every change in all browsers I'd like to run the game in and eliminate errors.

You may say i'm mad, but if i succeed, i'll be the first person, used WebGL for some serious task.
If I'll find it impossible, i'll just rewrite it to other language.

P.S:We'd live in caves if we do not experiment.

I'll apprecciate anyone, who will be so brave to help me! biggrin.png biggrin.png biggrin.png

P.S2:Check this out: http://www.chromeexperiments.com/detail/sproingies/?f=webgl
Well, with this sample i only managed to get 7 fps in chrome... maybe is the work computer, will check again when i get home...

Experimenting is always good, but i really recommend that you try to write the game logic in a language that is easier to debug.

If you got a type mistake in the middle of your javascript logic, you will have a bad time... maybe try Lint: http://www.javascriptlint.com/

I'll try to find a good javascript IDE for you. One with Intelisense.

Some suggestions can be found here: http://stackoverflow.com/questions/209126/good-javascript-ide-with-jquery-support

I personally want to try aptana: http://www.aptana.com/products/studio3

For the WebGL part, this thread has some really good IDEs, i liked FractalLab: http://stackoverflow.com/questions/5593274/tools-for-glsl-editing

Hope that helped, even if a little, i'm looking forward to learn WebGL, so maybe i can help you one day tongue.png
Have you tried Unity? It's very flexible, easy and works in many platforms, including browser and mobile.
I don't like unity. Unity is designed for stardard FPS games, and has mechanics working only with them. If i want to write a voxel game i need to perform as little amout of operations, as only possible and unity3d will perform all actions as in FPS, that are unnecessary, which will only slow down my game. Believe me - I tried and didn't succeed.
I like to have an eye on all my code. From initializing graphics to drawing GUI or sending player a message. I don't like if i write only a part of code, becouse i can't customize all low-level code for my type of game. Unity 3D is too general purpose engine for this type of game. Sorry.

I don't like unity. Unity is designed for stardard FPS games, and has mechanics working only with them. If i want to write a voxel game i need to perform as little amout of operations, as only possible and unity3d will perform all actions as in FPS, that are unnecessary, which will only slow down my game. Believe me - I tried and didn't succeed.
I like to have an eye on all my code. From initializing graphics to drawing GUI or sending player a message. I don't like if i write only a part of code, becouse i can't customize all low-level code for my type of game. Unity 3D is too general purpose engine for this type of game. Sorry.


I understand If you need more freedom, but saying unity is designed for standard fps is underestimating it. I've wrote a marching cubes algorithm for voxels myself, using unity.
So you're good at it. Send me the demo if you can. But i still think that unity3d is not a perfect tool for voxel games.

P.S.:I'd love to see this code. You do not have to show it to me... but i'd love to.
[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif]

[background=rgb(250, 251, 252)]So you're good at it[/background]

[/font][/quote]

Not really, I used code available on the internet, just adapted to run in unity. Too bad I didn't keep any record of that! But a youtube search for 'unity marching cubes' shows that a lot of people pulled this off, you can check those out :)

I do have some videos of a more recent project of mine using Unity. It's also a very uncommon functionality, so it may serve as an illustration to its flexibility. It's a navigation system for large crowds, that works by calculating 2d vector fields over the walkable area. These are old versions, it looks less crappy now.


It's not as flexible as making your own engine, but I still recommend getting familiar with Unity.. if you have projects that won't be compromised by its limitations, it can be a real time saver.

Creating a voxel project myself, i can attest that there is nothing like creating your own engine. Just understand that you are in a world of hurt and it will be very time consuming. There have been many helpfull people on this forum though that have eased the process.

Essentially your going to have to manage some very serious systems and depending on what you use for your backend will really depend on the limitations you run into. We had some serious issues with running on XNA and decided to port over to SlimDX, slimdx is fairly new so there is limited documentation on alot of the more advanced features that it can control. DX11 removed the ability for us to load models using the DX9 method so we had to find the collada loader and modify it so it would work with animations and textures. After 4 months of serious development we finally have something worth showing, but we have a long road ahead of us before we are even close to what one would call a playable game.

So, my suggestions is, find the base system that will support everything you are trying to do. If you dont know what you are trying to do than you really need to define that first because the rest of the stuff you will need will be 100% dependant upon that. You will waste months if you go to code something and realize the tools you are using do not support the goals of your game.

Anyway, figure I would give some friendly advice. If you have any questions please feel free to let me know and we can answer them as best as we know. We have been down the road of most of the voxel based complexites and just now are moving into making 3d objects work within the block based worled. ( got some interseting ideas to do with that ! ) Good luck!

This topic is closed to new replies.

Advertisement