[Mod] Mesh primitive objects [0.22] [slope_test]

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

[Mod] Mesh primitive objects [0.22] [slope_test]

by VanessaE » Post

Here's a simple mod that uses the new mesh draw type to supply some geometric primitives and a few shapes derived from them, suitable for roof shingles, columns, etc.

These aren't entities, they're nodes, and unlike the old method of using tons of small nodeboxes to create shapes, they are perfectly flat and/or diagonal and/or round (well, as much so as a computer is capable of anyway). The slopes consist of only a few faces/polygons each, while the more rounded objects have far more (though enormously less than a nodebox-based equivalent at a passable resolution would have).

All of the objects are based on Blender's built-in primitives. Why re-invent the wheel, right? :-)

Image
Some of the shapes that can be made with this mod. The inventory at the bottom shows the full set of primitives.

Usage:

Nothing special to using them really. Get a few (creative or /giveme, see list below) and place them. Note that a few of these only have the "_onetexture" variety. The one-piece "long" slope takes up two nodes; point at where the back/thick end should go. The code does not check for adequate space before placing. Also, the code does not attempt to auto-place the front/back halves of the two-node version of the long slope..
Spoiler
There are 29 items:

slope_test:slope
slope_test:ocorner
slope_test:icorner
slope_test:slope_onetexture
slope_test:ocorner_onetexture
slope_test:icorner_onetexture
slope_test:slope_long
slope_test:slope_long_onetexture
slope_test:cylinder
slope_test:cylinder_onetexture
slope_test:pyramid_onetexture
slope_test:pyramid_short_onetexture
slope_test:quarter_round
slope_test:quarter_round_onetexture
slope_test:quarter_round_corner
slope_test:quarter_round_corner_onetexture
slope_test:slope_test_blob_onetexture
slope_test:slope_test_sphere
slope_test:slope_test_sphere_onetexture
slope_test:slope_test_cone_onetexture
slope_test:slope_long_fronthalf_onetexture
slope_test:slope_long_backhalf_onetexture
slope_test:icorner_half_tall_onetexture
slope_test:icorner_half_short_onetexture
slope_test:ocorner_short_onetexture
slope_test:corner_pyramid_short_1_onetexture
slope_test:corner_pyramid_short_2_onetexture
slope_test:corner_pyramid_tall_1_onetexture
slope_test:corner_pyramid_tall_2_onetexture
Technical info:
Spoiler
The "_onetexture" versions are made to use just one ordinary texture file. In this case they point to default_stone.png and are designed exactly as you'd expect. That is, they'll use any ordinary 16px (or larger) texture you want, so they'll work with all texture packs, and the texture appears on all sides/faces of the model. Those models should work well as drop-in replacements in mods that currently use tons of nodeboxes to get slope/curve effects.

The versions without "_onetexture" in their names are designed to use a UV-mapped texture such that each face of the object is cut from a particular region of the texture file. Included in the textures/ directory you will find GIMP .xcf project files which should aid in understanding how these UV maps are laid out. Note that the numbers in those GIMP images are arbitrary and don't have any direct relation to the numbering of the faces or vertexes in the models - they're just there to help you compare a face in-game to the corresponding section of the texture file, and to aid in orienting the images.

Note that the UV maps are hardly what one would consider "ideal" layouts - there's a lot of wasted space in the textures, but this is deliberate. I wanted to leave everything "upright" and well-separated for the sake of understanding.

The colored borders in the GIMP images indicate where the UV map objects' edges are (roughly, in the case of diagonal lines). In the example files, you can see that I extended the wood textures out past the colored borders on all sides by one pixel, for all of the UV map objects. This is to account for Irrlicht rounding errors that would cause razor thin black lines between neighboring nodes (since the example image has a black background).

For the UV-mapped version of the cylinder (e.g. the one without "_onetexture"), I've used default_wood.png, tiled to 64 pixels, where the top-left 16x16 region goes to the top face, the 64x16 pixel strip below that is wrapped around (starting from the left-most point at -X and going around the front/-Z), and the next 16x16 pixel zone below that is for the bottom face. The rest of the image is set to black as it is unused. Like the slopes, there are 1-pixel "borders" zones around the active areas here to account for Irrlicht rounding errors.

Most other objects with per-face/per-side imagery generally have 48px textures to go with them, typically divided into 3x3 zones (which can be easily assessed by looking at the blender files). Not all objects in this mod have GIMP example images.

I had trouble getting the plain/one-texture sphere to texture properly. The mapped (not-onetexture) version of the sphere comes with an image of the Earth, thus making this object into a simple globe by default. The map image used here is Gall-Peters cylindrical projection.

Some of the more complex objects exhibit minor lighting/shadow glitches.

Included in the blends/ directory are the original .blend files.

When exporting a model from Blender to .obj format, it is important that you be in "Edit Mode" and that you've selected all faces of the model (or at least, that which you want to export), and that the following export options be set in the Export screen, or there will be wierd lighting glitches in your models when rendered in-game:

[X] Apply Modifiers
[X] Include Edges
[X] Write Normals
[X] Include UVs
[X] Objects as OBJ Objects
Convert and update old stuff!

Got nodebox models you want to import into Blender for further editing? Try my bash script below to help out.
Spoiler
Bear in mind, it is not intended for people to just convert their nodeboxes directly into meshes and merely stop there. That should work fine if you want to use it for that, but that's not necessary for the simpler models as the game will handle that for you anyway. This script and method goes a step further and tries to simplify your objects' structure to make it possible to change their shapes around and texture them in ways that nodeboxes simply can't do.

The best use of this script is to convert a model into a mesh that you can import into Blender, and then *move it aside* so that you can draw a new model from scratch next to the imported one, using the imported one as a guide. If however you want to load, convert, and then edit:

To use this code, save it out as something like nodebox-to-obj.sh, make it executable, then go to your mod code and save out your node_box={} definition to a separate file. You're really interested only in the coordinates table, e.g. this stuff:

Code: Select all

	{-0.5, -0.5,   -1.5,  0.5, -0.375, 0.5},
	{-0.5, -0.375, -1.25, 0.5, -0.25,  0.5},
	{-0.5, -0.25,  -1,    0.5, -0.125, 0.5},
	{-0.5, -0.125, -0.75, 0.5,  0,     0.5}
Only include the node_box={} definition, not any of the surrounding code - the script only does a very basic filtering of its input. Point the script at your nodebox file, and give a second filename to save the converted data as. The code will also attempt to evaluate arithmetic expressions in nodebox coordinates (e.g. if you prefer to write 1/16 instead of 0.0625).

This script requires 'bc'.

Usage: nodebox-to-obj.sh <infile> <outfile.obj>

Script code license: WTFPL

Code: Select all

#!/bin/bash

infile=$1
outfile=$(basename -s ".obj" $2)

echo "# auto-converted from nodebox format" > /tmp/f1.txt
echo "# via script by Vanessa Ezekowitz" >> /tmp/f1.txt
echo "mtllib "$outfile".mtl" >> /tmp/f1.txt
echo "o converted_"$outfile >> /tmp/f1.txt

echo "usemtl none" > /tmp/f2.txt
echo "s off" >> /tmp/f2.txt

vc=1
nb=1

rm -f $outfile

while read n ; do
	if [ -n "$n" ]; then
		coords=$(echo $n|cut -f 2 -d "{"|cut -f 1 -d "}"|tr -d " "|grep -v "="|grep -v "\"")
		if [ -n "$coords" ]; then
			echo $coords
			ifs_tmp=$IFS

			IFS=,
			read x1 y1 z1 x2 y2 z2 <<< "$coords"
			IFS=$ifs_tmp

			x1=$(echo "scale=5;0-("$x1")"|bc)
			x2=$(echo "scale=5;0-("$x2")"|bc)

			y1=$(echo "scale=5;"$y1|bc)
			y2=$(echo "scale=5;"$y2|bc)

			z1=$(echo "scale=5;"$z1|bc)
			z2=$(echo "scale=5;"$z2|bc)

			# Vertex list

			echo "v $x1 $y1 $z1" >> /tmp/f1.txt
			echo "v $x1 $y1 $z2" >> /tmp/f1.txt
			echo "v $x1 $y2 $z2" >> /tmp/f1.txt
			echo "v $x1 $y2 $z1" >> /tmp/f1.txt

			echo "v $x2 $y1 $z1" >> /tmp/f1.txt
			echo "v $x2 $y1 $z2" >> /tmp/f1.txt
			echo "v $x2 $y2 $z2" >> /tmp/f1.txt
			echo "v $x2 $y2 $z1" >> /tmp/f1.txt

			# Mark this nodebox as a new group in the .obj file

			echo "g nodebox-"$nb >> /tmp/f2.txt

			# connect vertexes... the X- face

			echo -n "f " >> /tmp/f2.txt
			seq -s " " $vc $((vc+3)) >> /tmp/f2.txt

			# the X+ face

			echo -n "f " >> /tmp/f2.txt
			seq -s " " $((vc+4)) $((vc+7)) >> /tmp/f2.txt

			# the Z- face

			echo "f $vc "$((vc+3))" "$((vc+7))" "$((vc+4)) >> /tmp/f2.txt

			# the Z+ face

			echo "f "$((vc+1))" "$((vc+2))" "$((vc+6))" "$((vc+5)) >> /tmp/f2.txt

			# the Y- face

			echo "f $vc "$((vc+1))" "$((vc+5))" "$((vc+4)) >> /tmp/f2.txt

			# the Y+ face

			echo "f "$((vc+3))" "$((vc+2))" "$((vc+6))" "$((vc+7)) >> /tmp/f2.txt

			vc=$((vc+8))
			nb=$((nb+1))
		fi
	fi
done < $infile

# combine the vertex list with the face defs and save the result

cat /tmp/f1.txt /tmp/f2.txt |grep -v "v  "|grep -v "^$" > $outfile".obj"

# clean up
rm -f /tmp/f1.txt /tmp/f2.txt

echo -e "\nDone converting.  The converted mesh is deliberately left as a set"
echo "of singular nodeboxes in the converted file.  To use them, start Blender,"
echo "delete the default cube, and do 'File --> Import--> Wavefront (.obj)'."

echo -e "\nIf desired, adjust the positions of the nodeboxes."

echo -e "\nIf they're okay, go into 'Object' mode, select at least one nodebox,"
echo "then select all of them by pressing 'a' once or twice.  Press ctrl-J to"
echo "join all of the selected nodeboxes together into a single object."

echo -e "\nThen, turn on the 'Properties' panel, click the 'Modifiers' tool,"
echo "select the 'Remesh' modifier and give it an Octree Depth of around 5 or"
echo "6 (use the lowest value you can that doesn't distort your mesh.  Apply"
echo "the modifier."

echo -e "\nNow, go back into the Modifiers list, add the 'Decimate' modifier,"
echo "and set it to 'Planar' mode.  Hit 'Apply'."

echo "Reposition your object on the X axis to put it back over the origin,"
echo "if necessary."

echo -e "\nFinally, go edit and UV-map your mesh like any normal object."
Please note that once you've imported your converted nodeboxes into Blender, the process of converting them into a single, hollow mesh is NOT perfect - it will very likely fail to clean up your converted model. You can directly edit and use them without these clean-up steps if you want.

If you choose to do the clean-up steps the script tells you to do, expect to have to patch up small holes here and there and remove lots of excess faces on more complex models. This is due to Blender having to make guesses as to what parts of the mesh are really on the outside of the original model, where adjacent faces should come together, etc.

What is most helpful in avoiding these kinds of errors is avoiding overlapping nodeboxes in your models. Best to minimize overlap by shifting them around and/or resizing them in Blender before you use the Remesh modifier, or edit your nodebox table definitions before you import them into the initial .obj file. Another helpful tip is to separate your nodeboxes into small groups and move them apart, applying your clean-up steps to each group separately. For example, I made the books on Home Decor's 3d bookshelf four separate sets prior to clean-up, and the shelf itself was another set.

Ultimately, it's best to design your model from scratch, but failing that, convert it from nodeboxes with this script and then just clean up the model by hand.
Depends: minetest_game/default and Minetest engine development build from commit d2219171 or later (anything older will either just show cubes, or models that are way too small).

Download:
slope_test-23.zip
(2.76 MiB) Downloaded 444 times
License: WTFPL for code and models, CC-By-SA for the textures.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
philipbenr
Member
Posts: 1897
Joined: Fri Jun 14, 2013 01:56
GitHub: philipbenr
IRC: philipbenr
In-game: robinspi
Location: United States

Re: [Mod] Meshes Slope test [0.1][slope_test]

by philipbenr » Post

Cool. /me searches for the download... :(

This will help speed the learning process. I need to learn UV texturing for my Subgame. Thanks VanessaE!

User avatar
ExeterDad
Member
Posts: 1717
Joined: Sun Jun 01, 2014 20:00
In-game: ExeterDad
Location: New Hampshire U.S.A

Re: [Mod] Mesh slopes test [0.1][slope_test]

by ExeterDad » Post

Thanks VanessaE
Valuable learning tool. Totally re-invents the wheel... errr Block.

At the time I was just getting off my butt and mastering a nodebox or two. :D

User avatar
Linuxdirk
Member
Posts: 3216
Joined: Wed Sep 17, 2014 11:21
In-game: Linuxdirk
Location: Germany
Contact:

Re: [Mod] Mesh slopes test [0.1][slope_test]

by Linuxdirk » Post

Looks great! I hope all requirements for this will make it in Minetest 0.5.x and the new technique will make it into home decor and thus into Carbone game :)

TriBlade9
Member
Posts: 89
Joined: Fri Sep 05, 2014 09:35

Re: [Mod] Mesh slopes test [0.1][slope_test]

by TriBlade9 » Post

Awesome Vanessa! That looks absolutely wonderful, and it has so many more implications for the game. Keep up the good work!

User avatar
Minetestforfun
Member
Posts: 940
Joined: Tue Aug 05, 2014 14:09
GitHub: MinetestForFun
IRC: MinetestForFun
In-game: MinetestForFun
Location: On earth
Contact:

Re: [Mod] Mesh slopes test [0.1][slope_test]

by Minetestforfun » Post

Wow, good work VanessaE !

Hashlime
Member
Posts: 12
Joined: Fri Oct 17, 2014 23:36

Re: [Mod] Mesh slopes test [0.1][slope_test]

by Hashlime » Post

Really cool but the collision/selection box can't be defined with the .obj ?

User avatar
Nathan.S
Member
Posts: 1147
Joined: Wed Sep 24, 2014 17:47
GitHub: NathanSalapat
IRC: NathanS21
In-game: NathanS21
Location: Bigsby Texas
Contact:

Re: [Mod] Mesh slopes test [0.1][slope_test]

by Nathan.S » Post

Looking very cool. Just in time to add 3d models to my new mod.
I record Minetest videos, Mod reviews, Modding tutorials, and Lets plays.
Check out my website, and brand new Minetest Modding Course

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Mesh slopes test [0.1][slope_test]

by VanessaE » Post

New version, fixes the texture errors some folks had with the previous one (Irrlicht rounding errors at the edges of the UV objects?). Also got rid of some redundant/leftover files.

This required that I rearrange the texture maps slightly and enlarge them to 64x64px, to allow for some added space between the various objects so that there is room to lay down some border pixels around them.

See first post attachment.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
Don
Member
Posts: 1643
Joined: Sat May 17, 2014 18:40
GitHub: DonBatman
IRC: Batman
In-game: Batman

Re: [Mod] Mesh slopes test [0.6][slope_test]

by Don » Post

Wow. That's all I can say is wow
Many of my mods are now a part of Minetest-mods. A place where you know they are maintained!

A list of my mods can be found here

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Mesh slopes test [0.6][slope_test]

by VanessaE » Post

Update: new version. Now there are versions of these models in the mod that use ordinary texture files (these just happen to point to default_stone.png), so they'll work with any texture or texture packs you want. These secondary models should be suitable as drop-in replacements for all those nodebox-based slopes that were derived from the ones Jeija's "irregular" mod.

...and this time the screenshot shows the original wood texture on the neighboring cubes instead of the tweaked one that my game uses. ;-)
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
Don
Member
Posts: 1643
Joined: Sat May 17, 2014 18:40
GitHub: DonBatman
IRC: Batman
In-game: Batman

Re: [Mod] Mesh slopes test [0.7][slope_test]

by Don » Post

I just compiled the latest minetest. was playing with your slopes. They look awesome.

One thing I did notice is when bumpmapping is turned on the texture looks blury. I don't usually use bumpmapping so it isnt a big deal to me. Just though I would let you know.

Besides that I am very impressed.

screenshot
Many of my mods are now a part of Minetest-mods. A place where you know they are maintained!

A list of my mods can be found here

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Mesh slopes test [0.7][slope_test]

by VanessaE » Post

Try the stone-based ones. They use the original default textures, so they'll do whatever a stone block does. Feel free to edit the code to swap in, say, wood or sandstone, or any other standard texture.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
Don
Member
Posts: 1643
Joined: Sat May 17, 2014 18:40
GitHub: DonBatman
IRC: Batman
In-game: Batman

Re: [Mod] Mesh slopes test [0.7][slope_test]

by Don » Post

VanessaE wrote:Try the stone-based ones. They use the original default textures, so they'll do whatever a stone block does. Feel free to edit the code to swap in, say, wood or sandstone, or any other standard texture.
The stone works great with bumpmapping.
I plan on doing some swapping and playing. I just wish I knew Blender so I can make more models.

Thanks for your hard work!
Many of my mods are now a part of Minetest-mods. A place where you know they are maintained!

A list of my mods can be found here

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Mesh slopes test [0.7][slope_test]

by VanessaE » Post

New version, just moved the .blend files to their own folder to keep them out of the way (some folks' Minetest clients were throwing warnings because of their presence in the models/ folder).
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Mesh primitive objects [0.10] [slope_test]

by VanessaE » Post

New version, includes blender's cylinder primitive now.

EDIT: updated to v0.10, made the texture for the UV-map version of the cylinder 64x64 px so that the pixels don't look stretched out.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
Don
Member
Posts: 1643
Joined: Sat May 17, 2014 18:40
GitHub: DonBatman
IRC: Batman
In-game: Batman

Re: [Mod] Mesh primitive objects [0.10] [slope_test]

by Don » Post

VanessaE wrote:New version, includes blender's cylinder primitive now.

EDIT: updated to v0.10, made the texture for the UV-map version of the cylinder 64x64 px so that the pixels don't look stretched out.
You're on a roll! Great work.
Many of my mods are now a part of Minetest-mods. A place where you know they are maintained!

A list of my mods can be found here

User avatar
Topywo
Member
Posts: 1721
Joined: Fri May 18, 2012 20:27

Re: [Mod] Mesh primitive objects [0.10] [slope_test]

by Topywo » Post

Thanks VanessaE :-)
I tested the versions before cylinders and they looked good (I prefer the full collison box by the way).

I have one (very general) question you may know the answer.
What impact have the meshnodes on the performance of minetest compared with other node types?

User avatar
jp
Banned
Posts: 947
Joined: Wed Dec 18, 2013 09:03
GitHub: kilbith
Location: France

Re: [Mod] Mesh primitive objects [0.10] [slope_test]

by jp » Post

Topywo wrote:What impact have the meshnodes on the performance of minetest compared with other node types?
Equivalent or even better. All meshes (nodeboxes included) are directly handled by Irrlicht.

User avatar
VanessaE
Moderator
Posts: 4655
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaE
Location: Western NC
Contact:

Re: [Mod] Mesh primitive objects [0.11] [slope_test]

by VanessaE » Post

Update: Version 0.11, added models equivalent to the various shapes found in Technic's CNC machine. Specifically, only those shapes where a model is actually needed: the quarter-rounded blocks, their corresponding corners, pyramids, and one other object I can only describe as a squared-sphere "blob". Meshes/models would be overkill for the other shapes provided by that machine.

See first post for download link and node list.
You might like some of my stuff: Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (64-512px)

User avatar
Inocudom
Member
Posts: 3121
Joined: Sat Sep 29, 2012 01:14
IRC: Inocudom
In-game: Inocudom

Re: [Mod] Mesh primitive objects [0.11] [slope_test]

by Inocudom » Post

VanessaE wrote:Update: Version 0.11, added models equivalent to the various shapes found in Technic's CNC machine. Specifically, only those shapes where a model is actually needed: the quarter-rounded blocks, their corresponding corners, pyramids, and one other object I can only describe as a squared-sphere "blob". Meshes/models would be overkill for the other shapes provided by that machine.

See first post for download link and node list.
Nodebox models draw all faces of all cubes that they are made of, which is in contrast to the fact that meshes do not have this flaw. Of course, very simple nodebox models shouldn't need to become meshes, unless a gain in fps could come from doing so.

User avatar
rubenwardy
Moderator
Posts: 6969
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

Re: [Mod] Mesh primitive objects [0.11] [slope_test]

by rubenwardy » Post

All nodeboxes are converted to mesh nodes now when the game is loading, iirc.
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
Krock
Developer
Posts: 4648
Joined: Thu Oct 03, 2013 07:48
GitHub: SmallJoker
Location: Switzerland
Contact:

Re: [Mod] Mesh primitive objects [0.11] [slope_test]

by Krock » Post

Yay! Totally round nodes exist now!
Look, I programmed a bug for you. >> Mod Search Engine << - Mods by Krock - DuckDuckGo mod search bang: !mtmod <keyword here>

User avatar
Esteban
Member
Posts: 873
Joined: Sun Sep 08, 2013 13:26
In-game: Esteban
Contact:

Re: [Mod] Mesh primitive objects [0.11] [slope_test]

by Esteban » Post

Krock wrote:Yay! Totally round nodes exist now!
Could smooth grass hills can be done using meshnodes? :D
Spoiler
Image
Scan avatar or click here to read a Message of Hope (PDF)

User avatar
Evergreen
Member
Posts: 2135
Joined: Sun Jan 06, 2013 01:22
GitHub: 4Evergreen4
IRC: EvergreenTree
In-game: Evergreen
Location: A forest in the midwest
Contact:

Re: [Mod] Mesh primitive objects [0.11] [slope_test]

by Evergreen » Post

For some reason, the new meshnodes aren't working for me. I have the latest git version, but they just appear as cubes.
Back from the dead!

Post Reply

Who is online

Users browsing this forum: No registered users and 11 guests