So now that I've more or less survived my first few months of computer science, I thought I'd make a little game to motivate me for the coming second term.
"Let's make a sandbox exploration game", thought me, and realised that I didn't have the tech savvy to make it playable.
"How about a physics-based RTS?", suggested another part of my brain. Yeah, physics, that's complicated stuff.
"An FPS about natural selection and tactics?" - Dear Lord, no, we'd need really good AI to make it worth it.
"A space 4x with realistic scale!", was a thought. "Wait, mathematics and such? Relativistic physics? Ha ha ha!", was another.
And after a few weeks, yet another idea cropped up.
"A 3D roguelike?", I asked myself, and failed to think of any reason why that'd be too hard. So I fired up unity, imported some standard assets, and immediately started bludgeoning my desk in fury.
In short, I am a complete and utter idiot. And I have many questions.
The first shall be this:
1. Issue One: Multidimensional Arrays, or alternatives thereto
I want to create a three-dimensional level to play in, using simple cubes. I thought it'd be fun to write an algorithm to plan the level, with multiple floors, rooms, staircases, corridors and whatnot. The plan was to store the layout in a matrix; or perhaps rather to have the matrix represent the level, with three dimensions denoting coordinates, and each element containing information regarding block type, structural integrity, temperature or whatnot.
Alas, my meagre coding experience did not suffice. I didn't even manage to make the bloody matrix happen! So, how can I create a simple array with three or five or eight or perhaps a dozen dimensions to store my level map in? How can store further arrays within this array?
Or is there a simpler, perhaps a simply better way to do it?
My guess is there's some object-oriented solution I'm not thinking of, or some other way of making such a map happen. Not that I'd actually know - as mentioned above, I am an idiot.
So, if anyone can make sense of all this, and perhaps provide some insight...I'd be much obliged!