Difference between revisions of "User:Wuzzy"

From Minetest Wiki
Jump to navigation Jump to search
(Added rudimentary user page.)
 
(Add much more infos, and mods about me :-))
Line 3: Line 3:
 
I speak German and English.
 
I speak German and English.
  
I am active in this Wiki and in the Minetest forums (same user name).
+
I am active in this Wiki and in the Minetest forums (same user name). I'm the author of countless mods and even a few games. I make sure the German translation of Minetest stays up-to-date. I rarely did a few small contributions to Minetest itself, but enough to appear as “active contributor” in the Minetest credits in version 0.4.16. :-)
 +
 
 +
I am sometimes active on the JT2 server. I'm that crazy player who built a large bungalow of nothing but [[bones]].
  
 
You can contact me via XMPP: Wuzzy2@jabber.ccc.de
 
You can contact me via XMPP: Wuzzy2@jabber.ccc.de
 +
 +
== My creations ==
 +
=== Games I have created ===
 +
* [[Games/Tutorial|Tutorial]]
 +
* [[Games/MineClone 2|MineClone 2]] (WIP)
 +
* [[Games/Hades Revisited|Hades Revisited]] (WIP)
 +
 +
… and there's a couple of projects which never really took off so far.
 +
 +
=== Mods I have created ===
 +
I have made a large number of mods. Mods on which I'm most proud of are in bold.
 +
 +
==== Gameplay mods ====
 +
* '''Orienteering [<code>orienteering</code>]''': Craftable tools for find your place in the world
 +
* '''Easy Vending Machines [easyvend]''': Buy and sell stuff from other players in vending and depositing machines or place your own
 +
* '''Flying Carpet [flying_carpet]''': Fly over the world!
 +
* Point Teleporter [<code>teletool</code>]: Teleport to whereever you point to
 +
* Mirror of Returning [<code>returnmirror</code>]: Teleport back to a place you've been previously
 +
* Pep: Player Effects Potions [<code>pep</code>]: Simple potions giving you useful or harmful status effects
 +
* Realistic Suffocation [<code>real_suffocation</code>]: Lose breath while you're stuck in solid blocks
 +
* Magic Beans—Wuzzy’s Fork [<code>magicbeans_w</code>]: Find magic beans, jump higher, run faster, fly, plant a giant beanstalk
 +
* Mesecons Windows [<code>mesecons_window</code>]: Mesecons extension which adds blocks which turn transparent when powered
 +
* Surprise blocks [<code>tsm_surprise</code>]: Blocks with surprises appear around the world!
 +
* Watering Can [<code>wateringcan</code>]: Water your farming lands
 +
 +
==== Map generation ====
 +
* '''Rail corridors + treasures [<code>tsm_railcorridors</code>]''': Simple underground corridor systems with rails and a few treasure chests
 +
* Pyramids + treasures [<code>tsm_pyramids</code>]
 +
* Spawn Builder [<code>spawnbuilder</code>]: Spawns a basic starter platform, useful for empty worlds
 +
* Indestructible Bedrock Layer [<code>bedrock2</code>]
 +
 +
==== Blocks / decorative items ====
 +
* Color Cubes [<code>colorcubes</code>]: Colorful blocks
 +
* Minetest Game Plus [<code>mtg_plus</code>]: Lots of new craftable decoration blocks for Minetest Game
 +
* Slime blocks and liquids [<codes>slimenodes</code>]: Sticky, bouncy, gooey slimey blocks.
 +
* Dice [dice2]: Funny dice which rotate randomly
 +
 +
==== GUI mods ====
 +
* '''Help modpack [<code>doc</code>]''': Learn everything what you always wanted to know, plus more! Mods can write their own help texts
 +
* '''HUD bars [<code>hudbars</code>]''': Replace the statbars with progress bar-like bars
 +
* Inventory Icon [<code>inventory_icon</code>]: See your inventory fullness
 +
* Show Wielded Item [<code>show_wielded_item</code>]: Show the name of the wielded item above hotbar
 +
* Simple Fast Inventory Buttons [<code>sfinv_buttons</code>]: Buttons for Minetest Game's inventory screen
 +
 +
==== Mod development tools ====
 +
These mods are for mod developers:
 +
 +
* '''Schematics Editor [<code>schemedit</code>]''': Create, load, place and edit schematics
 +
* '''L-System Tree Utility [<code>ltool</code>]''': Helps you understanding and creating [http://dev.minetest.net/Introduction_to_L-system_trees L-system trees] for Minetest
 +
 +
==== Architecture mods ====
 +
These mods are not really useful in their own, but they can be depended on by modders to get a framework for interesting features, like adding a mana game mechanic.
 +
 +
* Mana [<code>mana</code>]: Players get a new mana attribute which can be used for magical spells, items, etc.
 +
* Player Effects [<code>playereffects</code>]: Status effects for players
 +
* Treasurer [<code>treasurer</code>]: Random treasure/loot selection framework
 +
* Central Message [<code>central_message</code>]: Write a message in the center of the screen
 +
* Basic HUD textures [<code>basic_hud</code>]: Just a few basic texture for creating new games
 +
* Player Model [<code>playermodel</code>]: Player model as a standalone mod
 +
* Galaxy Skybox [<code>galaxybox</code>]: Turn the sky into deep space
 +
 +
List of mods on the forums:
 +
https://forum.minetest.net/search.php?st=0&sk=t&sd=d&sr=topics&author=Wuzzy&fid[]=11&sf=titleonly&start=30
 +
 +
== What I play ==
 +
=== Games I like ===
 +
* [[Games/Pixture|Pixture]]
 +
* [[Games/Labyrinthus|Labyrinthus]]
 +
* [[Games/Lord of the Test|Lord of the Test]]
 +
 +
=== Servers I like ===
 +
* JT2
 +
* Inside the Box
 +
 +
== My development philosophy for writing Lua code ==
 +
When I write Lua code for Minetest mods and games, I tend to follow loosely a set of rules I have been used to over the years:
 +
 +
* <code>local</code> is your new best friend. Use <code>local</code> religiously for every variable, unless you are sure it must be global
 +
* Introducing a global variables is a big deal. Do this ''only'' if other mods ought to access resources inside that mod (e.g. for an API)
 +
* '''Never re-use technical mod names for no reason!''' Seriously, stop doing this! Once a mod with name “xyz” is released, this name is taken. Deal with it!
 +
* Do not re-invent the wheel. Do research to check if your task has not already been implemented nicely by someone else
 +
* One mod shall only fulfil one task, but well. Mods which do multiple completely unrelated features at once are bad.
 +
* When possible, turn dependencies into optional dependencies
 +
* Document your own API and code
 +
* My personal coding style can be summarized in 2 rules:
 +
** Get your indentations right
 +
** If you find it hard to navigate your ''own'' code, rewrite it
 +
* Implement localization support as early as possible
 +
* Use [https://semver.org/ SemVer], when it makes sense
 +
* Avoid proprietary stuff like the pest

Revision as of 22:30, 6 May 2018

It’s me, Wuzzy!

I speak German and English.

I am active in this Wiki and in the Minetest forums (same user name). I'm the author of countless mods and even a few games. I make sure the German translation of Minetest stays up-to-date. I rarely did a few small contributions to Minetest itself, but enough to appear as “active contributor” in the Minetest credits in version 0.4.16. :-)

I am sometimes active on the JT2 server. I'm that crazy player who built a large bungalow of nothing but bones.

You can contact me via XMPP: Wuzzy2@jabber.ccc.de

My creations

Games I have created

… and there's a couple of projects which never really took off so far.

Mods I have created

I have made a large number of mods. Mods on which I'm most proud of are in bold.

Gameplay mods

  • Orienteering [orienteering]: Craftable tools for find your place in the world
  • Easy Vending Machines [easyvend]: Buy and sell stuff from other players in vending and depositing machines or place your own
  • Flying Carpet [flying_carpet]: Fly over the world!
  • Point Teleporter [teletool]: Teleport to whereever you point to
  • Mirror of Returning [returnmirror]: Teleport back to a place you've been previously
  • Pep: Player Effects Potions [pep]: Simple potions giving you useful or harmful status effects
  • Realistic Suffocation [real_suffocation]: Lose breath while you're stuck in solid blocks
  • Magic Beans—Wuzzy’s Fork [magicbeans_w]: Find magic beans, jump higher, run faster, fly, plant a giant beanstalk
  • Mesecons Windows [mesecons_window]: Mesecons extension which adds blocks which turn transparent when powered
  • Surprise blocks [tsm_surprise]: Blocks with surprises appear around the world!
  • Watering Can [wateringcan]: Water your farming lands

Map generation

  • Rail corridors + treasures [tsm_railcorridors]: Simple underground corridor systems with rails and a few treasure chests
  • Pyramids + treasures [tsm_pyramids]
  • Spawn Builder [spawnbuilder]: Spawns a basic starter platform, useful for empty worlds
  • Indestructible Bedrock Layer [bedrock2]

Blocks / decorative items

  • Color Cubes [colorcubes]: Colorful blocks
  • Minetest Game Plus [mtg_plus]: Lots of new craftable decoration blocks for Minetest Game
  • Slime blocks and liquids [<codes>slimenodes]: Sticky, bouncy, gooey slimey blocks.
  • Dice [dice2]: Funny dice which rotate randomly

GUI mods

  • Help modpack [doc]: Learn everything what you always wanted to know, plus more! Mods can write their own help texts
  • HUD bars [hudbars]: Replace the statbars with progress bar-like bars
  • Inventory Icon [inventory_icon]: See your inventory fullness
  • Show Wielded Item [show_wielded_item]: Show the name of the wielded item above hotbar
  • Simple Fast Inventory Buttons [sfinv_buttons]: Buttons for Minetest Game's inventory screen

Mod development tools

These mods are for mod developers:

  • Schematics Editor [schemedit]: Create, load, place and edit schematics
  • L-System Tree Utility [ltool]: Helps you understanding and creating L-system trees for Minetest

Architecture mods

These mods are not really useful in their own, but they can be depended on by modders to get a framework for interesting features, like adding a mana game mechanic.

  • Mana [mana]: Players get a new mana attribute which can be used for magical spells, items, etc.
  • Player Effects [playereffects]: Status effects for players
  • Treasurer [treasurer]: Random treasure/loot selection framework
  • Central Message [central_message]: Write a message in the center of the screen
  • Basic HUD textures [basic_hud]: Just a few basic texture for creating new games
  • Player Model [playermodel]: Player model as a standalone mod
  • Galaxy Skybox [galaxybox]: Turn the sky into deep space

List of mods on the forums: https://forum.minetest.net/search.php?st=0&sk=t&sd=d&sr=topics&author=Wuzzy&fid[]=11&sf=titleonly&start=30

What I play

Games I like

Servers I like

  • JT2
  • Inside the Box

My development philosophy for writing Lua code

When I write Lua code for Minetest mods and games, I tend to follow loosely a set of rules I have been used to over the years:

  • local is your new best friend. Use local religiously for every variable, unless you are sure it must be global
  • Introducing a global variables is a big deal. Do this only if other mods ought to access resources inside that mod (e.g. for an API)
  • Never re-use technical mod names for no reason! Seriously, stop doing this! Once a mod with name “xyz” is released, this name is taken. Deal with it!
  • Do not re-invent the wheel. Do research to check if your task has not already been implemented nicely by someone else
  • One mod shall only fulfil one task, but well. Mods which do multiple completely unrelated features at once are bad.
  • When possible, turn dependencies into optional dependencies
  • Document your own API and code
  • My personal coding style can be summarized in 2 rules:
    • Get your indentations right
    • If you find it hard to navigate your own code, rewrite it
  • Implement localization support as early as possible
  • Use SemVer, when it makes sense
  • Avoid proprietary stuff like the pest