Jump to content
  • Advertisement
Sign in to follow this  
RobertLong

C# Engine for Sandbox Game

This topic is 2536 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Lately I've been playing a lot of Minecraft and Terraria and I have been really sucked into the whole sandbox genre. I have intermediate knowledge of C# (Mostly WCF and Winforms, no experience with directx/opengl) and I'd like to just mess around and make a little sandbox game where I can place and manipulate 3d models. Eventually I would like to add Multiplayer to the mix and I was wondering if anyone had any recommendations for a 3D Game Engine that I can accomplish this with.

I'd like to stick with C# and I would like a higher level networking library to work with and I've been looking at Unity 3D or Essenthel Engine. I really like their level streaming capabilities which I think would really help with large levels and user generated content. I'm just looking for something simple, because as far as 3D games go I'm basically a noob.

Can anyone recommend either of these or something else?

Share this post


Link to post
Share on other sites
Advertisement

Lately I've been playing a lot of Minecraft and Terraria and I have been really sucked into the whole sandbox genre. I have intermediate knowledge of C# (Mostly WCF and Winforms, no experience with directx/opengl) and I'd like to just mess around and make a little sandbox game where I can place and manipulate 3d models. Eventually I would like to add Multiplayer to the mix and I was wondering if anyone had any recommendations for a 3D Game Engine that I can accomplish this with.

I'd like to stick with C# and I would like a higher level networking library to work with and I've been looking at Unity 3D or Essenthel Engine. I really like their level streaming capabilities which I think would really help with large levels and user generated content. I'm just looking for something simple, because as far as 3D games go I'm basically a noob.

Can anyone recommend either of these or something else?


Have you written a game before, a simple 2d game?

Share this post


Link to post
Share on other sites
Yeah, but in VB6 a long time ago. I'm not too worried about the programming personally. I just want to make a world where I can place/break things and move around and then save it. Then eventually add multiplayer and other gameplay elements. It would be a sandbox game in two aspects 1. You build stuff in a world 2. Its a testing ground for my learning of game programming.

Also, if someone could recommend a database or file type to store the level that would be great too. I was planning on sqllite because I'm familiar with it but I'm worried about the performance. Although, unlike games like minecraft I wont be generating and saving the terrain in a bunch of blocks, just the objects that I place and create.

Share this post


Link to post
Share on other sites

Yeah, but in VB6 a long time ago. I'm not too worried about the programming personally. I just want to make a world where I can place/break things and move around and then save it. Then eventually add multiplayer and other gameplay elements. It would be a sandbox game in two aspects 1. You build stuff in a world 2. Its a testing ground for my learning of game programming.

Also, if someone could recommend a database or file type to store the level that would be great too. I was planning on sqllite because I'm familiar with it but I'm worried about the performance. Although, unlike games like minecraft I wont be generating and saving the terrain in a bunch of blocks, just the objects that I place and create.


What do you mean by "I'm not too worried about the programming personally"? Is that meant to be like you are comfortable enough and confident enough not to worry.. or you just dont care about it? If its the latter than I think you will find yourself with a huge problem. You cant just "make" a world, you have to program the world... Im confused.

Share this post


Link to post
Share on other sites
I planned on building a terrain in the editor and then placing a bunch of props that I modeled such as foliage and rocks. The rendering of the world is already done by the engine and I won't have to program the graphics systems such as 3D rendering and lighting and such. That I'm not comfortable at all with. I don't want to build an engine, I just want to write code to add character interactions and the systems to save what the character has done (and maybe later networking). So no, I'm not programming a world really, If I was then yes I would not be comfortable. What I am comfortable with is writing all the code for those character interactions. Getting objects to spawn and snap to the terrain, rotating those objects, deleting objects, and then finally saving the objects. I'm fairly certain I can do that (I've already created a script in Unity 3D to spawn objects where I want while waiting for responses).

So, I'm sorry if this comes out as being rude but I don't need advice on what kind of project I should be making as a beginner, I think this is within my reach. I do need help finding the right tools for the job though. Should I invest money in something that will be much easier/better or should I go with a free alternative? If you could answer that, I would be very appreciative.

Share this post


Link to post
Share on other sites

I planned on building a terrain in the editor and then placing a bunch of props that I modeled such as foliage and rocks. The rendering of the world is already done by the engine and I won't have to program the graphics systems such as 3D rendering and lighting and such. That I'm not comfortable at all with. I don't want to build an engine, I just want to write code to add character interactions and the systems to save what the character has done (and maybe later networking). So no, I'm not programming a world really, If I was then yes I would not be comfortable. What I am comfortable with is writing all the code for those character interactions. Getting objects to spawn and snap to the terrain, rotating those objects, deleting objects, and then finally saving the objects. I'm fairly certain I can do that (I've already created a script in Unity 3D to spawn objects where I want while waiting for responses).

So, I'm sorry if this comes out as being rude but I don't need advice on what kind of project I should be making as a beginner, I think this is within my reach. I do need help finding the right tools for the job though. Should I invest money in something that will be much easier/better or should I go with a free alternative? If you could answer that, I would be very appreciative.


Not my specialty, I work with a lot lower level tools and API's. And you have to understand that people post here EVERY DAY asking about engines, languages, etc when they have never written a single line of code in their life and should not be concerned with 3D yet. So Im sorry if my initial reaction is to ask where you stand.

Share this post


Link to post
Share on other sites
That's quite alright, I've actually been on these forums before a while ago and I've seen that. If you can't recommend an engine then would you advise sqlite to save the level data? Is that at all standard for save files or is there something else more appropriate for this?

Share this post


Link to post
Share on other sites

That's quite alright, I've actually been on these forums before a while ago and I've seen that. If you can't recommend an engine then would you advise sqlite to save the level data? Is that at all standard for save files or is there something else more appropriate for this?


Wait, didnt you say youve already usd Unity3D? I cant think of anything better. I mean the level editor is pretty much what you need, and the only other engine that comes close would be UDK. Ive never used Unity, but Ive watched tutorials... and it seems pretty drag and drop as far as models go. Then just attaching movement scripts to the Entities... if you have already used Unity, I think its just what you should continue with.

As for as saving level data, I haven't done any multiplayer so I just use simple XML or .txt to save info like that.

Share this post


Link to post
Share on other sites
Minecraft, Terraria, and Dwarf Fortress (the present reigning champion of the procedurally generated game) are powered by noise functions. They're procedurally generated games, and therefore are almost entirely programatically(sp) constructed (other than character models and unique assets and textures). JTippetts has some great examples of how to construct Minecraft terrain, and those concepts are applicable to Terraria and Dwarf Fortress. I would investigate the C# variant of LibNoise on codeplex since you're interested in C#. I've used it, and it is a foundation of my game's heightmap, wind, rain, and mountain generation systems as well as providing the data needed to calculate rivers and biomes (early example: http://img.photobuck...with_rivers.jpg)

JTippetts's Stuff:

http://www.gamedev.n...5133-minecraft/
http://www.gamedev.n...type-world-gen/

http://www.gamedev.n...rld-generation/

I would also highly recommend the following sites:

http://www.dungeonleague.com/

http://pixelenvy.ca/wa/ca_cave.html

http://pcg.wikidot.com/

http://roguebasin.ro...ave-Like_Levels

Share this post


Link to post
Share on other sites
This is what I meant when I said it needs to be programmed. Im not really understanding how you expect to create a minecraft-esque world without some serious algorithms.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

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

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!