Java-Gaming.org Hi !
Featured games (88)
games approved by the League of Dukes
Games in Showcase (678)
Games in Android Showcase (194)
games submitted by our members
Games in WIP (730)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
   Home   Help   Search   Login   Register   
  Show Posts
Pages: [1] 2 3 ... 5
1  Games Center / Showcase / Re: [LibGDX] Racing2D Cross Platform Multiplayer on: 2016-05-24 04:34:21
Similar comments to previous post, I am struggling on the basic 1 level. You make 1 mistake or get taken out by a car behind and its game over. I have also yet to see the lead car make any mistakes or get slowed down by anything.
2  Games Center / Showcase / Re: Pandum online OPEN BETA on: 2016-05-22 09:15:28
Just created a new character, here is some feedback from me

  • I can't rotate the camera, it either can't be done or there is no obvious way how to do it
  • It says I have 1 skill point to spend but I can't spend it no matter how often I click save in the skill tree
  • In the main screen the options allow me to change the keys for things, the keys come up as numeric values so I don't actually know what the defaults are. I also can't find this options screen in the main game
  • There is a big blue arrow at one place, looks like it is a zoning point but I don't know how to zone

For me it was mostly a lot of confusion Smiley On the positive side, the game looks good!
3  Java Game APIs & Engines / Engines, Libraries and Tools / Re: Java wrapping of OpenGL objects on: 2016-05-10 18:11:34
This isn't so different to just using LWJGL not JOGL (Your library name is too similar to JOGL as well). What benefits do you see over these 2 api's?
4  Discussions / Miscellaneous Topics / Re: Shareware, copyright and fangames on: 2016-05-10 18:07:49
IANAL...If your game is not called Doom and doesn't have Doom in its title (so doesn't use the trade mark) then you won't be at fault in this area.

To be sure I would email Zenimax and ask them, no harm in doing this to hear what they want to say, I know of another group of people that did this with Bethesda and they basically gave their permission.
5  Java Game APIs & Engines / OpenGL Development / Re: Vec4 Mathematics on: 2016-05-10 18:01:10
Does GLSL do any optimsations? If I pass a 3 x uniform matrix and multiple them in a vertex shader (model / view / projection), does GLSL recognise that the uniforms don't change and only calculate it once?

I have been thinking about this recently too and my instinct tell me you should go with CPU calculations  ( because of the per vertex work saved). But if GLSL can optimise things then I think GLSL is a no brainer.
6  Java Game APIs & Engines / OpenGL Development / Re: Projection Matrix Resize LWJGL3 on: 2016-05-10 17:44:04
Have you reset GL11.glViewport?
7  Game Development / Newbie & Debugging Questions / Re: Libgdx Json serialization of HashMap on: 2016-05-06 15:25:13
I've used jackson in the past and it works really well, there are many json libraries out there some are good and some are bad.

Read about some of them

http://www.developer.com/lang/jscript/top-7-open-source-json-binding-providers-available-today.html

The lbgdx one isn't that well known so I can't comment much, I just know its not a dedicated library just for json. If other libraries solve your issue then there is no reason why you couldn't use them.
8  Game Development / Newbie & Debugging Questions / Re: Libgdx Json serialization of HashMap on: 2016-05-06 10:05:24
They are not connected, one is just better than the other  Cheesy
9  Game Development / Game Mechanics / Re: [LWJGL] 3D Collision on: 2016-04-27 18:04:15
This is a great resource if you want to learn more

https://www.amazon.co.uk/Real-Time-Collision-Detection-Interactive-Technology/dp/1558607323
10  Java Game APIs & Engines / OpenGL Development / Re: Multiple render passes, different programs, texturing problems on: 2016-04-27 05:24:19
you should provide the code in m_shader
11  Java Game APIs & Engines / Java Sound & OpenAL / Re: Java OGG API with concurrent playback on: 2016-04-17 20:02:13
Do you mean 2 vorbis containers in a single ogg file?

I have my own ogg / vorbis loader and it works with multiple containers in the same stream (Because the is how Theora works which I have another side project ot get working). Depending on what you want to do I can potentially help you fix things as I have a pretty good understanding of the format.
12  Games Center / WIP games, tools & toy projects / Re: djoom3 - Doom 3 java port[HELP WANTED] on: 2016-04-17 09:47:34
@blobloblob

I think you severely under estimate the effort it takes to get as far as you see in the demo video, if it had been a near full game then the OP would not have asked for help. Having the cinematic completed, a usable hub and quite a bit for raw data loading is quite good to begin with.
13  Java Game APIs & Engines / Java Sound & OpenAL / Re: How playback audio data with several audio card's simultaneously uses LWJGL on: 2016-04-07 17:56:32
@spasi

Is this exception caused by something LWJGL is doing?

@aurusd

If you don't hear from spasi here you might want to post the exceptions in the LWJGL forums or on the github issues list.
14  Discussions / General Discussions / Re: Vulkan 1.0 Release on: 2016-04-05 18:24:03
1.0.8 of the api spec released a few days ago

Also Niki Kauppi has some coding tutorials up on youtube talking about the api

And finally Khronos group has some GDC presentations on vulkan
15  Java Game APIs & Engines / Java Sound & OpenAL / Re: How playback audio data with several audio card's simultaneously uses LWJGL on: 2016-04-04 17:59:44
I believe I missed off a static reference when I posted my code, you can use

1  
ALC10.ALC_DEVICE_SPECIFIER


instead of

1  
sound.ALC_DEVICE_SPECIFIER


where as you use

1  
ALC10.ALC_ALL_ATTRIBUTES


I beleive your code doesn't work with getString.
16  Discussions / Miscellaneous Topics / Re: The point of games on: 2016-04-02 05:16:25
Before computers had the ability of producing amazing graphics, the priority of game development used to be to great games with amazing game play, and something that was really fun to play. But as graphics came in to existence and became more and more powerful the focus shifted toward creating games that were visually appealing. There is nothing wrong with making pretty games but I feel a lot of modern games sacrifice the quality of the game itself to make some that looks good.

For me the point of games has always been about entertainment, but not by making a visually better game but by making a game that immerses me away from reality and keeping me there by having something that is addictive and fun to do.

This is a very "old school" game that to me was truly entertaining but only relied on ascii graphics

http://www.excelsior-rpg.com/ex1.htm

17  Java Game APIs & Engines / Java Sound & OpenAL / Re: How playback audio data with several audio card's simultaneously uses LWJGL on: 2016-03-30 18:23:33
Hi

looks like there is a bit more work!

1  
2  
3  
4  
5  
6  
7  
8  
9  
            String deviceList = ALC10.alcGetString(sound.ALC_DEVICE_SPECIFIER);
            System.out.println("Device["+deviceList+"]");
            String captureDeviceList = sound.alcGetString(ALC11.ALC_CAPTURE_DEVICE_SPECIFIER);
            System.out.println("Capture Device["+captureDeviceList+"]");
           
            long device  = ALC10.alcOpenDevice(deviceList);
            long context = ALC10.alcCreateContext(device, null);          
            boolean success =  ALC10.alcMakeContextCurrent(context);
            System.out.println(success);


The device list and captureList are a null separated list, I only have 1 sound card so can't test. Tell me how it goes.

This is my output

Device[OpenAL Soft]
Capture Device[Built-in Audio Analogue Stereo]
true
18  Game Development / Game Mechanics / Re: Materials / Lighting Types / Shading / Illumination on: 2016-03-30 13:20:18
Ecumene

Thanks, there is a lot of good information there. For the scene graph points, I am already using a scene graph for rendering and already have an idea for how to integrate light in to that. What you have said though does provoke some other thoughts which I will take in to consideration when I get to that phase.

You are correct in thinking I am going to use opengl, but my questions are implementation independent. At the moment I am less interested in how to do it, I want to understand what information in required for each component and what information comes out. Example lighting types would require light position and other similar properties depending on the actual type, is the resulting output an intensity value? Its this type of information I would like. I've read a fair bit but all the examples I see are complete solutions.
19  Game Development / Game Mechanics / Materials / Lighting Types / Shading / Illumination on: 2016-03-29 18:30:44
Hi

I've finally decided to mess around with lighting in the game project I have, but I'd like to ask for some advice from the people that have done this already. One of my main issues with reading existing code examples is breaking the light maths down in to its constituent components (examples seem to contain all three together), those being

  • Lighting Types (Point / Spot / Direction etc
  • Shading Types (Flat / Gourard etc
  • Illumination Types (Blinn Phong / Cook Torrance / Lambert / etc)

With the meta data being material information (ambient / diffuse / specular / shininess)

For this post I am not asking for examples of implementing the above, I can read up on that myself. What I would like some help on is working out the generic inputs to those component and the outputs of those components. Once I have this I can create a framework for plugging in the various lighting / shading / illumination types.

This is my current view on things

Light Type : - Inputs : Normals, Normal Matrix, Light Position
                      Outputs : ??
Shading Type  - Inputs : ??
                          Outputs : ??
Illumination Type - Inputs : Material properties, ??
                              Outputs : Color

As you can see I don't really know much  Grin I think understanding the complete picture will make implementing the algorithms much easier.
20  Java Game APIs & Engines / Java Sound & OpenAL / Re: How playback audio data with several audio card's simultaneously uses LWJGL on: 2016-03-29 13:49:32
Using lwjgl3 I use this method to create a context

device=ALDevice.create(...);
context=ALContext.create(device);

You can therefore create multiple contexts on multiple devices
21  Games Center / WIP games, tools & toy projects / Re: The Legend of Jorda - 2D Java MMO on: 2016-03-25 06:06:58
You could also look at JSON as the data format (in my opinion it looks cleaner) or for scripting use a purpose built language such as lua.
22  Discussions / General Discussions / Re: Interesting proposals: Java 9 and beyond on: 2016-03-25 05:53:07
For ArrayList<Integer> you can basically use it as a ArrayList<int> anyway

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
        ArrayList<Integer> intTest = new ArrayList<Integer>();
        for (int i = 0;i< 10;i++)
        {
            intTest.add(i);
        }
       
        for (int value : intTest)
        {
            System.out.println("The value is : " + value);
        }
23  Java Game APIs & Engines / Engines, Libraries and Tools / Re: Java Library written IN Java on: 2016-03-21 19:07:40
For those that like writing everything from scratch in Java there is plenty of opportunity to and there is also plenty of opportunity to contribute to existing project written in Java. For those that like to use what ever is out there, which includes JNI projects then again there are plenty of choices.

Luckily for us there is enough to satisfy everyone  Cheesy

The opening poster was merely suggesting, for those that are interested in writing some java only libraries that they could get together and do that. Saying Java is written in c++ does not really help, Java code can be written / compiled once and deployed to where ever the c++ JVM is. JNI code needs a per environment compile and that is what the opening poster is trying to avoid.

So staying on topic, good luck SirMathhman on your endeavour. It is not a bad one, I won't have time to help out but would be interested in your physics engine if you get one going. JOML is already quite mature for a pure java solution in the math regards and for rendering opengl / vulcan is the way of the future so I will be sticking with that.
24  Discussions / General Discussions / Re: Vulkan 1.0 Release on: 2016-03-17 23:48:40
ok, so I went ahead and completed the travisci config for android anyway. @spasi feel free to include this in to the build when you have time. Like before this is only for jemalloc so should be adaptable to the other projects

.travis.yml

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
env:
language: c
compiler: arm-linux-androideabi-gcc
before_install:
- export PATH=$PATH:$HOME/.local/bin
- export ANDROID_NDK_VERSION=r11b
- export ANDROID_TOOLCHAIN=arm-linux-androideabi-4.9
- export NDK_PLATFORM=android-9
- echo $ANDROID_NDK_VERSION
- wget http://dl.google.com/android/repository/android-ndk-$ANDROID_NDK_VERSION-linux-x86_64.zip -O ndk.zip
- unzip -qq ./ndk.zip
- export ANDROID_NDK_HOME=`pwd`/android-ndk-$ANDROID_NDK_VERSION
- export PLATFORM_PREFIX=./android-ext/
- mkdir $PLATFORM_PREFIX
- $ANDROID_NDK_HOME/build/tools/make-standalone-toolchain.sh --toolchain=$ANDROID_TOOLCHAIN --platform=$NDK_PLATFORM --install-dir=$PLATFORM_PREFIX
- export PATH=$PLATFORM_PREFIX/bin:$PATH
script:
- ./autogen.sh --with-jemalloc-prefix=je_ --with-malloc-conf=purge:decay --host=arm-linux-androideabi
- make
- cd lib
- ls -alrt
- file libjemalloc.so.2


The configurable bits here are

1  
2  
3  
- export ANDROID_NDK_VERSION=r11b
- export ANDROID_TOOLCHAIN=arm-linux-androideabi-4.9
- export NDK_PLATFORM=android-9


The ndk version is the latest available (the one with vulcan in) and I choose a very low NDK_PLATFORM but this can be changed.

The output from the travici run I did is below

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
45  
46  
47  
48  
49  
50  
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/base.o src/base.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/bitmap.o src/bitmap.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk.o src/chunk.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk_dss.o src/chunk_dss.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk_mmap.o src/chunk_mmap.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/ckh.o src/ckh.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/ctl.o src/ctl.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/extent.o src/extent.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/hash.o src/hash.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/huge.o src/huge.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/mb.o src/mb.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/mutex.o src/mutex.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/nstime.o src/nstime.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/pages.o src/pages.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/prng.o src/prng.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/prof.o src/prof.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/quarantine.o src/quarantine.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/rtree.o src/rtree.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/stats.o src/stats.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/tcache.o src/tcache.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/ticker.o src/ticker.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/tsd.o src/tsd.c
arm-linux-androideabi-gcc -std=gnu99 -Wall -Werror=declaration-after-statement -pipe -fvisibility=hidden -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/util.o src/util.c
arm-linux-androideabi-ar crus lib/libjemalloc.a src/jemalloc.o src/arena.o src/atomic.o src/base.o src/bitmap.o src/chunk.o src/chunk_dss.o src/chunk_mmap.o src/ckh.o src/ctl.o src/extent.o src/hash.o src/huge.o src/mb.o src/mutex.o src/nstime.o src/pages.o src/prng.o src/prof.o src/quarantine.o src/rtree.o src/stats.o src/tcache.o src/ticker.o src/tsd.o src/util.o
arm-linux-androideabi-ar crus lib/libjemalloc_pic.a src/jemalloc.pic.o src/arena.pic.o src/atomic.pic.o src/base.pic.o src/bitmap.pic.o src/chunk.pic.o src/chunk_dss.pic.o src/chunk_mmap.pic.o src/ckh.pic.o src/ctl.pic.o src/extent.pic.o src/hash.pic.o src/huge.pic.o src/mb.pic.o src/mutex.pic.o src/nstime.pic.o src/pages.pic.o src/prng.pic.o src/prof.pic.o src/quarantine.pic.o src/rtree.pic.o src/stats.pic.o src/tcache.pic.o src/ticker.pic.o src/tsd.pic.o src/util.pic.o


The command "make" exited with 0.
$ cd lib


The command "cd lib" exited with 0.
$ ls -alrt
total 1204
drwxrwxr-x 13 travis travis   4096 Mar 17 23:44 ..
-rwxrwxr-x  1 travis travis 400964 Mar 17 23:44 libjemalloc.so.2
lrwxrwxrwx  1 travis travis     16 Mar 17 23:44 libjemalloc.so -> libjemalloc.so.2
-rw-rw-r--  1 travis travis 412232 Mar 17 23:44 libjemalloc_pic.a
-rw-rw-r--  1 travis travis 412136 Mar 17 23:44 libjemalloc.a
drwxrwxr-x  2 travis travis     94 Mar 17 23:44 .


The command "ls -alrt" exited with 0.
$ file libjemalloc.so.2
libjemalloc.so.2: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked (uses shared libs), not stripped


The command "file libjemalloc.so.2" exited with 0.

Done. Your build exited with 0.
25  Discussions / General Discussions / Re: Vulkan 1.0 Release on: 2016-03-17 18:59:04
I was helping out spasi on the lwjgl forums with some travis configuration to help build lwjgl on arm for the raspberry pi (I am abcde there), when I did that I did start playing around getting a travis build working with android ndk. If spasi is interest in getting a lwjgl build for vulcan on android I can help out and finish it off.
26  Discussions / General Discussions / Re: 135 gigs of assets available for the low price of $13 on: 2016-03-17 18:47:31
What format are the cryengine files in? I have never used it but having a collection of pre built models to test things would be great
27  Discussions / Miscellaneous Topics / Re: What I did today on: 2016-03-14 20:23:18
Sorry Roquen, your link pointed to the ndk so I was unsure if there was going to be an alternative to jni code
28  Games Center / Showcase / Re: Snake on: 2016-03-14 20:13:28
Latest version has Start and Options done correctly but has Instructi...
29  Games Center / Android Showcase / Re: [LibGdx]Dawn of Tanks on: 2016-03-14 19:10:14
Why? Just download it if you want to try it out
30  Discussions / Miscellaneous Topics / Re: What I did today on: 2016-03-14 19:07:11
Does anyone know if google are intending on providing a java wrapper for vulcan?
Pages: [1] 2 3 ... 5
 
theagentd (38 views)
2016-05-14 18:38:35

theagentd (69 views)
2016-05-10 22:37:41

theagentd (73 views)
2016-05-10 22:33:46

IanParcs (105 views)
2016-04-18 14:18:53

KaiHH (96 views)
2016-04-18 08:35:41

KaiHH (124 views)
2016-04-15 12:43:58

theagentd (129 views)
2016-04-14 02:16:17

theagentd (151 views)
2016-04-14 02:15:43

IanParcs (242 views)
2016-04-12 03:51:16

IanParcs (90 views)
2016-04-12 03:50:03
FPS Camera Tutorial
by Hydroque
2016-05-22 05:40:58

Website offering 3D Models specifically for games for free
by vusman
2016-05-18 17:23:09

Website offering 3D Models specifically for games for free
by vusman
2016-05-09 08:50:56

Website offering 3D Models specifically for games for free
by vusman
2016-05-06 11:10:21

Website offering 3D Models specifically for games for free
by vusman
2016-04-29 12:56:17

List of Learning Resources
by SilverTiger
2016-02-05 09:39:47

List of Learning Resources
by SilverTiger
2016-02-05 09:38:38

List of Learning Resources
by SilverTiger
2016-02-05 09:35:50
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!