3D Tetris - XNA Gaming Heaven

Computers, Gaming, Programming, Student, University, Xbox 360 8 Comments »

3 weeks ago, we were given an assignment to work on in small groups. The assignment was to make a game for the Xbox 360 in XNA Game Studio Express, which could either be 2D or 3D. The possibilities were endless, and so me and my partner Conrad decided to go all out and port one of the most popular 2D games (Tetris) to a 3D environment.

When our lecturer first heard about this, he was concerned that it might be a bit too much work for 3 weeks, and that we should start out small, perhaps trying to make 2D Tetris, and then if we thought we could port it across, start to make it in 3D. Fuck that we thought, and started planning a 3D game engine.

Of course, being lazy students, we didn’t do much but plan for the first 1.5 weeks, and then realised we had so much to do in very little time. So we started out by building an environment, which had a rotatable platform, and an array of booleans that would act as the movable area for the blocks. We then decided that even if Tetris 3D was even possible to play in 3D, it would be the hardest game ever…and so we did what any irrational programmer would do…make it harder. We renamed out project “3D Psychedelic Techno Tetris”, applied a spinning background with awful clashing colours, and added the aptly named “Logical Song” by German techno band Scooter…on and infinite loop.

Programming went better than we had ever expected, and we soon had a fully playable game that used a multitude of clever and intuitive methods to move and detect blocks. Without intending to do so, we had inadvertently created the first fully operational 3D Tetris Engine, which could be easily modified, and content (such as new bricks) easily plugged in. Since everything in controlled by a series of constants and calculations, you can easily change the size of the platform, the shapes of the blocks, and even the way the camera moves around the grid, and the game will work out how to make it playable. As so many people have claimed for so many different products: “It just works”.

So I guess I should get down to features:

- Blocks spawn at the top of the environment and move down until they either hit the platform or another block.
- Blocks can be rotated about the X, Y, and Z axis.
- A “shadow” block predicts where the block will come to rest if you were to do nothing further to it.
- Lines and columns that are “complete” will disappear and blocks above will move down to fill the gaps.
- The next block is displayed in the top right corner, and score / level system components are kept track at the bottom.
- The camera can be moved 360 degree around the platform, as well as up above the platform for a birds-eye view, and down the bottom for a normal tetris view.

Some pictures:

The game when you have just started. The first brick is floating above the platform, whilst the shadow brick predicts where it will fall. Both the current brick and the next brick are the same, and examples of the new types of brick we created in the game for the 3D version. Other than the standard bricks, there are 5 extra bricks to make the game more challenging.
Tetris Start

An alternate view is gained by rotating the camera.
Tetris Alternate View

An example of how things can rapidly build up if you don’t play well enough.
Tetris Build

What happens if you really mess up…
Tetris Fail

I should point out that all images above were prepared by myself in the game, and I am really not as bad at this game as it appears. I am in fact the current world champion at 3D Tetris, with a score of 3800 at level 8, and I welcome anyone who reckons they can score more than me.

Popularity: 4% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl

MyBB 1.4 Admin Control Panel Revealed!

MyBB No Comments »

Yesterday, Chris Boulton (the project leader of MyBB) posted the first part of a “Complete Overview” series of blogs on the new ACP. It is very detailed, and contains a load of screenshots of the new features.

Check it out at the Official MyBB Blog

Popularity: 6% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl

Writing an IRC Bot in Ruby

Internet, Programming 4 Comments »

Many people use IRC (Internet Relay Chat) to communicate with others around the world, usually within a specific group or community (developer projects etc). During the years that IRC has been used, many people have written scripts that log into the IRC server and perform specific tasks. These are commonly referred to as “IRC Bots”. They appear as users in the channel, but are in fact just scripts running off a computer somewhere.

An IRC Bot can be used to manage channels (kicking members, banning members, making members OPs), or just to perform fun tasks (such as randomly generate quotes for members). Either way, a lot of people don’t realise just how easy making a bot is, so I’ve put together this tutorial which will walk you through the steps of building your very own IRC bot.

First Things First
Before you start programming in Ruby you will have to have it installed on your computer. I use Ubuntu Linux and so I used the command:

sudo apt-get install ruby ruby1.9

This will install ruby versions 1.8 through 1.9 onto your system. Another program that is useful to have when debugging ruby is the interactive version:

sudo apt-get install irb

If you use another Operating System (like Windows) you will have to look up how to install ruby on the internet.

Step 1
Create a new directory which will contain all your files associated with the Bot. I’ve created a directory “IRC Bot” in my home folder, and then a subdirectory “Ruby” in that.

Enter into the directory you have just created.

Step 2
Create a file called “config.rb”, open it in your favourite editor, and type the following:

$irc_server = ''
$irc_port = ''
$irc_nick = ''
$irc_host = ''
$irc_realname = ''
$irc_nickserv = ''
$irc_identify = ''
$irc_channel = ''
$irc_prefix = ''
$irc_password_prompt = '(This nickname is registered and protected|This nickname is owned by someone else)'
$irc_password_accepted = 'Password accepted \- you are now recognized'

These are the global configuration variables that we will use throughout the program. Here is a brief description of each:
$irc_server - The address where the IRC server is located, for example ‘irc.freenode.net’.
$irc_port - The port through which you can access the IRC server. Usually this is set to ‘6667′.
$irc_nick - The nickname your bot will use when it connects to the server.
$irc_host - The host of your bot (you can set this to any address you like, for instance ‘adrianhayter.com’).
$irc_realname - The “real name” of your bot (can be anything, but I usually set it to the same value as $irc_nick).
$irc_nickserv - The nickname of the NickServ bot on the IRC server (usually left as ‘NickServ’).
$irc_identify - The command used to identify users on the IRS server (usually set to ‘IDENTIFY {password}’, where {password} is the password associated with the Bot’s nickname).
$irc_channel - The name of the IRC channel you want the Bot to join (’#linux’ etc).
$irc_prefix - The prefix you want your bot to have which saves time when typing out commands (set it to something like ‘!’ or ‘%’).
$irc_password_prompt - This is a regular expression which matches the password prompt from the server (usually can be left as it is above).
$irc_password_accepted - This is a regular expression which matches the password accepted message from the server (usually can be left as it is above).

Save the config.rb with your new values.

Step 3
Create a file called “bot.rb” and open it in your favourite editor.

Add the lines:

require 'config.rb'
require 'socket'
require 'parse.rb'

$connect_log = ""
$joined = 0

def place(s)
strx = s.gsub(/\n/, "")
strx = strx.gsub(/\r/, "")
$con.send strx + "\n", 0
puts "--> " + strx
end

$con = TCPSocket.new($irc_server,$irc_port)
place("USER " + $irc_nick + " " + $irc_host + " blah :" + $irc_realname)
place("NICK " + $irc_nick)

I’ve written a lot here, and if you have never used Ruby before then it will appear confusing, so I’ll go through it in a bit more detail.

The first three lines are all “require” statements. These statements read the files into the current bot.rb program. The first reads the config.rb that we just created, the next loads the “socket” class which is a class already built into Ruby that allows the creation of sockets to access content on the internet. The last loads the file “parse.rb” which we will create later.

The next two lines are global variables, the first is a string to store the outputs of the server (which we will use later), and the second is a variable which we will set to 1 when the bot has joined the channel.

Then we get to our first functn ion, which is called “place”. It accepts a parameter “s”, and strips this parameter of all new lines and carriage returns, before sending it down the connection and outputting it to the terminal. You don’t have to use this function, but it is very useful this entire bot program is based around it.

Finally, we open a new TCP Socket connection to the IRC server using the details we gave in the config.rb file, and then send our user and nick information down it using the place function.

Step 4

Now that we have a connection to the server, we are going to have to create an infinite loop which continually gets data from the server and checks it to see if it is important.

Add this code below what you have already written:

while true do

$connect_log = $con.recv(512)

s = $connect_log.split("\r")
for i in s
puts i
if i =~ /PING\ / then
a = i.split("\:")
place("PONG #{$irc_host} :#{a[1]}")
end

if i =~ /#{$irc_password_prompt}/ then
place("PRIVMSG #{$irc_nickserv} \:#{$irc_identify}")
end

if i =~ /#{$irc_password_accepted}/ && $joined == 0 then
place("JOIN #{$irc_channel}")
$joined = 1
end

parse(i)

end

$connect_log = ''
puts "Log Cleared\n\n"
end

This code fetches 512 bytes of data from the server and splits it into an array (separated by a carriage return). It then goes through each of these lines and checks if it is a PING from the server (at which point it will PONG the message back). This stops your bot getting booted from the server due to a PING timeout. It also checks if the password prompt has been given by the server, at which point it will send back the relevant identify message. If the server accepts the identify, then the bot will detect the accepted message and will join the channel you set in the config.rb.

Since a lot of servers have different messages for identify / password accepted, you may have to do a little investigating to find the right one. Luckily, the line “puts i” at the start of the for loop outputs the server message to the terminal, so you can see what messages are being sent, and change the config.rb variables accordingly.

At the end, it sends “i” through the function parse() (which is in the file parse.rb) and clears the log.

Step 5

Finally, create a file called “parse.rb” and open it in your favourite editor.

Add this code:

def parse(x)

# INITIALIZE VARIABLES
upmynick = $irc_nick
mynick = upmynick.downcase
nick = ""
chan = ""
fullmsg = ""
upfullmsg = ""
msg = ""
upmsg = ""

# SPLIT CODE UP
s = x.split("\:",3)
if s[1] =~ /!/ then
nick = s[1].split("!")[0]
end
if s[1] =~ /\ / then
chan = s[1].split("\ ")[2]
end
if s[2] != nil then
puts s[2]
fullmsg = s[2].downcase
upfullmsg = s[2]
end
if s[3] != nil then
puts s[3]
fullmsg = fullmsg + s[3].downcase
upfullmsg = upfullmsg + s[3]
end

fullmsg = fullmsg.strip
upfullmsg = upfullmsg.strip

# CHECK IF MESSAGE IS DIRECTED AT BOT
if upfullmsg =~ /^(#{upmynick}\:|#{$irc_prefix})(\ )*/ then
direct = true
upmsg = upfullmsg.split(/^(#{upmynick}\:|#{$irc_prefix})*/, 2)
upmsg = upmsg[2].strip
msg = upmsg.downcase.strip
else
upmsg = upfullmsg.strip
msg = fullmsg.strip
end
end

This is a very complex parsing function, but will be your starting point in creating your own custom commands. The local variables “upmynick” and “mynick” are set to the normal case bot nickname, and the lowercase bot nickname respectively. This can be very useful, as you will want to check regular expressions against the lowercase nick, but output messages with the normal case nick.

The parse function then splits the message “i” up into sections, and gets information from those sections. The local variables “nick” and “chan” are set to the obvious (the nickname of the user who sent the message, and the channel they sent it to). The variables “fullmsg” and “upfullmsg” are simply the entire message the user has sent, in lowercase and normal case.

Most IRC bots only respond to commands if they are told directly to the bot, so the next part is very useful unless you want to piss a load of people off. If the variable “upfullmsg” begins with the bot nickname (and a colon), or the bot prefix (usually &, %, ., etc), then we know that the user is telling the bot directly. A new variable “direct” is set to true, and two new variables are created (upmsg, and msg). These variables are very similar to upfullmsg and fullmsg, but they don’t have the bot nickname or prefix at the start.

So, if the “fullmsg” was “IRC_BOT: hello!”, and the IRC bot’s nickname was set to “IRC_BOT”, then msg and upmsg would now be set to “hello!”. This simply means that everytime you check the regex of a command, you don’t need to include regex to check if the bot’s nickname is being referred to. You only need to see if direct is true.

Step 6

The final stage of an IRC Bot is to add some functions to it. I’m going to show you how to make one simple function (get the bot to flip a coin) and how to add it to the parse function.

At the end of the parse.rb, before the last “end”, add the following code:

if direct == true && msg =~ /^(flip|coin)/ then
if rand(2) == 1 then
flip = "Heads"
else
flip = "Tails"
end
place("PRIVMSG #{chan} :#{flip}")
end

Simply explained, this code checks that the variable “direct” is true (i.e. the command is being told directly to the bot), and that the message sent begins with either the word “flip” or “coin”. If both these conditions are met, then the code generates a random number between 0 and 2. If the number is 1, then the outcome is “Heads”, if it is not, the outcome is “Tails”. Note that a the random number in ruby can never be the number you set in the rand() function. So the only two numbers ever outputted by rand(2) will be 0 and 1.

The bot then uses the place() function we defined earlier in bot.rb to send a message back to the channel with whatever the variable “flip” has been set to.

Finally…

To run your IRC bot, simply run bot.rb using ruby.

Thanks very much for reading my tutorial. Please comment on things you think could be explained in more detail, and if something makes no sense. If you are having loads of trouble doing anything, then please feel free to download the complete files from this tutorial here:

http://adrianhayter.com/ircbot.release.1.0.tar.gz

Popularity: 5% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl

Thoughts for 2008

Atheism, Facebook, Linux, MyBB, Student, Ubuntu, University No Comments »

Well, this is my last blog post for 2007, and it has been a really great year for me. I’ve completed my first term at university, converted to Ubuntu Linux, and played Portal, BioShock, and Halo 3 for hours on end. However, instead of commenting on the year that has past, I thought I’d comment on my hopes for 2008, in reference to things that will affect me.

facebook

For a student, facebook is a very important tool. It’s a linking point between everyone you know, whether they are at university or not. You can plan events, share photos, send messages (either publicly on the wall or privately), and do hundreds of other things thanks to the growing number of applications. However, there are still drastic improvements to be made:

  • Generate news feeds in real time. When one of my friends changes their name, I want to know immediately, not several hours later. There is no reason why they can’t do this already, and it would certainly keep everyone up to date with things.
  • More control over notifications, especially those concerning applications. I’ve really had enough people inviting me to “become a werewolf” or “see what kind of eyes you have”. Either ditch the invitations, or include an option to turn all application invitations off. I know they have an “application blocker” feature, but I don’t want to have to go through every single application I don’t want to be invited to and block it…
  • Remove the 60 photo limit on albums. This is the 21st century facebook, people have digital cameras now. They can take more than 60 photos at a time. Again, there is no reason for the limit. You can create unlimited albums, but only have 60 photos in each one? It’s absurd.
  • Remove the limit on the number of groups you can join. Honestly, if they think people can only have a maximum of 200 beliefs/ideas/viewpoints/favourite (actor/tv show/film) in their lifetime then they have led some very sad lives. I’m already a member of 169 groups, and at the rate I join / create them I’ll probably be at 200 in a few weeks. I don’t want to go through them all and decide which ones I “don’t really agree with that much anymore”.

On a final note for facebook, thanks for removing the “is” from statuses. It gave me quite a few laughs over the next few days when I saw people who hadn’t realised it had gone. Stuff like “John going to the cinema” and “Jane tired” were great for a grammar Nazi like myself.

Linux

Not much I can say about Linux, seeing as it is already a fantastic operating system. I look forward to Ubuntu 8.04 in April, which has an awesome new default theme, and better compiz support. One thing I would like to see on it is the BBC iPlayer, which they have been forced to make available to Linux and Mac thanks to a nice lawsuit. I’m also be trying out Linux Mint in the new year, because apparently it is better than Ubuntu.

MyBB

Hopefully we will see the release of 1.4 in 2008, as well as a complete release of the MyBB Merge system. There are a lot of other plans for MyBB, both official and unofficial, but for obvious reasons they cannot be revealed just yet.

Atheism

After creating a group on facebook for “Atheists at Royal Holloway”, I’ve got a few more members for a possible Atheist Union / Society at Royal Holloway. Nothing is official yet, but we are definitely on our way. We’ve been invited to a debate by the Christian Union in February on the subject of belief, which should be fun.

I’m gonna end it there, I’m sure there will be far more to look forward to in 2008, but I must get things ready for the New Year party tonight!

So, farewell 2007, roll on 2008!

Popularity: 6% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl

Why Linux is better than Windows

Linux, MyBB, Ubuntu 4 Comments »

The MyBB IRC channel (#mybb) is prone to a lot of idle banter between it’s members when we are not helping people solve their MyBB problems.

Today was one such day. It all started with a simple argument between MiNT, georgia_tech_swagger, Snake, and myself against Matt. Matt is a Windows Vista user who is basically Microsoft in annoying boy form. He thinks Microsoft is invincible and the best thing since sliced bread. He has little experience with Linux, and the one time he did use it he complained non stop about not being able to use it properly.

So the argument was essentially a load of Linux users (with the exception of Snake, however he does know a lot about it) trying to put the point across that Linux was a better system, and that Microsoft were evil. At one point Matt tried to convince us that the Zune was invincible and that Linux couldn’t be installed on it, but a few quick searches found that to be false as well.

Eventually, he left, and Snake posed an interesting challenge:

(17:31:45) Snake: we should make a list of why linux is better then windows

…and so it began.

1) Linux is free.
2) Linux is faster (another IRC user, tmhai, was astounded earlier today at how his laptop booted in under 30 seconds with Ubuntu, compared to the 30 minutes it took Windows to boot on it).
3) Linux is Open Source (which means bugs and security holes are found and fixed quicker).
4) With Linux, you own your Operating System. With Microsoft Windows, you don’t actually “own” the Operating System, you simply have a license that says you can use it. Every installation of Windows is owned by Microsoft.
5) Linux has better support. This is debatable, but there are a lot of community forums out there, and usually errors in Linux are much more readable than Windows errors, which leads to quicker solutions.
6) Most Linux distros come with some form of package manager, a utility that installs safe and secure programs, and then updates them automatically.
7) Most Linux distros release daily updates of core files, as well as updates for programs.
8) Most Linux distros release their next version every 6 months without fail. So instead of waiting an uncertain amount of time for the next Windows release, you know exactly when the next version of your OS will be out.
9) Linux has a better command line interface. Using the command line can be a bit daunting if coming from a Windows environment, but you will soon learn how to use it, and about the advantages of this way of doing things.
10) Linux has a better interface. It doesn’t matter if you are using Gnome, KDE, or some other desktop environment, it is way better than what Windows has to offer.
11) Linux has programs that can access practically every file type ever invented.
12) With a bit of configuring, it can run programs made intended for Windows. Today I managed to get Max Payne 2 running in wine after I earlier managed to get Direct X running).
13) The only viruses / spyware you get are by installing them yourself.

The only things we came up with that Windows has over Linux is the Driver support, and the support for third party applications.

Hopefully though, these will improve for Linux as it takes a more active role in today’s computing.

Popularity: 17% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl

End of Term

Programming, Student, University No Comments »

I told you I’d keep this blog updated didn’t I? :D

So yes, yesterday was the official end of term for most Computer Science students at Royal Holloway, due to the fact that I had my last lecture of the year. The last week was pretty empty on an academic scale. All my lecturers started canceling their lectures because we’d completed the module, so I ended up averaging 1 lecture a day instead of 3. My last tutorial was also canceled because my tutor was off sick.

Anyway, my coursework is all complete for the year, and I got 100% in all my programming assignments, and an “A” in my last Database Technology assignment, which I am very happy about. I also got to show off my SQL Simulator to my database class because it impressed our lecturer so much.

I’ve now got 3 days until I go “home” for the Christmas break, and I have all the free time in the world during them. I’m going on a shopping trip with one of my flatmates today to Staines, which should be fun, and on Friday we are all going out to the Student Union for the “Christmas Blowout” party, which means I’ll get very drunk and be up until 5 ordering some kind of food from Dominoes.

All in all, it’s been a great first term, and I’m really sad to be leaving all my friends here, but we’ll see each other for New Year. I can’t wait until the second term starts and we get new modules (since Web Technology is one of them).

Popularity: 3% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl

It’s Christmas Time…

Computers, Programming, Student, University No Comments »

So it’s been a while since my last blog post, the main reason being that I started university and everything has just completely overwhelmed me! It’s such a massive change of lifestyle you forget all about the things you used to do at home, but I’ve been bugging myself for weeks to get back to my blog, because I enjoy writing it.

I arrived at university on 22nd September, and moved into my accommodation, which is really really nice! The rooms are all en suite and quite large compared to most university rooms. They each have a double bed, a large desk (which is good because my computer setup consists of two 19″ monitors, a sub woofer sound system, printer, Xbox 360, and other gadgets), and plenty of storage space.

After a week of partying and getting to know all my flat mates, I started my course in Computer Science with Artificial Intelligence. On the first day, I met a guy called Ewan who I instantly clicked with, and is now my best friend at Royal Holloway! He is a Linux user and a total geek (like me), and managed to convince me to convert to Linux as my main operating system. Ever since doing so I have loved every minute, and I would recommend it to anyone who is sick of Windows being so slow and buggy. I also converted because my course requires basic knowledge of Linux and Unix systems, and this way I get to learn how to use Linux whilst enjoying a much more satisfying computing experience.

I’ve settled into my course really well, and for the most part it has been very easy (mainly because I already know programming, and once you know one programming language, learning others is very easy). Having said that, Java is still challenging because it is a terrible language, and has so many rules and annoyances. However, it is compatible with most Operating Systems (Windows, Mac, Linux) and you can use it on most new mobile phones as well.

We also learn about Computer Engineering (circuitry, processors, and Assembly language), Maths (decision maths involving computer languages), and Database Technology (which I already know a lot about, especially on the SQL side).

So the last 9 or so weeks have flown by, and now we have reached the end of the term (and year) it’s a great time to reflect on how much has changed, and how much independence I’ve gained since going to university. I’ll continue to update this blog more frequently throughout coming weeks, and add new features to it.

Popularity: 3% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl

Atheist Forums

Atheism, Internet, MyBB 7 Comments »

A while back I purchased the domain name atheistforums.org and set up a MyBB forum on it aimed towards discussion of atheism by atheists and other religious groups. I showcased it in the MyBB Community Forum and through that action, labrocca found it and posted a reply that he had been planning to make such a forum with the domain atheistforum.com:

“Interesting. I actually own atheistforum.com and plan to launch it eventually but goodluck on your site. Atheism is surely a topic you can discuss and gain members with.”

I contacted him via PM and proposed that instead of creating two competing sites of the same nature, we should combine the sites and create one large Atheist discussion board. Now, labrocca and I have not got on well in the past, which is mainly my fault and has led to certain jests and “pokes” at one another. At the end of it all, I apologised and we sorted things out between us. He decided to take me up on my offer, and even host the forum on his server.

Now it is slowly growing and we hope that once the site is discovered by people, we can start debating and discussing everything related to Atheism. If you are Atheist or Christian, or Muslim, or Jewish, you can join and debate for your religion, or discuss Atheism with the people that support it.

Atheist Forum

Hopefully this will end up a large and popular community for Atheist discussion!

Popularity: 12% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl

MyBB Support Rep!

DrPoodle.com, Internet, MyBB, Programming 2 Comments »

For those who use my community website (DrPoodle.com) and especially the forums, you will know that I have been using MyBB as a free forum software for just less than a year. After a few months with phpBB, we decided to make the switch because of everything MyBB offered. Over the years I have become part of the MyBB Community, learning about the software and writing plugins to help put new features into it.

A few weeks ago, Chris Boulton, the head developer of MyBB wrote about Support and Development positions that were opening up at MyBB. It was a chance to join the MyBB Team and help support and/or develop one of the upcoming and promising Bulletin Boards in the world, and it was an offer I couldn’t ignore.

So I wrote a PM to Chris and stated my intentions of applying to become a Support Rep, based on my years of “experience” with MyBB and how devoted I was to the MyBB Project. As soon as I had sent it I signed into the MyBB IRC channel and started talking about the application with everyone in there. It seemed like everyone wanted a shot at becoming a support rep (the promise of MyBB 1.4 access was very enticing) and all we could do was wait…

So today, after many weeks of waiting, Chris finally reveals 4 new members of the MyBB Team…and it just so happens that one of them was me! I was instantly on a high…with everyone congratulating me, my new super mod status, and access to the Staff Forum. It took a few days for me just to calm down and get things in perspective.

So now I am a member of the MyBB Team, supporting people around the community and helping out wherever I can…not to mention having my name and links plastered around the net. I hope to become a developer one day when my php is up to the standards of the MyBB project…so watch this space!

Popularity: 2% [?]

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • NewsVine
  • Slashdot
  • Netscape
  • Technorati
  • blogmarks
  • Spurl
  • YahooMyWeb
  • BlinkList
  • Reddit
  • TailRank
  • feedmelinks
  • Furl
WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Login