Mirrored as part of a study of Minetest events of 2010 to 2019 and people involved, and in connection with a related book, events in 2017 to 2018, in particular, conferring upon host legal rights related to Fair Use.

Archive for September, 2011

What if I made a Minecraft-style game?

Tuesday, September 27th, 2011

What if I made a Minecraft-style game?

Well, that is a question many ask from themselves.

I ask it from myself too, in the sense of writing everything from the ground up again, to get a cleaner, faster and a more awesome codebase.

But how much work is actually involved?

This is the result of me researching whether re-doing everything would make any sense.

Okay, I then end up writing a voxel rendering thing, with a bunch of block types. A virtually infinite one. “Omg this works so neatly!”

It really isn’t a large job. I could do it in three days.

Then a terrain generator. A day, or so?

Hmm, we definitely need lighting. An optimized implementation will likely take, say, two days.

Now what do you need more? “Oh well, these maps need to be saved somewhere…”. That’s a day.

And then the voxel data needs to be sent over the network. I’d call that two days.

Oh lol, now we have the protocol but no proper server? A day…

This thing needs some kind of a menu to input the server address. A day.

Now, there is actually something to play with your friends. But it’s only a few static blocks and very simple, other players are drawn as trollface sprites.

A breaking animation to blocks is definitely required. Figuring out and implementing a decent system might take a day.

Clouds, sun, moon, a slightly better skybox. A day.

A fluid model for water and lava becomes necessary. At least a day spent.

Animating flowing fluids. An another day.

Currently there is no inventory at all. Implement inventory and crafting. In a day.

Implement and draw different tool types. A day.

Glass, fences, doors, something else. A day. At least.

Improve terrain generator, add more natural blocks. A day.

No tool or block is visible in HUD. Tool requires a 2d->3d extrusion thingy. Also, well tuned view bobbing is needed. Two days of boring and annoying stuff.

Other players still look like trollface sprites. Draw a placeholder sprite-based player model from left, right, top, bottom, front, back, implement it in game. Transfer wielded tool through network and draw tools of other players, animated, based on the code from the HUD thing. At least a day.

This sword is awesome! Oh crap, there exists no mobs at all.

Implement some kind of a server-client synchronized entity system. In two days.

Implement dropping items on ground as entities. A day.

Implement and draw (using the same stuff as drawing an another player) a mob, using some fairly dumb system, with some reasonable reactions to hitting them with the sword or hand. A day.

Oh, talking about the hand, the hand is not shown in HUD yet. Also, there probably are many small things to add and fix at this point. A day.

At this point we’d be somewhere near what Minetest currently is. Partly better, partly worse. That’s 27 days of development, assuming the developer has my experience.

For somebody who hasn’t created something like Minetest before… it’s going to take a bit longer. 8)

Then you’ll definitely need a sound system and sounds. Better and more mobs. And the list goes on…

The project’s to-do list

Monday, September 26th, 2011

Currently we would have use for some more more good contributors.

I have created a wiki page listing the stuff that would most benefit Minetest-c55:

http://celeron.55.lt/~celeron55/minetest/wiki/doku.php?id=todo

Also, here is the general contributor information page:

http://celeron.55.lt/~celeron55/minetest/wiki/doku.php?id=contrib

If you think you can do something, feel free to come on #minetest-delta @ Freenode to discuss about development.

New release: 0.2.20110922

Thursday, September 22nd, 2011

Release time!

It might still have bugs, but not very serious ones. Will fix bugs during the next couple of hours if some are found. This hasn’t gone through any proper testing other than it having stayed mostly unchanged for a while in the source repository.

Also, I seriously need to try to release more often. It seems there never is a good point of time to release and it gets just delayed more and more… 8-)

Changelog:
- Map is saved in an SQLite database file (by Queatz)
- Ladders (MarkTraceur)
- Lava
- Apple trees (sfan5)
- Slightly better looking inventory with transparency
- /me chat command (Oblomov)
- Using chosen map seed possible through fixed_map_seed configuration option (kahrl)
- Fix the long-existed PeerNotFound loop bug
- Some translations and localization-related fixes
- Lots of small fixes

Oh, and yeah, half of the stuff has been made by contributors. Don’t underestimate the huge burden of managing all this and fixing difficult bugs that I am doing though…

Download page

Windows package: minetest-0.2.20110922_1.1-win32.zip

Ubuntu/Mint and Archlinux stable package has been updated.

Mac OS X package not yet available – but it seems there is some package that is more recent than the last release – I wonder what that is…

It’ll take some time for the other Linux packagers to catch up.

NOTE: Updated from 0.2.20110922_0 to 0.2.20110922_1. This updates the client to tell the server it is newer than 0.2.20110731_3. If you connect with 0.2.20110922_0 to a 0.2.20110922_1 server, it will disconnect you telling you are using too old version.